Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: [SDK] X-Ray SDK 0.4
GAMEINATOR forums > S.T.A.L.K.E.R. > Мастерская: создание модов для S.T.A.L.K.E.R.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67
Kostya V
Эта информация тебе поможет.
Текст
Сначала зайди в файл ggtool.pl. Там надо раскоментировать строку $gg->show_level_gvids();
Для этого надо убрать решетку перед началом этой строки. Если решетки нет, то уже значит раскоментировано.
Затем в папку с этим файлом добавляешь файл game.graph, получившийся у тебя после компиляции твоего уровня. Далее в командной строке пишешь команду: ggtool.pl game.graph
Выйдет информация о вертексах уровней. Найдешь там свой уровень и запомнишь вертексы своего уровня.
Далее открываешь файл acdc.pl и записываешь вот так:
use constant levels_info => (
{ gvid0 =>3000, },
{ gvid0 => 2792, name => 'peshera' },
{ gvid0 => 2661, name => 'l10u_bunker' },
{ gvid0 => 2517, name => 'l12_stancia_2' },
{ gvid0 => 2467, name => 'l12u_control_monolith' },
{ gvid0 => 2402, name => 'l12u_sarcofag' },
{ gvid0 => 2273, name => 'l12_stancia' },
{ gvid0 => 2117, name => 'l11_pripyat' },
{ gvid0 => 1862, name => 'l10_radar' },
{ gvid0 => 1545, name => 'l07_military' },
{ gvid0 => 1529, name => 'l08u_brainlab' },
{ gvid0 => 1438, name => 'l08_yantar' },
{ gvid0 => 1308, name => 'l06_rostok' },
{ gvid0 => 1168, name => 'l05_bar' },
{ gvid0 => 1109, name => 'l04u_labx18' },
{ gvid0 => 811, name => 'l04_darkvalley' },
{ gvid0 => 703, name => 'l03u_agr_underground' },
{ gvid0 => 416, name => 'l03_agroprom' },
{ gvid0 => 252, name => 'l02_garbage' },
{ gvid0 => 0, name => 'l01_escape' },
);
Жирным я тут указал, номер вертекса с которого начинается мой уровень и название этого уровня. Замени на свои.
Эта информация может быть не в этом файле. Она может находится в stkutils\level.pm, смотря какой у тебя acdc.
Когда внесешь изменения, то заново распаковываешь алл.спавн и там будет твой уровень прописан.
сталкероид
Kostya V, помогла!
Текст
Я не те цифры прописал в АСДС. Не нашел, чего-там выделено жирным, но за наводку огромнейшее спасибо, я бы еще долго мучался...
А откуда берется максимальный вертекс - от балды или как-то можно узнать, сколько вертексов приходится на локацию (последнюю, в частности)?
Zirex
Можно ли в stalkere сделать смешевание произвольных текстур? Маска вроде смешивает только 3 определенные текстуры,а вот если допустим есть своя текстура гравия и камней, можно ли между ними плавный переход сделать?
macron
Цитата(Zirex @ 19.06.2010, 18:41) *
Можно ли в stalkere сделать смешевание произвольных текстур? Маска вроде смешивает только 3 определенные текстуры,а вот если допустим есть своя текстура гравия и камней, можно ли между ними плавный переход сделать?

Ну чисто теоретически можно в шейдоредиторе клонировать, например, levels\pripyat_grass, levels\pripyat_asfalt, переименовать по своему. Затем в них указать пути к своим текстурам, там это все открыто для редактирования.
FL!NT
Цитата(macron @ 19.06.2010, 22:07) *
Ну чисто теоретически можно в шейдоредиторе клонировать, например, levels\pripyat_grass, levels\pripyat_asfalt, переименовать по своему. Затем в них указать пути к своим текстурам, там это все открыто для редактирования.

