М.Двач / Gamedev

Двач.hk не отвечает.
Вы видите копию треда, сохраненную 11 июля 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

24 Кб, 960x720

Игра на джаваскриптах / кссах 21 Мар, 21:06 #247051 В конец треда | Веб

Сап /gd/. Собственно сабж. Есть базовые знания css / jq. Хочется сделать свой платформер / шут эм ап. Совсем бред и дохуя хочу или это имеет место быть? Поделитесь чем нить годным, что можно почитать в этом духе.

Ответы>>247160>>247662>>258188>>258914

sage 21 Мар, 22:31 #2 #247080

Прочитал как "Игра на джазовых скрипках".

sage 22 Мар, 00:31 #3 #247125

uneti

22 Мар, 01:57 #4 #247139

Не бред, запросто делается штатными средствами без всяких там движков.

22 Мар, 09:27 #5 #247160

>>247051 (OP)
Заебёшься, так как полноценных движков нет. Есть фреймворки, которые слегка ускоряют процесс, но в отличие от того же c# тебе придётся очень много сделать, чтобы через неделю кодинга иметь более менее вменяемый код.

Я уже не говорю про главную проблему js - последовательность выполнения. Несмотря на асинхронность языка, все операции выполняются строго последовательно. Поэтому любые сцены, где много объектов и вычислений заметно проигрывают остальным вариантам.

Лучшая практика использовать webgl через unity. Там вопрос асинхронности решается авторами юнити. Из минусов, несмотря на активную их работу, всё достаточно сыро.

Легко может случиться, что ты писал игру на webgl, а юнитиавторы всё переделали или добавили/вырезали фичу из-за которой придётся всё переделывать.

Ответы>>247169>>247240>>247428>>258150

22 Мар, 09:58 #6 #247169

>>247160
Максимум диван.
мимо-запилил дохуя игр на js без писечек и тормозов

Ответы>>247177

22 Мар, 10:41 #7 #247177

>>247169
Пока я вижу, что ты только трусы свои залил.

Ответы>>247181

22 Мар, 10:59 #8 #247181

>>247177
Ладно, обосу тебя, уговорил.
>полноценных движков нет
Есть. Например фейзер для 2д, плейканвас для 3д, и еще куча других. Это полноценные движки, в них даже редакторы сцен а-ля унити имеются.

>в отличие от того же c#
Игру с нуля на js написать в 1000 раз проще, чем на с#. Под с# подразумевают юнити только юнитидети.

>уже не говорю про главную проблему js - последовательность выполнения. Несмотря на асинхронность языка, все операции выполняются строго последовательно.
Что ты блядь несешь вообще?

>Поэтому любые сцены, где много объектов и вычислений заметно проигрывают остальным вариантам.
Каким вариантам? Почему ты пишешь о ЮНИТИ во множественном числе?

>Лучшая практика использовать webgl через unity. Там вопрос асинхронности решается авторами юнити.
Охуительные истории. Я уж не говорю про твою уверенность что
>c# = unyti
>webgl = unity
но сейчас ты имеешь в виду бОльшую производительность при использовании унити? 10МБ js-дрисни охуенно быстро работают, да. Как решается "вопрос асинхронности" - что бы это не значило - если юнити экспортирует игру в ту же жс-дрисню?

>Легко может случиться, что ты писал игру на webgl, а юнитиавторы всё переделали или добавили/вырезали фичу из-за которой придётся всё переделывать.
Дебил, блядь.
>webgl = unity

Откуда вы лезете? В ньюфаготреде уже пиксельарт в векторе рисуют. Новое поколение кириллов.

Ответы>>247231>>247232

sage 22 Мар, 13:57 #9 #247231

>>247181
> пиксельарт в векторе рисуют
Технологии не стоят на месте, ретроград.

Ответы>>247378

22 Мар, 14:04 #10 #247232

>>247181
Анон, поясни за файзер. Мне книгу по нему подогнали, думаю обмазаться именно ним, стоит ли углубляться?

22 Мар, 14:58 #11 #247240

