Сложность настройки: Средняя
Добрый день, с вами Алексей. В этой статье мы с вами будем
настраивать SDK для работы с ним. Скажу честно,
с начала нашей, программистской деятельности, это будет непросто. Самое интересное,
что здесь, в этой настройке, полностью отсутствует порядок действий – некоторые
вещи можно сделать сразу, а некоторые – потом, однако работа с Visual C++ все же
будет на втором плане. А на первом – директории и файлы.
Пока что я отойду немножко от темы. Для меня еще несколько
месяцев тому назад работа с настройкой (именно настройкой, а не с самим
открытым кодом) SDK была
очень сложной, некоторые вещи я не хотел или мог понять. Позже, когда я выяснил
многие нюансы, я смог довести начатое дело до конца и стал уже копаться в самом
коде, нежели бродить по его окрестностям.
Что собой представляет SDK, сказать можно далеко
не исчерпывающе. С помощью Software Development Kit возможно сделать множество разных вещей, начиная с переделки
скорострельности оружия и параметров игрока и заканчивая создания нового
оружия, врагов, даже типа игры (!). Однако, ваши программистские возможности в SDK зависят от вашего знания языка C++, изучать который далеко не просто. Вам могут помочь
наблюдательность, терпение, долгий и упорный труд.
А теперь к делу. Для настройки рабочей директории для SDK нам понадобятся:
- Microsoft Visual C++ (желательно
версию 6.0)
- Сам SDK (в данном случае версия 1.07)
- SDK DirectX (DirectX80_MGW)
Для начала выберем
место, где и будем создавать директории. Выберите, например, диск C и создайте на нем папку SDK. Затем, из вашей
папки с игрой Serious Sam SE копируем папку Bin в нашу папку SDK. Потом
в папке SDK создаем
папку Sources. Вот в нее мы и будем помещать все наши исходники.
Теперь же нам потребуются и сами исходники. Открываем архив sdk107 и видим еще четыре архива:
SDK107_ModelsSE.zip
SDK107_Includes.zip
SDK107_EntitiesSE.zip
SDK107_DebugBinaries.zip
Первые три из них нам потребуются сразу сейчас.
Разархивируйте их все в папку Sources.
Четвертый архив следует разархивировать в папку Bin\Debug. Папку, как вы догадались, вы
должны создать сами.
После окончания всех действий с архивами, закрываем их все,
они нам больше не понадобятся. Заходим в нашу папку Sources и
копируем оттуда в папку Bin два
файла Engine.lib и EngineGUI.lib. После этого нам
обязательно нужно снять «Только чтение»
с нашей папки SDK, иначе же Visual C++ будет нам извечно говорить, что
«проект наш только для чтения».
Теперь создадим переменную среду для опознания Visual C++ нашей
директории. Правый щелчком по «Мой компьютер» выберите Свойства\Дополнительно\Переменные среды\Создать
В «Имя переменной»
пишем ENGINE_DIR, а в «Значение переменной» - C:\SDK\Sources
Жмем ОК.
Теперь следует открыть Visual C++. Открываем и сразу жмем File\New\Workspaces. В Location выбираем
нашу папку C:\SDK, а в Workspace name пишем
Sources. Снова жмем ОК.
Теперь нас интересуют проекты отдельных библиотек, которые
мы добавим в наш Workspace. В меню выбираем Project\Insert project into workspace. Данное действие нужно
будет проделать три раза. Из трех папок EntitiesMP, GameMP и GameGUIMP загрузим по файлу с расширением DSP.
Теперь выберем в меню Project\Dependencies.
Появится заветное окошечко с CheckBox – выбором
возможно допустимых библиотек. Делаем все, как описано дальше:
В EntitiesMP оставим все выключенным
(не выберем ничего)
В GameMP включим
только EntitiesMP -
библиотеку.
И, наконец, в GameGUIMP мы оставим
включенной только GameMP –
библиотеку.
Сейчас нам нужно удалить ненужные файлы из компиляции и добавить
в список необходимые пути. Для этого нажимаем Project\Settings. После выбираем закладку Custom Build (она находится далеко справа). В Commands Box удалим две нижние линии, содержащие
lib и map файлы.
Теперь выбираем Tools\Options в меню. Выбираем закладку Directories. В Show directories for выбираем тип Executable files и добавляем один путь в список:
C:\SDK\Bin
Меняем Show
directories for на тип Include files и добавляем следующие пути в список:
C:\SDK\Bin
C:\SDK\Sources
Еще раз меняем, но уже Show
directories for на Library files
и добавляем следующие пути в список:
C:\MyMod\Bin
C:\MyMod\Bin\Debug
Это еще не все. Теперь можно выбрать Build\Set active configuration, но компилировать еще
пока рановато, нам нужно добавить в C:\SDK\Sources\Engine\Graphics
недостающие файлы от dxsdk, без которых
отказывается компилировать нам библиотеки Visual C++. Добавить их и прописать в файлы ViewPort.h и GfxLibrary.h
в строчке #include <d3d8.h>
Для этого извлекаем из архива dxsdk все файлы, создаем в пути C:\SDK\Sources\Engine\Graphics папку Include и бросаем файлы туда.
Открываем header – файлы ViewPort и GfxLibrary. В том и этом документе строчку
#include <d3d8.h>
заменяем на
#include <Engine/Graphics/Include/d3d8.h>
Вот теперь жмем на кнопку F7 в Visual C++. Произойдет
компиляция и программа сообщит вам, где взять скомпилированные библиотеки (по
умолчанию, в папке Bin папки Sources).
После любых сделанных изменений теперь можно включать
компиляцию библиотек в соответствии с их директориями. Знайте, что Visual C++ лишний раз может и не
заметить ваше изменение других файлов при включенной с помощью Set Active Configuration нужной
библиотеке. Например, если вы работали с GameMP – исходниками, а активной
библиотекой являлась EntitiesMP,
то программа снова начнет компиляцию активной библиотеки (если компиляция
только что была произведена, то не будет делать ее снова), или же просто
напишет, например: EntitiesMP.dll - 0
error(s), 0 warning(s).
То есть, в соответствии с названием папки исходников
выбирайте нужную конфигурацию.
Вот и закончилась наша статья о настройке SDK. Думаю, весь процесс не покажется
вам таким уж очень сложным. Нужно просто иметь свободное время.
Если после настройки SDK по моей статье, SDK не
настроился, обращайтесь ко мне с вопросами, я все поясню. Удачных вам модов!
|