Комплект разработчика Вердж3Д
Комплект разработчика «Вердж3Д» (англ. Developer Kit, DevKit) — это набор примеров, инструментов и исходного кода, которые поставляются с корпоративными версиями «Вердж3Д». Этот набор поможет вам выполнять различные задачи разработчика, такие как:
- Изучение и обзор внутренних компонентов набора инструментов «Вердж3Д».
- Модификация «Вердж3Д» и использование модифицированных версий в собственных 3Д-приложениях.
- Расширение API «Вердж3Д» с помощью собственных классов и методов.
- Разработка новых блоков пазлов.
- Совершенствование glTF-экспортера «Вердж3Д», добавление собственных данных или параметров.
- Разработка своего собственного конфигуратора или системы e-commerce с использованием плагина «Вердж3Д для Вордпресс» в качестве референса.
Комплект разработчика предназначен для опытных программистов, желающих модифицировать движок. Он не нужен для создания приложений «Вердж3Д» со стандартным набором функций.
- Установка и настройка
- Структура комплекта разработчика
- Сборка «Вердж3Д»
- Активация модуля движка
- Добавление нового метода в «Ява Скрипт» API
- Добавление нового класса в «Ява Скрипт» API
- Добавление новых пазлов
- Добавление поддержки новых платформ и архитектур
Установка и настройка
Скачайте архив DevKit из раздела загрузок вашей учетной записи. Распакуйте этот архив в выбранную вами директорию.
Если вы собираетесь собрать движок «Вердж3Д» или редактор пазлов из исходного кода, вам понадобится утилита npm, которая является частью среды разработки Node.js. Вы можете установить ее с помощью этих инструкций.
Наконец, перейдите в распакованный каталог DevKit и выполните следующую команду для установки зависимостей:
npm install
Структура комплекта разработчика
DevKit включает следующие каталоги:
Каталог | Описание |
---|---|
addons/verge3d | Исходный код дополнения для Блендер (только «Вердж3Д для Блендера»). |
build | Готовые скрипты движка «Вердж3Д» и дополнительные модули (ammo.js и т.д.). |
ktx | Исходный код модуля текстурной компрессии. |
max_plugin | Исходный код плагина для 3дс Макс (только «Вердж3Д для 3дс Макса»). |
maya_plugin | Исходный код плагина для Майя (только «Вердж3Д для Майи»). |
puzzles | Готовые скрипты и исходный код редактора пазлов. |
python | Python 3 и служебные модули. |
src | Исходный код движка «Вердж3Д». |
templates | Шаблоны приложений «Вердж3Д». |
utils | Различные утилиты. |
wordpress | Исходный код плагина «Вердж3Д для Вордпресс». |
xz | Исходный код модуля сжатия XZ. |
Сборка «Вердж3Д»
Перед компиляцией «Вердж3Д», пожалуйста, убедитесь что вы установили npm и все необходимые зависимости, как описано выше.
Чтобы скомпилировать неоптимизированный билд «Вердж3Д», что хорошо подходит для целей тестирования и отладки, выполните следующую команду в директории DevKit:
npm run build
Вы можете найти скомпилированные модули в директории build вашего DevKit. Чтобы протестировать его, просто скопируйте модуль движка v3d.js в ваше приложение внутри «Вердж3Д», например:
cp build/v3d.js ~/verge3d/applications/my_awesome_application/
Чтобы скомпилировать оптимизированную версию «Вердж3Д» (она же релизная версия), выполните следующую команду в директории DevKit:
npm run build-release
Для сборки логического редактора пазлов используются следующие команды. Для создания неоптимизированной версии введите:
npm run build-puzzles
Чтобы собрать оптимизированную версию, выполните команду:
npm run build-puzzles-release
Скомпилированный скрипт редактора пазлов находится в директории puzzles вашего DevKit. Чтобы применить его к «Вердж3Д», скопируйте все содержимое этого каталога в каталог puzzles в вашей директории «Вердж3Д» (заменяя уже существующие там файлы).
Активация модуля движка
Для подписывания скомпилированного модуля движка лицензионным ключом, используется утилита keymanager.py, расположенная в папке utils (требуется установленный «Питон»):
./keymanager activate ../build/v3d.js XXXXXXXXXX
Где XXXXXXXXXX — ваш лицензионный ключ. Поскольку утилита не выводит никакой информации в случае успеха или неудачи, убедитесь, что активация прошла успешно, скопировав модуль движка в какое-нибудь приложение и проверив что водяной знак MADE WITH VERGE3D TRIAL больше не выводится.
Добавление нового метода в «Ява Скрипт» API
Допустим, вы хотите добавить еще один метод в класс App. Например, метод printHelloWorld() должен вывести что-то на консоль браузера:
App.printHelloWorld()
Класс App реализован в модуле, расположенном по адресу src/extras/App.js. Откройте его и добавьте следующий код в конец файла, прямо перед закрывающими скобками класса App. Не забудьте добавить еще одну запятую там, где заканчивается предыдущий метод.
printHelloWorld: function() {
console.log('Hello World!');
}
Соберите и скопируйте среду выполнения пазлов в папку с установленным «Вердж3Д». Теперь вы можете попробовать новый добавленный блок в редакторе пазлов.
Добавление нового класса в «Ява Скрипт» API
Чтобы дополнить API «Вердж3Д» каким-либо пользовательским классом, создайте .js файл с именем вашего класса в соответствующем подкаталоге папки src DevKit (например, src/extras/MyAwesomeClass.js). В этом .js-файле реализуйте свой класс - вы можете вдохновиться уже существующими классами. Наконец, зарегистрируйте свой класс в глобальном пространстве имен v3d, добавив следующую строку в файл src/v3d.js:
export { MyAwesomeClass } from './extras/MyAwesomeClass.js';
Соберите и скопируйте среду выполнения «Вердж3Д» в ваше приложение и попробуйте ее в консоли браузера.
const myAwesomeStuff = new v3d.MyAwesomeClass();
myAwesomeStuff.whatEver();
Добавление новых пазлов
Чтобы создать собственный блок пазлов, отредактируйте файл puzzles/src/puzzles_blocks.js. Вы можете вдохновиться уже существующими пазлами. Зарегистрируйте его в соответствующей категории панели инструментов в верхней части файла.
Соберите и скопируйте среду выполнения пазлов в папку с установленным «Вердж3Д». Теперь вы должны найти свой новый пазл в панели инструментов Редактора пазлов.
Добавление поддержки новых платформ и архитектур
«Вердж3Д» является кроссплатформенным программным обеспечением и может быть запущен на любой платформе, способной запустить «Блендер», «3дс Макс» или «Майю». Тем не менее, встроенные glTF-экспортеры требуют наличия утилиты текстурной компрессии toktx (часть набора программ KTX texture compression tools).
Дистрибутивы «Вердж3Д» поставляются с уже собранной утилитой для большинства платформ: «Виндоус» (Интел 64 бита), «Мак ОС» (Интел 64 бита и «Эпл Силикон»), «Линукс» (Интел/АРМ 64 бита) и «Хром ОС» (Интел/АРМ 64 бита). Для других, например «Виндоус АРМ», «БСД»-системы, «Лунгсон»/«Лунгарч»», «Распберри ПИ», «РИСК-5» и т.д., вам может потребуется собрать набор программ KTX вручную, с помощью инструкций, указанных здесь (англ.).
После сборки и проверки утилиты toktx, поместите её в папку ktx/АРХИТЕКТУРА внутри установочной папки «Вердж3Д». Замените значение АРХИТЕКТУРА на имя нужной платформы. Чтобы узнать это имя, запустите простой «Питон»-скрипт, расположенный в папке ktx комплекта разработчика «Вердж3Д»:
./show_arch.py
для систем «ЮНИКС» или
python show_arch.py
для систем «Виндоус».
Остались вопросы?
Задайте их на нашем форуме!