Закрома Родины |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Закрома Родины |
17.09.2014, 16:27
Сообщение
#1421
|
|
И никаких няш-мяш! Репутация: 5029 Группа: Участник Сообщений: 28157 Регистрация: 04.02.2003 |
Сборка движка X-Ray 1.0007 RC1 Сборка движка ЗП от Shoker 0) Устанавливаем Visual Studio 2008 SP1 (Proffesional или Team, я собирал в первой), сервис пак из архива engine.vc2008.fixed.rar подходит только к английской версии студии, для русской нужно будет скачать отдельно. ______________________________________________ 1) Создаём на диске папку, в ней ещё одну папку. 2) В эту папку помещаем только папку engine.vc2008 из архива "engine.vc2008.fixed - фикшенный мною проект vs2008", папку SDK от туда не трогаем. 3) Папку SDK берём из архива "stasvn\sources\engine.vc2005-2008(~1.6.02 бенчмарк) - март 2010", из под-папки sources. Помещаем её в одну папку к engine.vc2008 4) Вот теперь поверх неё докладываем папку SDK из архива engine.vc2008.fixed.rar, соглашаемся на замену всех файлов 5) Качаем с сайта майкрософт два DirectX SDK - 2009 March и 2010 June. (Вес каждой около 500 мб), можно использовать только версию 2009, но тогда не сможете собрать xrRender_R4. (LINK : fatal error LNK1181: cannot open input file 'd3d11.lib'), а если будете использовать только 2010 - игра с R4 не запустится. После установки двух DX SDK убедитесь что они прописали свои пути в студию, файлы 2010-го СДК должны быть после 2009-го, как показано на рисунке: Аналогично для разделов Executable files и Include files. Если возникнут вопросы, ищите информацию в гугле по словам "подключение directx sdk visual studio 2008" При неправильных версиях СДК (или его не-подключении) в логе будет ругань на отсутствие файлов типа d3dXX.lib\.h) Перемещать папки из уже установленного DirectX SDK никуда не нужно. Достаточно прописать к ним пути глобально для студии (или для каждого проекта вручную) Комментарий от loxotron: достаточно скопировать и переименовать d3d11_beta.lib в d3d11.lib в папке с директовским сдк, а еще лучше скачать и поставить DX SDK August 2009 и не париться с неподходящими версиями. 6) На всякий случаи можно установить ещё SDK\OpenALwEAX.exe, но не уверен что он критически необходим. 7) Запускаем проект через ..\CoP\Project\engine.vc2008\engine.sln. Когда он загрузится, вверху студии режим сборки с Debug_Dedicated (или любой другой) меняем на Release. Далее слева\справа будет список папок с файлами движка, нам нужна, в первую очередь, папка 3rd_party - жмём на неё правой кнопкой мыши и выбираем Build\Построить. Если всё будет правильно, то в конце лог внизу напишет об 11 успешных проектах (или число будет меньше, если некоторые проекты уже были собраны до этого, лог об этом тоже сообщит "пропущены\up to date") Главное чтобы Ошибок\Fatal везде было 0 У меня собрались полностью все проекты без ошибок. (warning за полноценные ошибки не считаются) 8) По аналогии, сверху вниз, можно собрать другие Dll-ки, папки editor\dedicated\utils\plugins собирать не обязательно - к движку они не относятся. Дольше всего будет собираться xrGame.dll. Остальные достаточно быстро. Собирать все Dll-ки к слову не обязательно. Можно лишь нужные. Когда они будут готовы - создать чистую папку bin в папке с игрой. Закинуть туда все созданные dll файлы (можно вместе с .pdb). При необходимости, можно докинуть отсутствующие файлы из оригинальной bin ЗП (2-ой патч), если игра будет их требовать. (Навроде wrap_oal.dll) Игру я запускал с оригинального Stalker-COP.exe Если всё верно, то в логе\консоли игры в первых строчках будет указан билд игры и дата построения. Сообщение отредактировал RayTwitty - 22.01.2016, 17:03 |
 
|
|
|
|
11.07.2014, 20:47
Сообщение
#1422
|
|
Игрок Репутация: 3 Группа: Участник Сообщений: 31 Награды: 3 Регистрация: 18.06.2014 |
Vampir35 ... Впредь обещаю тестировать компилируемость ... За это можешь не волноваться , если что-то не компилируется или летят ошибки, я прямиком сюда об этом сообщая, с подробнейшим отчётом всегда стараюсь. Благодарю за очередную ревизию ! А насчёт надёжного способа вот что думаю. Вот есть две папки, в 1 файлы последней ревизии во 2 которые сейчас наделал. Можно сделать маленькую программу, которая будет сравнивать у файлов контрольную сумму MD5, и если есть изменения - выдёргивать их в отдельную папку для загрузки на репозиторий. Так же выводить новые добавленные файлы. Если совсем лень, то полный архив заливать, но это уже совсем по-топорному . Сообщение отредактировал X_Starter_X - 11.07.2014, 20:49 -------------------- 1. Надёжность
2. Простота 3. Точность |
 