>>247160
что блядь? лучшая практика?! какая в пиздень лучшая практика, проснись, ты обосрался! вебгл под хуюнити только-только вылазит из стадии забагованного говнеца, добрая половина юнити-обезъян до сих пор из вебплеера не вылезла. вот когда все поголовно начнут все игры под юнитивский вебгл ебошить тогда и можно говорить о лучших практиках.
а вопрос асинхронности в юнити-вебгл решен чуть менее чем никак. ее там нет. и не будет. потому что весь код - в джаваскрипте (в джаваскрипт засунут байткод крестов странслированный с интермидиэт лэнгвидж то бишь с сишарпа) для виртуальной машины на джаваскрипте же с виртуальными методами 3д канваса. джаваскрипт в джаваскрипте никаких плагинов. весит такой джаваскрипт десятки и иногда сотни мегабайт. не говорю уже о плачевной производительности такого кода.
есть правда у мозиллы задел на будущее который позволит доставлять вебгл игры с меньшим количеством костылей. но даже когда он появится долгое время это будет мозилла-онли решение.

вывод: для 2д игры лучше использовать голый хтмл5 либо хтмл5 двиглан коих море сейчас. для 3д... если так уж хочется 3д игру иметь прямо в браузере - есть движки и на это. специализированные вебгл движки. навскидку - three.js

Ответы>>247244

22 Мар, 15:29 #12 #247244

>>247240
Так-то ещё и сам вебгл в стадии забагованного пиздеца.

Ответы>>247251>>247429

22 Мар, 16:13 #13 #247251

>>247244
Если твой амиго-браузер не поддерживает вебгл - дело не вебгл.

Ответы>>247261

22 Мар, 17:10 #14 #247261

>>247251
Дело не в браузере, а в вебгл.

22 Мар, 23:53 #15 #247378

>>247231
проиграл. Ещё и сажу прикрепил. ТЫ небось и из js знаешь только жикюери, и думаешь что это и есть js

Ответы>>247381

23 Мар, 01:35 #16 #247381

>>247378
блядь ты что сука совсем дебил? js это js. jquery просто хелпер-либа, всё, можно даже её не знать (хотя хули там знать) и при этом прекрасно владеть js и делать на нём игори.

23 Мар, 11:51 #17 #247428

>>247160
Пиздец даун. ОП, не слушай его.

23 Мар, 11:52 #18 #247429

>>247244
Что в WebGL забаговано, ебанутый?

Ответы>>247431

23 Мар, 12:01 #19 #247431

>>247429
В веб гл всё пиздато. От освещения до производительности.

Ответы>>247485

оп 23 Мар, 12:36 #20 #247443

Спасибо анон. Много новых названий узнал. Просто почему меня интересует именно возможность сделать 2д проект именно в браузере, только не лулзайте и не обоссывайте, потому что мне кажется тут должно быть проще. Ибо браузеры уже дохуя умеют сами. И, как мне кажется, для 2д проекта должны неплохо справиться с этой задачей. Потому что ничего сверхсложного и тем более инновационного я не планирую пилить. Да, знаю, что лучше для этого использовать какие-нибудь плюса / шарпы, но не хочу вникать в их дебри.

Ответы>>247445

23 Мар, 12:43 #21 #247445

>>247443
Ок, Оп, как пацан-пацану.

Всё что сложней карточной параши рекомендую пилить в канвасе/на вебГл, а не дивами с CSS-ом. Сам юзаю Cocos2d-JS, ещё есть phazer-lazer-мульйон других либов/фреймворков. Самому писать все абстракции вроде сцен, поддержки спрайтов и.т.д. и.т.п. не рекомендую, если только ты не движкоёб который хочет движок писать в этом случае юзай pixi для рендеринга и хуярь всё сам
Вопросы можешь писать в тред, если пойдёшь по пути кокоса и 2д - смогу подсказать мб

Ответы>>247461>>247476

23 Мар, 14:14 #22 #247461

>>247445
О, можешь подсказать ресурсы/туториалы по Кокосу? Оф. Документация скудновата.
Используешь какие-нить вспомогательные тулзы? Можешь что-нить рассказать про CocosStudio/CocosCreator?
Доводилось ли выкатывать игру на cocos-js на нативные платформы?
Ну и вообще расскажи: какие игры пилил, советы, подводные камни и т.п.

