Перейти к контенту

gamemtl.xr shaders.xr lanims.xr и формат ppe


amik

Рекомендуемые сообщения

Если есть вопросы как и что будем решать/помогать по мере знаний.

 

singapur22


agr_u_fade -- потемнение в глазах на 5 секунд.
alcohol -- двоится в глазах, плавающая яркость. (Требует отключения.)
blink -- скачёк яркости на 1 секунду.
controller_hit -- покраснение в глазах. ~0.5 сек.
dead_zone -- шум в изображении, как в зоне повышеной радиации. (Требует отключения.)
deadcity_wake -- потемнение в глазах, с постепенным просветлением, с эффектами сильного двоения и
покраснения. ~20 сек.
deadcity_wake_old -- потемнение в глазах, с постепенным просветлением, с эффектами "dead_zone" и "alcohol".
~20 сек.
duality_circle -- два цикла сильного двоения.
escape -- слабое покраснение в глазах. ~8 сек.
fire_hit -- покраснение в глазах. ~1 сек.
monolith_off -- периодическое смена потемнения и покраснения, с постепенным нарастанием силы. ~20 сек.
nightvision -- прибор ночного виденья. Зелёный. ~20 сек.
nightvision2 -- эффект "alcohol"+"dead_zone" , с постепенным нарастанием силы. ~20 сек.
nightvision_bad -- прибор ночного виденья. Зелёный, плохой. ~8 сек.
nightvision_good -- прибор ночного виденья. Синий, хороший. ~8 сек.

erlik
dead_zone.ppe - картинка приобретает белесый цвет.
radar_psi.ppe - дает небольшое раздвоение картинки+черный экран
psy_antenna.ppe – картинка окружающего мира становится бело-желтой как на радаре в конце локации – в зоне
действия антенны.
yantar_underground_psi.ppe - эффект сильного раздвоение картинки
blink.ppe - вспышка белого света на секунду-другую
deadcity_wake.ppe - интересный эффект в игре не задействованный – сначала черный экран, раздвоение картинки,
красный экран.
vibros.ppe - с этим все понятно – эффект выброса – красное небо, вспышки и т.д.
vibros_p.ppe - еще один выброс, не такой яркий. что-то вроде предвариловки выброса: эффект легкого
землетрясения, плавающая резкость, плавающая яркость, звук радиационного фона, плюс ГГ роняет на землю в
самом начале. Длительность секунд 20.
radiation.ppe - создает картинку радиационной зоны
fire_hit.ppe - постэффект на попадание в ГГ: заливка экрана красным

Формат файлов постпроцессинга (ppe)

 

erlik[/b](а)"]Как бы это использовать?
Для того, чтобы запустить тот или иной эффект из этой папки понадобится некоторое знание скриптов.
Эффекты запускаются с помощью операторов
level.add_cam_effector ("camera_effects\имя файла.anm", num, loop, "") - для эффектов камеры или анимаций

level. add _pp_effector ("имя файла.ppe", num, loop) - для постэффектов
num – любое четырехзначное число
loop - логическое значение: ставим либо true, либо false. Если true, то эффект будет проигрываться бесконечно, если false, то один раз.

Выглядеть это будет так.
Для примера возьмем выброс и все что с ним связано.
Запуск постэффекта выброса:

level.add_pp_effector("vibros.ppe", 1974, false)

запуск анимации землетрясения

level.add_cam_effector("camera_effects\earthquake.anm", 1975, false, "")

Как вы заметили, во втором случае, так как анимации в основном лежат в подпапке camera_effects нужно ее указывать. Если же анимка берется из общей папки anims, тогда нет.

Цифры после запятой это sid эффекта который мы ему задаем. Могут быть любыми – четырехзначными. Для чего – поясню ниже.
Для остановки эффекта используется два следующих оператора:
Для остановки эффекта камеры:

level.remove_cam_effector(num)

для остановки постэфекта:

level.remove_pp_effector(num)

Остановка двух наших предыдущих эффектов будет выглядеть так.
останавливаем выброс

level.remove_pp_effector(1974)

Останавливаем землетрясение

level.remove_cam_effector(1975)

Как вы могли заметить, в скобках вместо имен эффектов мы просто написали цифры – sid’ы эффектов, которые мы задали в запуске процессов. Так удобнее, нежели снова вписывать полное имя.

Простейший скрипт запускающий эффект, скажем выброса, будет выглядеть так:

function run_vibros()
level.add_pp_effector("vibros.ppe", 1974, false)
level.add_cam_effector("camera_effects\earthquake.anm", 1975, false, "")
set_postprocess ("scripts\earthshake.ltx")
end