|
|
11.07.2014, 20:51
Сообщение
#1423
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
Прекрасная новость, но, надеюсь, подмена текстуры во всех визуалах тоже останется, просто тоже вещь очень нужная Никуда оно не делось Осталось добить индивидуальную замену визуала для hud-модели оружия, чтобы перекрашивать видимое в руках гг оружие (а не только брошенное). Как это может быть использовано? Побродили немного по болоту, и у вас пушка вся в грязевых пятнах. Теперь вот думаю как правильно коммит устроить: глобально везде переменную IRender_Visual::shader переименовал, чтобы не путаться в исследованиях. Довольно приличное число файлов задето... ради удобства только. Прекрасно, действительно простор для фантазии очень даже велик, те же царапинки на стволах) Можно чуть подробнее вот об этом? Код //#define LUAICP_COMPAT // alpet: включает совместимость с перехватчиком Lua (luaicp.dll). // #define SCRIPT_ICONS_CONTROL // alpet: включает экспорт функции setup_game_icon в Lua Для чего это? Как работает? -------------------- |
 
|
|
11.07.2014, 21:04
Сообщение
#1424
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
|
 
|
|
11.07.2014, 21:22
Сообщение
#1425
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
Можно чуть подробнее вот об этом? Код //#define LUAICP_COMPAT // alpet: включает совместимость с перехватчиком Lua (luaicp.dll). // #define SCRIPT_ICONS_CONTROL // alpet: включает экспорт функции setup_game_icon в Lua Для чего это? Как работает? 1. Используется для активации совместимости движка с моей luaicp.dll aka "Lua Перехватчик". После сборки можно будет запускать игру через ланчер и соответственно использовать функции из библиотеки luaicp.dll 2. Добавляет в скрипты функцию setup_game_icon (icon, color, width, height). Можно пользоваться примерно так: Код setup_game_icon(1, tonumber("0xFFFFFFFF"), 0, 0) -- установить белый цвет setup_game_icon(1, 1, 32, 32) -- установить размер В моде NLC6 эти иконки были использованы вместо линейных индикаторов, что когда-то породило целую бурю возмущения "светофором" |
 
|
|
11.07.2014, 21:48
Сообщение
#1426
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
Итак, во время компиляции xr_game ругнулся компилятор на слоты, раскомментировал дефайн, снова нажал сборку. Общее время компиляции составило аж сорок одну минуту
При попытке запуститься обнаружилась ругань на отсутствие OpenAL32.dll, положил ее в bin из папки с шестым патчем. Аналогично пришлось поступить с eax.dll Итак игра все-таки запустилась, при попытке начать новую игру, на стадии кеширование объектов, появляется такая ошибка: Собственно вопрос, это что значит?) Сообщение отредактировал Vampir35 - 11.07.2014, 21:50 -------------------- |
 
|
|
11.07.2014, 21:53
Сообщение
#1427
|
|
Почти Мастер Репутация: 311 Группа: Участник Сообщений: 1092 Награды: 5 Регистрация: 01.03.2011 |
|
 
|
|
11.07.2014, 22:01
Сообщение
#1428
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
Однако разобрался, при запуске программы от имени администратора появилась табличка с руганью на некий шейдер из папки r2:
при попытке игнорировать ошибку, снова это: P.S в меню, кстати, нет звука почему-то. Сообщение отредактировал Vampir35 - 11.07.2014, 22:13 -------------------- |
 
|
|
11.07.2014, 22:10
Сообщение
#1429
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
Дак шейдеры как раз для этого придуманы. Все остальное - костыли. Мне пока ещё многому учиться надо, с шейдерами очень поверхностно знаком. Ими хоть текст можно на текстуру выводить? ) Однако разобрался, при запуске программы от имени администратора появилась табличка с руганью на некий шейдер из папки r2: Эти шейдеры есть в /trunk/xray/resources/shaders/r2, там и другие файлы могут понадобиться. Тем временем готова 87 ревизия, с расширенной работой с текстурами. Вот такой кусочек кода у меня перекрашивает одну fn2000: Код -- сделать уникальным объект визуала
local vname = obj:get_visual_name() local suffix = "|"..tostring(obj:id()) if nil == strpos(vname, "|") then obj:set_visual_name(vname ..suffix) end texture_to_visual(obj, i, "wpn\\wpn_fn2000_new_light") |
 