мимодругойанон

Ответы>>248119

23 Мар, 16:11 #23 #247476

>>247445
от души братишка. Признаюсь, что мне интересно написать движок с нуля, но я понял, что очень много велосипедов придется пилить

23 Мар, 17:58 #24 #247485

>>247431
Это сарказм?

Если нет, то куда ты лезешь, юнити-хуесосина?

Ответы>>247487

23 Мар, 18:13 #25 #247487

>>247485
>В веб гл всё пиздато. От освещения
>WebGL does not have inherent support for lighting
>пиздато
Догадайся с одного раза, что это было.

Ответы>>247494

23 Мар, 19:07 #26 #247494

>>247487
Кириллы продолжают пробивать дно. Зайди в демки three.js и ты там увидишь все вплоть до deferred освещения.

Ответы>>247501

sage 23 Мар, 20:09 #27 #247501

>>247494
Нет поддержки аппаратного ускорения. С three.js всё очень пиздато, как и со всем вебгл.

Ответы>>247504

sage 23 Мар, 20:18 #28 #247504

>>247501
>Нет поддержки аппаратного ускорения.
Это как, шейдеры на CPU? Нахуй послан.

Ответы>>247505

sage 23 Мар, 20:26 #29 #247505

>>247504
Cофтварный рендеринг. Очень пиздато.

Ответы>>247511

sage 23 Мар, 20:44 #30 #247511

>>247505
В three есть софтрендер, но в него надо специально переключаться.

Ответы>>247512

sage 23 Мар, 20:53 #31 #247512

>>247511
У всего вебгл нет аппаратного ускорения. Например тут поясняют
http://stackoverflow.com/questions/2980959/high-cpu-usage-with-webgl
>it is basicly does GPU - CPU - GPU calls
Что на самом деле есть пиздёж, т.к во всех рендер движках происходят такие вызовы, но в нормальных движках непосредственно рендерингом занимается гпу. Но не в вебгл. Очень пиздато.

Ответы>>247583

sage 24 Мар, 03:45 #32 #247583

>>247512
>Jun 5, 10
С тех пор многое изменилось, мань.

Наползло с геймдева сру долбоебов, в гд страшно заходить в последнее время.

Ответы>>247665

24 Мар, 13:25 #33 #247662

>>247051 (OP)
cocos2d-x
мимокрок

sage 24 Мар, 13:34 #34 #247665

>>247583
Ничего в вебгл не изменилось - как была мертворожденная хуйня, так и осталась. И да, проц грузит пиздец как. Мимохромобог

25 Мар, 13:24 #35 #248119

