Есть ли 2d sprite библиотека для webgl?
Я хочу построить 2d-игру с помощью WebGL. Я хочу аппаратное ускорение, которое предоставляет WebGL, и я не могу получить это из контекста 2D-холста в теге canvas.
С учетом сказанного, есть ли учебник по созданию 2D спрайтов с использованием webGL? Или, еще лучше, есть ли 2D-спрайт-библиотека для WebGL? В идеале я ищу что-то вроде cocos2d, портированное в WebGL.
Неудивительно, что все демонстрации, учебники и библиотеки, которые я нашел для WebGL, сосредоточены на 3D-манипуляции. Существуют ли библиотеки WebGL, которые поддерживают 2D спрайты?
Ответы
Ответ 1
Возможно, я ошибаюсь, но я подумал, что 2D-canvas API был спроектирован таким образом, что браузеры могут использовать аппаратное ускорение, но они еще не решили. Я ожидаю, что реализация холста 2D значительно улучшится по мере продвижения WebGL.
Ответ 2
Вы можете найти 2D-интерфейс холста в webGL здесь
Ответ 3
Недавно я нажал на github простую 2d-библиотеку, написанную на webgl с наивным (но функциональным) резервом холста. Он использует тот же график сцены, что и cocos2d, вы можете проверить его на http://github.com/funkaster/ChesterGL - обратите внимание, что его функционал не на 100%, но вы можете его использовать в качестве отправной точки для написания простой 2-й игры
Ответ 4
2D в 3D очень легко сделать. Вам просто нужно поместить все ваши объекты в плоскость и масштабировать окно просмотра, чтобы нарисовать нужную часть этой плоскости.
В любом случае, существует около 10 лет, пока вы не сможете найти возможности WebGL в большинстве браузеров. С помощью правильных методов вы можете пройти долгий путь без использования холста, трюк использования предварительных поворотов вашей графики должен быть знаком с любым разработчиком игры JavaScript, а также с анимацией "спрайт".
Важным вопросом является то, что вы просто играете с инструментами, или вы делаете игру, в которой люди должны играть и наслаждаться?
Ответ 5
Имейте в виду, что вы можете использовать режим рисования gl.POINTS и нарисовать текстуру (спрайт) в каждой точке вместо точки. Вам просто нужно использовать пробоотборник. Это действительно мощно.
Ответ 6
Pixi.js в настоящее время является наиболее стабильным и активным:
https://github.com/GoodBoyDigital/pixi.js/
Ответ 7
Это может быть немного немного, но я думаю, что это стоит усилий, если кто-то пытается найти хорошую оболочку WebGL для манипулирования 2D-объектами. Я настоятельно рекомендую fabric.js, который предоставляет интерактивную объектную модель поверх элемента холста. Он также имеет синтаксические анализаторы SVG-to-canvas (и canvas-to-SVG). Раздел demos официального веб-сайта четко показывает потенциал этой библиотеки javascript.