Pull to refresh
4
0
Сергей @ZimM

User

Send message
Я не минусовал, но думаю, дело в том, что это сообщение несет в себе ноль целых ноль десятых смысла
Ну если бы на VS… Наличие glmatrix.js в коде демки вас не смутило?
У этого же автора есть демка уровня Quake 2. А там, как известно, карта абсолютно статична. И у меня эта демка выдает 200 фпс, что гораздо больше 40 фпс, выдаваемых демкой из поста
Да, компилирует в нативный код. Но этот код по производительности в подметки не годится оптимизированному коду на С. Хотя и оверхедов тут дофига, не спорю
Ухты, не знал. Спасибо.
Ну вот например
        {
		clampmap textures/sfx/bullseye.tga
                tcMod stretch sin .8 0.2 0 .2
                tcmod rotate 200
                blendFunc add
                rgbGen identity
	}


Тут — вращение (rotate) и расстягивание (stretch) текстуры. а glRotate и glScale выполняются целиком на CPU даже на видеокартах с аппаратным блоком T&L
В уровнях Q3 дофига всяких динамических текстур. И они пересчитываются всё время. Небо то же… Так что вычислений на JS там предостаточно, и тупо поместить всю геометрию, скажем, в VBO, не выйдет
Где я утверждал обратное? Я к тому, что на nodejs никто не реализует сложные алгоритмы — это попросту нерационально.
И вы думаете, T&L тормозит весь процесс на современных видеокартах? В 99 году и то проблем не было.
А в чем проблема с реализацией BSP-дерева на js?
И какие же такие вычисления тут, по вашему мнению, ложатся на видеокарту?
Вряд ли. Исходники Source и GoldSource закрыты, увы. Разве что сама Valve захочет что-то такое сделать
Вот только они не были чисто сетевыми. До этого был Квейк 2, но он сносно работал даже в режиме программного рендеринга.
А синглплеере я лично проходил Дум 3 на 15-20 фпс и был этому счастлив — там не нужна большая скорость реакции
Всё-равно основные вычисления ложатся на видяху и OpenGL API

С каких это пор? Все вычисления и обработка происходит на стороне CPU. Видеокарта в данном случае тупо рисует массив треугольников с наложенными на них текстурами. Если бы всё было так, как вы говорите, то производительность была бы гораздо больше. Квейк3 вообще был довольно простой и прямолинейный в плане рендеринга. А тут это выливается в очень большие оверхеды на общение между JS и OpenGL API.
И да, еще раз — он не написал игру. Он нарисовал рисовалку карт формат Квейка 3, не более. Это на несколько порядков более простая задача, чем написать игру
Для простеньких казуалок JS — это действительно классно. Но не для динамичных шутеров, в которых FPS — залог играбельности, особенно в мультиплеере.
А в чем, по-вашему, выражается неполная кроссплатформенность Java и Flash? Вроде как они есть везде, где можно
Ну во-первых, это лишь демка рендеринга карты — выдраный из контекста кусок. Игрой тут не пахнет и близко, реальная игра покажет фпс еще раза в 3 меньше.
По сути вопроса — не скажут, еонечно же, ведь это неплохая демонстрация способностей как js-программиста. Кто ж виноват, что единственный доступный инструмент не очень подходит для такого рода проектов? Собственно, как я писал веткой выше, всю эту проблему можно решить внедрением во все браузеры чего-то типа NaCl. И тогда всем будет хорошо — и высокие фпс, и работа в браузере без посторонних примочек
Сперва добейся, ага. У вас аргументы есть иные, кроме как «это круто»? Я довольно много времени в прошлом провел с программированием 3Д и прекрасно представляю, о чем говорю. 63 фпс при рендеринге голой карты с простыми коллизиями — это медленно. Адски медленно.
И вас ни разу не смущает, что оно работает в 8-10 медленнее, чем нативная версия? Пост у меня тоже вызвал восторг, до тех пор, пока я демку не запустил. Даже падение фпс в 2-3 раза я бы простил, но это уже за гранью добра и зла, а в реальной баталии от ваших 63 фпс осталось бы и того 20, что совершенно никуда не годится. Нормальных сетевых шутеров вроде того же квейка на js не предвидится именно по этой причине, а не потому, что я такой сноб и зануда. Не надо игнорировать факты просто потому, что вам так нравится идея работы этой демки без инсталляции и флеша. Не зря ведь Quake Live работает с помощью плагина в нативном коде
Нет, я просто не понимаю лютого восторга в посте и комментах, типа «игрушка показывает отличный показатель fps». Это ведь банальная неправда.
Я говорю о перспективах js (и WebGL) в геймдеве в целом. И эта демка — очень показательный пример. Как just for fun — безусловно интересная работа, хоть и безсмысленная
И это только прототип. Если сделать полный порт и поставить в игру несколько ботов, то фпс спокойно и до 15-20 опустится, полагаю. Ну и кому такое надо? Вот Гугл это понял и пилит свой NaCl, за что им респект и уважуха. Ибо, право, поднадоело портирование всего чего ни попадя на js с многократным падением производительности

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity