Закрома Родины |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Закрома Родины |
17.09.2014, 16:27
Сообщение
#821
|
|
И никаких няш-мяш! Репутация: 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 |
 
|
|
|
|
16.05.2014, 23:25
Сообщение
#822
|
|
Босс Репутация: 447 Группа: Участник Сообщений: 4295 Награды: 6 Регистрация: 07.06.2008 |
вот накой звуковая подсистема в редакторе? Понятно, что мне неизвестен контекст, но если речь о редакторе карт, то разве там не надо контролировать те же зоны эффектов и многое другое? -------------------- ...Где каждый в душе великий Кобзон,
А на деле банальный Сид Вишес... Я плюс... Потому что я плюс. (с) Дрянь Тань Ян из провинции Гас Коу Ань. Никакой справедливости нет, все законы работают не правильно, месть разрушительна и бесперспективна, правда у каждого своя, разум вообще больной. Остаётся жить любовью? Это был риторический вопрос. |
 
|
|
16.05.2014, 23:27
Сообщение
#823
|
|
Почти Игрок Репутация: 4 Группа: Участник Сообщений: 24 Награды: 1 Регистрация: 18.01.2014 |
Цитата HikeR чуть ли не каждый .cpp-файл содержит аналогичную простыню комических масштабов комических масштабов #include "../xrEProps/ChoseForm.h" #include "UI_ParticleTools.h" #include "../ECore/Editor/EditObject.h" #include "ui_main.h" #include "leftbar.h" #include "../../xr_3da/xrRender/PSLibrary.h" //.#include "ParticleSystem.h" #include "../../xrCore/xr_trims.h" #include "../ECore/Editor/library.h" #include "../ECore/Editor/Render.h" #include "../xrEProps/folderlib.h" #include "../xrEProps/itemdialog.h" #include "../xrEProps/TextForm.h" #include "d3dutils.h" #include "ObjectAnimator.h" #include "../xrEProps/ItemList.h" #include "ParticleEffectActions.h" так эти нехорошие человеки еще и продублировали кучу инклюдов по разным каталогам Да, помню как в студенческие годы порой вставлял в cpp-файлы кучу #include, что бы код точно работал... Т.к. не хотелось искать в Helpe какой #include нужен для конкретного оператора. Так может они так же, на всякий случай копировали в заголовок простыню из #include, что бы все точно работало? Этакий студенческо-пофигизский подход... Сообщение отредактировал Robin-goods - 16.05.2014, 23:56 |
 
|
|
16.05.2014, 23:29
Сообщение
#824
|
|
Почти Мастер Репутация: 311 Группа: Участник Сообщений: 1092 Награды: 5 Регистрация: 01.03.2011 |
|
 
|
|
16.05.2014, 23:44
Сообщение
#825
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
уточняю контекст: кто пользовался всеми этими *Editor раньше, можно ли в них проигрывать аудио– видеоролики и/или что-то с ними делать (резать, склеивать, шумы там убирать)? можно ли сразу прослушать созданное EAX-окружение?
все что смог отыскать это нечто связанное с комментариями в ogg-файлах (редактирование?), а для этого полный комплект xrSound/EAX/OpenAL/ogg/vorbis/theora нафиг не нужен. |
 
|
|
16.05.2014, 23:52
Сообщение
#826
|
|
Почти Игрок Репутация: 4 Группа: Участник Сообщений: 24 Награды: 1 Регистрация: 18.01.2014 |
HikeR
Кстати, я правильно понял, что проект писался в Borland C++ Builder ? |
 
|
|
16.05.2014, 23:57
Сообщение
#827
|
|
Магистр Игры Репутация: 270 Группа: Участник Сообщений: 2620 Награды: 4 Регистрация: 26.03.2007 |
только для сдк-шных приложений. в те времена, насколько я помню, подобный интерфейс сделать на продуктах от MS было тяжеловато. да и дельфи народ любил куда больше ;)
|
 
|
|
17.05.2014, 00:01
Сообщение
#828
|
|
Почти Игрок Репутация: 4 Группа: Участник Сообщений: 24 Награды: 1 Регистрация: 18.01.2014 |
Ха, а мне тогда куча народу втирало, что Borland C++ Builder предназначен для любительских целей... Мол это конструктор для быстрой сборки. А мол для серьезных вещей нужен исключительно Microsoft Visual C++.
Сообщение отредактировал Robin-goods - 17.05.2014, 00:21 |
 
