Структура проекта

Verge3D, в соответствии с подходом ориентированным на художников, создает полный набор файлов для приложения WebGL. Рекомендуется не редактировать большинство инициализированных файлов проекта, потому что некоторые из них могут автоматически регенерироваться при определенных действиях пользователя (таких как экспорт, сохранение пазлов и т. д.). Другие могут быть переопределены при обновлении до новых версий Verge3D.

Простой кейс

Проект, инициализированный с помощью менеджера приложений (с параметрами конфигурации по умолчанию), выглядит следующим образом.

Файлы HTML, CSS и JavaScript

Ядро приложения состоит из файлов .html , .css и .js с тем же именем ("my_awesome_app") и среды выполнения Verge3D - v3d.js . Также существует папка media , которая содержит небольшие изображения (иконки кнопок для полноэкранного режима и набор фавиконов).

Хотя это не рекомендуется, но вы можете редактировать основные файлы .html , .css и .js . Однако лучший способ - это создание своих собственных файлов CSS/JavaScript и связывание их с основным html . Обязательно восстановите свои изменения после выполнения обновления .

Если вы попытаетесь запустить приложение Verge3D, просто кликнув по файлу .html , то скорее всего, приложение не запустится из-за политики безопасности браузера, запрещающей доступ JavaScript к файлам, загруженным не из того же домена. Пожалуйста, всегда используйте менеджер приложений, который использует локальный веб-сервер для запуска ваших приложений.

Файлы glTF

При запуске, приложение сначала загружает 3D-сцену в формате gltf , который содержит пути к файлам для дальнейшей загрузки двоичной части сцены glTF (bin) и внешних текстур. Файлы gltf и bin экспортируются с помощью меню пользовательского интерфейса вашего любимого 3D-редактора (Blender, 3ds Max или Maya).

Файлы рабочей сцены

В зависимости от того, какой 3D-редактор вы используете, будет один файл .blend , .max или .mb , содержащий куб по умолчанию. Именно здесь выполняется большая часть работы над сценами. Не стесняйтесь изменять этот файл, переименовывать или заменять его каким-либо другим файлом, но обязательно сохраните исходное имя экспортированного файла glTF.

Вы можете добавить больше файлов сцены в папку приложения для использования их в качестве библиотеки или для приложений с несколькими сценами. Если ваше приложение загружает несколько файлов glTF, не забудьте выполнить экспорт из соответствующих проектов .blend , .max или .mb .

Ассеты

Текстуры и звуки обычно загружаются приложением как внешние файлы. Убедитесь, что вы используете относительные пути к файлам в 3D-редакторе для всех изображений. Ваши изображения должны храниться внутри папки проекта, в противном случае могут возникнуть проблемы с публикацией результата.

Пазлы

Когда вы нажимаете кнопку Save в редакторе пазлов, пазлы приложения сохраняются в visual_logic.xml , а сгенерированный код JavaScript сохраняется в visual_logic.js . Эти файлы будут перезаписываться каждый раз, когда вы нажимаете кнопку Save , при этом предыдущая версия visual_logic.xml копируется в папку v3d_app_data / puzzles_backup , переименованной с отметкой времени. Поэтому вы всегда можете восстановить свои наработки из этой резервной копии, скопировав файл .xml в корень и переименовав его обратно.

Кейсы посложнее

Некоторые приложения Verge3D (например, демо-версия Soft8Soft Industrial Robot) могут содержать большое количество дополнительных файлов, которые можно разделить на две категории:

Сжатые файлы glTF

Если вы включите сжатие ресурсов для своего приложения (что всегда хорошо), экспортер сначала выполнит экспорт как обычно, а затем создаст сжатую версию файлов glTF. Эти файлы автоматически выбираются приложением вместо стандартного файла glTF. Нет смысла удалять несжатые файлы glTF, даже если они не используются, поскольку они снова могут быть сгенерированы в какой-то будущей операции экспорта.

Дополнительные файлы сторонних приложений

Сложные приложения могут использовать шаблоны HTML, разработанные в сторонних программах (например, Webflow или Google Web Designer), в которые приложение Verge3D встраивается с элементом iframe . В таких случаях шаблон HTML может быть сохранен в папке приложения без каких-либо изменений, которые будут приняты менеджером приложений. Сложные макеты HTML, в свою очередь, могут включать дополнительные файлы CSS/JavaScript, шрифты или изображения, которые также могут храниться в папке приложения со собственной иерархией.

Все еще есть вопросы?

Задавайте их на нашем форуме!