Осуществлено практически smile.gif
Николас Раш
Народ, ка это исправить? Снос сдк не помог. Стоит SMP1+addition8+подземкаЧН+ предбанник+addition9
лог
log started (console and aiwrapper.log)
loading aiwrapper.ini
creating $2215_game_levels$\zaton\
updating $2215_game_levels$\zaton\level.ai
updating $2215_game_levels$\zaton\level.spawn
ignoring trailing garbage at m_dog.ltx:287
ignoring trailing garbage at m_pseudodog.ltx:281
ignoring trailing garbage at m_poltergeist.ltx:305
reading clmbl#0 (climable_object): 151 <> 174
reading clmbl#1 (climable_object): 151 <> 174
reading clmbl#2 (climable_object): 151 <> 174
reading clmbl#3 (climable_object): 151 <> 174
reading clmbl#4 (climable_object): 151 <> 174
reading clmbl#5 (climable_object): 151 <> 174
reading clmbl#6 (climable_object): 151 <> 174
reading clmbl#7 (climable_object): 151 <> 174
reading clmbl#8 (climable_object): 151 <> 174
reading clmbl#9 (climable_object): 151 <> 174
reading clmbl#10 (climable_object): 152 <> 181
reading clmbl#11 (climable_object): 152 <> 175
reading clmbl#12 (climable_object): 152 <> 175
reading clmbl#13 (climable_object): 152 <> 175
reading clmbl#14 (climable_object): 152 <> 175
reading clmbl#15 (climable_object): 152 <> 175
reading clmbl#16 (climable_object): 152 <> 175
reading clmbl#17 (climable_object): 152 <> 175
reading clmbl#18 (climable_object): 152 <> 175
reading clmbl#19 (climable_object): 152 <> 175
reading clmbl#20 (climable_object): 152 <> 175
reading clmbl#21 (climable_object): 152 <> 175
reading clmbl#22 (climable_object): 152 <> 175
reading clmbl#23 (climable_object): 152 <> 175
reading clmbl#24 (climable_object): 152 <> 175
reading clmbl#25 (climable_object): 152 <> 181
reading clmbl#26 (climable_object): 152 <> 175
reading clmbl#27 (climable_object): 152 <> 175
reading clmbl#28 (climable_object): 152 <> 175
reading clmbl#29 (climable_object): 152 <> 175
reading clmbl#30 (climable_object): 152 <> 175
reading clmbl#31 (climable_object): 152 <> 175
reading clmbl#32 (climable_object): 152 <> 175
reading clmbl#33 (climable_object): 152 <> 175
reading clmbl#34 (climable_object): 152 <> 175
reading clmbl#35 (climable_object): 152 <> 175
reading clmbl#36 (climable_object): 152 <> 175
reading clmbl#37 (climable_object): 152 <> 175
reading clmbl#38 (climable_object): 152 <> 175
reading clmbl#39 (climable_object): 152 <> 175
reading clmbl#40 (climable_object): 152 <> 175
reading clmbl#41 (climable_object): 152 <> 175
reading clmbl#42 (climable_object): 152 <> 175
reading clmbl#43 (climable_object): 152 <> 175
reading clmbl#44 (climable_object): 152 <> 175
reading zat_b12_key_1_box (inventory_box): 201 <> 221
reading zat_b12_key_2_box (inventory_box): 202 <> 222
reading zat_b12_millitary_box (inventory_box): 209 <> 229
reading zat_a2_actor_treasure (inventory_box): 286 <> 306
reading level_prefix_inventory_box_0000 (inventory_box): 228 <> 248
reading zat_b12_container (inventory_box): 253 <> 273
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity campfire
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
can't create entity zone_mine_gravitational_average
[bug] assertion failed at ..\xr_entity_script.cxx:393
[=sinedsc=]
это при декомпиляции? есле да, то удали level.spawn из папки с уровнем
Николас Раш
Цитата([=sinedsc=] @ 19.06.2010, 22:25) *

это при декомпиляции? есле да, то удали level.spawn из папки с уровнем

это при сборке level.graph'a от затона
[=sinedsc=]
Кукиш, ты для ЗП или для ТЧ делаешь уровень?
Николас Раш
Цитата([=sinedsc=] @ 19.06.2010, 22:31) *

Кукиш, ты для ЗП или для ТЧ делаешь уровень?

для ТЧ. Взял уже готовую сборку SMP1 + Дополнение 8 + Подземка Агропрома + Предбанник + Дополнение 9 для чистой игры. При сборке level.graph'a для затона вылетает. Лог выше на пару сообщений.
Zirex
Цитата(FL!NT @ 19.06.2010, 19:21) *
Цитата(macron @ 19.06.2010, 22:07) *
Ну чисто теоретически можно в шейдоредиторе клонировать, например, levels\pripyat_grass, levels\pripyat_asfalt, переименовать по своему. Затем в них указать пути к своим текстурам, там это все открыто для редактирования.

Осуществлено практически smile.gif

А можно практику поподробнее расписать? я в этом шейдоредиторе мало разбираюсь,непонятно как переделать эти настройки для levels\pripyat_grass.И даже если переделать,маска все равно же вроде только 3 смешиваемые текстуры использует?А если допустим для террайна штук 10 разных смешиваемых текстур надо.
macron
Цитата(Zirex @ 19.06.2010, 22:44) *
А можно практику поподробнее расписать?

