Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Общие вопросы

Общие вопросы вопросы не попадающие ни в один из доступных разделов

Ответ
 
Опции темы
Старый 31.03.2016, 22:08   #2341
Антихрист
Разработчик
 
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений
(для 412 пользователей)
Ответ: Вопросы от новичка

Сообщение от RegIon Посмотреть сообщение
Ща проверю. Если не будет дрыгаться - как доктор прописал, не нужен будет кастыль. Не знал о такой хрени.

UPD. Хорошая штука, но анимация встает на паузу , а так как на всех она одна, то все выглядит как под копирку.

Как задать рандомное смещение по времени в аниматоре? Костыль:
  • после старта отключить аниматор,
  • запустить на рандомное (небольшое) время корутину
  • Включить в корутине аниматор
  • Профит. Инстансы аниматора запустятся в разное время.
А можно как-то иначе?
GetComponent<Animator>().Play("Idle",0,Random.Rang e(0,1f));
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
RegIon (31.03.2016)
Старый 02.04.2016, 19:11   #2342
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Вопросы от новичка

Нашёл полезный класс, может кому-то тоже пригодится ColorUtility .
В частности, функция TryParseHtmlString.
(Offline)
 
Ответить с цитированием
Старый 08.04.2016, 00:16   #2343
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

Это нормально, что иногда PlayerPrefe забивает на некоторые сохраненные ключи, причем рандомно на разных устройствах?
Пишу и читаю не в Awake, после установки ключей сохраняю на диск. Все происходит по событиям (не в Update)

Вот у меня 4 параметра, пишу так:
public static void SaveOnlySettings ()
    {
        
PlayerPrefs.SetInt ("settings_cheater"CheaterMode1:0);
        
PlayerPrefs.SetInt ("settings_tilt"useTilt 0);
        
PlayerPrefs.SetInt ("settings_music"useMusic 0);
        
PlayerPrefs.SetInt ("settings_vibration"useVibration 0);
        
PlayerPrefs.Save ();
    } 
Читаю так:
public static void LoadParams ()
    {
        
CheaterMode PlayerPrefs.GetInt ("settings_cheater"0) == 1;
        
MoneyCount PlayerPrefs.GetInt ("game_money"0);
        
useTilt PlayerPrefs.GetInt ("settings_tilt"1) == 1;
        
useMusic PlayerPrefs.GetInt ("settings_music"1) == 1;
        
useVibration PlayerPrefs.GetInt ("settings_vibration"1) == 1;
        
rocketConfig = new RocketConfig ();
        
rocketConfig.LoadConfig ();
        
Debug.Log ("[GLOBAL] LOAD SETTINGS");
    } 
Во втором случае читаю все параметры махом, которые существуют, а пишу только настройки, так как они чаще меняются.

Так вот useMusic и useVibration на компе иногда не читаются как бы, useTilt всегда нормально работает.
Еще у друга на HTC не читается useVibration в определенных случаях, а на моем он не может воспроизвести баг.

Что за фигня такая и как лечится, а то проще сериализовать в json наверное будет.
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 08.04.2016, 01:41   #2344
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Выведи в дебаг, в каком порядке вызываются твои события. Есть вероятность что сохранение раньше загрузки вызывается?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 08.04.2016, 08:03   #2345
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

Сообщение от pax Посмотреть сообщение
Выведи в дебаг, в каком порядке вызываются твои события. Есть вероятность что сохранение раньше загрузки вызывается?
Да, неожиданно вышло так, а все из-за того, что изменение Toogle.isOn вызывает событие OnChange даже если объект выключен, я через событие делал запись параметров. Можно как-то подавить колбек?
С одной стороны удобно, что можно поменять вручную, и зависимости выполнятся, а с другой стороны плохо

UPD. Убрал логику сохранения из обработчиков, сохраняю по OK.
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 08.04.2016, 11:30   #2346
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Я обычно при инициализации ставлю флаг, который обозначает не обрабатывать события (в событиях выхожу по флагу). Как все загрузил - убираю флаг.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 14.04.2016, 13:49   #2347
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Подскажите как рендерить из юнити в видео файл?
Можно конечно рендерить отдельно по кадрам, но так не будет звука и нужен софт для создания видео файла из картинок.
(Offline)
 
Ответить с цитированием
Старый 14.04.2016, 14:43   #2348
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Вопросы от новичка

Запиши чем-то внешним, OBS тот же, зачем тебе именно рендер из юнити?
(Offline)
 
Ответить с цитированием
Старый 14.04.2016, 14:50   #2349
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Сообщение от Andvrok Посмотреть сообщение
Запиши чем-то внешним, OBS тот же, зачем тебе именно рендер из юнити?
1) Нужно разбираться с настройками этой проги для лучшего качества.
2) Надо много ресурсов компа (или хорошую видеокарту в зависимости от настроек захвата). С этим как раз могут возникнуть проблемы.
3) Нельзя отрендерить в разрешении больше чем монитор.
4) Через Юнити рендер как я понимаю можно рендерить даже с 1 фпс/сек, а видео будет с нормальным фпс (подобно рендеру 3дмакс).
???
Много профита в общем.
(Offline)
 