|
|
17.05.2014, 00:03
Сообщение
#829
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
|
 
|
|
17.05.2014, 00:09
Сообщение
#830
|
|
Почти Игрок Репутация: 4 Группа: Участник Сообщений: 24 Награды: 1 Регистрация: 18.01.2014 |
Я к чему веду, может движок оказался таким глючным, из-за того, что там использовался Builder ?
Сообщение отредактировал Robin-goods - 17.05.2014, 00:10 |
 
|
|
17.05.2014, 00:14
Сообщение
#831
|
|
Мастер Игры Репутация: 232 Группа: Друзья GM Сообщений: 1299 Награды: 4 Регистрация: 05.03.2012 |
Звук в сдк есть и нормально работает.
-------------------- |
 
|
|
17.05.2014, 00:23
Сообщение
#832
|
|
Почти Мастер Репутация: 311 Группа: Участник Сообщений: 1092 Награды: 5 Регистрация: 01.03.2011 |
|
 
|
|
17.05.2014, 00:29
Сообщение
#833
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
Везде в Sound Editor.
В LE при включенной погоде есть все звуки, можно слушать sound source. |
 
|
|
17.05.2014, 00:38
Сообщение
#834
|
|
Опытный Геймер Репутация: 17 Группа: Участник Сообщений: 190 Награды: 3 Регистрация: 29.11.2012 |
Зона звуковых эффектов задается областью, ее видно визуально. Звука в СДК нет. Если запустить Shader Editor, и выбрать вкладку Sound Env то включиться дефолтный звук beep (ну или можно прикрутить любой другой), так вот как раз этот звук можно прослушать в обработке любого, выбранного пресета, причем облетая камерой сам источник. И там же можно создать свой или корректировать готовые пресеты звуковой обработки. Только все это "счастье" можно услышать только на XP, так как там существовал DirectSound, а с появлением Win7, DirectSound выл вырезан, а его функции возложили на OpenAl, но вот беда - SDK 0.4 "не умеет" работать с интерфейсом ОpenАl. Сообщение отредактировал Jein - 17.05.2014, 00:41 |
 
|
|
17.05.2014, 00:48
Сообщение
#835
|
|
Ветеран Репутация: 6 Группа: Участник Сообщений: 94 Награды: 2 Регистрация: 05.05.2012 |
Звук также есть и в LE. При проигровании sound source или редактировании звуков в sound editor Вообще в любом из редакторов есть вкладка sound editor, через который настраиваются звуки для игры. Зона звуковых эффектов задается областью, ее видно визуально. Звука в СДК нет. Если запустить Shader Editor, и выбрать вкладку Sound Env то включиться дефолтный звук beep (ну или можно прикрутить любой другой), так вот как раз этот звук можно прослушать в обработке любого, выбранного пресета, причем облетая камерой сам источник. И там же можно создать свой или корректировать готовые пресеты звуковой обработки. Только все это "счастье" можно услышать только на XP, так как там существовал DirectSound, а с появлением Win7, DirectSound выл вырезан, а его функции возложили на OpenAl, но вот беда - SDK 0.4 "не умеет" работать с интерфейсом ОpenАl. Как раз лучше прикрутить к 4 сдк openal. Только вот с исх. Беда и с сдк опенал. Я долго искал, но находил лишь старинные версии. Сообщение отредактировал Lagos - 17.05.2014, 00:44 -------------------- |
 