Запустить ShaderEditor, далее работать во вкладке Engine в папке levels. Изменения сохранятся в файле shaders.xr, который потом подставлять в игру в папку gamedata. В качестве примера почитай примечание 7 в ридми в паке компилей у меня в подписи.
Цитата(Zirex @ 19.06.2010, 22:44) *
я в этом шейдоредиторе мало разбираюсь

Да пора бы начать изучать, учитывая, что СДК вышел три года назад, а вопросы у тебя, скажем так - не всякий маппер додумается.
FL!NT
Zirex
Цитата(Zirex @ 20.06.2010, 00:44) *
А если допустим для террайна штук 10 разных смешиваемых текстур надо.

Невозможно, максимум 4. Ограниченно каналами RGBA текстуры terrain_xxx_mask.
Цитата(macron @ 20.06.2010, 02:14) *
Запустить ShaderEditor, далее работать во вкладке Engine в папке levels.

Практически все так. Есть небольшие подводные камни, но это дольше объяснять пока не столкнешься с ними. Возможно, тебе повезет, и ты обойдешь их.
Zirex
Цитата(macron @ 20.06.2010, 00:14) *
Цитата(Zirex @ 19.06.2010, 22:44) *
А можно практику поподробнее расписать?

Запустить ShaderEditor, далее работать во вкладке Engine в папке levels. Изменения сохранятся в файле shaders.xr, который потом подставлять в игру в папку gamedata. В качестве примера почитай примечание 7 в ридми в паке компилей у меня в подписи.
Цитата(Zirex @ 19.06.2010, 22:44) *
я в этом шейдоредиторе мало разбираюсь

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

Да ладно какой я маппер,так интересуюсь немного.Просто почти во всех остальных игровых редакторах блендинг текстур не проблема,а тут похоже без плясок с бубном не обойтись smile.gif
Прежде чем с шейдерами разбиратся,чтоб нагляднее было я тут несколько скриншотов сделал,там три исходные текстуры и террайн с использованием смешивания текстур и без него в максе.



Вот можно ли так в stalkere сделать? маска похоже не прокатит потому что текстур во-первых больше 4 надо и потом она ведь просто сверху накладывается,т.е реального смешивания текстур вроде бы не получится?
Пробовал альфой забацать,так вроде неплохо, но края у текстур мутные получаются нет полного смешивания.
[=sinedsc=]
Кукиш, по пробуй удалить объекты, которые сказанны в логе (это спавн объекты)
БогДан
Такая непонятная проблема нарисовалась.

В 3д максе - выглядит вот так:


в СДК и игре вылазят артефакты:


Каким либо способом найти их в 3ж максе и удалить не смог.
Как с этим бороться?
БогДан
Никаких булианов и тому похожих операций/модификаторов не применялось. Из плейна поднял Экструдом.
Pihan13
БогДан, в максе конвертни Editable Poly в Editable Mesh или наоборот. Плагин просто сам триангулирует не триангулированную модель, и выходит лажа.
БогДан
Твой вариант не помог.
Оптимизация + немного ручками подправил - прошло.
Спасибо.
[=sinedsc=]
под гулагом, после перехода из оффлайн режима нпс спавнятся в костре и получают хит, как то можно этого избежать не трогая работы? использую генерал лагерь и не знаю как менять там работы
Egorich___
Парни помогите пожалуйста, давно не работал с SDK, пешил сегодня поставить его заного. Столкнулся с такои проблемой, что если нажать File>Save, то ничего не происходит, должно окно появиться, но его нет, так же и в некоторых других опциях, в итоге получается, что уровень нельзя ни сохранить, ни нормально настроить. Подскажите, что это может быть?
PS: OS Win7 - может из-за неё unsure.gif
HitmanNew
Egorich___, да, проблема в Win7, ставь ХР. Хотя где-то видел фикс чтоб диалоговые окна работали на Win7 и Vista...
Николас Раш
Egorich___, может поможет
http://www.amk-team.ru/forum/index.php?s=&...st&p=456751
Trollz0r
Подробности здесь.
Egorich___
Кукиш и RedPython
Спасибо помогли, заработало!
Kostya V
Цитата(FL!NT @ 20.06.2010, 13:38) *
Zirex
Цитата(Zirex @ 20.06.2010, 00:44) *
А если допустим для террайна штук 10 разных смешиваемых текстур надо.

Невозможно, максимум 4. Ограниченно каналами RGBA текстуры terrain_xxx_mask.

Я тоже думал над этим вопросом. Но до практики так дело и не дошло.
Есть четыре канала, на которые назначаются четыре детальные текстуры:
grnd_grass
grnd_asphalt
grnd_earth
grnd_yantar

