Очевидно. Но хотелось бы узнать чему больше отдают предпочтение для браузерных игр: 3д или 2д, вебГЛ или канвас. И начинает ли набирать 3д популярность в вебе
Ну, лично я пока не встречал «production» 3D игр в web: только экспериментальные порты всяких Quake и т.п. для интересующихся, но не для широкой аудитории.
Я бы выбрал canvas, но только потому, что что-то мне подсказывает что «кривая обучения» canvas побыстрее будет. Если же предположить что я менеджер и не испытываю нехватки квалифицированных разработчиков и прочих ресурсов, то, наверно, WebGL т.к. оно, вроде как, ускоряется аппаратно (и поддержка его, похоже, всё ширится и улучшается). 2D, на сколько я понимаю, делают и на OpenGL, а следовательно (или я не прав?) и на WebGL.
Вот поэтому я люблю flash, там «все в одном» и 2D и 3D. Плюс удобная работа с видео и аудио.
В интернете можно найти тысячи(если не миллионы) онлайн игр различного жанра на flash.
Canvas — это элемент html5. WebGL — технология, которая предоставляет API для аппаратного просчета 3D графики. И рисуется эта графика на том же самом канвасе в 3D контексте. Так что если выбирать js + html5 для игры, то canvas будет в любом случае, а вопрос будет заключаться в типе используемого контекста.
Да, WebGL ускоряется аппаратно, но производители браузеров уделяют 2d контексту не меньше внимания. В частности у хрома уже есть поддержка аппаратного ускорения для 2d контекста(включается в about:flags).
У webGL есть серьезные проблемы с безопасностью, так же её забраковала m$. Думаю сейчас стоит поработать с canvas, а дальше посмотреть куда вода потечет.
Иногда разрдражает фанатизм по канвасу, вещи для которых svg подходит больше люди все равно хотят делать на кавнвасе, потому что модно а многие даже не знают про svg видимо и автор опроса тоже не знает.
С SVG надо быть аккуратнее. Все-таки многие операции провоцируют DOM reflow и repaint. Даже если сам SVG быстр, как в IE, это не значит, что все решение будет быстрым.
В целом, никто не мешает использовать и то, и другое.
Я бы посмотрел на это со стороны производительности и охвата. Canvas есть в IE9 и там он аппаратно ускорен. Из-за этого IE на многих своих графических бенчмарках делает и Chrome, и FF. Да, это очередная пузомерка, но она весьма популярна, и потому я уверен, что остальные браузеры тоже будут работать в этом направлении. По факту я точно знаю, что работа над аппаратным ускорением ведется в Mozilla.
С другой стороны, WebGL пока на IE не предвидится. Какие-то умельцы из России клепают WebGL-плагин для IE, но он платный. Не думаю, что вы готовы платить за него, тем более просить пользователей ставить какой-то сомнительный плагин — не знаю не знаю. Также на Intel HD все canvas-демки у меня тормозят заметно меньше, чем WebGL, а на двух старых ноутах даже с дискретной графикой WebGL не завелся, пока я видеодрайвера не обновил. Вы хотите, чтоб пользователи с этим заморачивались?
Так что смотрите сами. Если вам хватает canvas, я не вижу смысла переходить на WebGL.
Еще посмотрите в сторону CSS3 transformations — они на некоторых мобильных платформах тоже с ускорением работают. Вообще пишите код так, чтобы графику изолировать: при случае будет проще еще один бэкэнд добавить или вообще пересесть.
Какую технологию вы бы использовали сейчас при написании браузерной игры с элементами РПГ?