|
|
17.05.2014, 01:22
Сообщение
#836
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
В каком компоненте, в АЕ? В LE точно работал, достаточно сделать ctrl+A на вкладке sound source и нажать кнопочку play. Добавил дохрена скриптовых методов, в общей сложности получается пока так: open Работа с игровыми объектами CActor number get_actor_max_weight() - возвращает максимально переносимый вес. set_actor_max_weight(number) - устанавливает максимально переносимый вес. number get_actor_max_walk_weight() - возвращает максимальный вес, после которого уже нельзя ходить. set_actor_max_walk_weight(number) - устанавливает максимальный вес, после которого уже нельзя ходить. CCar number GetfFuel() - возвращает текущее количество топлива. SetfFuel(number) - устанавливает текущее количество топлива. number GetfFuelTank() - возвращает размер топливного бака. SetfFuelTank(number) - устанавливает размер топливного бака. number GetfFuelConsumption() - возвращает расход топлива. SetfFuelConsumption(number) - устанавливает расход топлива. ChangefFuel(number) - увеличивает или уменьшает текущее количество топлива. ChangefHealth(number) - увеличивает или уменьшает текущее состояние машины. PlayDamageParticles() - включает партиклы повреждений машины. StopDamageParticles() - выключает партиклы повреждений машины. StartEngine() - включает двигатель. StopEngine() - выключает двигатель. bool IsActiveEngine() - возвратит true, если двигатель включен. CCustomOutfit number get_additional_max_weight() - возвращает добавочный максимально переносимый вес. set_additional_max_weight(number) - устанавливает добавочный максимально переносимый вес. number get_additional_max_walk_weight() - возвращает добавочный максимальный вес, после которого уже нельзя ходить. set_additional_max_walk_weight(number) - устанавливает добавочный максимальный вес, после которого уже нельзя ходить. CInventoryItem number weight() - возвращает вес предмета. CInventoryOwner number get_total_weight() - возвращает суммарный вес всех предметов в инвентаре. CTorch enable_torch(bool) - задает состояние активности фонарика. switch_torch() - переключает состояние активности фонарика. bool torch_enabled() - возвратит true, если фонарик активен. enable_night_vision(bool) - задает состояние активности ПНВ. switch_night_vision() - переключает состояние активности ПНВ. bool night_vision_enabled() - возвратит true, если ПНВ активен. Колбеки игровых объектов CActor callback.hit - хит; принимаемые аргументы: game_object obj, number amount, vector local_direction, game_object who, number bone_index callback.on_key_press - нажатие клавиши; принимаемые аргументы: number dik callback.on_key_release - отпускание клавиши; принимаемые аргументы: number dik callback.on_key_hold - удерживание клавиши; принимаемые аргументы: number dik callback.on_mouse_move - движение мыши; принимаемые аргументы: number x, number y callback.on_mouse_wheel - вращение колеса мыши; принимаемые аргументы: number direction callback.switch_torch - переключение активности фонарика; принимаемые аргументы: bool light_on CInventoryOwner callback.on_item_belt - перемещение предмета на пояс; принимаемые аргументы: game_object obj callback.on_item_slot - перемещение предмета в слот; принимаемые аргументы: game_object obj callback.on_item_ruck - перемещение предмета в рюкзак; принимаемые аргументы: game_object obj CTorch callback.switch_torch - переключение активности фонарика; принимаемые аргументы: bool light_on Другие изменения Класс render_device number fov() - возвращает текущее значение fov. set_fov(number) - устанавливает значение fov. Свойство fov удалено, вместо нее необходимо использовать вышеописанную функцию fov. З.Ы. когда уже запилят кнопку спойлера и почему тег называется hide?? Сообщение отредактировал Shadows - 17.05.2014, 01:23 -------------------- |
 
|
|
17.05.2014, 01:35
Сообщение
#837
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
Цитата SetfFuel(number) - устанавливает текущее количество топлива. .. ChangefFuel(number) - увеличивает или уменьшает текущее количество топлива. К чему две одинаковые функции? Цитата SetfFuelTank(number) - устанавливает размер топливного бака. .. SetfFuelConsumption(number) - устанавливает расход топлива. Зачем? Можно же в конфиге настроить. Не, второе то ещё ладно, можно увеличить расход топлива при убитой машине, но первое нафига? |
 
|
|
17.05.2014, 01:49
Сообщение
#838
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
К чему две одинаковые функции? Уверен? Цитата Не, второе то ещё ладно, можно увеличить расход топлива при убитой машине, но первое нафига? На всякий случай. -------------------- |
 
|
|
17.05.2014, 02:02
Сообщение
#839
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
|
 
|
|
17.05.2014, 02:04
Сообщение
#840
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
Не вижу особой разницы между Потому что ты не знаешь как они работают. -------------------- |
 
|
|
17.05.2014, 02:11
Сообщение
#841
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
Если ты про 3, то да, там же float надо. Тупанул.
А всё-таки, в чём различия? |
 
|
|
Текстовая версия | Сейчас: 29.04.2024, 00:21 |