|
|
11.07.2014, 22:52
Сообщение
#1430
|
|
Игрок Репутация: 3 Группа: Участник Сообщений: 31 Награды: 3 Регистрация: 18.06.2014 |
HikeR же давал ссылку на надежный способ А маленькая программка уже такая есть - свн называется. Умываю руки, впредь не буду предлагать бред. --- Спешу обрадовать всё нормально скомпилировал и запустил. Наблюдаю Полёт нормальный. Сообщение отредактировал X_Starter_X - 11.07.2014, 22:52 -------------------- 1. Надёжность
2. Простота 3. Точность |
 
|
|
11.07.2014, 23:01
Сообщение
#1431
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
Да, действительно все стало работать, ну, кроме звука проверю драйвера и отпишусь, может мой косяк)
-------------------- |
 
|
|
11.07.2014, 23:12
Сообщение
#1432
|
|
Игрок Репутация: 3 Группа: Участник Сообщений: 31 Награды: 3 Регистрация: 18.06.2014 |
Vampir35, всё в порядке со звуком. Смотри у себя.
Сообщение отредактировал X_Starter_X - 11.07.2014, 23:27 -------------------- 1. Надёжность
2. Простота 3. Точность |
 
|
|
12.07.2014, 05:30
Сообщение
#1433
|
|
Продвинутый геймер Репутация: 15 Группа: Участник Сообщений: 322 Награды: 3 Регистрация: 01.05.2014 |
|
 
|
|
12.07.2014, 09:53
Сообщение
#1434
|
|
Игрок Репутация: 3 Группа: Участник Сообщений: 31 Награды: 3 Регистрация: 18.06.2014 |
del То есть ссылки больше так не выкладывать? MegaNub, в проекте OpeanAL не наблюдал. -------------------- 1. Надёжность
2. Простота 3. Точность |
 
|
|
12.07.2014, 10:22
Сообщение
#1435
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
Да, действительно все стало работать, ну, кроме звука OpeanAL собран? wrap_oal.dll в папке с игрой имеется? Да в общем-то нет. В проекте последней ревизии нету OpenAL, писал же выше, что dll'ки openAL и eax пришлось доложить из шестого патча. Если доложить файл wrap_oal.dll из шестого патча, то почему-то вылезает ошибка, а вот при взятии этих трех dll'ок из пятого патча, все пошло нормально и появился звук -------------------- |
 
|
|
12.07.2014, 12:13
Сообщение
#1436
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
Удалось сделать подмену текстур и для
Сообщение отредактировал alpet - 12.07.2014, 12:15 |
 
|
|
12.07.2014, 23:06
Сообщение
#1437
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
alpet, как работает метод смены текстур? Возможно ли заменить уже измененную текстуру? То есть если один раз я уже изменил ее, можно ли подменить ее снова? Отличается ли чем-то работа с обычными моделями и с худом?
P.S подмена текстуры нужна во всех моделях. Сообщение отредактировал Vampir35 - 12.07.2014, 23:07 -------------------- |
 
|
|
13.07.2014, 10:06
Сообщение
#1438
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
Vampir35
1. Можно в существующем объекте загруженной текстуре изменить её имя (считай файл), и перезагрузить функцией reload. Для этого сначала её нужно найти в глобальном списке текстур ресурсного менеджера, функцией texture_find. Код local t = texture_find("wpn\\wpn_fn2000") if t then t:set_name("wpn\\wpn_fn2000_light") t:reload() end 2. Текстуры можно заменять сколько угодно 3. Моделям с худом требуется заменять текстуры отдельно для визуала худа, если не производится глобальное изменение одной текстуры. Сообщение отредактировал alpet - 13.07.2014, 10:07 |
 
|
|
13.07.2014, 11:56
Сообщение
#1439
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
В 90-ой ревизии добавил расширенное управление точечными источниками света (фонарем и hanging_lamp). Теперь можно реализовать фонарик на батарейках как в NLC6, и его различные апгрейды на LED/ИК подсветку.
Кстати, может уже где есть адекватные шейдеры для источников света? Меня очень коробит резкий обрыв зоны освещения после радиуса например. |
 
|
|
13.07.2014, 12:23
Сообщение
#1440
|
|
Почти Мастер Репутация: 311 Группа: Участник Сообщений: 1092 Награды: 5 Регистрация: 01.03.2011 |
|
 
|
|
13.07.2014, 14:50
Сообщение
#1441
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
Покажи скрин. Таких проблем не помню. Ну вот, для 15 метров и яркого фонаря: Хочется плавное затухание. |
 
|
|
Текстовая версия | Сейчас: 03.05.2024, 23:23 |