Закрома Родины |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Закрома Родины |
17.09.2014, 16:27
Сообщение
#3721
|
|
И никаких няш-мяш! Репутация: 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 |
 
|
|
|
|
30.10.2015, 15:13
Сообщение
#3722
|
|
Продвинутый геймер Репутация: 15 Группа: Участник Сообщений: 322 Награды: 3 Регистрация: 01.05.2014 |
|
 
|
|
30.10.2015, 18:09
Сообщение
#3723
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
Не есть тот самый Тот самый Покер-фэйс тамошних пользователей по поводу слива исходников просто поражает -------------------- |
 
|
|
31.10.2015, 13:38
Сообщение
#3724
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
|
 
|
|
31.10.2015, 14:22
Сообщение
#3725
|
|
Опытный Геймер Репутация: 22 Группа: Участник Сообщений: 169 Награды: 2 Регистрация: 19.11.2010 |
под 15ую надо, опять, править темплейт xr_hashmap А в чем проблема? Насколько мне видно, если что-то править лениво, то до следующего релиза студии можно добавить #define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS в начало xrCore.h. -------------------- |
 
|
|
01.11.2015, 10:06
Сообщение
#3726
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS в начало xrCore.h. Да знаю, я этот способ. Но во первых - я придерживаюсь взглядов, что если портировать, то портировать без deprecated функционала. Для сведения VC2015: Цитата not provided stdext . Да там и не только это поправить придется, на что я время тратить не хотел |
 
|
|
01.11.2015, 15:34
Сообщение
#3727
|
|
Почти Игроман Репутация: 96 Группа: Участник Сообщений: 594 Награды: 3 Регистрация: 26.10.2012 |
Цитата #define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS VS 2015 X-Ray 1.5.10 из подписи Flammable чтоб велосипед не изобретать. У меня компилятор просит подключить unordered_map и unordered_set вместо hash_map и hash_set, попробовал так сделать, но сейчас достает синтаксическая ошибка: отсутствие "," перед "<" Серьезность Код Описание Проект Файл Строка Ошибка C2143 синтаксическая ошибка: отсутствие "," перед "<" xrRender_R2 e:\priquel\engine\xrcore\_stl_extensions.h 214 Там код такой: спойлер CODE #ifdef STLPORT template <typename V, class _HashFcn=std::hash<V>, class _EqualKey=std::equal_to<V>, typename allocator = xalloc<V> > class xr_unordered_set : public std::unordered_set<V,_HashFcn,_EqualKey,allocator> { public: u32 size() const {return (u32)__super::size(); } }; template <typename V, class _HashFcn=std::hash<V>, class _EqualKey=std::equal_to<V>, typename allocator = xalloc<V> > class xr_hash_multiset: public std::hash_multiset<V,_HashFcn,_EqualKey,allocator> { public: u32 size() const {return (u32)__super::size(); } }; template <typename K, class V, class _HashFcn=std::hash<K>, class _EqualKey=std::equal_to<K>, typename allocator = xalloc<std::pair<K,V> > > class xr_unordered_map : public std::unordered_map<K,V,_HashFcn,_EqualKey,allocator> { public: u32 size() const {return (u32)__super::size(); } }; template <typename K, class V, class _HashFcn=std::hash<K>, class _EqualKey=std::equal_to<K>, typename allocator = xalloc<std::pair<K,V> > > class xr_hash_multimap: public std::hash_multimap<K,V,_HashFcn,_EqualKey,allocator> { public: u32 size() const {return (u32)__super::size(); } }; #else template <typename K, class V, class _Traits=stdext::hash_compare<K, stdext::less<K> >, typename allocator = xalloc<std::pair<K,V> > > class xr_unordered_map : public stdext::unordered_map<K,V,_Traits,allocator> { public: u32 size() const {return (u32)__super::size(); } }; // { // public: u32 size() const {return (u32)__super::size(); } // }; #endif // #ifdef STLPORT Сторка(предоследняя) где вылазит ошибка class xr_unordered_map : public stdext::unordered_map<K,V,_Traits,allocator> { public: u32 size() const {return (u32)__super::size(); } }; Компилятор предлагает такое решение: Сделал как в первом примере с template: class xr_unordered_map : public stdext::template unordered_map<K,V,_Traits,allocator> { public: u32 size() const {return (u32)__super::size(); } }; При перекомпиляции ничего не менятся ошибка та же, что делаю не так? -------------------- Будиш маму-папу слушать
Будиш ты канфеты кушать! © Операция «Ы» |
 
|
|
01.11.2015, 15:57
Сообщение
#3728
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
Kontro-zzz, я так понимаю, заменял сам, у Flammable естественно такого нет?
Лучше всего откати свои изменения назад и добавь дефайн Код #define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS в xrCore.h перед строкой #include <hash_map> Сообщение отредактировал abramcumner - 01.11.2015, 16:06 |
 
|
|
01.11.2015, 17:42
Сообщение
#3729
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
Kontro-zzz, я так понимаю, заменял сам, у Flammable естественно такого нет? Лучше всего откати свои изменения назад и добавь дефайн Код #define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS в xrCore.h перед строкой #include <hash_map> Код #define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS 1
|
 
|
|
01.11.2015, 17:57
Сообщение
#3730
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
|
 
|
|
01.11.2015, 18:06
Сообщение
#3731
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
|
 
|
|
01.11.2015, 18:07
Сообщение
#3732
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
там #ifndef
Сообщение отредактировал abramcumner - 01.11.2015, 18:15 |
 