Но это будет, во-первых безопасный выброс, во-вторых весьма кратковременный, а в третьих – беззвучный.
Для того, чтобы это исправить, добавляем в формулу вот это:
local h = hit ()
h.power = 1 --сила хита, регулируется по желанию
h.direction = vector():set( 1, 0, 0 ) --вектор получения хита
h.impulse = 1 --импульс
h.draftsman = db.actor --от кого дать хит
h.type = --тип хита
db.actor:hit (h) --кому дать хит


Тип хита можно задать самый разный.
Можно хитовать эктора только радиацией
hit.radiation
или телепатией
hit.telepatic
или шоком
hit.shock

В общем выбирайте любой по своему усмотрению.

Можно задать сразу несколько хитов.

function Run_Vibros()
local h = hit()
h.direction = vector():set( 1, 0, 0 )
h.impulse = 1
h.draftsman = db.actor
h.power = 1
h.type = hit.radiation
db.actor:hit(h)
h.power = 2
h.type = hit.shock
db.actor:hit(h)
h.power = 2
h.type = hit.telepatic
db.actor:hit(h)

Здесь эктор будет получать хит радиацией, шоком и телепатией.
Идем дальше. Звук.
После того как расписали, от чего эктору будет хреново и насколько хреново, добавляем в
скрипт эти строчки:
local snd_obj = xr_sound.get_safe_sound_object([[ambient\earthquake]])

snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0)

--Все - звук выброса у нас есть.
--можно добавить еще звук счетчика Гейгера:
xr_sound.set_actor_sound("level_border_detector")
xr_sound.set_actor_sound_factor(0.1)

Вот еще набор пугающих звуков из папки sounds:
local snd_obj = xr_sound.get_safe_sound_object([[ambient\rnd_outdoor\rnd_dark4]])
local snd_obj = xr_sound.get_safe_sound_object([[ambient\rnd_outdoor\rnd_moan1]])
local snd_obj = xr_sound.get_safe_sound_object([[ambient\rnd_outdoor\rnd_moan2]])
local snd_obj = xr_sound.get_safe_sound_object([[ambient\rnd_outdoor\rnd_dark6]])

local snd_obj=xr_sound.get_safe_sound_object([[ambient\random\rnd_the_horror]])

--Погода из папки weathers
level.set_weather("stancia") \ погода на аэс

– или это - судный день или день гнева
level.set_weather_fx ("surge_day")

--можно всунуть эффект телепорта (белый экран)
level.add_pp_effector ("teleport.ppe", 2009, false)

--постэффект мертвой зоны:
level.add_pp_effector("dead_zone.ppe", 1001, false)

или вместо этого
--кругом радиация
level.add_pp_effector("radiation.ppe", 1974, false)

--эффект «эктору конкретно двинули»
level.add_cam_effector("camera_effects\fusker.anm", 1975, false, "")

--или вместо этого
--эктора шатает как пьяного
level.add_cam_effector("camera_effects\drunk.anm", 1978, false, "")

--и у него «белочки» в глазах
level.add_pp_effector("alcohol.ppe", 1976, false)
end

В общем, в одну функцию можно "зарядить" сколько угодно эффектов, главное не переборщить, так как некоторые похожие анимки или ppe могут наложиться друг на друга и получится какая-нить хрень. Так что с этим надо быть аккуратным.
Это первое. А второе то, что так никто не делает. В том смысле, что в одну кучу все не валит.
Тот же выброс по нормальному делается многофазовым. И вот тут в каждой фазе прописывается тот или иной набор эффектов – анимация, постэффект, звук. И для каждой фазы отводится своя длительность. По таймеру. Также расписывается поуровнево какой какой тип хита и какой силы будет получать эктор в зависимотси от локации. А дальше идет остановка всех эффектов соответствующими операторами. Но так как в этой формуле этого нет – весь эффект продлится только несколько секунд, ровно столько сколько длится каждая анимация. Некторые ppe требуют принудительной остановки.
Для того, чтобы сделать выброс так как это сделано в глобальных модах, требуется очень хорошее знание скриптов.
Сам я написать такой скрипт не смогу, поэтому пользуюсь готовым – из аддона Blowout к ОГСМ. Там вполне рабочий и симпатичный выброс.

А вы можете поэкспериментировать в описанными эффектами для собственного удовольствия. Или замутить с их использованием какую-нить прикольную скриптовую сценку.
Позднее я постараюсь дополнить вышеизложенное. Материал на данный момент находится на стадии работы и будет дополняться и исправляться. А пока все.
Если если ошибки - комментируйте - исправлю.

