Кирпичики и куличики. Моддинг в КСП

  1. Оффлайн

    jedi5218

    Посетители

    Сообщений: 163

    nikollor, при попытке загрузить эту кабину у меня юнити зависает насмерть..

    nikollor, спустя пять минут Юнити вышел из комы. нашёл разложенные по кабине LightBox`ы.. а в файлах их нет..

    jedi5218, он везде jedi5218

    13 августа 2014 - 18:05 / #1421
  2. Оффлайн

    manhack

    Посетители

    Сообщений: 1251

    - Создание фонарей

    Для создания прожектора необходимо иметь 3 вещи:

    Модель
    Текстуру
    текстуру эмиссии

    Далее они помещаются в Unity. Модели настраивается шейдер KSP/Emessive/Diffuse. После этого обычная и эмиссионная текстуры раскладываются по слотам.

    После этого в верхнем меню жмем Game Object / Create Other / Spotlight. Устанавливаем поворот и позиция как нам надо, а потом переименовываем в spotlight - с маленькой буквы. Данный объект делаем дочерним объектом модели фонаря:

    [attachment=11348]


    Потом настраиваем spotlight:

    range - дальность

    spot angle - угол конуса света. Как гласит официальный форум - для дальнего света угол 25-30 градусов, для ближнего 45.

    intensity - яркость света 0.5 - 1 вполне хватит.

    Далее делаем анимацию:

    Делаем анимацию эмиссионной текстуры - во время включения фонаря "стекло" будет светиться.
    Также делаем анимацию интенсивности объекта spotlight - 0-й кадр - интенсивность 0, 60-й кадр - нужная вам интенсивность.

    Далее делаем конфиг и вставляем такой модуль:

    MODULE
    {
    name = ModuleLight
    lightName = spotlight (или как у вас назван объект)
    useAnimationDim = true
    lightBrightenSpeed = 2
    lightDimSpeed = 2
    animationName = LightAnimation - или любое другое имя анимации
    resourceAmount = 0.02
    useResources = true
    }





    Результат:

    [attachment=11350]

    [attachment=11351]


    При необходимости поиграться с параметрами range/intensity для достижения нужного результата.
    Сообщение отредактировал manhack 14 августа 2014 - 13:44

    14 августа 2014 - 13:40 / #1422
  3. Оффлайн

    manhack

    Посетители

    Сообщений: 428

    Лякуша Уляпик, От одиночества. К счастью, он теперь не один.

    IDeXteRI, А чем я его кормить буду? Ночью солнца нет, жрать нечего. А ритеги погубят его - погибнет от радиации бедняжка

    Карьера + RSS + N-tel(principia) - моды детали.
    Нобелевскую мне за открытия в термоядерной динозаврии!
    PS меня погрыз Борн Дубогрыз

    14 августа 2014 - 14:23 / #1423
  4. Оффлайн

    alexustas

    Посетители

    Сообщений: 675

    jedi5218 писал:
    если кто-то уже разбирался с prop`ами, скажите пожалуйста, как мне сделать лампочку? Обычную лампочку, которая бы включалась при включении света? если привязать объекты с лампочками к интерьеру перед экспортом его модели в KSP у нас получится вечная лампочка, которую нельзя за ненадобностью выключить.
    Следовательно, выключающуюся лампочку можно получить, скурив достаточное количество CFG..


    Описываю самый простой способ и исхожу из того, что RPM-кнопку ты таки умеешь делать и что у тебя одна группа светильников на всю кабину, управляемая одним-большим -общим-главным Рубильником. И сами приборы освещения Магические, незримые. Т.е. свет от них есть, а вот их сами пока еще нет

    И так, в кабине развешиваем лампочки (Game Object -> Create Other-> ИС нужного тебе типа), согласно всем нормам охраны труда, безопасности и последним тенденциям интерьерного дизайна, проводим с ними манипуляции, описанные в моем предыдущем посте, а также, даем им ВСЕМ одинаковое имя, например "FloodLight". С Юнити на этом какбэ и всё. Дальше будем пилить конфиги.

    Вру, не все.

    Еще же надо будет саму кнопку прикрутить, которая "большой-главный-Рубильник"... Но нам его сначала надо создать с помощью конфига... Так что создаем новый конфиг для Пропа типа "кнопока":

    PROP
    {
    name = InternalLightSwitch - имя Пропа


    MODULE
    {
    name = JSIActionGroupSwitch - собстна делает из просто Пропа кнопку
    animationName = SwitchLightAnim - анимация нажатия/включения самой кнопки
    switchTransform = SwitchPUSHcollider - коллайдер в который надо ткнуть мышкой, чтобы включить эту кнопку
    actionName = intlight - Магия, специальный Action, управляющий ИС в IVA
    internalLightName = FloodLight - да-да, ты прав, наши магические лапочки, так как у них одинаковое имя, они ВСЕ будут синхронно управляться одним Рубильником
    needsElectricCharge = true - труЪ Хардкор, свет погаснет, когда кончится электричество

    }
    }

    SAVE!

    Идем обратно в Юнити, перегружаем базы PartTools и видим в списке Пропов наш кнопко-рубильник, лепим его на самое видное место и сохраняем свой internal.cfg и сам Internal.

    ФСЁ!
    Сообщение отредактировал alexustas 15 августа 2014 - 17:48
    15 августа 2014 - 17:47 / #1424
  5. Оффлайн

    manhack

    Хорошие люди

    Сообщений: 3930

    alexustas, Как я понял, по нажатию на нужный коллайдер можно назначить любое действие, а не только лампочки?

    15 августа 2014 - 18:37 / #1425
  6. Оффлайн

    alexustas

    Посетители

    Сообщений: 675

    manhak писал:
    alexustas, Как я понял, по нажатию на нужный коллайдер можно назначить любое действие, а не только лампочки?

    ну не прям совсем-совсем любое, к сожалению

    actionName:
    - gear
    - brakes
    - lights
    - rcs
    - sas
    - abort
    - stage
    - custom01..custom10
    - intlight
    - dummy
    - plugin.
    15 августа 2014 - 20:28 / #1426
  7. Оффлайн

    manhack

    Хорошие люди

    Сообщений: 923

    alexustas, Вот под этим списком я и имел в виду любое. А что такое дамми?

    Вязаночка - выбор чемпионов.
    Ионники - удел мучеников.
    Базы на планетах - идея чертовых садистов.
    *ПИАРТАЙМ* Ну я тут http://ficbook.net/authors/85527 короче пишу немного, если кому интересно, посмотрите, рад узнать ваше мнение.

    15 августа 2014 - 21:04 / #1427
  8. Оффлайн

    jedi5218

    Посетители

    Сообщений: 163

    видимо, чего-то я делаю не так.alexustas, светильник - проп, или объект вшитый в модель?

    jedi5218, он везде jedi5218

    15 августа 2014 - 22:28 / #1428
  9. Оффлайн

    manhack

    Посетители

    Сообщений: 163

    jedi5218, Как я понял - выключатель - проп с прописанным в конфиге колладером с функцией кнопки. Светильник - объект источника света и анимация, которая пишется в конфиге пропа.

    jedi5218, он везде jedi5218

    15 августа 2014 - 22:42 / #1429
  10. Оффлайн

    alexustas

    Посетители

    Сообщений: 675

    manhak писал:
    alexustas, Вот под этим списком я и имел в виду любое. А что такое дамми?


    dummy - это "ничего", то есть для бутафорских всяких кнопочек, анимация нажатия проиграется и все.

    И еще "dummy" можно и нужно и удобно использовать в комплекте с "perPodPersistenceName = "...

    Предвосхищая ваш вопрос, попробую на пальцах объяснить что это есть такое.

    И так, раскрывая и углубляя тему светильников в кабине, вспомним, что я рассказывал о неких "Магических" ИС, которые не имеют собственной геометрии.
    Как же к Источникам Света, которые по сути, ближайшие родственники Сферического Коня, т.е. просто точки, прикрутить реальные модели космических люстр, торшеров и бра и синхронизировать их работу? Вполне даже просто!

    Управляющий элемент у нас, как вы наверное еще пока помните, Главный Рубильник. Надо заставить его не только делать вкл-выкл самому себе и запускать экшн группу "intlight", но и управлять другими Пропами (лампами). Для этого в RPM существует механизм "perPodPersistenceName". Это некая переменная-событие, создаваемое пользователем...
    Если мы в конфиг нашего рубильника добавим строчку:

    "perPodPersistenceName = TurnInternalLights",

    то произойдет следующее. В пределах нашей кабины создастся переменная с гордым именем "TurnInternalLights", хранящая состояние данного Рубильника, и все Пропы, проживающие в нашей кабине, смогут ее увидеть. И когда мы щелкним нашим Рубильником, переменная "TurnInternalLights" станет Истиной, т.е. "true".
    Пол дела сделано!
    Теперь нам надо Пропам-лампам-люстрам-торшерам указать, чтобы они сидели-висели-лежали-стояли и внимательно следили за состоянием Главного Рубильника, посредством доступной всем переменной "TurnInternalLights". Для этого берем конфиг Пропа-лампочки и копипастим в него ту же самую строчку "perPodPersistenceName = TurnInternalLights", а строчку про коллайдер ("switchTransform = ...") даже и не пишем, потому как сам лампа будет активироваться не по клику на ней, а управляться централизованно, с помощью Главного Рубильника, что вполне логично, по-моему...

    конфиг лампы (не путать Лампу и Источник Света!!)

    PROP
    {
    name = InternalLightBox01


    MODULE
    {
    name = JSIActionGroupSwitch
    animationName = IntLightBoxAnim
    perPodPersistenceName = TurnInternalLights
    actionName = dummy
    }

    }

    как вы уже, наверное, заметили, тут используется тот же самый модуль плагина RPM - "JSIActionGroupSwitch", собственно а других-то и нет. И этому модулю обязательно нужен какой-то Экшн, он без него не может вообще никак, а какой ему тут укажешь Экшн, не "Stage" или "RCS" же в самом деле.

    А указывать-то надо, палюбасу!

    Вот и пригодился нам тут ничего не делающий Экшн "dummy", потому как все что требуется от этого Пропа - это просто проиграть анимацию включения, без каких либо реальных последствий.

    И что мы теперь имеем:
    1. кнопко-Рубильник проигрывает собственную анимацию нажатия-ключения
    2. кнопко-Рубильник зажигает указанные Источники Света с помощью Экшена Intlight
    3. кнопко-Рубильник изменяет состояние переменной "TurnInternalLights"
    4. Пропы-лампы реагируют на изменение состояния "TurnInternalLights" и проигрывают собственную анимацию включения

    Да будет Свет!


    Итого.
    На примере лампочек, я вам попытался изложить суть управления одними пропами с помощью других (вернее другого) пропов, т.е. создать цепочку Master - Slave, где Master - это какая-то кнопка, активируемая игроком, а Slave`ы - Пропы, реагирующие на состояние Master`a и связанные с ним посредством общего "perPodPersistenceName = "

    П.С.
    Разумеется можно сделать несколько кнопко-Рубильников для разных групп освещения (в ALCOR`e я сделал три группы). При этом надо задать разные имена Источникам Света, входящие в разные группы. Т.е., например, 2 ИС для пилотского мостика с именами типа "CockpitLight", пару для Инженера с именем "EngineerDeckLight" и пару тройку для общего освещения с именем "FloodLight", сделать три кнопки и прописать в их конфигах "internalLightName = CockpitLight", "internalLightName = EngineerDeckLight" и "internalLightName = FloodLight и соответствующими perPodPersistenceName`ами . Сделать три конфига для ламп, реагирующих, на нужные им персистенты.

    И ФСЁ!

    15 августа 2014 - 22:56 / #1430
  11. Оффлайн

    manhack

    Посетители

    Сообщений: 1165

    alexustas, вроде дошло... И когда ты столько успел нахватать о КСП? Мы же прошлым августом практически одновременно начали изучать это дело

    С Будущим Наступающим!
    Пора вставать с дивана, и идти на приём стажёров...

    15 августа 2014 - 23:02 / #1431
  12. Оффлайн

    alexustas

    Посетители

    Сообщений: 675

    jedi5218 писал:
    видимо, чего-то я делаю не так.alexustas, светильник - проп, или объект вшитый в модель?


    Кнопко-Рубильник - Проп.

    Светильник - Проп, без Источника Света, все что он делает, это включает свой Эмиссив, что бы изобрзить бурную деятельность, типа это он тут все так круто освещает.

    Источники Света живут в модели Internal.

    Строго говоря, можно источник ИС воткнуть и в сам Проп-Светильник и анимировать не только Эмиссив его текстуры, но и интенсивность ИС. но я предпочитаю развешивать ИС в модели Интернала. Так можно подогнать направление и яркость освещения как надо в конкретном-месте-конкретной-кабины, а если ИС будет в Пропе и мне, скажем, нужно чтоб вот-этот-угловой-фонарик светил чуть ярче, чем такой-же-но-центральный, то придется делать еще один Проп с еще одним mu-файлом, в котором всего-то интенсивность ИС не 0.72, а 0.84..
    15 августа 2014 - 23:08 / #1432
  13. Оффлайн

    manhack

    Хорошие люди

    Сообщений: 821

    Народ, нужна ваша консультация.

    Суть такова:

    1. Главная параболическая антенна. Не знаю как ее правильно сложить. На мой взгляд, это должно быть так:

    [attachment=11397]


    Есть ось только в одном месте, но не уверен на счет сгибания ножек в месте соединения их в корпусе - кто скажет как именно сделать?

    2. Еще одна антенна:

    [attachment=11398]


    Куда и как ее уложить?

    3. Штанги непонятного назначения. Ну не торчать же им так во время запуска... Что подскажите?

    [attachment=11400]


    P.S. Я тут подумал, а никому случайно не нужна будет лампа дневного света 2х4х80 см в качестве внешнего светильника или же пропа для кабины? А то вот подумываю такую сделать.
    16 августа 2014 - 15:54 / #1433
  14. Оффлайн

    CoolCrazy

    Хорошие люди

    Сообщений: 3930

    manhak писал:
    Еще одна антенна:

    Маленькие аннтенки складываются к большой, а та, в свою очередь, складывается к корпусу с боку.
    manhak писал:
    Штанги непонятного назначения.

    Как научные инструменты - но точно также раскладывающиеся в космосе, как антенны.

    16 августа 2014 - 16:03 / #1434
  15. Оффлайн

    manhack

    Хорошие люди

    Сообщений: 3930

    CoolCrazy, Спасибо, попробую что нибудь придумать, авось и выйдет...

    16 августа 2014 - 16:04 / #1435
  16. Оффлайн

    CoolCrazy

    Хорошие люди

    Сообщений: 3930

    manhak писал:
    2х4х80

    Это длинная палка чтоль?

    16 августа 2014 - 16:05 / #1436
  17. Оффлайн

    Лякуша Уляпик

    Модераторы

    Сообщений: 6471

    manhak, Один вопрос: RCS приводы декор или будут рабочие?

    Не люблю людей... ну или не умею толком их готовить.

    16 августа 2014 - 16:06 / #1437
  18. Оффлайн

    CoolCrazy

    Хорошие люди

    Сообщений: 3930

    manhak писал:
    На мой взгляд, это должно быть так

    Да так и делай.

    16 августа 2014 - 16:06 / #1438
  19. Оффлайн

    manhack

    Хорошие люди

    Сообщений: 821

    CoolCrazy, Лампа дневного света, по форме естественно палка

    Лякуша Уляпик, Рабочие
    16 августа 2014 - 16:17 / #1439
  20. Оффлайн

    Лякуша Уляпик

    Модераторы

    Сообщений: 6471

    manhak, ну тогда сделай подарочек игрокам, сделай предельно слабый гиродин, а еще лучше убери его нафиг.

    Не люблю людей... ну или не умею толком их готовить.

    16 августа 2014 - 16:21 / #1440

Статистика форума, пользователей онлайн: 0 (за последние 10 минут)

---

Администраторы | Модераторы | Хорошие люди | Посетители | Новичок

Создано тем1934 Всего сообщений158044 Пользователей19234 Новый участникGilia
Последние сообщения с форума
Loading...

Нашли ошибку?
Вы можете сообщить об этом администрации.
Выделив текст нажмите Ctrl+Alt