|
|
01.11.2015, 18:19
Сообщение
#3733
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
там #ifndef Да не велика разница, с точки зрения необходимости наличия 1 Мне скорее интересно, а догадался ли автор предыдущих постов переключить на компилятор VS2013(120 версии), ибо на 140(VS2015) это проблему не решит+ я заметил, что необходимо будет сделать правку в xrDebugNew |
 
|
|
01.11.2015, 18:30
Сообщение
#3734
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
Мне скорее интересно, а догадался ли автор предыдущих постов переключить на компилятор VS2013(120 версии), ибо на 140(VS2015) это проблему не решит+ я заметил, что необходимо будет сделать правку в xrDebugNew Если бы у него был компилятор 120, у него бы была и студия 2013 -> он бы собирал в ней А так правки для сборки в 2015 минимальны - в 2015 все хорошо собирается. |
 
|
|
01.11.2015, 19:06
Сообщение
#3735
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
Мне скорее интересно, а догадался ли автор предыдущих постов переключить на компилятор VS2013(120 версии), ибо на 140(VS2015) это проблему не решит+ я заметил, что необходимо будет сделать правку в xrDebugNew Если бы у него был компилятор 120, у него бы была и студия 2013 -> он бы собирал в ней А так правки для сборки в 2015 минимальны - в 2015 все хорошо собирается. Во первых, 120 компилятор идет и с 15ой студией, если во время установки студии указать необходимость в нем Во вторых это самое предупреждение, про unordered_map, появилось в 13ой студии->в 15ой hash_map уже убрали,как deprecated, т.е собраться там вообще никак не может. Если у тебя получилось собрать, только включив данный макрос, то скажи, что я делаю не так Edit: Беру свои слова обратно - ты оказался прав - перепроверил |
 
|
|
01.11.2015, 19:11
Сообщение
#3736
|
|
Почти Игроман Репутация: 96 Группа: Участник Сообщений: 594 Награды: 3 Регистрация: 26.10.2012 |
Цитата заменял сам да. Заменил во всех файлах где они были, там их не так уж много. Цитата Лучше всего откати свои изменения назад и добавь дефайн наверно позже попробую. Цитата во время установки студии да, было такое окно, установил 140-й. Приехали? Можно конечно попробовать переустановить, или запустить инсталлятор не удаляя студию, может что предложит. Сообщение отредактировал Kontro-zzz - 01.11.2015, 19:32 -------------------- Будиш маму-папу слушать
Будиш ты канфеты кушать! © Операция «Ы» |
 
|
|
01.11.2015, 19:18
Сообщение
#3737
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
да, было такое окно, установил 140-й. Приехали? Можно конечно попробовать переустановить, или запустить инсталлятор не удаляя студию, может что предложит. Не, оно соберется,там правки только в core требуются - Я сейчас сам пересобираю, пока 50% модулей собралось успешно |
 
|
|
01.11.2015, 19:23
Сообщение
#3738
|
|
Почти Игроман Репутация: 96 Группа: Участник Сообщений: 594 Награды: 3 Регистрация: 26.10.2012 |
Цитата там правки только в core требуются это про define имеешь ввиду? -------------------- Будиш маму-папу слушать
Будиш ты канфеты кушать! © Операция «Ы» |
 
|
|
01.11.2015, 19:25
Сообщение
#3739
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
Цитата там правки только в core требуются это про define имеешь ввиду? Да, но у меня еще вылезли проблемы в net_utils.h и fs.h - там компилятор падал при попытке принудительно заинлайнить функцию - пришлось поправить __forceinline на inline Еще ругнулось,в физике, что "Попытка сослаться на удаленную функцию" P.S у меня принудительно инлайнятся все функции - т.е макросы IC и ICF имеют значения __forceinline, в оригинальных исходниках по другому, поэтому у вас эта проблема может и не вылезти Сообщение отредактировал Tron - 01.11.2015, 19:29 |
 
|
|
02.11.2015, 03:31
Сообщение
#3740
|
|
Опытный Геймер Репутация: 22 Группа: Участник Сообщений: 169 Награды: 2 Регистрация: 19.11.2010 |
Но во первых - я придерживаюсь взглядов, что если портировать, то портировать без deprecated функционала. Для сведения VC2015: Цитата not provided stdext . DirectPlay и DirectInput давным давно deprecated, но вы никуда от них не денетесь (во всяком случае, избавиться от них - означает переписать добрую часть движка). А тут речь идет не столько о портировании, сколько об адаптации кода к новой студии. Да там и не только это поправить придется, на что я время тратить не хотел Больше всего времени ушло на перекомпиляцию зависимостей. upd. Вспомнил еще, что в процессе сборки под vs2015 были какие-то проблемы с DxErr, и чтобы потом с ним не возиться, я включил его в исходниках. На msdn можно найти unicode-only версию, Сообщение отредактировал Flammable - 02.11.2015, 03:51 -------------------- |
 
|
|
02.11.2015, 10:48
Сообщение
#3741
|
|
Игровой Эксперт Репутация: 407 Группа: Участник Сообщений: 2394 Награды: 5 Регистрация: 19.01.2009 |
Flammable, ну вот что ты к словам цепляешься? - я имел ввиду конкретно этот фрагмент
Цитата >Больше всего времени ушло на перекомпиляцию зависимостей. Ну это у кого как, у меня это все собирается за 2 минуты Сообщение отредактировал Tron - 02.11.2015, 10:50 |
 
|
|
Текстовая версия | Сейчас: 04.05.2024, 17:39 |