Whisk3D Core — это кроссплатформенный 3D-движок: библиотека на C++ для создания лёгких игр и приложений 2D/3D, которые работают как на современных, так и на ретросистемах. Он предоставляет единый графический API, который абстрагирует различия между разными API рендеринга и операционными системами: пишешь один раз — и код работает на Windows, Linux, Android, Symbian и в браузере (WebGL).
В его дизайне во главу угла ставятся простота, производительность и портируемость, а вдохновением послужили классические движки вроде RenderWare. Он идеально подходит для проектов с ретроэстетикой или низкими требованиями. Core — это основа Editor, но вы также можете использовать его отдельно, как фреймворк рендеринга в своих собственных проектах.
Что он умеет сегодня
- Два графических бэкенда: фиксированный конвейер (десктопный OpenGL и OpenGL ES 1.1 на Android/Symbian) и шейдеры (OpenGL ES 2.0 / WebGL). Выбирается при компиляции; высокоуровневый код при этом не меняется.
- API без единого упоминания OpenGL: всё рисуется через
w3dEngine(состояния, матрицы, материалы, источники света, туман, блендинг…), без прямого обращения к OpenGL. - Текстуры: загрузка из файла (stb на ПК/Android, ICL на Symbian) с линейной или ближайшей (nearest) фильтрацией.
- Источники света: направленный, точечный и прожекторный, до 8 на сцену, с ambient/diffuse/specular.
- Камера, сцена и геометрия: меши с нормалями/UV/цветом по вершинам, граф объектов с иерархией и анимациями.
- Собственная математика (векторы, матрицы 4x4, кватернионы) и кроссплатформенная система логирования.
Лицензия MIT: вы можете использовать его в свободных или коммерческих проектах, сделать форк и модифицировать его.
В разработке: Core продолжают очищать и упрощать (отделяя его от Editor), а в дальнейшем к нему добавят скелеты, больше ретро-бэкендов и документацию.