Привет.
В голове засела идея написать одну игрушку, что-то типа на подобии agario.
Нативный JS я знаю, но я применял его только в создании сайта, никогда не применял canvas и т.д.
Вот, что я бы хотел реализовать:
1) Город. Да, это будет карта с домами и т.д.
2) Персонажи, которые по факту будут бегать по улицам.
Так вот, собственно, игра будет в 3D, на каком движке можно это реализовать? Как интегрировать текстуры на карту?
Как реализовать такую систему, чтобы персонаж не проходил сквозь текстуры?
Да, я понимаю, что по факту прошу готовый сурс, но нет! Попрошу, пожалуйста, помогите найти правильную документацию, где описаны эти алгоритмы создания игр. Буду очень благодарен!
Дефакто стандарт разработки 3d игр на JS библиотека - threeJS https://threejs.org/ Она упрощает работу с webgl и имеет только самое необходимое для создания мира - scenegraph, камеры, источники света, растяжку текстур на 3d модели. У библиотеки большое сообщество и много учебников в сети. Чтобы персонаж не проходил сквозь текстуры называется collision detection. В threeJS реализован только самый базовый инструмент для этого - класс Raycaster.построенный на тех же рутинах что и raytracer А чтобы не роверять пересечения каждого с каждым вам нужно будет узнать например про структуру данных quadtree. Встроенного движка физики в библиотеке нет, предполагается что вы будете использовать по своему выбору. Что бы писать на этой библиотеке вам нужно будет подкачать скилл игроделания, но она быстрая.
Если хотите побольше изкоробки берите фреймворк. Например заслуженно популярен Babylon.js www.babylonjs.com Кривая вхождения пониже, встроенного инструментария побольше(например движок физики и скелетная анимация), но работает помедленнее и жрет больше вычислительного ресурса. Tutorials в сети тоже достаточно.