Закрома Родины |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Закрома Родины |
17.09.2014, 16:27
Сообщение
#1461
|
|
И никаких няш-мяш! Репутация: 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 |
 
|
|
|
|
14.07.2014, 17:06
Сообщение
#1462
|
|
Продвинутый геймер Репутация: 90 Группа: Участник Сообщений: 395 Награды: 3 Регистрация: 07.04.2014 |
Vampir35, я думаю лучше из ЗП, считаю, что там более камблю
-------------------- no more running
|
 
|
|
14.07.2014, 18:52
Сообщение
#1463
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
soft_oal (из OpenAL-Soft) Что-то припоминаю, там EAX был вообще выкушен. Так и не понял смысла в этом проекте. Вот еще нашел какой-то wrapper Цитата Implements a DirectSound DLL by using OpenAL. Effectively, it enables "accelerated" DSound3D by leveraging OpenAL's 3D audio rendering, and enables EAX 2.0 support with OpenAL's ALC_EXT_EFX extension. It can be built as a native Windows DLL, or as a Wine DLL. Только там фиг поймешь, SVN какой-то, похоже надо компилить... потому что то окружение, которое было "настроено" на неправильных картах у меня звучит так, Если на большинстве систем окружение звучит/звучало нормально, а у тебя глючит, то может дело не в том, что оно было настроено на неправильных картах, а в том, что конкретно твоя карта воспринимает его неправильно? А через реалтековский dsound.dll тоже глючит? забудьте вы про эти шаманства, юзайте наконец инфа для размышления Сложно, но интересно. Так с этими креативовскими прибабахами конкретно у тебя окружение в ТЧ наконец нормально заработало? Сообщение отредактировал macron - 14.07.2014, 18:54 |
 
|
|
14.07.2014, 20:47
Сообщение
#1464
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
Так и не понял смысла в этом проекте. он основан на последних доступных исходниках OAL от креатива, в том числе там была софтовая реализация EAX2 реверебрации (именно ее и растащили всякие рилтеки и прочие асусы и начали лепить логотип EAX на свои продукты). но основная фишка была кроссплатформенность, вернее сказать, развитие linux backend-а. ессно, после таких выходок конкурентов последовало прекращение поддержки креативом опенсорсной версии, поэтому из нее потихоньку выпилили почти все что касалось взаимодействия с аппаратными возможностями, оставив лишь базовые фишки: позиционирование, затухание и допплер; ревер ("эхо") засунули в EFX-расширения. Если на большинстве систем окружение звучит/звучало нормально, а у тебя глючит, то может дело не в том, что оно было настроено на неправильных картах, а в том, что конкретно твоя карта воспринимает его неправильно? я бы понял недовольство владельцев asus xonar, у коих GX-примочка для закоса под креатив по жизни был глючна, и не так давно они опять были недовольны, ибо пришлось отключать эту примочку. но я не могу понять, почему креативовский OpenAL на креативовской же Audigy 4 выдает такую хрень. я даже WinXP поставил чтобы послушать что творится в "родной" стихии, там такой же ужас. варианта всего два — умельцы зачем-то поковырялись в исходниках OAL-а; окружение настраивали на встройках под встроечное понимание "что такое EAX". и сильно подозреваю, что тут обе причины присутствуют одновременно. Так с этими креативовскими прибабахами конкретно у тебя окружение в ТЧ наконец нормально заработало? то немногое родное окружение изначально нормально работало. но все что было намододелано впоследствии примерно соответствовало вышевыложенному ролику. Сложно, но интересно даже старые Audigy по всякофлопсам превосходили своих современников в лице Pentium 4. вдумайтесь, какого с таким железом можно было наморокосить... но креатив наконец-таки осознала, что мощнейший DSP на своих картах используется менее чем никак, поэтому и начала выпускать чисто софтовые решения типа Audigy FX (там тот же самый рилтек стоит) с реализацией всех своих кристаллайзеров в драйверах. а заодно и вовсе стала продавать только драйвера ;) все серия программных Sound Blaster MB|MB2|MB3, кстати, по цене равна этой самой FX, ~30 баксов. я не могу заставить всех бежать в магазин за "нормальной" карточкой. но поставить софт и получить полный аналог железяки, по-моему, намного проще, чем париться с поисками старых версий дров и их комбинацией. а самое главное, звучит все это дело точно также, как и на железяках (исключая качество самого звукового тракта, кондюки там всякие и прочие сменные ОУ). да, если результат и софт понравится, то обязательно возьмите кредитку, сходите p.s. я понимаю некую двойственность своей позиции, ратую за продукцию Creative и в то же время советую юзать FMOD (который поддержку креатива не так давно выпилил под корень). но тут все просто, для игр, старых и не очень, лучше этой конторы все равно ничего нет, но в вопросах типа "а не прикрутить ли новый звуковой движок" FMOD рулит. ибо Creative на игры давно забила. |
 
