Перейти в начало страницы

Здравствуйте, гость ( Авторизация | Регистрация )

Gameru.net останавливает работу в связи с вторжением армии РФ в Украину. Следите за дальнейшими анонсами.
Support Gameru!

> Помощь по разделу

Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов

> Закрома Родины
fen1x
сообщение 17.09.2014, 16:27
Сообщение #1381


И никаких няш-мяш!
**************************

Репутация:   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
Перейти в начало страницы
 
191 страниц V  « < 68 69 70 71 72 > »   
Начать новую тему
Ответов
jamakasi
сообщение 09.07.2014, 22:20
Сообщение #1382


Доктор Игровых Наук
*******************

Репутация:   544  
Группа: Участник
Сообщений: 3657
Награды: 9
Регистрация: 12.07.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Дабы не было срачей по поводу путей в проекте разрабы хрея давным давно использовали моунт папки и всем было хорошо и у всех она была под буквой Х и все пути(кроме директх) у всех одинаковые были и не было ни с чем проблем. Не проще ли было вкинуть директх в проект и в корне сделать батничек на моунт папки? smile.gif
Перейти в начало страницы
 
Tron
сообщение 09.07.2014, 22:39
Сообщение #1383


Игровой Эксперт
***************

Репутация:   407  
Группа: Участник
Сообщений: 2394
Награды: 5
Регистрация: 19.01.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


Так уже...
Собственно вот правки которые я отправлял в основную ветку
фиксы,которые уже были сделаны

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

Посему,я повторюсь,уже давно все сделано(адаптация под новые студии).

Цитата
... обычный холивар на предмет SVN vs Git vs Merurial, все понятно wink.gif

Честно говоря,предпочитаю первые 2 системы.
Но тут речь идет просто о многочисленном дублировании одного и того же кода.

upd:Посмотрел репо:
Оказывается nick9 вернул обратно диск Х

Вот собственно последняя правка с диском Х и со всеми 3dparty библиотеками(в том числе и DXSDK(with deprecated headers and libs))

Сообщение отредактировал Tron - 09.07.2014, 22:40
Перейти в начало страницы
 
HikeR
сообщение 09.07.2014, 22:48
Сообщение #1384


Магистр Игры
****************

Репутация:   270  
Группа: Участник
Сообщений: 2620
Награды: 4
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


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

но никто более этим дублированием не озаботился, что уж говорить про "дублирование репозиториев", которое в случае распределенных CVS совершенно нормальное явление.
Перейти в начало страницы
 
Tron
сообщение 09.07.2014, 22:57
Сообщение #1385


Игровой Эксперт
***************

Репутация:   407  
Группа: Участник
Сообщений: 2394
Награды: 5
Регистрация: 19.01.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата
распределенных CVS совершенно нормальное явление.

Именно поэтому я предлагаю децентрализованный bitbucket репо
Перейти в начало страницы
 
HikeR
сообщение 09.07.2014, 23:22
Сообщение #1386


Магистр Игры
****************

Репутация:   270  
Группа: Участник
Сообщений: 2620
Награды: 4
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


эмм... под "распределенными" я и имел в виду "децентрализованные", то есть отличные от SVN.
потом, при текущих методах работы в обоих указанных репозиториях для них прекрасно подошел бы и древний CVS. для "все в кучу" выбор системы не принципиален, разве что только учитывать ситуацию "недовольные разрабы прикроют репо".
Перейти в начало страницы
 
alpet
сообщение 09.07.2014, 23:32
Сообщение #1387


Геймер
******

Репутация:   19  
Группа: Участник
Сообщений: 130
Награды: 2
Регистрация: 24.05.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(HikeR @ 09.07.2014, 23:18) *
и кроме этого плюсов более не обнаруживается. по сути, на первоначальный вопрос (как за 20 секунд для всех проектов в VS2012 можно заменить все пути к инклудам и либам?) можно было ответить одной строчкой:

Не буду спорить, это тоже решение. Но мне чаще всего не хочется трогать файлы проектов. Например, вывод бинарок у меня происходит не в x:\binaries, а в одну из папок с копией игры - сравнительно чистой версии или с установленным модом. Менять время от времени переменную окружения XrayOutput, мне все-таки кажется изящнее подход smile.gif
Перейти в начало страницы
 
HikeR
сообщение 10.07.2014, 00:40
Сообщение #1388


Магистр Игры
****************

Репутация:   270  
Группа: Участник
Сообщений: 2620
Награды: 4
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(alpet @ 10.07.2014, 00:32) *
Менять время от времени переменную окружения XrayOutput

для этого вам пришлось перелопатить все файлы проектов, которые "не хочется трогать".
чтоб совсем не трогать вариантов масса:
- запустить батник, копирующий полученные файлы в нужное место
- X:/binaries сделать симлинком на нужный каталог и не трогать окружение
- так как игре совершенно пофиг где она лежит, достаточно изменить путь к $app_data_root$ в fsgame.ltx, чтобы указать каталог хоть с чистой версией, хоть с испорченной модами

