如何在Windows中从源代码构建和运行Doom 3?


9

我正在尝试从开源版本构建并运行Doom 3,以便更好地了解引擎的工作原理。不幸的是,我无法使用自己构建的二进制文件运行游戏。我只是获得控制台,但无法运行实际的游戏。

这是我所做的:

  1. 从游戏库下载了源代码
  2. 下载并安装DirectX SDK
  3. 从Steam购买,下载并安装Doom 3
  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,但是还有其他区别吗?

我的主要问题是:如何从源头上运行它?

Answers:


8

配置名称中的“专用”是指游戏专用的多人服务器。它专门用于服务器运营商,并运行一个空的多人服务器,该服务器仅用于接收来自其他客户端的连接。

你不要那样 运行以“调试”或“发布”而不是“专用”开头的配置。


是的 就是这样 不使用专用时会出现编译时错误,但这只是音频存储量的输出。刚注释掉,现在它可以正常工作。谢谢
cloudraven 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.