Что если сделать шейдеры, назначить на них совершенно новые детальные детальные текстуры. Потом эти тексуры также разбить по каналам. А потом разным полигонам на карте назначить разные шейдеры. Тогда получится, что в разных местах будут разные детальные текстуры, но они будут назначены на одни и те же каналы. А маска будет стандартно использоваться и делать плавные переходы, как обычно между каналами.


FL!NT
Цитата(Kostya V @ 21.06.2010, 05:13) *
Есть четыре канала, на которые назначаются четыре детальные текстуры:
grnd_grass
grnd_asphalt
grnd_earth
grnd_yantar

Что если сделать шейдеры, назначить на них совершенно новые детальные детальные текстуры.


Собственно это и было сделано. Для моей лок нужен был собственный gravel.
Цитата(Kostya V @ 21.06.2010, 05:13) *
Потом эти тексуры также разбить по каналам. А потом разным полигонам на карте назначить разные шейдеры. Тогда получится, что в разных местах будут разные детальные текстуры, но они будут назначены на одни и те же каналы. А маска будет стандартно использоваться и делать плавные переходы, как обычно между каналами.

А вот с этого места не совсем понял. Для mask на r2 вообще не имеет значения, как ты разбил по полигонам и чего ты там назначил, она отрисует тебе дет текстуры в соответствии с mask. Подкинь левый mask к любой лок, получишь весьма интересные результаты. smile.gif
Marauder
Кто скоренько подкинет мне ссылку на декопилятор геометрии в формат sdk от бардака - отблагодарю плюсом.
Trollz0r
Дык вот же o_O.gif
Marauder
А слона то я и не заметил))) Несколько раз перелистывал и перечитывал эту страницу...)
Kostya V
Цитата(FL!NT @ 21.06.2010, 13:06) *
А вот с этого места не совсем понял. Для mask на r2 вообще не имеет значения, как ты разбил по полигонам и чего ты там назначил, она отрисует тебе дет текстуры в соответствии с mask.

Да, наверное, не продумал этот момент.
FL!NT
Kostya V,
Для текстур terrain_xxx_mask и terrain_xxx_det нет полигональной привязки, они стрейчастся на весь терраин.
БогДан
Вопрос на засыпку сильным мире сего:
Чем отличается СДК ТЧ от СДК ЧН и теперь появившегося 6-го СДК ЧН в плане работы внутренней (по простому, кнопацки теже? кнопацки на тех же местах?) и в плане возможностей? что там нового и супер-пупер навороченого?
Объяснить можно в нескольких словах.
Kostya V
Цитата(FL!NT @ 21.06.2010, 17:11) *
Kostya V,
Для текстур terrain_xxx_mask и terrain_xxx_det нет полигональной привязки, они стрейчастся на весь терраин.

Я думал немного о другом.
Сделать, например, два шейдера. На одних и тех же каналах которых, назначить разные дет. текстуры. Получится, что на один и тот же цвет в маске будут разные текстуры. Потом присвоить эти шейдеры террейну и нарисовать маску. Вот и должно получиться, что на одном и том же цвете будут разные текстуры. Останется только разрисовать террейн нужными цветами.
Но я понял, что где-то до конца не продумал вопрос. Что-то не стыкуется.

Marauder
Люди, нужна ваша помощь. Первый раз встречаюсь с такой ошибой - - scene object: 'trees\new_stone\stone_5' [O:'trees\new_stone\stone_5', M:'|'] и так почти на всех объектах сцены(даже родных, как видите). Выручайте...
FL!NT
Цитата(Kostya V @ 22.06.2010, 04:56) *
Сделать, например, два шейдера. На одних и тех же каналах которых, назначить разные дет. текстуры. Получится, что на один и тот же цвет в маске будут разные текстуры. Потом присвоить эти шейдеры террейну и нарисовать маску. Вот и должно получиться, что на одном и том же цвете будут разные текстуры. Останется только разрисовать террейн нужными цветами.
Но я понял, что где-то до конца не продумал вопрос. Что-то не стыкуется.

