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

Как создавать бесплатные SkyMap-ы

Опубликованно: 13.02.2018, 12:45
Последняя редакция, Andry: 17.02.2018 20:14

Существует множество способов создания скинов с различными уровнями сложности и издержками. Программа Terragen упоминается как один из способов сделать это, но теперь она ограничена в использовании, и для коммерческих целей теперь не является бесплатной. Другая программа, Bryce, также не является бесплатной, и похоже затормозилась в разработке, есть только в 32-битной версии. Возможно, они что то делают за кулисами, но это всё же не бесплатная программа. Целью этих статей является предоставление пользователю JME3 других возможностей для создания skymap-ов с использованием бесплатных программ Blender и Gimp. Это ещё не все, все способы создания skymap. Если вы знаете лучшие способы или инструменты, то не стесняйтесь и делиться своей мудростью на форумах.

Blender

Используя Blender, вы можете бесплатно создавать свои skymap-ы. Как только вы настроите Blender, вы сможете достаточно легко создавать skymap-ы. В этой статье я подробно расскажу о том, как настроить Blender для создания Угловых Карт(Angular Map) на основе видеоролика, созданного jMonkey вкладчиком glaucomardano, и упомянутого в этом сообщении на форуме. Участник glaucomardano сделал хорошую работу на видео, но для этого требуется знание Blender, чтобы за ним можно было легко следовать. Таким образом, я переведу его на бумагу для вас. Вы можете просмотреть его видео, следуя этой ссылке: jMonkeyEngine Tutorial — Как создавать skymap-ы с помощью Blender.

Этот урок — это адаптация того что сделал вкладчик glaucomardanos, а не точное дублирование.
В этих шагах предполагается, что вы используете настройку Blender по умолчанию и применяете всё к версии 2.78c+.
Урок сделан в формате контрольного списка, чтобы вы могли отмечать галочкой пункты которые вы уже выполнили.

Blender Контрольный список Skybox

Начните с нового файла в Blender.

Выберите Лампу и куб который идёт по умолчанию в окне 3D-вида(3d view) или на панели Структура проекта(Outliner) (верхняя правая панель) и удалите их: X. Они не нужны для этой процедуры.

Выберите объект камеры в 3D-виде(3d view) или на панели Структура проекта(Outliner), затем очистите его положение и вращение, используя сочетания клавиш Alt+G и Alt+R.

На панели Свойства (правая нижняя панель) выберите вкладку Объект (оранжевый куб). Это даст вам визуальное представление параметров камеры, которые вы будете менять.

Переименуйте камеру на Camera-north.

Сделав активным окно 3D-вида(кликнув по нему) перейдите в ортогональный вид сверху, нажав NumPad5, а затем NumPad 7.

Если камера все еще выбрана, то нажмите R, а затем X, затем сделайте 90°, и затем нажмите Enter, чтобы камера повернулась на 90° градусов относительно оси X.

Если камера всё еще выбрана, нажмите Shift+D. Это позволит дублировать камеру. Затем нажмите Enter, чтобы задать выбор.

Сразу же нажмите R, затем сделайте 180°, и затем нажмите Enter. Это повернет камеру на 180° градусов относительно оси Z. Переименуйте эту камеру в Camera-south.

Если камера всё еще выбрана, нажмите Shift+D. Это позволит дублировать камеру. Затем нажмите Enter, чтобы задать выбор.

Сразу же нажмите R, затем сделайте 90°, и затем нажмите Enter. Это повернет камеру на 90° градусов относительно оси Z. Переименуйте эту камеру в Camera-west.

Если камера всё еще выбрана, нажмите Shift+D. Это позволит дублировать камеру. Затем нажмите Enter, чтобы задать выбор.

Если камера всё еще выбрана, нажмите R, затем сделайте -180°, и затем нажмите Enter. Это повернет камеру на -180° градусов относительно оси Z. Переименуйте эту камеру в Camera-east.

Сделав активным окно 3D-вида(кликнув по нему) перейдите в ортогональный вид справа, нажав NumPad3.

Выберите Camera-south в 3D-виде или в панели Структура проекта(Outliner) (верхняя правая панель) и нажмите Shift+D. Это позволит дублировать камеру. Затем нажмите Enter, чтобы задать выбор.

Если камера все еще выбрана, нажмите R, затем сделайте 90°, и затем нажмите Enter. Это повернет камеру на 90° градусов относительно оси X. Теперь камера должна указывать вверх. Переименуйте эту камеру в Camera-up.

Если камера всё еще выбрана, нажмите Shift+D. Это позволит дублировать камеру. Затем нажмите Enter, чтобы задать выбор.

Если камера все еще выбрана, нажмите R, затем сделайте 180°, и затем нажмите Enter. Это повернет камеру на 180° градусов по оси X. Теперь камера должна быть направлена ​​вниз. Переименуйте эту камеру в Camera-down.

Сохраните ваш файл.

Угловая Карта(Angular Map)

Откройте веб-браузер и выполните поиск «free high res skymap»(бесплатные skymap с высоким разрешением) и выберите Угловую Карту(Angular Map) на свой вкус, или вы можете найти её здесь на странице Бесплатные skymap-ы в высоком разрешении вместо этого. Не забудьте выбрать ANGULAR map.

Сохраните карту на свой компьютер в месте, где вы позже сможете её легко найти для использования в Blender.

Вкладка Текстура

На панели Свойства (нижняя правая панель) выберите вкладку Текстура (красно-белая шахматная доска), затем нажмите кнопку Создать, чтобы создать новую текстуру. Переименуйте эту текстуру в AngMap.

На панели Изображение выберите Открыть и перейдите к файлу, который вы сохранили ранее.

На панели Отображение выберите Угловая Карта(AngMap) из раскрывающегося списка.