p.s.
вот последнее по какой-то неведомой причине было неизвестно разработчикам Lost Alpha, которые впулили требование админских привилегий для запуска (!!!) игры.
Перейти в начало страницы
 
alpet
сообщение 10.07.2014, 01:19
Сообщение #1389


Геймер
******

Репутация:   19  
Группа: Участник
Сообщений: 130
Награды: 2
Регистрация: 24.05.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(HikeR @ 10.07.2014, 01:40) *
чтоб совсем не трогать вариантов масса:

Не работают они в моем случае, или потребуют лишние секунды времени. Т.к. в разных папках bin находятся разные файлы конфигурации и сборки проекта Lua-перехватчика. А мне очень нравиться, что нажал в VS кнопочку "Start debugging", и все поехало без всяких копирований. Так или иначе с выставлением переменной окружения телодвижений получается пока минимум.

С админскими правами сурово, может они драйвер какой запускают или диск читают напрямую? )
Перейти в начало страницы
 
HikeR
сообщение 10.07.2014, 02:34
Сообщение #1390


Магистр Игры
****************

Репутация:   270  
Группа: Участник
Сообщений: 2620
Награды: 4
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


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

админские права нужны чтобы писать в Program Files, ну никак мод не будет без этого работать. это вместо использования %LOCALAPPDATA% в конфиге.
Перейти в начало страницы
 
alpet
сообщение 10.07.2014, 14:55
Сообщение #1391


Геймер
******

Репутация:   19  
Группа: Участник
Сообщений: 130
Награды: 2
Регистрация: 24.05.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(HikeR @ 10.07.2014, 03:34) *
1. о каких секундах идет речь, если пересборка проекта после "выставления переменной окружения" (изменение выходного каталога) занимает десятки минут?

админские права нужны чтобы писать в Program Files, ну никак мод не будет без этого работать. это вместо использования %LOCALAPPDATA% в конфиге.

1. Так переменную я выставлю один раз в неделю допустим. А потом неполных пересборок будет десятки и сотни, часть из которых на моей системе довольно быстро завершаются. Зачем после этого ещё и копировать каждый раз файлы? Студия знает что надо по команде "Start Debugging" запускать цель xr_3da.exe из папки $XrayOutput, равно как и то - куда эту цель компилировать. Мне ничего другого на момент реализации просто и в голову не пришло smile.gif Был вариант с переименованием папки с игрой, но я обеспокоился что так запутаюсь попросту.
2. Такие вещи реализуются инсталлятором проще - например Inno Setup может выставить разрешения для папки нужные, чтобы любой в неё мог писать. Хотя в NLC6 вродь как предлагается по умолчанию ставить в C:\Games\ или подобный каталог, давно уже инсталлер не запускал.
Перейти в начало страницы
 
HikeR
сообщение 10.07.2014, 15:11
Сообщение #1392


Магистр Игры
****************

Репутация:   270  
Группа: Участник
Сообщений: 2620
Награды: 4
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


1) "надо, так надо, хочешь убить — значит есть за что" (С)

2) такие вещи реализуются путем штатного использования пользовательских каталогов, априори доступных для записи, а не запуском от админа.
это клиенту Steam-а простительно в случае установки в Program Files писать туда вообще все. и то только потому, что он не меняет никакие дефолтные права, а держит запущенным мелкий сервис с повышенными привилегиями, он то и выполняет все файловые операции.
Перейти в начало страницы
 
X_Starter_X
сообщение 10.07.2014, 17:19
Сообщение #1393


Игрок
***

Репутация:   3  
Группа: Участник
Сообщений: 31
Награды: 3
Регистрация: 18.06.2014




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(Tron @ 10.07.2014, 01:39) *
Так уже...
Собственно вот правки которые я отправлял в основную ветку
фиксы,которые уже были сделаны

...

Никак не пойму зачем папка depr нужна? При сборке в логе выводилось что не может найти некоторые файлы из папки depr, но если посмотреть на имя файла то один в один что лежат в папке includes. Или я что-то упустил и не прав?

Сообщение отредактировал X_Starter_X - 10.07.2014, 17:19


--------------------
1. Надёжность
2. Простота
3. Точность
Перейти в начало страницы
 
Tron
сообщение 10.07.2014, 17:38
Сообщение #1394


Игровой Эксперт
***************

Репутация:   407  
Группа: Участник
Сообщений: 2394
Награды: 5
Регистрация: 19.01.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


У сорцов зависимость-directPlay
Он начиная с 2008 года не входит в поставку DXSDK
Перейти в начало страницы
 
X_Starter_X
сообщение 10.07.2014, 17:46
Сообщение #1395


Игрок
***

Репутация:   3  
Группа: Участник
Сообщений: 31
Награды: 3
Регистрация: 18.06.2014




