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

jMonkeyEngine SDK: Редактор Материала

Опубликованно: 09.06.2017, 3:16
Последняя редакция, Andry: 28.01.2018 19:14

Если вы ищете справочную информацию, прочитайте раздел «Описание материалов» и «Файлы материалов j3M». Вы можете писать файлы .j3m в текстовом редакторе или использовать SDK jMonkeyEngine, чтобы сгенерировать их, как описано в этой статье.

Материалы

JMonkeyEngine использует специальный формат материала, который входит в файлы .j3m. Вы используете .j3m файлы для хранения наборов свойств материала, которые вы используете повторно. Это позволяет написать одну короткую строку кода, которая просто загружает пресеты из пользовательского файла .j3m. Без файла .j3m вам нужно написать несколько строк свойств сеттеров, каждый раз, когда вы хотите использовать материал не по умолчанию.

Создание .j3m Материала

material-editor

Чтобы создать новые .j3m-файлы в jMonkeyEngine SDK

  1. Щелкните [ПК мыши] по каталогу assets/Materials и выберите Новый ▸ Другое….
  2. В мастере создания файлов выберите Material ▸ Empty Material File(Пустой файл Материала) и нажмите [Далее].
  3. Дайте файлу название, например mat_wall для материала стены.
  4. Новый файл mat_wall.j3m создается в каталоге Materials и открывается в редакторе материалов.

Вы можете отредактировать source материала или использовать удобный визуальный editor для установки свойств материала. Задайте свойства с теми же значениями, которые в противном случае указывались бы с установщиками объекта Material в Java-коде:

Material mat_wall = new Material(
    assetManager, "Common/MatDefs/Light/Lighting.j3md");
mat_wall.setTexture("DiffuseMap",
    assetManager.loadTexture("Textures/wall_diffuse.png"));
mat_wall.setTexture("NormalMap",
    assetManager.loadTexture("Textures/wall_normals.png"));
mat_wall.setFloat("Shininess", 5f);

Этот Java-код соответствует следующему файлу .j3m:

Material my brick wall : Common/MatDefs/Light/Lighting.j3md {
  MaterialParameters {
    DiffuseMap: Repeat Textures/wall_diffuse.png
    NormalMap:  Repeat Textures/wall_normals.png
    Shininess: 5.0
  }
}

Вы можете изменить исходный код файла j3m на вкладке source в редакторе материалов.

Использование .j3m Материалов

applymaterial

Когда материал готов и сохранен в вашем каталоге проекта assets, вы можете .j3m файл присвоить геометрии.

В jMonkeyEngine SDK

  1. Щелкните [ПК мыши] по файл .j3o и выберите Edit in SceneComposer
  2. Вы можете открыть окно SceneExplorer, выбрав Окно ▸ SceneExplorer в строке меню, если оно еще не открыто.
  3. В SceneExplorer щелкните по геометрии, в которую вы хотите назначить материал.
  4. Откройте окно Свойства
  5. Назначьте .j3m материал .j3o в Свойства ▸ Geometry ▸ Material
    Если файл .j3o уже имеет материал, присвоенный ему при экспорте/импорте, вы можете сгенерировать материал, выбрав вместо него create j3m file. Это поместит .j3m под assets/Materials/Generated и назначит его вашему .j3o.
  6. Сохраните j3o и загрузите его в игре.

Или в коде Java

  • Используйте загрузчик и сеттер для назначения материала Геометрии
    mywall.setMaterial(assetManager.loadMaterial( "Materials/mat_wall.j3m"));

Смотрите также:


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

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

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