|
|
14.07.2014, 20:51
Сообщение
#1465
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
Тут такое дело, я, кажется, нашел причину бага со стационарным пулеметом.
Суть бага вот в чем: когда мы спавним пулемет, по заданным координатам его нету, он появляется в центре локации, а когда мы начинаем из него стрелять, то чудесным образом вместе с пулеметом оказываемся там, где его заспавнили, может дело в этом: файл WeaponStatMgun.cpp Код void CWeaponStatMgun::UpdateBarrelDir() { CKinematics* K = smart_cast<CKinematics*>(Visual()); m_fire_bone_xform = K->LL_GetTransform(m_fire_bone); m_fire_bone_xform.mulA_43 (XFORM()); m_fire_pos.set (0,0,0); m_fire_bone_xform.transform_tiny(m_fire_pos); m_fire_dir.set (0,0,1); m_fire_bone_xform.transform_dir (m_fire_dir); Я не знаю c++, а также структуры движка, но меня не покидают подозрения, что тут: Код m_fire_pos.set (0,0,0); устанавливаются координаты для огневой позиции, причем именно центр локации) Как я и сказал, знаний с++ у меня нет, потому поправить это сам я не могу, так что если кто сделает, буду благодарен -------------------- |
 
|
|
14.07.2014, 21:10
Сообщение
#1466
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
это не установка абсолютной позиции, это задание начального вектора, который в следующей же строчке должен преобразоваться (m_fire_bone_xform - матрица) согласно положению m_fire_bone (точки вылетания партиклов выстрела, видимо).
почему в последних ревизиях это, по всей видимости, к авторам ревизий. Сообщение отредактировал HikeR - 14.07.2014, 21:17 |
 
|
|
14.07.2014, 21:16
Сообщение
#1467
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
это не установка абсолютной позиции, это задание начального вектора, который в следующей же строчке должен преобразоваться (m_fire_bone_xform - матрица) согласно положению m_fire_bone (точки вылетания партиклов выстрела, видимо). Жаль конечно, думал получится избавиться от бага малой кровью) Не знаешь случаем, почему в последних ревизиях если ставишь в слот фонарь и ему подобные предметы - происходит безлог? Просто интересно, фиксилось ли это, может просто конфиги нужно править) -------------------- |
 
|
|
14.07.2014, 22:11
Сообщение
#1468
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
|
 
|
|
15.07.2014, 00:27
Сообщение
#1469
|
|
Геймер Репутация: 19 Группа: Участник Сообщений: 130 Награды: 2 Регистрация: 24.05.2008 |
Суть бага вот в чем: когда мы спавним пулемет, по заданным координатам его нету, он появляется в центре локации Этот пулемет стационарный, он видимо должен привязываться к чему-то жестко - стоит это и проверить. Спавн мимо позиции у меня был, лишь когда подставлял неправильные левел-вертексы. Все остальное нормально спавниться? Сообщение отредактировал alpet - 15.07.2014, 00:30 |
 
|
|
15.07.2014, 00:44
Сообщение
#1470
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
alpet, да просто он спавнится, как любой объект, только если координаты не (0,0,0), то физ. оболочка куда-то улетает. В этом и есть основной баг.
Код alife():create("mounted_weapon", vector(), db.actor:level_vertex_id(), db.actor:game_vertex_id()) -- спавнит в центре локи. alife():create("mounted_weapon", db.actor:position():add(db.actor:direction():mul(10)), db.actor:level_vertex_id(), db.actor:game_vertex_id()) -- спавнит в 10 метрах перед актором. Также можно попробовать секцию stationary_mgun. З.Ы. как-то пытался получить класс пулемета в игре, выдавало это: Код stationary_mgun = W_STMGUN = clsid.wpn_vintorez = 164 mounted_weapon = W_MOUNTD = clsid.wpn_shotgun = 157 Что немного странно. Сообщение отредактировал Shadows - 15.07.2014, 00:50 -------------------- |
 
