Дуб3D - Oak3D

Дуб3D
Стабильный выпуск
0.5.5 / 28 марта 2012 г. (2012-03-28)
Написано вJavaScript
Операционная системаКроссплатформенность
ТипJavaScript API
Интернет сайт[1] (oak3d.com, archive.org 09/2012)

Дуб3D это бесплатная библиотека JavaScript для разработки 3D-графики на основе HTML5 WebGL стандарт, посвященный реализации Web3D приложения с ускорением GPU для всех интерфейсных разработчиков простым и эффективным способом.

Разработанный с использованием JavaScript, Oak3D может изначально предоставить кроссплатформенное решение для Windows, Linux, Mac и Android. Без установленных или загруженных плагинов приложения web3D на основе Oak3D могут работать во всех современных интернет-браузерах, поддерживающих WebGL.

Oak3D предоставляет набор простых и удобных в использовании API, которые позволяют веб-разработчикам разрабатывать приложения web3D, не касаясь деталей реализации трехмерной графики. Кроме того, Oak3D также предоставляет множество видов функциональных библиотек, таких как математическая библиотека, библиотека моделей, библиотека скелетной анимации и т. Д.

Oak3D дополнительно предоставляет инструменты для преобразования традиционных художественных ресурсов в формат, приемлемый непосредственно для Oak3D.

Oak3D состоит из двух слоев: Oak3D Core и Oak3D Engine. Следующая форма показывает архитектуру.

Oak3D Introduction.jpg

Oak3D Core

Уровень «Ядро» обеспечивает функциональную оболочку для низкоуровневого API WebGL и базовых функциональных библиотек для разработки трехмерной графики.

Разработчики имеют полную гибкость на этом уровне, и «основные» интерфейсы могут быть смешаны с исходным кодом WebGL. Старшие пользователи с богатым опытом работы с компьютерной графикой могут иметь больший контроль над 3D-приложениями на этом уровне.

Oak3D Engine

Слой «Engine» обеспечивает полный механизм 3D-рендеринга, созданный на основе Oak3D Core, включая управление 3D-сценами, систему материалов, разнотипное освещение, динамическую тень, анимацию скелета, рельеф и другие интересные функции. На этом уровне разработчики могут реализовать приложение web3D, не касаясь деталей рендеринга. (Oak3D Engine пока находится в стадии разработки).

Список возможностей

Математика

  • Высокооптимизированная математическая библиотека
  • Вектор / Матрица / Quternion
  • Самолет
  • Граничная рамка (AABB / OBB)
  • Frustom
  • Утилита пересечения

Ресурс

  • Экспорт модели / материала / скелетной анимации из 3dsMax (9 - 2012)
  • Экспорт модели из Maya (8.5 - 2012)
  • Загрузка модели / документа скелетных ресурсов
  • Множественный формат файла (XML / двоичный и Collada в будущем)
  • Загрузка текстуры 2 размера без мощности

Шейдер

  • Загрузка XML-документа шейдера.
  • Поддержка включает макрос, настраиваемый блок кода шейдера, динамическое определение при компиляции шейдера.

WebGL

  • Динамическая проверка поддержки WebGL с помощью одной единственной функции (okIsWebGL).
  • Легкий запрос и включение расширений WebGL (okExtension)
  • Запрос системной информации и возможностей оборудования (okEngineInfo)
  • Объекты-оболочки API WebGL (объектно-ориентированные)

Утилита 3D

  • Утилита управления ресурсами модели / сетки
  • Утилита камеры
  • Материальная полезность
  • Текстовая утилита
  • Создание встроенной геометрии

Скелетная анимация

  • Сетчатая кожа
  • Воспроизведение скелетной анимации
  • Смешивание многоканальной анимации

Функция двигателя (просто скажите движку, что рисовать, не нужно знать, как рисовать.)

  • Конфигурируемый конвейер рендеринга на основе WebGL
  • Высокопроизводительное управление сценой
  • Поддержка нескольких сцен
  • Поддержка мульти-просмотра
  • Настройка материала
  • Система ландшафта Dynamic-LOD
  • Полный процесс загрузки / управления ресурсами (модель / текстура / скелетная анимация)
  • Разработка приложений Web3D без шейдеров
  • Динамическое освещение
  • Динамическая тень
  • Туман
  • Светящийся
  • Каркас
  • Нормальное отображение
  • Альфа-тест
  • Skybox
  • Система частиц
  • Многослойное наложение текстуры
  • Видео холст в 3D сцене.
  • Пользовательское поведение рендеринга с использованием скрипта материала

внешние ссылки