>>247461
>О, можешь подсказать ресурсы/туториалы по Кокосу? Оф. Документация скудновата.
Да нормальная документация. Я сначала сделал все игры из этой книжки: https://www.packtpub.com/game-development/learning-cocos2d-js-game-development легко воруется в интернете - там что-то вроде 6-8 примеров, всего 100 страниц, можно по игре в день за неделю освоить. потом офф. документация рулит более чем + можешь тут спрашивать, или давай писечками обменяемся, если прям уж так заинтересован
>Используешь какие-нить вспомогательные тулзы? Можешь что-нить рассказать про CocosStudio/CocosCreator?
Cocos Studio установил, но уже тогда было штук 10 прототипов в блокноте написанных, и как-то просто забил разбираться в этой громадной хуйне. Для частиц можно юзать http://particle2dx.com/ текстурки паковать Texture Packer-ом, тайлмапы делать в Tiled.
>Доводилось ли выкатывать игру на cocos-js на нативные платформы?
На досуге я настраивал билдчейн для андроид / пытался откомпилить свою игру. Если вкратце - можно, но это пердолинг, особенно если ты не юзал cocos cmd с самого начала. Если надеешься написать игру, а потом "портировать" на нативные платформы - жди биды и много пердолинга. Хитрый ляо расчитывал что ты НАЧНЁШЬ делать все сразу из кокос кмд, компиля игру/тестирую с самого раннего прототипа на нативе. Чтоб КАК ТОЛЬКО ты где-то сошел с пути истинного, регулярная компиляция-тест всё сразу и выдали. Но так-то да, если откомпилишь работоспособный АПК - перформанс есть, всё работает.
>какие игры пилил, советы, подводные камни и т.п.
Пилил штук 10 прототипов: те что из книжки + свои. До около-"файналайзд" вида дошло пока 1.5 игры. Сам кокос - заебись, как только разберёшься с инструментарием - всё очень интуитивно понятно. Пилил вертикальные платформеры вроде doodle jump, всякие три-в-ряд поделия, головоломку с box2d-физикой.
Советы:
1. Иди делай игры из книжки какую скинул. И потом дальше сам делай. Чем больше сделаешь именно законченных игр с меню, звуками, законченных короче, тем ближе будешь к дзену и успеху.
2. Перформанс на десктопе в браузере - офигенный, кто бы там что не пиздел. Если у тебя не 1000 спрайтов на экране, и ты игру не в 1080р рендеришь - всё у тебя будет хорошо мой сладкий. я юзаю какие-то 16:10 мобильные резолюшены 320х568 или типа того. для пикселепараши отлично
3. Перформанс на мобилках вполне преемлемый для того чтоб нихуя не оборачивать. Все кто рассказывает о том что на мобилках - говно, скорей всего не юзают SpriteBatchNode и не удаляют мать их спрайты из памяти, когда те не на экране. Нахуй таких ублюдков. Частицы на мобиле надо уже с умом использовать, или просто проверять через cc.sys мобила или десктоп, и только на десктопе особо жирную хуйню показывать
4. Хочешь билдить в нейтив - начинай с того что сбилдишь хеловорлд и потом от него, работающего на мобиле через adt например, уже пляши. И каждый час сука компиль, чтоб потом не охуевать от logcat-а
5. SpriteBatchNode. Он и спрайтпул - твоя ниточка, потянув за которую фпс опять станет 60, если у тебя дохуя всего на экране сразу
6. Поддержка TXM-тайлмапов в cocos2d-js ограничена. Все что ты прочтёшь для 2-х, 2-iphone и.т.д. - в случае с жс-версией не совсем так. Тайлмеп в cocos2d-js можно только как референс юзать, с картой уровня/метаданными, а рендерить содержимое самому. Так сможешь tiled юзать как редактор уровней.

Вроде всю мудрость выплюнул. Пишите если что

25 Мар, 13:24 #35 #248119