На панели Влияние уберите галочку напротив Смещение и поставьте галочку напротив Горизонт.

Вкладка Данные

На панели Свойства выберите вкладку Данные (Камера с 2 катушками).

Измените Фокусное расстояние с 35 на 16. Сделайте это для каждой камеры.

Вкладка Визуализация

На панели Свойства выберите вкладку Визуализация (фото камера).

На панели Размеры установите разрешение на любое число, кратное 2. Для этого примера 1024 x 1024.

Сместите масштаб разрешения до 100%.

На панели Вывод измените тип изображения на JPEG. Я обнаружил в результате проб и ошибок, что использование файла JPEG имеет то же качество изображения, что и файл PNG или DDS, но с огромной разницей в размере изображения. Одно PNG-изображение будет отображаться в формате более 8 Мбайт для JPEG будет размер 325 КБ. Даже конвертация в файл DDS поставляется со скоростью более 3 Мб для сравнения (используйте RGB888, как это рекомендовано разработчиком Momoko_Fan/Core Developer на этой ветке форума), без улучшения качества изображения, как я мог видеть. При желании вы можете самостоятельно поэкспериментировать.

Задайте формат изображения в RGB.

Настройка ползунка Качество влияет на уменьшение размера изображения, где 0 — максимальное сжатие, а 100 — нет сжатия. В этом примере зададим 0 уменьшив размеры изображений до менее 125 кбайт, еще раз без заметного ухудшения изображения, как я мог видеть.

Вкладка Окружающая среда(мир)

На панели свойств выберите вкладку Окружающая среда(мир).

Поставьте галочку Реал. небо.

Настройка генератора карт

Наведите курсор мыши в место между окном 3D-вида и заголовке Информация в верхней части окна. Когда появится знак курсора в виде двунаправленной стрелочки сделайте клик [ПК Мыши] в появившемся меню выберите Разделить область и разделителем поделите окно 3D-вида как вам удобно(лучше на пополам).

В одном из двух полученных окон 3D-вида, с лева внизу рядом со словом Вид, находится кнопка Текущий тип редактора для этой области. Нажмите её и измените на Редактор UV/изображений.

В нажмите кнопку [Выбрать разметку экрана](на рядом со словом Default в панели Информация) Нажмите знак [+], чтобы создать новую разметку.

Переименуйте эту новую разметку в Angular Map Generator или как сами захотите.

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

Сохраните файл.

Визуализация(Рендериг) и Сохранение

Выберите вашу первую камера (в данном случае Camera-down) и вашей мышь сделан активным оно 3D-вид кликом по его правой части, нажмите Ctrl+NumPad0, чтобы сделать выбранную камеру, активной камерой.

Нажмите F12, чтобы визуализировать сцену. Изображение появится в окне Редактор UV/изображений.

С помощью [СК мыши] в Редактор UV/изображений вы можете прокруткой увеличивать или уменьшать изображение, и кликом перемещать его.

Сделав активным окно Редактор UV/изображений кликнув по нему нажмите F3, чтобы сохранить изображение. В этом случае мы переименуем изображение в down.jpg.

Сделайте то же самое для остальных камер. Визуализация, переименование и сохранение каждого изображения. После того, как вы сделали все свои изображения, вы можете скопировать и вставить их в свою папку игровых ресурсов(Assets) JME3. Обычно в папке Assets/Texture.

Чтобы использовать ваши изображения в вашем коде, в simpleInitApp() загрузите текстуры и используйте SkyFactory для создания своего неба.

Texture west = getAssetManager().loadTexture("Textures/Sky/west.jpg");
Texture east = getAssetManager().loadTexture("Textures/Sky/east.jpg");
Texture north = getAssetManager().loadTexture("Textures/Sky/north.jpg");
Texture south = getAssetManager().loadTexture("Textures/Sky/south.jpg");
Texture up = getAssetManager().loadTexture("Textures/Sky/up.jpg");
Texture down = getAssetManager().loadTexture("Textures/Sky/down.jpg");
getRootNode().attachChild(SkyFactory.createSky(getAssetManager(), west, east, north, south, up, down));

Большое спасибо вкладчику glaucomardano за его видео. У него отличный вкус в музыке.

Ниже перечислены другие обучающие материалы по Blender. Для пользователей JME3 могут оказаться полезными.

Gimp

Вы можете использовать Gimp для создания SkyMaps из одного изображения с добавлением 2 скриптов.

Скачав скрипты скопируйте их в одну из этих папок:

  • Windows (пользовательский): C:\Users\«ваше имя пользователя»\.gimp-2.6\plug-ins
  • Windows (системный): C:\Program Files\GIMP-2.0\lib\gimp\2.0\plug-ins

После установки скриптов вы открываете изображение в gimp. Этот скрипт работает, разрезая изображение на 6 слоёв равного размера, каждый кратен 2.

  1. После того, как вы откроете изображение, вы выберите Фильтры ▸ Общие ▸ Cubemap Layers Generator.
  2. Заполните детали следующим образом.
    • Source: перейдите к изображению, которое вы нарезаете.
    • Cubemap layout: Cross Horizontal
    • 2 to the power of: 10 (для Слоев размером 1024)
  3. Нажмите [OK], чтобы разрезать изображение.
  4. Выберите Файл ▸ Экспортировать как и измените имя и тип файла на .dds. Выберите место сохранения, обычно Assets/Textures.
  5. Нажмите Экспортировать.
  6. Откроется панель DDS. Примените следующие настройки:
    • Compression: None
    • Format: RGB8
    • Save: As cube map
    • MipMaps: No mipmaps
  7. Нажмите [OK] для экспорта.

Вы прикрепляете экспортированное изображение к своей сцене, как это объясняется в уроке как добавить небо в вашу Сцену.


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

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

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