Выражаю огромную благодарность камраду singapur22 за объяснения базовых моментов, без которых я бы не смог разобраться в этой теме.

По shaders.xr пускай кто-то дополнит.
Компилятор/декомпилятор shaders.xr.

particles.xr
anm файлы

=====================


По gamemtl.xr скажу что там можно сделать. Можно выставить партиклы/звуки при взаимодействиях разных объектов (пуля асфальт дерево бетон и т.д.).

 

3095746.th.jpg 3095745.th.jpg 3095747.th.jpg


На первом видно вкладку Material Pair (контактная пара, воздействие чего-то с чем-то) Выбираем human.
На втором рисунке расписано взаимодействие человека с листьями (от кустов) materials/bush. Внизу появятся свойства:
Breaking Sounds - перевод говорит сам за себя.
Step Sounds - Звуки когда нпс касается чего-то ножками. Так проставлен звук с асфальтом, землей деревом водой и другими вещами (звука контакта с шифером, бетоном нету...если найдете теперь можете проставить)
Collide Sounds - Звук когда мы до чего ни будь дотронемся (звук взаимодействия двух вещей), будь то бочка стул стена...
Collide Particles - Отыгрываемый партикл при контакте...Когда попадает в нпс пуля, видна кровь и т.д.
Collide Marks - Всякие текстурки-следы (в основном из папки сталкера wm) которые будут оставаться после контакта.

gamemtl_xr_editor


lanims.xr тут выставить можно свет и освещение. Можно профиксить свет костра вспышки грозы и прочее. Запускается в СДК ЛЕ. Работать с этим файлом очень легко.

Изменено пользователем Murarius
Поправил спойлеры. Скрины, увы, давно сдохли.
  • Нравится 1

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий

Для ковыряния ppe вам понадобиться Ppe Editor 1.2.0

Описание:

***********

Программа для создания и редактирование файлов построцессинга(*.pee).

Это первая версия в которой,возможно, полно багов и недочетов.

Про использование программы можно прочить в Ppe Editor Help.chm, пока написано мало, т.к. сам не понимаю до конца значения некоторых параметров,

но думаю это вскоре будет исправлено.

------------------------------------------------------------

 

 

Папка gamedata - это небольшой мод для просмотра *.ppe-файлов в игре.

Установка:

***********

Скопировать папку gamedata в директорию игры.

В игре, выйти в меню и нажать F1, откроеться небольшое окошко где нужно ввести название рре-файла.

Enable - включить построцессинг

Disable - отключить.

 

P.S. Для ускорения работы создания рре файлов, можно не выходить из игры, а переключиться(Alt+Tab) на редактор, подправить нужные параметры, сохранить и

снова переключиться на игру, где сразу же можно увидеть результат.

Вчера с ней игрался, капризная она, чуть что вылет). Редактировать советую !Postprocess.cmd из СДК 0.7 так лучше будет. Не создавайте новых эффектов во время игры, вылетит, сохраняйте поверх.

============

Для совмешения и возможно редактирования файла gamemtl_xr нужен gamemtl_xr_editor, но вам тяжело будет найти тот материал который вам нужен.

 

lanims.xr Не знаю, наверное редактировать можно только через СДК. Там анимки света находятся от красных ламп костров и всего другого. Там можно сделать освещение для новой аномалии (а если фантазия нормальная можно зону украсить ого-го как).

shaders.xr Тоже СДК, и тоже много чего можно накрутить. С ним я не игрался правда. Знаю что можно сделать "плавающею шкурку" зомбику и т.д.

============================================================

 

Что можно сделать?))

Наверное смотря какая задача.

Вот недавно macron сделал воду которая отсвечивается на стенах и нпс, зависит от освещения. Если что то пускай меня подправит кто-то (а лучше сам автор ;)).

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

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

Изменено пользователем amik

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий

amik я немного не допетрил в Ppe Editor 1.2.0 написано что она для ЗП. Это так? Нет, там частичная поддержка ppe файлов из ЗП. Я вчера редактировал эти файлы (из ТЧ) в СДК ЗП все прекрасно было, так что лучше это делать там. Или ppe одинаковы у всех игр? Точно не скажу. НО, вроде-бы должны работать на всех версиях. amik

 

 

Изменено пользователем amik
Ссылка на комментарий

Я брал эффект из ПостПроцесс Мод (Bak aka Rulix, P.A.X) для ЗП, так все работало. Бывает с другими вылетает ругаясь на отсутствие камеры (вылет где-то на форуме даже встречал).