>>247461
>О, можешь подсказать ресурсы/туториалы по Кокосу? Оф. Документация скудновата.
Да нормальная документация. Я сначала сделал все игры из этой книжки: https://www.packtpub.com/game-development/learning-cocos2d-js-game-development легко воруется в интернете - там что-то вроде 6-8 примеров, всего 100 страниц, можно по игре в день за неделю освоить. потом офф. документация рулит более чем + можешь тут спрашивать, или давай писечками обменяемся, если прям уж так заинтересован
>Используешь какие-нить вспомогательные тулзы? Можешь что-нить рассказать про CocosStudio/CocosCreator?
Cocos Studio установил, но уже тогда было штук 10 прототипов в блокноте написанных, и как-то просто забил разбираться в этой громадной хуйне. Для частиц можно юзать http://particle2dx.com/ текстурки паковать Texture Packer-ом, тайлмапы делать в Tiled.
>Доводилось ли выкатывать игру на cocos-js на нативные платформы?
На досуге я настраивал билдчейн для андроид / пытался откомпилить свою игру. Если вкратце - можно, но это пердолинг, особенно если ты не юзал cocos cmd с самого начала. Если надеешься написать игру, а потом "портировать" на нативные платформы - жди биды и много пердолинга. Хитрый ляо расчитывал что ты НАЧНЁШЬ делать все сразу из кокос кмд, компиля игру/тестирую с самого раннего прототипа на нативе. Чтоб КАК ТОЛЬКО ты где-то сошел с пути истинного, регулярная компиляция-тест всё сразу и выдали. Но так-то да, если откомпилишь работоспособный АПК - перформанс есть, всё работает.
>какие игры пилил, советы, подводные камни и т.п.
Пилил штук 10 прототипов: те что из книжки + свои. До около-"файналайзд" вида дошло пока 1.5 игры. Сам кокос - заебись, как только разберёшься с инструментарием - всё очень интуитивно понятно. Пилил вертикальные платформеры вроде doodle jump, всякие три-в-ряд поделия, головоломку с box2d-физикой.
Советы:
1. Иди делай игры из книжки какую скинул. И потом дальше сам делай. Чем больше сделаешь именно законченных игр с меню, звуками, законченных короче, тем ближе будешь к дзену и успеху.
2. Перформанс на десктопе в браузере - офигенный, кто бы там что не пиздел. Если у тебя не 1000 спрайтов на экране, и ты игру не в 1080р рендеришь - всё у тебя будет хорошо мой сладкий. я юзаю какие-то 16:10 мобильные резолюшены 320х568 или типа того. для пикселепараши отлично
3. Перформанс на мобилках вполне преемлемый для того чтоб нихуя не оборачивать. Все кто рассказывает о том что на мобилках - говно, скорей всего не юзают SpriteBatchNode и не удаляют мать их спрайты из памяти, когда те не на экране. Нахуй таких ублюдков. Частицы на мобиле надо уже с умом использовать, или просто проверять через cc.sys мобила или десктоп, и только на десктопе особо жирную хуйню показывать
4. Хочешь билдить в нейтив - начинай с того что сбилдишь хеловорлд и потом от него, работающего на мобиле через adt например, уже пляши. И каждый час сука компиль, чтоб потом не охуевать от logcat-а
5. SpriteBatchNode. Он и спрайтпул - твоя ниточка, потянув за которую фпс опять станет 60, если у тебя дохуя всего на экране сразу
6. Поддержка TXM-тайлмапов в cocos2d-js ограничена. Все что ты прочтёшь для 2-х, 2-iphone и.т.д. - в случае с жс-версией не совсем так. Тайлмеп в cocos2d-js можно только как референс юзать, с картой уровня/метаданными, а рендерить содержимое самому. Так сможешь tiled юзать как редактор уровней.

Вроде всю мудрость выплюнул. Пишите если что

Показать весь текст
Ответы>>258145>>258818

13 Май, 23:58 #36 #258145

>>248119
Я конечно извиняюсь что лезу не в тот тред, но вижу ты чувак хорошо шаряший в кокосе и билде конкретно для ведроида. Короче в чем беда - не могу нормально настроить сборку, как все было:
1) Создал я из консольки новый проект; (-l cpp)
2) Откомпилил, запутсил на мобилке - все ОК;
3) Открываю proj.android-studio собственно студией;
4) Вношу изменения в AppActivity (просто логирование с помощью Timber);
5) Ожидание - логи с текгом AppActivity, на деле - нихуя;
6) Окей может надо еще раз cocos compile -p android --android-studio?
7) Не помогло, решил проверить и вставил Log.d(TAG, "Cocos sucks!"); в onCreate Cocos2dxActivity - после перекомпиляции все сработало;
Короче как это все починить? Алсо может знаешь поему 3.11 раза в полтора меньше 3.10, какой лучше использовать?

14 Май, 01:15 #37 #258150

>>247160
>Там вопрос асинхронности решается авторами юнити.
Это вообще о чём / как? О какой асинхронности идёт речь при выполнении JS в браузере?

122 Кб, 1146x938

14 Май, 01:49 #38 #258151

все джаваскриптеры такие ебанутые

14 Май, 06:11 #39 #258154

+

14 Май, 12:30 #40 #258188

>>247051 (OP)
На канвасе пили, Phaser/Laser + ionic, и вот ты уже на мобильных платформах

16 Май, 20:53 #41 #258818

>>248119
Спасибо за книгу, давно ищу нормальный туториал

sage 17 Май, 12:43 #42 #258914

>>247051 (OP)
Базовых не хватит. Нужно уметь как минимум в канвас.

03 Июн, 18:30 #43 #263055

Кто-нибудь знает, нужны ли всякие минимизаторы/обфускаторы джаваскрипта?

Ответы>>263056

03 Июн, 18:34 #44 #263056

>>263055
Допустим. И что, ты теперь игру сделаешь что ли?

Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 11 июля 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /gd/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion