Мои вопросы по скриптам в Unity

Программирование на Юнити.

Мои вопросы по скриптам в Unity

Сообщение Diab10 22 апр 2011, 17:56

Пришло время разбираться со скриптингом...
Решил сделать вывод ФПС на экран, для того чтобы видеть ФПС вне редактора.

Код такой:

Синтаксис:
Используется javascript
var t=0.0;
var i=0;
function Update () {

t=t+Time.deltaTime;
i++;
if(t>=1)
{
        guiText.text = ""+i;
        t=0;
        i=0;
}

}


Мой ФПС пишет 63-65, всегда. А Stats юнити пишет от 70 до 300.
Почему такое различие?
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение DbIMok 22 апр 2011, 19:33

потому что вы не FPS выводите?
начните с блок схем или словами пишите что хотите сделать, по шагам. потом пишите "по плану" код. еще хороший вариант, поискать готовую реализацию и посмотреть как правильно это сделать.
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Мои вопросы по скриптам в Unity

Сообщение Diab10 22 апр 2011, 19:42

Поставил скрипт по вашей ссылке. Результат почти тот же. Около 68 ФПС по скрипту, и около 300 по статсу юнити.


Схема моего кода:

Каждый кадр увеличиваем счётчик кадров на 1.
Каждый кадр увеличиваем счётчик времени на Time.deltaTime

Если счётчик времени достигает 1 секунды, то выводим счётчик кадров, и обнуляем эти две переменные.
Разве не так нужно? Это конечно это грубое решение, но более менее точно должен выводить инфу
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение waruiyume 22 апр 2011, 19:52

Все верно! Вы сравнили показания скрипта и показания окна статистики, а там игнорируется время затраченное
на обслуживание редактора. Попробуйте запустить Fraps и увидите, что fps совпадает с тем который выводит скрипт.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Мои вопросы по скриптам в Unity

Сообщение Diab10 22 апр 2011, 19:57

Да, сходится с фрепсом.
Всем спасибо.

И спрашивается, нахр*на тогда нужен этот их ФПС в Статсе ~x(
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение waruiyume 22 апр 2011, 20:00

Diab10 писал(а):...И спрашивается, нахр*на тогда нужен этот их ФПС в Статсе ~x( ...

Дык примерно такой fps будет в exe билде (обычно процентов на 30 выше).
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Мои вопросы по скриптам в Unity

Сообщение Diab10 22 апр 2011, 20:03

У меня наоборот! Ещё тормознутее, чем в редакторе(если сравнивать ФПСы именно ФРАПСа в обеих случаях).
Из за чего это может быть? Я думал это нормально. Думал это из за того, что в редакторе разрешение окна меньше, чем в ехе на весь экран
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение waruiyume 22 апр 2011, 20:59

Убейте Vsinc (настройки качества Sync To VBL). Если не помогло откройте output_log.txt (папка билда\x_Data) и посмотрите сообщения об ошибках (если пусто попробуйте поставить другие дрова).
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Мои вопросы по скриптам в Unity

Сообщение DbIMok 22 апр 2011, 21:11

ладно, вы физику учили в школе? знаете про размерность величин? вы меряете количество кадров за секунду времени F/S, i / дельту времени. у вас есть время с большой погрешностью, но вы и его не используете, удовлетворившись проверкой того, что оно больше 1.

согласен, для рантайма оптимально использовать что-то типа фрапс.
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Мои вопросы по скриптам в Unity

Сообщение Diab10 22 апр 2011, 21:14

VSinc убит. Дрова когда нить скачаю другие(инет плохой). Но другие игры ведь норм идут

Посмотрите, вот лог:

Скрытый текст:
Direct3D:
Version: Direct3D 9.0c [nvd3dum.dll 8.17.12.5896]
Renderer: NVIDIA GeForce 9600 GT
Vendor: NVIDIA
VRAM: 512 MB
Caps: Shader=30 DepthRT=1 NativeDepth=1 NativeShadow=1 DF16=0 DF24=0 INTZ=1 RAWZ=0 NULL=1 RESZ=0 SlowINTZ=0
desktop: 1680x1050 59Hz; virtual: 1680x1050 at 0,0
<I> Initializing (RawInput).

<RI> Input initialized.

Non platform assembly: data-02986828 (this message is harmless)
Non platform assembly: data-029EAB60 (this message is harmless)
Non platform assembly: data-07CA0048 (this message is harmless)
Non platform assembly: data-07CAA650 (this message is harmless)
Non platform assembly: data-029F7F58 (this message is harmless)
Platform assembly: C:\Users\Public\Documents\Unity Projects\билды\gora10_Data\Managed\UnityScript.Lang.dll (this message is harmless)
Platform assembly: C:\Users\Public\Documents\Unity Projects\билды\gora10_Data\Managed\Boo.Lang.dll (this message is harmless)


В нём всё нормально?
Смущают эти строки:
Скрытый текст:
Non platform assembly: data-02986828 (this message is harmless)
Non platform assembly: data-029EAB60 (this message is harmless)
Non platform assembly: data-07CA0048 (this message is harmless)
Non platform assembly: data-07CAA650 (this message is harmless)
Non platform assembly: data-029F7F58 (this message is harmless)
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение waruiyume 22 апр 2011, 21:33

Кажется все Ok.
У меня стоит более старая версия драйвера nvd3dum.dll 8.17.12.5721 вроде не глючит (видюха та-же).
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Мои вопросы по скриптам в Unity

Сообщение DbIMok 22 апр 2011, 21:36

this message is harmless

переводить не пробовали? L-)
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Мои вопросы по скриптам в Unity

Сообщение Diab10 23 апр 2011, 07:48

DbIMok писал(а):
this message is harmless

переводить не пробовали? L-)


Гы, перевёл :D
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение Diab10 23 апр 2011, 14:13

Есть ф-я Update. Она выполняется каждый кадр. А есть какая то ф-я, чтоб вызывалась, к примеру, каждую секунду?

Вроде читал про это где то, но не могу найти(
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Re: Мои вопросы по скриптам в Unity

Сообщение Zaicheg 23 апр 2011, 14:39

Diab10 писал(а):Вроде читал про это где то, но не могу найти(

1) FixedUpdate, Time.fixedDeltaTime
2) StartCoroutine, yield, etc
3) Invoke, InvokeRepeating
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

След.

Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5