Я этого не пойму, как к эффекту ppe без скриптов камеру прикрутить? P.A.X объясняй))!

-----

Министр Тогда почему при подключении одного из ппе эффектов вот таким способом

level.add_pp_effector("rename.ppe", 1001, false)

происходит вылет с руготней на отсутствие анм камеры?

 

Потом все подредактирую, соединю посты.

Изменено пользователем amik

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий
Я этого не пойму, как к эффекту ppe без скриптов камеру прикрутить?

Никак

----------

 

amik, т.е. "одного"? Вылет при установке какого-то конкретного ppe (если да то какого)?

Хм, сейчас не замечаю. Ну если что потом встретимся еще с ним.

 

P.S. Адаптировал этот мод и никаких вылетов по поводу камер не получал.

Я от туда брал только отдельные ppe. Дело не в том моде. Возможно я что-то не так делал :wacko:

Изменено пользователем amik
Ссылка на комментарий

Вчера настраивал gamemtl.xr от DiXares (TREWKO).

Мда...скажу я вам, были-бы звуки нужные((...

 

Ну и зацепил историю))

3780435.th.jpg 3780438.th.jpg 3780441.th.jpg 3780442.th.jpg

Следы кровососки.

 

=============

Мне стало понятно одно. Неважно какой материал прописан к одной из костей нпс/монстра, важно какой материал указан в конфиге иного.

Изменено пользователем amik

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий

Пока он жив-да, настройки костей только для трупа.

Спасибо CAHCAHbl4 будем иметь в виду, я не знал. Может есть способ как исправить "прозрачные" трупы? В первые секунды на него и наступить можно но потом вроде-бы как его и нет, ходим по земле а не по нем...

Для этого труп должен быть статическим объектом как я понимаю.

 

для всеобщего понятия:

 

Статические обекты это лоды на локах-"недвижимость"

Динамические обекты - все что подчиняется физике-ящики и тд тп

Анимированные дин. обекты- неписи подчиняются анимации, логике и совсем немного физике.

Трупы поидее динамические, так как не подчиняются анимации,

но наверное отключена коллизия с ГГ,

чтобы он не цеплялся и на запинался о горы трупов,

которые он на своем пути оставляет.

Изменено пользователем amik
Ссылка на комментарий

Спасибо CAHCAHbl4 по чуть чуть будем собирать информацию...

Вот понял (от части) суть двух вылетов:

 

Expression    : assertion failed
Function      : I:\xray-svn\editors\ShaderEditor\GameMtlLib_Editor.cpp
File          : I:\xray-svn\editors\ShaderEditor\GameMtlLib_Editor.cpp
Line          : 58
Description   : p_it==material_pairs.end()

Может появится в любое время. В основном у меня был при загрузке игры возле определенного места (так и не знаю в каком материале была причина).

Криво совмещен сам файл. Нарушены оригинальные номера материалов, или еще что-то. Нужно делать заново адаптацию, распаковывайте чистый gamemtl.xr и поверх без замены кидайте свой файл...если будут неполадки придется искать где обрывается "порядок" в названиях материалов по сравнению с оригинальными материалами.

 

[error]Expression    : assertion failed
[error]Function      : I:\xray-svn\editors\ShaderEditor\GameMtlLib_Editor.cpp
[error]File          : I:\xray-svn\editors\ShaderEditor\GameMtlLib_Editor.cpp
[error]Line          : 540
[error]Description   : FALSE==UpdateMtlPairs()

Тут проще, в материале не прописана не одна пара взаимодействия...

 

Возможно скоро будет мод на эту тему, войдет кровь зомбика следы кровососки и многое другое.

 

===============================================

Появился Компилятор/декомпилятор shaders.xr.

Для совмещения двух файлов подойдет!! Проверял, правда в игре не смотрел.

Сайт источник:

http://stalkerin.gameru.net/modules.php?na...ned&lid=459

 

================================

Вчера получилось сделать вот такое:

Нпс теперь знают что доски они могут тоже прострелить. Если ГГ враг и спрятался за забором то они подойдя к вам на 1-1.5м начнут стрелять в забор условно можно посчитать что ваше дыхание выдало вас. Так-же они нормально ориентируются по звуку, если вы начнете менять позицию делайте это тихо ;)

3836462.th.jpg 3836465.th.jpg

Изменено пользователем amik

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий

Ссылку на декомпилятор shaders.xr поправьте, не работает. Вот сразу на скачивание: http://stalkerin.gameru.net/modules.php?na...tit&lid=459.

 