Использование того или иного шейдера определяется RGBA, назначение второго шейдера на один канал либо не пропустит, либо заместит первый не проверял. В любом случае ограничения в 4 канала не обойти. Если что то и возможно сделать, то глобально править PS шейдеры и не в шадередитор, а на более низком уровне. Например: т.к. градиентность перехода от одной дет текстуры к другой не используется, да это и не возможно (потребует сверх большой mask или сверх малого террайна) можно разделить каналы пополам. При этом останется 4х битный градиент 8 дет текстур. Сами шейдеры при этом не представляют не чего сложного, но насколько они тормознут систему и как будут совместимы с иксреем х.з. В любом случае пока не закончу всю геометрию на лок, колупание шейдеров в мои планы не входит. smile.gif
Николас Раш
Lindemann, попробуй сектора удалить, может поможет.
AKMC47U
А возможно как-нибудь обойти Invalid Faces?
P.S.: Компилятор от Мортариона не помог.
AKMC47U
Удалите мой предыдущий пост. Спасибо.
Привет, Андрей
Люди, киньте плиз декомпилированные уровни ТЧ. А то у меня чета Бардаковский конвертер не хочет нормально работать
GHOST
Вот тебе содержимое для батника,настрой конвертер как советовал Kostya_V
Содержимое батника
converter -level l01_escape -out l01_escape -mode le
converter -level l02_garbage -out l02_garbage -mode le
converter -level l03_agroprom -out l03_agroprom -mode le
converter -level L03u_agr_underground -out L03u_agr_underground -mode le
converter -level l04_darkvalley -out l04_darkvalley -mode le
converter -level l04u_LabX18 -out l04u_LabX18 -mode le
converter -level L05_bar -out L05_bar -mode le
converter -level L06_rostok -out L06_rostok -mode le
converter -level l07_military -out l07_military -mode le
converter -level l08_yantar -out l08_yantar -mode le
converter -level l10_radar -out l10_radar -mode le
converter -level l11_pripyat -out l11_pripyat -mode le
converter -level l12_stancia -out l12_stancia -mode le
converter -level l12_stancia_2 -out l12_stancia_2 -mode le2
converter -level l12u_control_monolith -out l12u_control_monolith -mode le
converter -level l12u_sarcofag -out l12u_sarcofag -mode le
converter -level l08u_brainlab -out l08u_brainlab -mode le
Привет, Андрей
GHOST,
Настраивал, до того как поставил русик на СДК, все работало
Лог ->смотри тему "Все о создании модификаций"
GHOST
Мэн, ты наверно неправильно что-то поставил.В общем сделай батник как я тебе написал,там все работает, да и лоды тебе не нужны,так что параметр -with lods тебе не нужен.
Если у тебя кривой русик(что вполне возможно,но у меня например все норм), поставь старую версию( просто скопируй файлы из папки backup с заменой)
Marauder
Цитата(GHOST @ 23.06.2010, 00:28) *
Мэн, ты наверно неправильно что-то поставил.В общем сделай батник как я тебе написал,там все работает, да и лоды тебе не нужны,так что параметр -with lods тебе не нужен.
Если у тебя кривой русик(что вполне возможно,но у меня например все норм), поставь старую версию( просто скопируй файлы из папки backup с заменой)

Да ну нафиг. Если делаешь декомпиль - лучше делать с параметром -with_lods, т.к. по своему опыту знаю - может вылезти куева туча ошибок при компиляции...
HitmanNew
Lindemann, с параметром -with_lods, время декомпиляции всех локаций увеличится на несколько часов ( ну у меня так было), а лоды можно и потом сделать.
AKMC47U
Не хочет работать маска, вот что получается:



Компилировал на средних настройках.
kiperenok
Народ СДК заглючило - гружу уровень, в конце выдаёт вот это
Лог
---------------------------
Fatal Error
---------------------------
exp​ression : fatal error

Function : I:\xray-svn-trunk\xr_3da\ObjectAnimator.cpp

File : I:\xray-svn-trunk\xr_3da\ObjectAnimator.cpp

Line : 46

Description : <no exp​ression>

Arguments : Can't find motion file 'camera_effects\val_fireball.anm'.



stack trace:





Press CANCEL to abort execution

Press TRY AGAIN to continue execution

Press CONTINUE to continue execution and ignore all the errors of this type




---------------------------
Отмена Повторить Продолжить
---------------------------

Че делать ?
macron
Цитата(HitmanNew @ 25.06.2010, 12:40) *
с параметром -with_lods, время декомпиляции всех локаций увеличится на несколько часов
Зато потом гемороя меньше.

Цитата(kiperenok @ 25.06.2010, 21:00) *
Народ СДК заглючило - Че делать ?
Если варианты "выпить йаду" и "убиться о стену" уже проверил, попробуй вчитаться в это:
Цитата(kiperenok @ 25.06.2010, 21:00) *
Can't find motion file 'camera_effects\val_fireball.anm'.
AKMC47U


Что означает проблема, отмеченная в логе LE красным?
20Km's Of Coast
Цитата(AKMC47U @ 26.06.2010, 15:44) *
Что означает проблема, отмеченная в логе LE красным?


нехватает текстурок для лода куста
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.