Вставить ник Цитировать выделенное в форуму быстрого ответа


Tron, файлы в includes и в depr разные?


--------------------
1. Надёжность
2. Простота
3. Точность
Перейти в начало страницы
 
alpet
сообщение 10.07.2014, 18:47
Сообщение #1396


Геймер
******

Репутация:   19  
Группа: Участник
Сообщений: 130
Награды: 2
Регистрация: 24.05.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Тем временем уже 81 ревизия. Добавил управление текстурами в Lua, как это возможно с участием моего перехватчика для 1.0006.
Кто-то помнится мечтал делать асфальт более темным, если дождик идет, так теперь это просто:
Код
   local tex = texture_find("detail\\detail_grnd_asphalt")
   if tex then      
      texture_unload(tex)
      texture_set_name(tex, "detail\\detail_grnd_asphalt_dark")
      texture_load(tex)  
   end

Единственное, такие глобальные текстуры надо возвращать в адекватное состояние при загрузке сейва. На тот случай если движок не догадается сам выгрузить между перезагрузкой уровня.
Исходники очень многое открывают в плане таких мелких хаков: надеюсь скоро можно будет рисовать на текстурах и смешивать их, а так-же передавать параметры настроек в шейдеры.
Перейти в начало страницы
 
krovosnork
сообщение 10.07.2014, 19:03
Сообщение #1397


Почти Игроман
*********

Репутация:   127  
Группа: Участник
Сообщений: 643
Награды: 3
Регистрация: 29.09.2012




Вставить ник Цитировать выделенное в форуму быстрого ответа


alpet, можешь сделать команду для перезагрузки текстур прямо в игре?
Перейти в начало страницы
 
alpet
сообщение 10.07.2014, 19:05
Сообщение #1398


Геймер
******

Репутация:   19  
Группа: Участник
Сообщений: 130
Награды: 2
Регистрация: 24.05.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(krovosnork @ 10.07.2014, 20:03) *
alpet, можешь сделать команду для перезагрузки текстур прямо в игре?

А что я до этого сделал? Этому трюку уж пару лет будет.

Сообщение отредактировал alpet - 10.07.2014, 19:06
Перейти в начало страницы
 
krovosnork
сообщение 10.07.2014, 19:07
Сообщение #1399


Почти Игроман
*********

Репутация:   127  
Группа: Участник
Сообщений: 643
Награды: 3
Регистрация: 29.09.2012




Вставить ник Цитировать выделенное в форуму быстрого ответа


alpet, более темный асфальт? biggrin.gif
Я не совсем понял, как именно можно управлять ими. Подскажи, если не трудно
P.S: Я про перезагрузку всех текстур, как в сдк

Сообщение отредактировал krovosnork - 10.07.2014, 19:09
Перейти в начало страницы
 
K.D.
сообщение 10.07.2014, 19:11
Сообщение #1400


Почти Мастер
***********

Репутация:   311  
Группа: Участник
Сообщений: 1092
Награды: 5
Регистрация: 01.03.2011




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(alpet @ 10.07.2014, 19:47) *
Кто-то помнится мечтал делать асфальт более темным, если дождик идет, так теперь это просто:

Так ведь резко будет меняться - смысла нет.
Перейти в начало страницы
 
alpet
сообщение 10.07.2014, 19:15
Сообщение #1401


Геймер
******

Репутация:   19  
Группа: Участник
Сообщений: 130
Награды: 2
Регистрация: 24.05.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(krovosnork @ 10.07.2014, 20:07) *
alpet, более темный асфальт? biggrin.gif
Я не совсем понял, как именно можно управлять ими. Подскажи, если не трудно

Ну да, я помню что кто-то этого хотел из модмейкеров. Это ведь пример. В нынешнем NLC6 текстуры активно подменяются для динамических масок (худа), и изменения инвентаря, что более жизненно.
В сущности управление текстурами пока сводится лишь к подмене данных в объекте CTexture, т.е. перезагрузке из другого файла. Для этого требуется сначала найти объект текстуры в списке уже созданных (он живет в CResourceManager), выгрузить её старые данные, изменить имя файла и загрузить новые данные. Для понятной экономии памяти каждый объект текстуры может использоваться кучей визуалов или чего либо ещё. Пока я не нашел прямого пути, как отдельному визуалу можно сменить объект текстуры, поэтому получается менять текстуры для всех визуалов разом.

Цитата(K.D. @ 10.07.2014, 20:11) *
Так ведь резко будет меняться - смысла нет.

Это уже забота текстурщиков, наделать десяток градаций яркости асфальта smile.gif По крайней мере пока не получиться напрямую surface редактировать, затемняя или смешивая с какой-либо маской.

Сообщение отредактировал alpet - 10.07.2014, 19:17
Перейти в начало страницы
 

191 страниц V  « < 68 69 70 71 72 > » 
Тема закрытаНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 02.05.2024, 00:06