forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Болтовня (http://forum.boolean.name/forumdisplay.php?f=25)
-   -   Самолётик (http://forum.boolean.name/showthread.php?t=18098)

ABTOMAT 28.04.2013 02:32

Ответ: Самолётик
 
Сделал наконец нормальное уничтожение врагов: взрыв и разлёт обломков.

Это потребовало осилить бленды в WebGL и сделать соответствующий функционал движка. Впрочем, оказалось не так-то сложно.

Наконец убрал эту мерцающую срамоту вдали при помощи тумана (кстати он основан тупо на трансформированной Z-координате).



Arton 28.04.2013 18:59

Ответ: Самолётик
 
Когда самолётики не прилетели FPS был ~37, а затем стал падать, ~27 - 18 и FF теперь грузит проц больше 60%.

P. S. Странно, ~400 очков, игра разошлась и фпс стал более менее стабильный около 24.

ABTOMAT 28.04.2013 19:27

Ответ: Самолётик
 
Да, кстати, я там косячков поисправлял в плане производительности.
Но так или иначе это javascript, не стоит от него ждать высоких скоростей.

Arton 28.04.2013 22:57

Ответ: Самолётик
 
Набил 2090 очков, минут за... ~20. FPS максимальный 25, минимальный 17, в полноэкранном разрешение 1280x1024.

ABTOMAT 28.04.2013 23:10

Ответ: Самолётик
 
Лол, хватило же терпения) Надо бы сделать уже таблицу рекордов, чтобы такие подвиги не остались в забвении!
Ну и челлендж какой-нибудь, а то бессмертным с бесконечными патронами быть надоедает(.
Спасибо за репорт FPS.
Если не затруднит, то сообщи, на каком компе это дело происходило и в каком браузере, в фулскрине или нет.
Дело в том, что в FF у меня работает ощутимо медленнее, чем в Chrome, однако если включить фулскрин в FF, то тоже всё быстро.

Arton 28.04.2013 23:21

Ответ: Самолётик
 
Цитата:

Сообщение от ABTOMAT (Сообщение 258023)
Лол, хватило же терпения) Надо бы сделать уже таблицу рекордов, чтобы такие подвиги не остались в забвении!
Ну и челлендж какой-нибудь, а то бессмертным с бесконечными патронами быть надоедает(.
Спасибо за репорт FPS.
Если не затруднит, то сообщи, на каком компе это дело происходило и в каком браузере, в фулскрине или нет.
Дело в том, что в FF у меня работает ощутимо медленнее, чем в Chrome, однако если включить фулскрин в FF, то тоже всё быстро.

ЦП - Intel Core 2 Duo E6320 1.86 GHz

ГП - Palit GeForce GTS 450

Мамка - Asrock G31M-S R2.0

3 Гб ОЗУ DDR2

Я же написал что играл в фулскрине и у меня наоборот в фулскрине тормознее.

AVL 28.04.2013 23:45

Ответ: Самолётик
 
Цитата:

Сообщение от ABTOMAT (Сообщение 258000)
Но так или иначе это javascript, не стоит от него ждать высоких скоростей.

Так или иначе, это "пара странных текстур и полтора полигона", которые не тормозили бы на компах 15-летней давности (при условии использования компилируемых языков программирования).

ABTOMAT 28.04.2013 23:55

Ответ: Самолётик
 
У всего есть свои достоинства и недостатки.
У javascript'а есть ощутимый плюс, которого нет у компилируемых языков программирования: работает везде, где есть браузер.
Ну как минимум, это без лишнего беспокойства с моей стороны работает на Windows, GNU/Linux based, Mac, BSD а также на Андроидах (в них к сожалению пока надо включать вручную поддержу webgl, но я уверен, что это временно).
А с использованием КЯП пришлось бы не только перекомпилировыввать, но и учитывать особенности платформ, распространять бинарники и т.д.
Кроме того, основную нагрузку даёт сам javascript, а не сам рендер, так как те же буфера и шейдеры хранятся и обрабатываются на видеокарте, "как у взрослых". То есть если сейчас вместо "пары странных текстур и полутора полигонов" засовать туда модели пополигонистее, текстуры побольше, а в шейдерах сделать бампы-тени, то FPS просядет не сильно.
Кстати текстура сейчас там одна.

jimon 29.04.2013 00:18

Ответ: Самолётик
 

[trolling_special_for_moka__too_long_story]
Moka, ну где там твой html5 на мобилочках ? когда пк лососнул и выдал 20 фпс
[/trolling_special_for_moka__too_long_story]

ABTOMAT 29.04.2013 00:26

Ответ: Самолётик
 
Let the butthurt begin!

AVL 29.04.2013 00:38

Ответ: Самолётик
 
Цитата:

Сообщение от ABTOMAT (Сообщение 258037)
Windows, GNU/Linux based, Mac, BSD а также на Андроидах

Java - хоть и тоже интерпретируется, но работает намного быстрее на всех тех же платформах (ну разве что под Android кое-что переписать придется).

devolonter 29.04.2013 01:22

Ответ: Самолётик
 
Проблема не в WebGL или JS. Тут реализация хромает. На самом деле я не вижу ничего, что могло бы так грузить. Нужно посидеть с профайлером и найти узкие места, но я думаю долго искать не придется. Производительность можно серьезно поднять.

jimon 29.04.2013 01:32

Ответ: Самолётик
 

[troll_mode__too_long_story]
но неееет, мне же обещали что раз написал и везде работает збс, а тут профайлер, что за на*балово ёмаё ?
[/troll_mode__too_long_story]

ABTOMAT 29.04.2013 02:43

Ответ: Самолётик
 
Цитата:

Сообщение от devolonter (Сообщение 258051)
Проблема не в WebGL или JS. Тут реализация хромает. На самом деле я не вижу ничего, что могло бы так грузить. Нужно посидеть с профайлером и найти узкие места, но я думаю долго искать не придется. Производительность можно серьезно поднять.

Можно бы сделать деревья и пули инстансингом. Можно объединить самолёты в один меш (сейчас каждая деталька — отдельный объект). Ещё у меня есть сомнения в том, правильно ли я обошёлся с листами объектов. Да много чо можно и мне об этом известно. Но вообще эта игра не является самостоятельным продуктом, а создавалась для теста движка: выявить, где чего не хватает. В т.ч. и наметить, где что надо улучшать. И эту задачу игра выполнила. Делать трудоёмкую оптимизацию не буду (производительность на моём пека меня устраивает), лишь доведу до конца: сделаю набор очков, здоровье и бонусы, потому что решил, что буду доделывать все поделки до конца (а то уже сколько лет я тута, а готовых проектов раз-два и обчёлся)

devolonter 29.04.2013 03:03

Ответ: Самолётик
 
Ну просто некоторые люди делают выводы о технологии по вашему опыту, а вы изначально указали на причину в JS, что не совсем верно. А так, я не настаиваю на оптимизации, просто говорю что производительность тут можно серьезно улучшить и это без объединения мэшей и прочего. Я бы мог попробовать, но это нужно денек-другой посидеть. Если будет свободное время может быть попробую оптимизировать ваш код, если вам конечно интересно.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot