ENG Новый сайт

Расширенный поиск

[ Новые сообщения · Пользователи · Правила ]
Страница 1 из 121231112»
Форум » SpaceEngine » Обратная связь и предложения » Редактор кораблей для Space Engine (Предлагаю прототип редактора космических кораблей для SE)
Редактор кораблей для Space Engine
SHWДата: Воскресенье, 09.12.2012, 17:51 | Сообщение # 1
Строитель Миров
Группа: Команда SE
Нидерланды
Сообщений: 618
Награды: 10
Статус: Offline
Прототип редактора космических кораблей для Space Engine

Предлагаю прототип редактора космических кораблей для Space Engine.
Пока он позволяет создавать только модельки из готовых модулей.

Установка
Редактор сделан на связке HTML+js и доступен в 3 вариантах:

  • web-версия работает нормально только в браузере Chrome: web-версия.
  • Загружаемая версия для "ленивых" (только Windows): editor.zip. Достаточно загрузить, распаковать и запустить exe-шник.
  • Загружаемая версия для "продвинутых" (Windows, Linux, Mac OS):
    Скачиваем sc-editor.nw;
    Скачиваем node-webkit для вашей системы;
    Открываем sc-editor.nw с помощью nw.

Для использования кораблей в SpaceEngine нужно скачать текстуры (одни для всех) и распаковать в папку <путь к SpaceEngine>\data\textures\spacecrafts\

Интерфейс
Весь интерфейс состоит из одного окна с рабочим полем для конструирования корабля и несколькими панелями инструментов.



- В левом верхнем углу панель работы с файлами:

  • создать новый корабль - очищает рабочее поле от модулей
  • загрузить корабль из файла - загружает предварительно сохранённый корабль из .json файла
  • сохранить корабль в файл - сохраняет корабль в .json файл для обмена с другими игроками или редактирования в дальнейшем
  • экспорт корабля в .obj - сохраняет модель корабля для ипользования в SpaceEngine

- По-центру сверху переключатель режимов симметрии относительно главной оси корабля. Распространяется на добавляемые и удаляемые модули.

- В правом верхнем углу переключатели видимости, включают-выключают отображение:

  • главной оси корабля;
  • опорной сетки;
  • отбрасываемых теней.

- Верхний слайдер - меняет положение опорной сетки вдоль оси корабля (шаг перемещения 10м)
- Левый нижний слайдер - кривизна щита (для каждого слоя - отдельно)
- Правый нижний слайдер - радиус относительно которого искривляется щит (шаг опорной сетки 15м)

- Левая панель - список модулей корабля (верхняя кнопка - пустышка)

Управление камерой

  • Перемещение мыши при зажатой правой клавише - вращение камеры
  • Перемещение мыши при зажатой средней клавише - перемещение камеры
  • Колёсико мыши - зум

Остальные манипуляции

  • Добавление модулей - левая кнопка мыши
  • Удаление модулей - Ctrl + левая кнопка мыши

Конструкция корабля
Корабль строится из модулей, навешиваемых на силовой каркас. Сам каркас в свою очередь состоит из продольных балок, предназначенных для передачи основных нагрузок от маршевых двигателей к остальным элементам, и поперечных, используемых для увеличения устойчивости и поперчной жёсткости конструкции. Все модули привязываются к треугольной сетке с шагом 15м по поперечным осям и 10м вдоль основной оси корабля.

Компонеты делятся на 4 класса и отличаются способом добавления:

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

Экспорт кораблей в Space Engine
Для переноса созданного корабля его нужно экспортировать в .obj (4-я кнопка в верхнем ряду) и сохранить в <путь к SpaceEngine>\data\models\spacecrafts\. После чего добавить скрипт корабля в <путь к SpaceEngine>\data\models\spacecrafts\spacecrafts.sc.

Пример скрипта
Нужно поменять:
- "model_path" на реальное название файла модели корабля
(путь от папки <путь к SpaceEngine>\data\models\spacecrafts\),
- "name" на название корабля,
Code

Spacecraft  "name"
{
   Class   "Starship"

   Length   492.784
   Mass     5.2e11

   Unit     1.0

   Albedo   0.07
   Exposure 3.0
   SpecularPower  50
   SpecularBright 5
   Color  ( 1.00, 1.00, 1.00 )

   Mesh    "model_path.sm"
   MeshEulerAngles (0, 180, 180)

   DiffMap "SHW-diff-2.*"
   NormMap "SHW-norm-2.*"
}


Список модулей

  • Продольная ферменная балка (х1, х3, х9) - основа конструкции.
  • Поперечная балка - усиление конструкции.
  • Противометеоритный щит.
  • Термоядерный двигатель (односторонний, двусторонний) - основной движитель и источник энергии.
  • Маневровый двигатель
  • Излучающий радиатор (двусторонний, одностороний - в два раза тяжелее при той же эффективности).
  • Гиперпривод - локальный ускоритель времени для сверхсветовых перелётов.
  • Баки с пропеллентом (реактивной массой).
  • Баки с термоядерным топливом (может использоваться как не очень эффективный пропеллент).
  • Жилой модуль (стыкуются как вагоны поезда).
  • Грузовой модуль.
  • Посадочная палуба с шаттлами (пристыковывается к жилому модулю).
  • Навигационно-коммуникационный модуль.
  • Фотонная торпеда.

Примеры кораблей
Архив с кораблями в формате редактора.
Обновлённый Y-ship


Межзвёздный грузовик


Торпедоносец в потёмках


Маленький грузовой бот


Видео-инструкция по моделированию
Прикрепления: 8824175.jpg(239Kb) · 7529743.jpg(288Kb) · 0253877.jpg(201Kb) · 5577551.jpg(196Kb) · 0976716.jpg(164Kb)


Win7 Pro x64
Intel Core2Quad 2.5GHz 4GiB RAM
NVidia GForce 9800 1 GiB


Сообщение отредактировал SHW - Воскресенье, 09.12.2012, 17:56
ZIHAMMER1411Дата: Воскресенье, 09.12.2012, 17:55 | Сообщение # 2
Нет аватара
Звёздный Инженер
Группа: Пользователи
Российская Федерация
Сообщений: 1220
Награды: 8
Статус: Offline
Опа..... отлично.
saneckДата: Воскресенье, 09.12.2012, 18:23 | Сообщение # 3
Космический пилот
Группа: Пользователи
Украина
Сообщений: 133
Награды: 0
Статус: Offline
Да это же бомба!

EchoTangoДата: Воскресенье, 09.12.2012, 18:43 | Сообщение # 4
Исследователь
Группа: Пользователи
Пират
Сообщений: 238
Награды: 4
Статус: Offline
yahoo Ура! Сбылось! yahoo Свой редактор с блек-джеком и всем сопутствующим... yahoo
Уже сейчас прошу добавить отображение параметров: вес, габариты, центр тяжести, тяговооруженность и пр. Тем более, что в скрипт добавления корабля в SE необходимо вставлять размер корабля. А где же его взять?

P.S. Добавьте отмену последнего действия на стандартный Ctrl-Z. Пожалуйста.


Сообщение отредактировал EchoTango - Воскресенье, 09.12.2012, 18:49
NuclearCHEДата: Воскресенье, 09.12.2012, 18:53 | Сообщение # 5
Первооткрыватель
Группа: Пользователи
Российская Федерация
Сообщений: 435
Награды: 0
Статус: Offline
Круто

Config: Gigabyte GTX 770 (2048 MB/256 bit) , Intel Core i5 2400 3,1GHz, 8Gb DDR3, W10 x64
NuclearCHEДата: Воскресенье, 09.12.2012, 19:22 | Сообщение # 6
Первооткрыватель
Группа: Пользователи
Российская Федерация
Сообщений: 435
Награды: 0
Статус: Offline
Намного удобнее чем самому в 3ds max делать

Почему посты не объединились
Прикрепления: 7673741.jpg(108Kb) · 5464668.jpg(161Kb)


Config: Gigabyte GTX 770 (2048 MB/256 bit) , Intel Core i5 2400 3,1GHz, 8Gb DDR3, W10 x64

Сообщение отредактировал NuclearCHE - Воскресенье, 09.12.2012, 19:28
ZIHAMMER1411Дата: Воскресенье, 09.12.2012, 19:35 | Сообщение # 7
Нет аватара
Звёздный Инженер
Группа: Пользователи
Российская Федерация
Сообщений: 1220
Награды: 8
Статус: Offline
Quote (NuclearCHE)
Почему посты не объединились

Потому что новый с картинками.
FrancДата: Воскресенье, 09.12.2012, 22:32 | Сообщение # 8
Исследователь
Группа: Пользователи
Российская Федерация
Сообщений: 239
Награды: 1
Статус: Offline
Я в шоке!!! Очень КРУТО!!!
SpaceEngineerДата: Воскресенье, 09.12.2012, 23:14 | Сообщение # 9
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 54
Статус: Offline
Вау, круто! Я даже не мечтал что кто-то за меня сделает редактор! По поводу моделей - а зачем в obj? Надо было спросить меня о формате .sm файла, там нет ничего сложного - просто vbo + ibo (теперь массив оных, т.к. сделал мультитекстуринг). Уверен это будет проще и избавит от мороки с тагненциальными векторами. Кстати, теперь имея редактор, можно сильно оптимизировать хранение моделей в памяти, да и на диске: достаточно хранить только модули. Корбаль вообще может описываться только скриптом.

BlackPhoenixДата: Понедельник, 10.12.2012, 01:53 | Сообщение # 10
Космонавт
Группа: Пользователи
Украина
Сообщений: 47
Награды: 0
Статус: Offline
Очень достойный редактор! Выдайте мне в физический движок положение всех модулей и их типы (особенно двигатели и баки), и я смогу отмоделировать движение такого обьекта!