Ответить с цитированием
Старый 14.04.2016, 15:10   #2350
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Ничего встроенного нет для этого, можешь смело идти на ассетстор искать готовые вещи.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nex (14.04.2016)
Старый 15.04.2016, 03:05   #2351
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Сообщение от pax Посмотреть сообщение
Ничего встроенного нет для этого, можешь смело идти на ассетстор искать готовые вещи.
Все только за даллары. От 150-400$, что сильно много для создания короткого промо-ролика бесплатной игры на Android.


С захватом видео частично проблема решена. Рендер кадров через RenderTexture с записью на диск.

Плюсы:
Фпс можно задавать любой.
Размер кадра ограничивается только видеокартой.
Не сильно тормозно.
Можно "измазать сцену жиром" и рендерить даже с 1фпс/сек и на выходе все будет хорошо.

Минусы:
Для гарантированной плавности все надо двигать и вращать в FixedUpdate используя Time.fixedDeltaTime или через Rigidbody.MovePosition и Rigidbody.MoveRotation.
Нужно иметь VirtualDub что бы создать видос из кадров при этом нужно попотеть с кодеком иначе ролик будет очень много весить.
Нельзя сворачивать и снимать фокус с Юнити иначе получим много одинаковых кадров.

using UnityEngine;

public class 
Capture MonoBehaviour {
    public 
int frameRate 30;

    public 
string folder "ScreenshotFolder";
    private 
string realFolder "";

    public 
bool isRec;

    private 
RenderTexture rt;
    private 
Texture2D screenShot;

    
void Start () {
        
rt = new RenderTexture(Screen.widthScreen.height24);
        
screenShot = new Texture2D(Screen.widthScreen.heightTextureFormat.RGB24false);

        
Time.captureFramerate frameRate;

        
realFolder folder;
        
int count 1;
        while (
System.IO.Directory.Exists(realFolder)) {
            
realFolder folder count;
            
count++;
        }
        
System.IO.Directory.CreateDirectory(realFolder);
    }
    
    
void LateUpdate() {
        if (
isRec) {
            
string name string.Format("{0}/shot {1:D04}.png"realFolderTime.frameCount);

            
Screenshot();
            
byte[] bytes screenShot.EncodeToPNG();
            
System.IO.File.WriteAllBytes(namebytes);
        }
    }

    private 
void Screenshot() {
        
Camera.main.targetTexture rt;
        
Camera.main.Render();
        
RenderTexture.active rt;

        
screenShot.ReadPixels(new Rect(00Screen.widthScreen.height), 00);

        
Camera.main.targetTexture null;
        
RenderTexture.active null;
    }



Если еще нужно будет делать монтаж видео, то получается весьма геморно и возможно потеря качества при перегоне из кадров во временное видео. Так же предпросмотр полученных кадров например в VirtualDub требует мощный проц(?) иначе видео будет рывками.

Может знатоки напишут код где кадры будут сохранятся сразу в видео файл хотя бы без сжатия? Ну или подскажите по каким словам гуглить это дело...

С сохранением звука вроде бы проблем не должно возникнуть, но из за покадрового рендера добавляется еще геморой со сведением звука.
(Offline)
 
Ответить с цитированием
Старый 15.04.2016, 06:23   #2352
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

А гуглить не пытался?http://www.nrecosite.com/video_converter_net.aspx
Кстати, xvid кодек оказался самым менее энергозатратным, при записи, на моём 2x2Gh потребляет 30% , другие гонят ЦП до 100. Размер файла раза в 1.5 больше чем h263.
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 15.04.2016, 08:41   #2353
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Сообщение от RegIon Посмотреть сообщение
А гуглить не пытался?http://www.nrecosite.com/video_converter_net.aspx
Кстати, xvid кодек оказался самым менее энергозатратным, при записи, на моём 2x2Gh потребляет 30% , другие гонят ЦП до 100. Размер файла раза в 1.5 больше чем h263.
Если бы нагугли, то не спрашивал бы жи.

У этого nreco семплы за отдельную плату. Без семплов не совсем понятно как это правильно использовать.
(Offline)
 
Ответить с цитированием
Старый 15.04.2016, 10:02   #2354
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

Сообщение от Nex Посмотреть сообщение
Если бы нагугли, то не спрашивал бы жи.

У этого nreco семплы за отдельную плату. Без семплов не совсем понятно как это правильно использовать.
блин, и это не проблема.
http://stackoverflow.com/questions/2...g-through-rtmp

На таких ленивых и держится AssetStore
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 15.04.2016, 11:39   #2355
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Сообщение от RegIon Посмотреть сообщение
блин, и это не проблема.
http://stackoverflow.com/questions/2...g-through-rtmp

На таких ленивых и держится AssetStore
Получается если понадобилась горсть гвоздей, то надо построить станок по их производству?

На самом деле затуп вышел смешной. Оказывается я все правильно изначально делал, но юнити тыкал ошибкой связанной со Stream и из за этого я думал, что делаю не так. Но оказалось что в юнити старый mono и какие то затупы с IO.Compression. Для фикса нужно искать левые библы, которые явно будут медленней работать.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 10:27.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com