Докуметация Cтарт Статьи Форум Лента Вход
Не официальное русскоязычное сообщество
Главная
    Документация jMonkeyEngine
        jMonkeyEngine Уроки и Документация
            jMonkeyEngine 3 — Исходная Структура

jMonkeyEngine 3 — Исходная Структура

Опубликованно: 18.09.2017, 17:53
Последняя редакция, Andry: 27.10.2017 17:15

Обзор исходной структуры проекта JME3. Чтобы поддерживать как настольные, так и Android Java-платформы, необходимо было разделить исходный код на несколько частей. Эта страница wiki описывает пакеты и их назначение. Статус: обновлен для бета-версии JME3.

Структура папки src

Вы можете собрать jME с помощью встроенного скрипта build.xml: ant clean; ant jar; ant run При сборке исходников в проекте, создаваемом в другой IDE, включайте каждую папку в src в проекте как свой собственный отдельный исходный корень.

Core(Ядро)

Исходные Пакеты  Описание
src/core  Основной пакет. Должно быть всегда включён, так как от него зависят все остальные пакеты.
src/core-effects  Ядро эффектов, таких как вода, PSSM и.т.п.
src/core-data  Основные описания материалов, шейдеры и шрифты, которые необходимы большинству jME3 приложений.
src/core-plugins  Важные asset плагины, такие как загрузчик модели .j3o, загрузчик .obj, загрузчик шрифтов, загрузчики основных изображений.
src/desktop  Должно быть включено при развертывании на настольных компьютерах, в апплете или в Интернете. Android
src/android  Должно быть включено при развертывании на платформе Android. На настольных компьютерах.
src/lwjgl  Реализация отображения LWJGL OpenGL. Android

Физика

Исходные Пакеты  Описание
src/jbullet  Игровой Движок Физики, основанный на фреймворке jBullet. Bullet
src/bullet  Игровой Движок Физики, основанный на собственном фреймворке Bullet. jBullet
src/bullet-common  Классы, общие для реализациями собственного и java-Bullet.
src/bullet-native  Собственная реализации Bullet в C++ классах. jBullet
Только одна из библиотек физики может использоваться одновременно, поскольку они заменяют друг друга.

Плагины и дополнительные пакеты

Исходные Пакеты  Описание
src/ogre  Ogre3D модели и загрузчик сцен. Поддерживает скелетную и вершинную анимацию, загрузку сцены и материалов.
src/xml  Предоставляет XML im/exportorter.
src/jogg  Загрузчик OGG/Vorbis для воспроизведения звуковых .ogg файлов.
src/niftygui  Поддержка ваших Графических Пользовательских Интерфейсов.
src/blender  Импортер Blender моделей
src/networking  Сетевой пакет SpiderMonkey
src/terrain  Инструменты для создания ландшафта

Tests, Игры и Инструменты

Исходные Пакеты  Описание
src/test  Небольшие приложения примеры, демонстрирующих отдельные функции jME3. ← — jme3_test-data.jar
src/test-data  Данные игровых ресурсов (jme3_test-data.jar), необходимые для примеров из jme3_test.
src/tools  Инструменты и программы, которые помогут вам использовать jme3.

Структура папки lib

JME3 зависит от следующих JAR и родных библиотек в папке lib. Библиотеки JAR должны находиться в classpath.

Пакеты jME3-natives.jar содержат родные библиотеки, необходимые файлы .dll, .jnilib, lib.so. Вам не нужно вручную включать родные библиотеки в java.library.path! jME3 обрабатывает извлечение родных автоматически через пакеты JAR.
  • lib/android:
    • android.jar
  • lib/bullet:
      android, jME3-bullet-natives-android.jar, jME3-bullet-natives.jar, jarcontent (родной)
  • lib/jbullet:
    • asm-all.jar, jbullet.jar, stack-alloc.jar, vecmath.jar
  • lib/jogg:
    • j-ogg-oggd.jar, j-ogg-vorbisd.jar
  • lib/lwjgl:
    • jME3-lwjgl-natives.jar, jinput.jar, lwjgl.jar
  • lib/niftygui:
    • nifty.jar, nifty-javadoc.jar, xmlpull-xpp3.jar, eventbus.jar
    • nifty-default-controls-javadoc.jar, nifty-default-controls.jar,
    • nifty-examples.jar, nifty-examples-javadoc.jar, nifty-style-black.jar


Структура JAR файлов jMonkeyEngine3

После завершения сборки (в папке dist) вы увидите, что библиотека jMonkeyEngine разделена на несколько JAR файлов. Это позволяет лучше разделять части предназначенные для разных операционных систем, проектов и.т.п.

JAR файл  Назначение Внешние зависимости 
dist/lib/jME3-core.jar  Платформенно-независимые базовые библиотеки (математика, анимация, граф сцены, поддержка моделей Wavefront OBJ и.т.д.) Нет 
dist/lib/jME3-effects.jar  Ядро Эффектов jME3 (вода, SSAO и т. Д.) Нет 
dist/lib/jME3-desktop.jar  jME3-библиотеки только для настольных ПК Нет 
dist/lib/jME3-plugins.jar  Основные импортируемые плагины (OgreXML модели и j3o XML) Нет 
dist/lib/jME3-blender.jar  Плагин импорта Blender моделей (только для настольных компьютеров) Нет 
dist/lib/jME3-networking.jar  Сетевая библиотека «Spidermonkey» Нет 
dist/lib/jME3-jogg.jar  Звуковой плагин J-OGG j-ogg-vorbisd.jar, j-ogg-oggd.jar 
dist/lib/jME3-terrain.jar  Ландшафтная система Нет 
dist/lib/jME3-jbullet.jar  jBullet физика jbullet.jar, vecmath.jar, stack-alloc.jar, asm-all-3.1.jar 
dist/lib/jME3-bullet.jar  Bullet физика (можно использовать либо jBullet либо Bullet) jME3-bullet-natives.jar 
dist/lib/jME3-niftygui.jar  Поддержка NiftyGUI nifty.jar, nifty-default-controls.jar, eventbus.jar, xmlpull-xpp3.jar 
dist/lib/jME3-lwjgl.jar  LWJGL Визуализация(Рендеринг) на настольных компьютерах lwjgl.jar, jME3-lwjgl-natives.jar, jinput.jar 
dist/lib/jME3-android.jar  Android Визуализация(Рендеринг) Система Android 

Необязательные:

  • nifty-examples.jar
  • jME3-testdata.jar
  • nifty-style-black.jar (nifty стиль по умолчанию)

Структура API

Подробнее см. http://javadoc.jmonkeyengine.org

Типы файлов данных

Путь  Тип файлов  Назначение
/Common/MatDefs/*/  .glsllib  Стандартные шейдерные библиотеки
/Common/MatDefs/*/  .j3md  Стандартное Описание Материала
/Common/Materials/*/  .j3m  Стандартный Материал
/Interface/Fonts/  .fnt + .png  Стандартные шрифты

См. Также поддерживаемые Типы Файлов.


Переведено для jmonkeyengine.ru, оригинал
Автор перевода: Andry

Добавить комментарий

jMonkeyEngine.ru © 2017. Все права сохранены.