Возможно кроме просто самих двигателей добавить ещё верньерные двигательные блоки - блок, который изначально имеет 1 верньерный (с малой тягой) двигатель, на который можно ставить ещё до 4-х (с оставшихся сторон). Это для более точного управления ориентацией, в помощь основным двигателям.

И стыковочный узел добавить - можно ведь построить более сложный корабль из более простых блоков, используя стыковочный узел smile
HarbingerDawnДата: Понедельник, 10.12.2012, 03:18 | Сообщение # 11
Исследователь
Группа: Администраторы
Соединенные Штаты
Сообщений: 182
Награды: 6
Статус: Offline
SHW, you are a GENIOUS! Thank you for making this! Great work smile If you will agree, may I copy this post onto the English forum also?


Athlon II X4 640 o/c 3.3 GHz, 16 GB DDR3 RAM, GeForce GTX 480 w/ 1536 MB VRAM


Сообщение отредактировал HarbingerDawn - Понедельник, 10.12.2012, 03:19
SHWДата: Понедельник, 10.12.2012, 11:05 | Сообщение # 12
Строитель Миров
Группа: Команда SE
Нидерланды
Сообщений: 618
Награды: 10
Статус: Offline
Quote (SpaceEngineer)
Корбаль вообще может описываться только скриптом.

Так и есть. Формат редактора, по сути - скрипт, точнее JavaScript Object Notation (JSON).
Могу вам в любом виде выдать. Просто в бинарном несколько сложнее, так как JavaScript больше для работы с текстом подходит и я не знаю формата ваших буферов.

Quote (EchoTango)
Уже сейчас прошу добавить отображение параметров: вес, габариты, центр тяжести, тяговооруженность и пр. Тем более, что в скрипт добавления корабля в SE необходимо вставлять размер корабля. А где же его взять?

Расчёты характеристик корабля добавлю, когда определимся с характеристиками модулей. Там еще много чего нужно сделать. Размер SE вроде сам считает при импорте модели.

Quote (EchoTango)
P.S. Добавьте отмену последнего действия на стандартный Ctrl-Z. Пожалуйста.

А с этим сложнее. Тоже бесит иногда. Когда-нибудь добавлю.

Quote (BlackPhoenix)
Выдайте мне в физический движок положение всех модулей и их типы (особенно двигатели и баки), и я смогу отмоделировать движение такого обьекта!

Читайте формат модели. Там положение всех модулей с привязкой к сетке. Параметров модулей я пока и сам не знаю. Возможно сможете подсказать.
Quote (BlackPhoenix)
Возможно кроме просто самих двигателей добавить ещё верньерные двигательные блоки

Я вроде добавил маневровые двигатели. Хотя, не хватает еще двигателей для манёвров вперед-назад.
Quote (BlackPhoenix)
И стыковочный узел добавить - можно ведь построить более сложный корабль из более простых блоков, используя стыковочный узел

Стыковочный узел не совсем понятно для чего нужен. Жилые модули вращаются отдельно и стыкуются только стеком друг с дружкой. А остальные части корабля теоретически можно и так стыковать через фермы. Для игры просто обозначать, что тут можно расстыковывать.

Quote (HarbingerDawn)
If you will agree, may I copy this post onto the English forum also?

Yes, feel free in coping it. Probably, you could also help me with correct translation of interface, because my English is not very good.


Win7 Pro x64
Intel Core2Quad 2.5GHz 4GiB RAM
NVidia GForce 9800 1 GiB


Сообщение отредактировал SHW - Понедельник, 10.12.2012, 11:06
MefistofelДата: Понедельник, 10.12.2012, 11:43 | Сообщение # 13
Исследователь
Группа: Команда SE
Пират
Сообщений: 173
Награды: 0
Статус: Offline
SHW
Мастер!
Крутейше.
А можно свои модельки модулей добавлять?
SHWДата: Понедельник, 10.12.2012, 11:52 | Сообщение # 14
Строитель Миров
Группа: Команда SE
Нидерланды
Сообщений: 618
Награды: 10
Статус: Offline
Quote (Mefistofel)
А можно свои модельки модулей добавлять?

Пока нет. На все модули используется один текстурный атлас и тот весь забит до отказа.
Но, поскольку, в новой версии SE будут поддерживаться материалы с несколькими текстурами на модель, то буду дорабатывать и редактор в этом направлении.


Win7 Pro x64
Intel Core2Quad 2.5GHz 4GiB RAM
NVidia GForce 9800 1 GiB
maxmiztejmДата: Понедельник, 10.12.2012, 13:42 | Сообщение # 15
Космический турист
Группа: Пользователи
Словакия
Сообщений: 33
Награды: 1
Статус: Offline
Отличная работа!
Форум » SpaceEngine » Обратная связь и предложения » Редактор кораблей для Space Engine (Предлагаю прототип редактора космических кораблей для SE)
Страница 1 из 121231112»
Поиск:

>