Вавилон.js
![]() | |
Оригинальный автор(ы) | Дэвид Катуэ [1] |
---|---|
Разработчик(и) | Майкрософт [2] и участники [3] |
Первоначальный выпуск | 2013 год |
Стабильная версия | 5.3.0 (21 апреля 2022 г [±] | )
Предварительный выпуск | 5.3.0 (21 апреля 2022 г [±] | )
Репозиторий | https://github.com/BabylonJS/Babylon.js |
Написано в | TypeScript , JavaScript |
Тип | 3D engine |
Лицензия | Лицензия Апач 2.0 |
Веб-сайт | www |
Babylon.js — это библиотека JavaScript и 3D-движок для отображения в реальном времени 3D-графики в веб-браузере через HTML5 . Исходный код доступен на GitHub и распространяется по лицензии Apache License 2.0 .
История и прогресс
[ редактировать ]Первоначально он был выпущен в 2013 году под лицензией Microsoft Public License и был разработан двумя сотрудниками Microsoft в свободное время в качестве побочного проекта. Дэвид Катуэ создал движок 3D-игры , а Дэвид Руссе реализовал поддержку VR , Gamepad и IndexedDB . Им помогал художник Мишель Руссо, создавший несколько 3D-сцен. Babylon.js основан на более раннем игровом движке для Silverlight 3D- системы на базе WPF . [4] [5] Побочный проект Катуэ стал его постоянной работой и основным направлением деятельности его команды. [6] В 2015 году он был представлен на конференции WebGL в Париже. [7] После его продвижения [8] [9] и применение в играх, [10] Издатель видеоигр Ubisoft выпустил игру Assassin's Creed, построенную на базе библиотеки в 2014 году. [11] По состоянию на 2024 год в проекте насчитывается более 500 участников. [12]
Его использование распространилось на различные области, такие как:
- виртуальные миры [13]
- визуализация данных о преступности [14]
- медицинское образование [15] [16]
- модные аватары [17]
- управление Kinect в Интернете [18]
- военная подготовка [19]
- моделирование исторических мест [20] [21]
- Дизайн продукта [22] [23]
- RDF-графики [24]
- моделирование городской подземной инфраструктуры [25]
Техническое описание
[ редактировать ]Исходный код написан на TypeScript , а затем скомпилирован в версию JavaScript . Версия JavaScript доступна конечным пользователям через NPM или CDN, которые затем кодируют свои проекты на JavaScript, получая доступ к API движка. 3D-движок Babylon.js и пользовательский код изначально интерпретируются веб-браузерами, поддерживающими стандарт HTML5 и WebGL, для выполнения 3D-рендеринга .
Методика моделирования
[ редактировать ]Используемый процесс 3D- моделирования представляет собой моделирование многоугольников с треугольными гранями, которые будут представлены моделями оболочек. [26] Ограниченное использование конструктивной твердотельной геометрии возможно, но только в качестве переходного метода для создания объединения, вычитания и пересечения моделей оболочек. [27] После создания модели визуализируются на HTML 5 элементе холста с помощью шейдерной программы, которая определяет положение пикселей и цвета на холсте с использованием полигональных моделей, текстур, сцены применяемых к каждой модели, камеры и источников света вместе с миром 4 x 4. матрицы для каждого объекта, в которых хранится их положение, вращение и масштаб. [28] Для создания фотореалистичных изображений используется метод физического рендеринга. [29] наряду с методами постобработки . [30] Чтобы имитировать столкновения между моделями и другие физические действия в реальном мире, один из двух физических движков необходимо добавить в качестве плагинов: Cannon.js и Oimo. [31] Анимация, включающая, например, изменение положения или цвета моделей, выполняется с помощью объектов анимации ключевых кадров , называемых «анимируемыми объектами», тогда как полная анимация персонажей достигается за счет использования скелетов со смешанными весами . [30] [32]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Дэвид Кэтуэ — технический менеджер группы — Microsoft» . linkedin.com . Проверено 11 марта 2021 г.
... Создатель и руководитель проекта с открытым исходным кодом Babylon.js...
- ^ «Microsoft представляет Babylon.js 4.1, мощный механизм веб-рендеринга с открытым исходным кодом» . winbuzzer.com . 28 февраля 2020 г. Проверено 18 апреля 2021 г.
- ^
- ^ Эллиот, Иэн (15 августа 2013 г.). «Babylon.js — игровой движок WebGL от Microsoft» . i-programmer.info . Проверено 6 сентября 2018 г.
- ^ Думанд, Микаэль (28 ноября 2014 г.). «Интервью Дэвида Руссе о Babylon.js» [Интервью с Дэвидом Руссе о Babylon.js]. экино (на французском языке). Архивировано из оригинала 12 сентября 2016 г. Проверено 7 сентября 2018 г.
- ^ Ирвин, Эмма (21 февраля 2021 г.). «История успеха Microsoft с открытым исходным кодом — Вавилон» . Проверено 18 апреля 2021 г.
- ^ Руссо, Жан-Мишель; Руссо, Давид (12 октября 2015 г.). «BabylonJS и его новейшие возможности» . webglparis.com (на французском языке) . Проверено 12 сентября 2018 г.
- ^ Вебер, Раанан (1 декабря 2015 г.). «Babylon.js: создание базовой игры для Интернета» . Том. 30, нет. 13. MSDN . Проверено 12 сентября 2018 г.
{{cite magazine}}
: Для журнала Cite требуется|magazine=
( помощь ) - ^ Вебер, Раанан (1 января 2016 г.). «Разработка игр — Babylon.js: расширенные функции для улучшения вашей первой веб-игры» . Том. 31, нет. 1. MSDN . Проверено 12 сентября 2018 г.
{{cite magazine}}
: Для журнала Cite требуется|magazine=
( помощь ) - ^ «Симулятор полета Babylon.js» . Архивировано из оригинала 16 августа 2020 г. Проверено 7 сентября 2018 г.
- ^ Проталинский, Эмиль (9 мая 2014 г.). «Microsoft и Ubisoft запускают 3D-веб-игру Assassin's Creed Pirates, созданную на основе платформы с открытым исходным кодом Babylon.JS» . Следующая сеть . Проверено 7 сентября 2018 г.
- ^ «Соавторы» . Гитхаб . Проверено 6 сентября 2018 г.
- ^ Нолан, Бен (2 августа 2018 г.). «Разработка виртуального мира для нескольких устройств» . Medium.com . Проверено 5 сентября 2018 г.
- ^ Баттон, Брайан (24 мая 2018 г.). «Визуализации данных о преступности в Бостоне, штат Массачусетс» . Проверено 9 сентября 2018 г.
- ^ Лурье, Джонатан. «Наклон МРТ с 3D-текстурой webgl2 — Pixpipe и BabylonJS» . Ютуб . Проверено 9 сентября 2018 г.
- ^ Батиста, Артур В.; Лемос, Робсон Р.; Рудольф, Кристиана М.; Буэно, Бруна С.; Фиуза, Патрисия Дж. (2018). «Серьезная Web3D-игра для обучения анатомии человека» (PDF) . п. 4 . Проверено 9 сентября 2018 г.
- ^ «3D-демонстрация одежды с помощью BabylonJS» . 20 сентября 2016 г. Проверено 9 сентября 2018 г.
- ^ Морено, Франциско; Рамирес, Эсмитт; Санс, Франциско; Кармона, Радамес (23 октября 2015 г.). «Среда с открытым исходным кодом для управления Kinect в Интернете» . Латиноамериканская компьютерная конференция 2015 (CLEI) . п. 7. дои : 10.1109/CLEI.2015.7359995 . ISBN 978-1-4673-9143-6 . S2CID 2798664 . Проверено 9 сентября 2018 г.
- ^ Максвелл, Дуглас; Хейльманн, Майкл (2017). «Использование HTML5 и WebGL для устранения барьеров, связанных с обеспечением информации, для обучения на основе моделирования в вооруженных силах США» (PDF) . modsimworld.org . п. 8.
- ^ Гуссу, Лоуренс. «Цифровые Помпеи» . Национальный институт исследований в области компьютерных наук и управления (Инрия) . Проверено 7 сентября 2018 г.
- ^ «Палас Спонза» . Проверено 12 сентября 2018 г.
- ^ Кардоса, Кристина; Мур, Мэдисон (14 июля 2017 г.). «Дайджест новостей SD Times» . СД Таймс . Проверено 7 сентября 2018 г.
- ^ «Лаборатория дизайна XBox» . Xbox . Архивировано из оригинала 19 августа 2016 г. Проверено 12 сентября 2018 г.
- ^ Виола, Фабио; Роффия, Лука; Антониацци, Франческо; Д'Элия, Альфредо; Агуцци, Криштиану; Чинотти, Туллио Салмон (17 августа 2018 г.). «Интерактивное 3D-исследование графов RDF через семантические плоскости» . Будущий Интернет . 10 (8): 5–8. дои : 10.3390/fi10080081 . hdl : 11585/640472 .
- ^ Родригес, Хуан Мануэль Хурадо; Альварадо, Лидия Ортега; Игеруэла, Франсиско Р. Фейто (2018). «3D-реконструкция подземелья для среды виртуальной реальности в режиме реального времени и совместной работы» (PDF) . Всемирное общество компьютерной графики. стр. 40, 43 . Проверено 9 сентября 2018 г.
- ^ Шенар, Джулиан. «Генератор деревьев — Как использовать объект VertexData» . Пиксель Кодр . Архивировано из оригинала 27 августа 2019 г. Проверено 27 ноября 2018 г.
- ^ Фельдшпат, Крейг. «Конструктивная твердотельная геометрия в Babylon.js» . Гитхаб . Проверено 27 ноября 2018 г.
- ^ Катуэ, Дэвид (ноябрь 2016 г.). «Создание шейдеров с помощью Babylon.js» . Разрушительный журнал . Проверено 27 ноября 2018 г.
- ^ Райан, Патрик (08 января 2018 г.). «Арт-пайплайн для glTF» . Группа компаний «Хронос» . Проверено 27 ноября 2018 г.
- ^ Jump up to: а б Моро-Матис, Жюльен (2016). Основы Babylon.js . Пакт Паблишинг. ISBN 978-1785884795 .
- ^ Руссе, Дэвид (11 июня 2015 г.). «Физика WebGL и обнаружение столкновений с использованием BabylonJS и Oimo.js» . Разработка игр . Проверено 27 ноября 2018 г.
- ^ Болье, Энди (26 мая 2014 г.). «babylon.js: физика и анимация персонажей» . Спрайхэнд . Проверено 06 сентября 2018 г.
Дальнейшее чтение
[ редактировать ]- Эльстер, Джош (2022). Идем дальше с Babylon.js: создание расширяемых, удобных в обслуживании и привлекательных интерактивных браузерных приложений от начала до конца . Пакт Паблишинг. ISBN 978-1801076586 .
- Шенар, Джулиан (2017). Изучение Babylon.js: изучите основы 3D-фреймворка Babylon.js, создав целую игру! . Независимо опубликовано. ISBN 978-1520730448 .
- Моро-Матис, Жюльен (2016). Основы Babylon.js . Пакт Паблишинг. ISBN 978-1785884795 .
- Шенар, Жюльен (2015). Изучение BabylonJS (электронная книга) .
- Коцци, Патрик (2015). «Проектирование движка WebGL в Babylon.js» . WebGL-инсайты . ЦРК Пресс . ISBN 978-1498716079 .
- Шенар, Джулиан; Моро-Матис, Жюльен (2016). «Создание 3D-игры с помощью BabylonJS» ( PDF) . Программа! (на французском языке).
- Бускье, Жером (2015). «3D в Интернете с BabylonJS» ( PDF) . Программа! (на французском языке).
- Катуэ, Дэвид (2014). «Sous le capot d'un moteur 3D» [Под капотом 3D-движка] (PDF) . Программаз! (на французском языке).
Внешние ссылки
[ редактировать ]- программное обеспечение 2013 года
- API-интерфейсы 3D-сцены
- Кроссплатформенное программное обеспечение
- Бесплатное программное обеспечение для 3D-графики
- Графические библиотеки
- Библиотеки JavaScript
- бесплатное программное обеспечение Майкрософт
- Программное обеспечение, использующее лицензию Apache
- ВебГЛ