Компилятор/декомпилятор gamemtl.xr. Разбирает материалы на параметры. Автор - Kolmogor. http://stalkerin.gameru.net/modules.php?na...ned&lid=383

 

Компилятор/декомпилятор particles.xr. Разбирает на одиночные файлы партиклов - pe и pg. Автор - Kolmogor. http://stalkerin.gameru.net/modules.php?na...tit&lid=390

 

Нету только декомпилятора lanims.xr, но сделать можно на раз-два. Тот же чанковый формат, что и у остальных xr-файлов.

Ссылка на комментарий

геймру, блин :) Вот декомпилятор shaders.xr на народе: http://narod.ru/disk/7768926001/ShaderCDC.7z.html.

Тогда давай уже и по материалам ссылку ;)

Изменено пользователем amik
Ссылка на комментарий

amik

1) Немного не понял тему по gamemtl.xr. Объясни пожалуйста что это такое и с чем его едят.

2) На ковыряние shaders.xr есть урок?

3) А как же ковыряние .ppe оффициальным 0.7-ым? Там же вроде есть рабочий.

Изменено пользователем amik

Выводы модмейкера:

1)Вылетает - это хорошо. Значит, работает :)

2) Если хочешь сделать что-то хорошо, делай сам!

3) Если падёшь духом, падёт и мод.

4) Он живой... :o

Ссылка на комментарий

компилятор/декомпилятор gamemtl.xr. Автор - все тот же Колмогор: http://narod.ru/disk/8219999001/gmdc_03.zip.html

 

компилятор/декомпилятор lanims.xr. Автор - я :): http://narod.ru/disk/8220347001/lanims%20CDC.7z.html

Первая версия, пока только разбирает файл на отдельные анимации. Попозже прикручу разбор анимаций, сейчас СДК нет под рукой.

Изменено пользователем KD87
Ссылка на комментарий

KD87, нууу собрать\разобрать - это ок, а редактировать как?

В SDK. Она для совмещения а не редактирования :russian_ru:

Изменено пользователем amik

Выводы модмейкера:

1)Вылетает - это хорошо. Значит, работает :)

2) Если хочешь сделать что-то хорошо, делай сам!

3) Если падёшь духом, падёт и мод.

4) Он живой... :o

Ссылка на комментарий

SibireaStalker

1. У каждой вещички в игре есть свой материал. Вот в этом файле все и содержится все материалы.

2. Нет нету. И от меня не будет пока)) Хотя возможно...сейчас подключу один диск гляну...

3. Не совсем понятно. Да 0.7 и ковыряй если что он все понимает. (и ТЧ и ЗП...)

 

KD87 Отлично. Когда сделаешь полную версию по lanims.xr добавлю в шапку.

Где написано если не секрет?

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий

amik, если где в смысле - на чем - то на Perl. Если где в смысле - в чем - в блокноте :) Ах да, как и для acdc, для использования декомпилятора что shaders.xr, что lanims.xr, нужен интерпретатор perl - ActivePerl.

будет и редактирование, написано же - попозже...

Ты про shaders.xr?

 

В сообщении же: "Попозже прикручу разбор анимаций, сейчас СДК нет под рукой. "

Изменено пользователем KD87
Ссылка на комментарий

Так это я так понял про lanims.xr а не shaders.xr

Какие анимации могут быть в shaders.xr?)) Анимки света есть в lanims.xr....

======================================

Видео урок от STK_MOD_GDC 2004 Presentation.

Кстати я сейчас этим и занимаюсь)) Все настраиваю все перелопачиваю в gamemtl.xr. И то что автор сказал что там многое можно сделать он не преувеличил :)

Stalker_Shader_&_Gamemtl_Edit
Изменено пользователем amik

Мой архив

Сталкером не занимаюсь.

Ссылка на комментарий

Прикрутил разбор параметров световых анимаций к декомпилятору lanims.xr: http://narod.ru/disk/8252545001/lanims%20CDC.7z.html

Пробуйте, о багах пишите.

Только лучше все-таки править анимации в СДК :)

Ссылка на комментарий

Ребята, помогите! У меня не получается сделать проигрывание постэффекта. Во время игры он появляется, но не проигрывается (как будто паузу нажали, и эффект показывается только на начальной стадии). Вот скрипт:

function adding_effect()

if db.actor.health < 0.6 then

level.add_pp_effector("actor_hit.ppe", 3973, false) -- тут можно хоть true поставить - в данном случае ничего не поменяется.

end

if db.actor.health > 0.7 then

level.remove_pp_effector(3973)

end

end

 

Жду ли я Сталкер 2? Хм...
Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...