|
|
15.07.2014, 00:52
Сообщение
#1471
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
Да нет, физ. оболочка как-раз на месте. Улетает сама модель, и не куда-то а в центр локации.
Есть версия, что в новых версиях движка пулемёт обязательно должен крепится к БТРу, на котором установлен. М.б. это на самом деле так? |
 
|
|
15.07.2014, 01:09
Сообщение
#1472
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
*Коллизия на месте, улетает визуал.
Цитата Есть версия, что в новых версиях движка пулемёт обязательно должен крепится к БТРу, на котором установлен. М.б. это на самом деле так? Ват? Стационарный пулемет крепится к БТРу? Он из секции пулемета просто параметры читает, навроде типа патронов или звука выстрелов. -------------------- |
 
|
|
15.07.2014, 01:16
Сообщение
#1473
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
|
 
|
|
15.07.2014, 01:21
Сообщение
#1474
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
|
 
|
|
15.07.2014, 01:22
Сообщение
#1475
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
а также к вертолету и автомобилю, исходники же перед глазами. Назови файл и строчку, где идет аттач. З.Ы. БТР это и есть автомобиль (CCar). К.О. Сообщение отредактировал Shadows - 15.07.2014, 01:25 -------------------- |
 
|
|
15.07.2014, 10:45
Сообщение
#1476
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
БТР это и есть автомобиль (CCar). К.О. БТР есть скриптовый член этого класса, да. но не любой автомобиль есть БТР. К. О. CCar поддерживает CCarWeapon, которое еще и вертится само по направлению взгляда игрока (типа внешняя турель), файл всего один, называть, надеюсь, не надо. там хоть пулемет, хоть пистолет вешай, классу без разницы. |
 
|
|
15.07.2014, 12:29
Сообщение
#1477
|
|
Ветеран Репутация: 5 Группа: Участник Сообщений: 82 Награды: 2 Регистрация: 11.07.2014 |
А может ли быть, что дело в том как заспавнить? Может там нужно какой-то особый параметр указать? Ну типа вейпоинта например, все таки этот пулемет, как я понял, какой-то гибрид классов автомобиля и вертолета (Надпись открыть дверь есть, а коллизиии нету)
P.S какие аргументы передает каллбек на перемещение предмета в слот? -------------------- |
 
|
|
15.07.2014, 13:40
Сообщение
#1478
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
которое еще и вертится само по направлению взгляда игрока (типа внешняя турель) Лолшто? файл всего один, называть, надеюсь, не надо. там хоть пулемет, хоть пистолет вешай, классу без разницы. Покажи файл и строчку, где идет аттач пулемета/пистолета. БТР есть скриптовый член этого класса, да. но не любой автомобиль есть БТР. К. О. В игре, все заспавненные объекты это CScriptGameObject, но для машины кастуется именно CCar. Так где-же класс БТРа-то? Пока не приведешь пруфы, с тобой нет смысла говорить. ---------------------------------- какие аргументы передает каллбек на перемещение предмета в слот? Клиентский объект предмета. А может ли быть, что дело в том как заспавнить? Может там нужно какой-то особый параметр указать? Люди через алл.спавн спавнили - разницы в игре никакой. Сообщение отредактировал Shadows - 15.07.2014, 13:41 -------------------- |
 
|
|
15.07.2014, 14:44
Сообщение
#1479
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
Лолшто? носом потыкать или сам найдешь? Покажи файл и строчку, где идет аттач пулемета/пистолета. мысли шире, а не живи одним раскомментариванием чужого кода. класс - это абстракция с интерфейсом, а реализация как-бы в другом месте происходит. Так где-же класс БТРа-то? спроси у того, кто заявил о наличии отдельного класса для БТР-а. Клиентский объект предмета. прям таки целый объект в качестве аргумента?? |
 
|
|
15.07.2014, 14:54
Сообщение
#1480
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
носом потыкать или сам найдешь? Потыкай, сам не найду. а реализация как-бы в другом месте происходит. В каком? Файл, строка? прям таки целый объект в качестве аргумента?? Деточка, ты знаешь что такое CScriptGameObject? а не живи одним раскомментариванием чужого кода Ты пока даже до этого не дорос. Впрочем, личинке трололо и этого не светит. Кстати, в прошлый раз за свой базар ты тоже не ответил. -------------------- |
 
|
|
15.07.2014, 14:54
Сообщение
#1481
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
|
 
|
|
Текстовая версия | Сейчас: 26.04.2024, 13:14 |