Как я могу собрать и запустить Doom 3 из исходного кода в Windows?

9

Я пытаюсь собрать и запустить Doom 3 из релиза с открытым исходным кодом, чтобы лучше понять, как работает движок. К сожалению, я не могу запустить игру из двоичного файла, который я создал. Я просто получаю консоль, но не могу запустить саму игру.

Вот что я сделал:

  1. Скачал исходный код из репозитория игры
  2. Скачал и установил DirectX SDK
  3. Купил, скачал и установил Doom 3 от Steam
  4. Откройте решение в новой папке, используя VS2010 SP1
  5. Построил проект
  6. Побежал

Решение Doom по умолчанию в настройках отладки устанавливает в командной строке ссылку на путь установки Steam Doom3 по умолчанию. Это аргументы командной строки по умолчанию, используемые для запуска проекта из vstudio.

+ установить fs_basepath "C: \ Program Files (x86) \ Steam \ steamapps \ common \ doom 3" + установить com_allowConsole 1 + установить si_pure 0

Это привело к открытию консоли со следующим журналом:

DOOM 1.3.1.1304 win-x86 Jan 23 2012 00:50:27
1596 MHz Intel CPU with MMX & SSE & SSE2 & SSE3 & HTT
8176 MB System Memory
0 MB Video Memory
Winsock Initialized
Found interface: {A3B0D223-3776-4D39-B7AD-9053DDB2E8D5} Broadcom NetLink (TM) Gigabit Ethernet - 0.0.0.0 NULL netmask - skipped
Found interface: {8FBA30BE-8F70-40B5-8C79-C32E8E1E74B8} Bluetooth Device (Personal Area Network) - 0.0.0.0 NULL netmask - skipped
Found interface: {80300E42-A240-45A3-97C5-261C0ED3B93B} Intel(R) WiFi Link 5300 AGN - 192.168.1.111/255.255.255.0
Sys_InitNetworking: adding loopback interface
doom using MMX & SSE & SSE2 & SSE3 for SIMD processing
enabled Flush-To-Zero mode
enabled Denormals-Are-Zero mode
------ Initializing File System ------
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game00.pk4 with checksum 0x29cdb978
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game01.pk4 with checksum 0x51c6981f
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game02.pk4 with checksum 0xf3ec6f7
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game03.pk4 with checksum 0x5d4230ea
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak000.pk4 with checksum 0x28d208f1
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak001.pk4 with checksum 0x40244be0
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak002.pk4 with checksum 0xc51ecdcd
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak003.pk4 with checksum 0xcd79d028
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak004.pk4 with checksum 0x765e4f8b
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak005.pk4 with checksum 0x8ffc3621
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak006.pk4 with checksum 0x95b65ab
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak007.pk4 with checksum 0x666bdb3c
Loaded pk4 C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak008.pk4 with checksum 0x23ae5993
Current search path:
C:\Program Files (x86)\Steam\steamapps\common\doom 3/base
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak008.pk4 (3 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak007.pk4 (38 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak006.pk4 (48 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak005.pk4 (63 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak004.pk4 (5137 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak003.pk4 (4676 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak002.pk4 (6120 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak001.pk4 (8972 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\pak000.pk4 (2698 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game03.pk4 (2 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game02.pk4 (2 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game01.pk4 (2 files)
C:\Program Files (x86)\Steam\steamapps\common\doom 3\base\game00.pk4 (2 files)
game DLL: 0x0 in pak: 0x0
Addon pk4s:
file system initialized.
--------------------------------------
----- Initializing Decls -----
------------------------------
------- Initializing renderSystem --------
using ARB renderSystem
renderSystem initialized.
--------------------------------------
5206 strings read from strings/english.lang
Couldn't open journal files
execing editor.cfg
execing default.cfg
execing DoomConfig.cfg
couldn't exec autoexec.cfg
5206 strings read from strings/english.lang
----- Initializing Sound System ------
sound system initialized.
--------------------------------------
game using MMX & SSE & SSE2 & SSE3 for SIMD processing
enabled Flush-To-Zero mode
enabled Denormals-Are-Zero mode
--------- Initializing Game ----------
gamename: baseDOOM-1
gamedate: Jan 23 2012
Initializing event system
...473 event definitions
Initializing class hierarchy
...142 classes, 191092 bytes for event callbacks
Initializing scripts
Compiled 'weapon_pistol::Raise': 3091.7 ms
---------- Compile stats ----------

Memory usage:
     Strings: 79, 9648 bytes
  Statements: 67875, 1357500 bytes
   Functions: 2109, 250532 bytes
   Variables: 147376 bytes
    Mem used: 2476344 bytes
 Static data: 2277552 bytes
   Allocated: 3281600 bytes
 Thread size: 7068 bytes

...6 aas types
game initialized.
--------------------------------------
-------- Initializing Session --------
WARNING: idChoiceWindow::InitVars: gui 'guis/mainmenu.gui' window 'SNDBPrimary' references undefined cvar 's_driver'
session initialized
--------------------------------------
--- Common Initialization Complete ---
------------- Warnings ---------------
during DOOM 3 initialization...
WARNING: idChoiceWindow::InitVars: gui 'guis/mainmenu.gui' window 'SNDBPrimary' references undefined cvar 's_driver'
1 warnings

Type 'help' for dedicated server info.

Я не знаю, является ли предупреждение, которое я получаю, проблемой или есть что-то еще. Кроме того, это когда используемая конфигурация "Выделенная версия", но я также пытался с "Выделенной отладкой". Насколько я понимаю, «выделенные» версии не используют OpenAL, но есть ли другое отличие?

Мой главный вопрос: как просто заставить это работать из источника?

cloudraven
источник

Ответы:

8

«Выделенный» в названии конфигурации относится к выделенному многопользовательскому серверу игры. Он предназначен исключительно для операторов и использует пустой многопользовательский сервер, который существует исключительно для приема соединений от других клиентов.

Вы этого не хотите. Запустите конфигурацию, которая начинается с «Отладка» или «Выпуск» вместо «Выделенный».

Neverender
источник
Yeap. Это было это. Произошла ошибка во время компиляции, когда не использовался выделенный, но это был всего лишь printf об объеме аудиопамяти. Только что прокомментировал и теперь работает отлично. Спасибо
облачный ворон