Giter Club home page Giter Club logo

dhewm3's Introduction

ABOUT

dhewm 3 is a Doom 3 GPL source port, known to work on at least Windows, Linux, macOS and FreeBSD.

The goal of dhewm 3 is bring DOOM 3 with the help of SDL to all suitable platforms.

Bugs present in the original DOOM 3 will be fixed (when identified) without altering the original gameplay.

The official homepage is: https://dhewm3.org

Mods supported by dhewm3: https://dhewm3.org/mods.html

Mod SDK for dhewm3: https://github.com/dhewm/dhewm3-sdk

The project is hosted at: https://github.com/dhewm

Download the latest release: https://github.com/dhewm/dhewm3/releases/latest

Consult the FAQ at: https://github.com/dhewm/dhewm3/wiki/FAQ

Report bugs here: https://github.com/dhewm/dhewm3/issues

CHANGES

Compared to the original DOOM 3, the changes of dhewm 3 worth mentioning are:

  • 64-bit port
  • SDL for low-level OS support, OpenGL and input handling
  • OpenAL for audio output, all OS-specific audio backends are gone
  • OpenAL EFX for EAX reverb effects (read: EAX-like sound effects on all platforms/hardware)
  • Gamepad support
  • Better support for widescreen (and arbitrary display resolutions)
  • A portable build system based on CMake
  • (Cross-)compilation with MinGW-w64

See Changelog.md for a more complete changelog.

GENERAL NOTES

Game data and patching

This source release does not contain any game data, the game data is still covered by the original EULA and must be obeyed as usual.

You must patch the game to the latest version (1.3.1). See the FAQ for details, including how to get the game data from Steam on Linux or OSX.

Note that the original Doom 3 and Doom 3: Resurrection of Evil (together with DOOM 3: BFG Edition, which is not supported by dhewm3) are available from the Steam Store at

https://store.steampowered.com/app/208200/DOOM_3/

See https://dhewm3.org/#how-to-install for game data installation instructions.

Configuration

See Configuration.md for dhewm3-specific configuration, especially for using gamepads.

Compiling

The build system is based on CMake: http://cmake.org/

Required libraries are not part of the tree. These are:

  • zlib
  • OpenAL (OpenAL Soft required, Creative's and Apple's versions are made of fail)
  • SDL v1.2 or 2.0 (2.0 recommended)
  • libcurl (optional, required for server downloads)
  • Optionally, on non-Windows: libbacktrace (usually linked statically)
    • sometimes (e.g. on debian-based distros like Ubuntu) it's part of libgcc (=> always available), sometimes (e.g. Arch Linux, openSUSE) it's in a separate package
    • If this is available, dhewm3 prints more useful backtraces if it crashes

For UNIX-like systems, these libraries need to be installed (including the developer files). It is recommended to use the software management tools of your OS (apt, dnf, portage, BSD ports, Homebrew for macOS, ...).

For Windows, there are three options:

  • Use the provided binaries (recommended, see below)
  • Compile these libraries yourself
  • Use vcpkg to install the dependencies

Create a distinct build folder outside of this source repository and issue the cmake command there, pointing it at the neo/ folder from this repository:

cmake /path/to/repository/neo

macOS users need to point CMake at OpenAL Soft (better solutions welcome):

cmake -DOPENAL_LIBRARY=/usr/local/opt/openal-soft/lib/libopenal.dylib -DOPENAL_INCLUDE_DIR=/usr/local/opt/openal-soft/include /path/to/repository/neo

Newer versions of Homebrew install openal-soft to another directory, so use this instead:

cmake -DOPENAL_LIBRARY="/opt/homebrew/opt/openal-soft/lib/libopenal.dylib" -DOPENAL_INCLUDE_DIR="/opt/homebrew/opt/openal-soft/include" /path/to/repo/neo

Compiling example using Ubuntu

Should be the same for Debian and other Debian-derivatives, but apart from the first step (installing build dependecies) it should be the same on other Linux distros and even other UNIX-likes in general.

Open a terminal and follow these steps:

  • Install build dependencies:
    sudo apt install git cmake build-essential libsdl2-dev libopenal-dev zlib1g-dev libcurl4-openssl-dev
    • The build-essential package on Debian/Ubuntu/... installs some basics for compiling code like GCC (incl. g++), GNU Make and the glibc development package
    • Instead of libcurl4-openssl-dev, other libcurl*-dev packages should also work - or none at all, curl is optional.
    • Not strictly necessary, but I recommend making libbacktrace available. On distributions not based on Debian, you may have to manually install some kind of libbacktrace development package.
  • Use git to get the code from Github (alternatively you can also download the code as an archive and extract that):
    git clone https://github.com/dhewm/dhewm3.git
  • Change into the dhewm3 directory, create a directory to build in and change into the build directory:
    cd dhewm3 then mkdir build then cd build
  • Create a Makefile with CMake: cmake ../neo/
    • You can set different options for CMake with arguments like -DDEDICATED=ON (to enable the dedicated server). You can show a list of supported options by running cmake -LH ../neo/. You can run CMake again with another -DFOO=BAR option to change that option (previously set options are remembered, unless you remove all contents of the build/ dir).
    • You could also install the cmake-qt-gui package and run cmake-gui ../neo/, which will let you configure the build in a GUI instead of using -D commandline-arguments.
  • Compile dhewm3: make -j8
    • -j8 specifies the number of compiler processes to run in parallel (8 in this example), it makes sense to use the number of CPU threads (or cores) in your system.

When all steps are done and no errors occurred, you should be able to run dhewm3 right there, like:
./dhewm3 +set fs_basepath /path/to/your/doom3/
Replace /path/to/your/doom3/ with the path to your Doom3 installation (that contains base/ with pak000.pk4 to pak008.pk4)

Using the provided Windows binaries

Get a clone of the latest binaries here: https://github.com/dhewm/dhewm3-libs

There are two subfolders:

  • 32-bit binaries are located in i686-w64-mingw32
  • 64-bit binaries are located in x86_64-w64-mingw32

Issue the appropriate command from the build folder, for example (for VS2019 and 32bit):

cmake -G "Visual Studio 16 2019" -A Win32 -DDHEWM3LIBS=/path/to/dhewm3-libs/i686-w64-mingw32 /path/to/repository/neo

For 64bit dhewm3 binaries, use -A x64 and /path/to/dhewm3-libs/x86_64-w64-mingw32 instead (note that the official dhewm3 binaries for Windows are 32bit).
For Visual Studio 2022 it's "Visual Studio 17 2022".

For 32bit MinGW use: cmake -G "MinGW Makefiles" -DDHEWM3LIBS=/path/to/dhewm3-libs/i686-w64-mingw32 /path/to/repository/neo

The binaries are compatible with MinGW-w64 and all MSVC versions.

Cross-compiling

For cross-compiling, a CMake Toolchain file is required.

For the MinGW-w64 toolchain i686-w64-mingw32 on Ubuntu 12.04, it looks like:

set(CMAKE_SYSTEM_NAME Windows)
set(CMAKE_SYSTEM_PROCESSOR i686)

set(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
set(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
set(CMAKE_RC_COMPILER i686-w64-mingw32-windres)

set(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

Then point CMake at your toolchain file: cmake -DCMAKE_TOOLCHAIN_FILE=/path/to/Toolchain.cmake -DDHEWM3LIBS=/path/to/dhewm3-libs/i686-w64-mingw32 /path/to/repository/neo

If you want to build for x86_64 aka AMD64 aka x64, replace all instances of i686 in the toolchain file with x86_64.

Back End Rendering of Stencil Shadows

The Doom 3 GPL source code release did not include functionality enabling rendering of stencil shadows via the "depth fail" method, a functionality commonly known as "Carmack's Reverse".
It has been restored in dhewm3 1.5.1 after Creative Labs' patent finally expired.

Note that this did not change the visual appearance of the game, and didn't seem to make a noticeable performance difference (on halfway-recent hardware) either.

MayaImport

The code for our Maya export plugin is included, if you are a Maya licensee you can obtain the SDK from Autodesk.

LICENSE

See COPYING.txt for the GNU GENERAL PUBLIC LICENSE

ADDITIONAL TERMS: The Doom 3 GPL Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU GPL which accompanied the Doom 3 Source Code. If not, please request a copy in writing from id Software at id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.

EXCLUDED CODE: The code described below and contained in the Doom 3 GPL Source Code release is not part of the Program covered by the GPL and is expressly excluded from its terms. You are solely responsible for obtaining from the copyright holder a license for such code and complying with the applicable license terms.

PropTree

neo/tools/common/PropTree/*

Copyright (C) 1998-2001 Scott Ramsay

[email protected]

http://www.gonavi.com

This material is provided "as is", with absolutely no warranty expressed or implied. Any use is at your own risk.

Permission to use or copy this software for any purpose is hereby granted without fee, provided the above notices are retained on all copies. Permission to modify the code and to distribute modified code is granted, provided the above notices are retained, and a notice that the code was modified is included with the above copyright notice.

If you use this code, drop me an email. I'd like to know if you find the code useful.

Base64 implementation

neo/idlib/Base64.cpp

Copyright (c) 1996 Lars Wirzenius. All rights reserved.

June 14 2003: TTimo [email protected]

modified + endian bug fixes

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=197039

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

IO on .zip files using minizip

src/framework/minizip/*

Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )

Modifications of Unzip for Zip64 Copyright (C) 2007-2008 Even Rouault

Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
  2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.

MD4 Message-Digest Algorithm

neo/idlib/hashing/MD4.cpp

Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All rights reserved.

License to copy and use this software is granted provided that it is identified as the "RSA Data Security, Inc. MD4 Message-Digest Algorithm" in all material mentioning or referencing this software or this function.

License is also granted to make and use derivative works provided that such works are identified as "derived from the RSA Data Security, Inc. MD4 Message-Digest Algorithm" in all material mentioning or referencing the derived work.

RSA Data Security, Inc. makes no representations concerning either the merchantability of this software or the suitability of this software for any particular purpose. It is provided "as is" without express or implied warranty of any kind.

These notices must be retained in any copies of any part of this documentation and/or software.

MD5 Message-Digest Algorithm

neo/idlib/hashing/MD5.cpp

This code implements the MD5 message-digest algorithm. The algorithm is due to Ron Rivest. This code was written by Colin Plumb in 1993, no copyright is claimed. This code is in the public domain; do with it what you wish.

CRC32 Checksum

neo/idlib/hashing/CRC32.cpp

Copyright (C) 1995-1998 Mark Adler

stb_image and stb_vorbis

neo/renderer/stb_image.h neo/sound/stb_vorbis.h

Used to decode JPEG and OGG Vorbis files.

from https://github.com/nothings/stb/

Copyright (c) 2017 Sean Barrett

Released under MIT License and Unlicense (Public Domain)

Brandelf utility

neo/sys/linux/setup/brandelf.c

Copyright (c) 1996 Søren Schmidt All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer in this position and unchanged.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. The name of the author may not be used to endorse or promote products derived from this software withough specific prior written permission

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

$FreeBSD: src/usr.bin/brandelf/brandelf.c,v 1.16 2000/07/02 03:34:08 imp Exp $

makeself - Make self-extractable archives on Unix

neo/sys/linux/setup/makeself/*, neo/sys/linux/setup/makeself/README Copyright (c) Stéphane Peter Licensing: GPL v2

dhewm3's People

Contributors

bibendovsky avatar coldtobi avatar danielgibson avatar devnexen avatar dhewg avatar dobosken avatar eezstreet avatar fgsfds avatar gabrielcuvillier avatar icculus avatar kalamatee avatar kevindqc avatar klezstyle avatar leffmann avatar ljbade avatar mnhauke avatar r-a-sattarov avatar raynorpat avatar rohit-n avatar scottwakeling avatar siliconexarch avatar sodomon2 avatar stradex avatar svdijk avatar turol avatar twolife avatar uvesten avatar waldheinz avatar wof8317 avatar yamagi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dhewm3's Issues

Fedora/CentOS/RHEL packages available

Hello,

I'm a package mantainer in Fedora, I've posted a small repo with dhewm3 packages for the supported Fedora's distributions.
Please read the accompanying readme file.

This strive to be most compatible with the Fedora packaging guidelines and might end up with a formal review to be included in Fedora if an open source game using this engine modification will be available.

I'm open to any constructive criticism and willing to mantain them. A nosrc.rpm that can be rebuilt to generate doom3 (main game) and doom3-roe (Resurrection of Evil expansion) packages using your legitimate CD data files is available in the readme file.

Regards,
--Simone

Floating Point Stack Check on Startup

I'm still trying to figure out exactly what's going wrong, but it looks like dhewm3.exe (32 bit Debug build with VS2010) crashes on startup, although only when it's not run from the VS debugger.

The crash is caused by:
Unhandled exception at 0x01681c23 in dhewm3.exe: 0xC0000092: Floating-point stack check.

Call stack looks like this:

dhewm3.exe!idSIMD_MMX::Memset(void * dest0, const int val, const int count0) Line 338 C++
dhewm3.exe!Mem_ClearedAlloc(const int size) Line 1154 C++
dhewm3.exe!zcalloc(unsigned char * opaque, unsigned int items, unsigned int size) Line 4470 + 0xd bytes C++
dhewm3.exe!inflateInit2_(z_stream_s * z, int w, const char * version, int stream_size) Line 4211 + 0x13 bytes C++
dhewm3.exe!unzOpenCurrentFile(void * file) Line 1920 + 0x15 bytes C++
dhewm3.exe!idFileSystemLocal::ReadFileFromZip(pack_t * pak, fileInPack_s * pakFile, const char * relativePath) Line 3119 + 0xc bytes C++
dhewm3.exe!idFileSystemLocal::OpenFileReadFlags(const char * relativePath, int searchFlags, pack_t * * foundInPak, bool allowCopyFiles, const char * gamedir) Line 3326 + 0x17 bytes C++
dhewm3.exe!idFileSystemLocal::OpenFileRead(const char * relativePath, bool allowCopyFiles, const char * gamedir) Line 3384 C++
gamex86.dll!13d1262f()
[Frames below may be incorrect and/or missing, no symbols loaded for gamex86.dll]
gamex86.dll!13d20178()
gamex86.dll!13d4dca4()
gamex86.dll!13d4dc6b()
gamex86.dll!13d1f2ad()
gamex86.dll!13cff7da()
gamex86.dll!13d0934b()
gamex86.dll!13d00116()
ntdll.dll!77a5f8e5()
KernelBase.dll!76a9d348()
msvcr100d.dll!_read_nolock(int fh, void * inputbuf, unsigned int cnt) Line 230 + 0x2e bytes C
msvcr100d.dll!unlock(int locknum) Line 375 C
dhewm3.exe!idBTree<idDynamicBlock,int,4>::AllocNode() Line 376 + 0xb bytes C++
kernel32.dll!753e14dd()
KernelBase.dll!76a9b9f2()
rpcrt4.dll!75538007()
rpcrt4.dll!755d01a0()
rpcrt4.dll!755d0175()
ntdll.dll!77a5fa9a()
msvcrt.dll!7709c7ab()
msvcr100d.dll!unlock(int locknum) Line 375 C
msvcr100d.dll!heap_alloc_dbg_impl(unsigned int nSize, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp) Line 507 + 0x7 bytes C++
msvcr100d.dll!heap_alloc_dbg_impl(unsigned int nSize, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp) Line 504 + 0xc bytes C++
00000004()
dhewm3.exe!idCommonLocal::Printf(const char * fmt, ...) Line 426 C++
dhewm3.exe!idCommonLocal::InitCommands() Line 2357 C++
dhewm3.exe!idCommonLocal::Init(int argc, char * * argv) Line 2816 C++
dhewm3.exe!SDL_main(int argc, char * * argv) Line 551 C++
dhewm3.exe!main(int argc, char * * argv) Line 315 + 0xd bytes C
dhewm3.exe!WinMain(HINSTANCE
* hInst, HINSTANCE
* hPrev, char * szCmdLine, int sw) Line 398 + 0xd bytes C
dhewm3.exe!__tmainCRTStartup() Line 547 + 0x2c bytes C
dhewm3.exe!WinMainCRTStartup() Line 371 C
kernel32.dll!753e339a()
ntdll.dll!77a79ef2()
ntdll.dll!77a79ec5()

Has anyone seen this before?

monsters get stuck on d3xp/x86_64

Maybe someone can figure this out, I haven't so far:

On 64bit d3xp, use the console to:
map game/phobos2
teleport reactor_bridgecontrolpanel

Hit the switch, walk down the 2 stairs and head straight. A monster will spawn in the corner, which will get stuck (ai/pathing/dunno). As will the 3 monsters around that area.

The 32bit version is not affected

Use SDL_WINDOW_FULLSCREEN_DESKTOP in sdl2

Window manager fullscreen is no longer the default, it is back to proper fullscreen. However, "proper" fullscreen has issues with multiple desktops, etc. I suggest we switch it over to use SDL_WINDOW_FULLSCREEN_DESKTOP.

cross-compiling: cmake can't find prebuilt libs when using relative paths

cmake can't find prebuilt libs when using relative paths instead of absolute paths to the folder with libs.

Being in folder build/win32/ with Toolchain.cmake and i686-w64-mingw32/ inside of win32/ and running:

cmake -DCMAKE_TOOLCHAIN_FILE=../win32/Toolchain.cmake -DDHEWM3LIBS=../win32/i686-w64-mingw32 ../../neo

results in error with includes of the libs not being found:

CMake Error at /usr/local/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:97 (MESSAGE):
Could NOT find OpenAL (missing: OPENAL_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/local/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
/usr/local/share/cmake-2.8/Modules/FindOpenAL.cmake:101 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:102 (find_package)

Can someone put tools back ?

Removing tools was completely short-sighted move (there is no surprise why no modders use dhewm3).

Can someone please put wgl / dxinput and tools back into dhewm3 ?

Multisample level incorrect

SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, parms.multiSamples) is incorrect as it expects a level between 0-x linear. Doom stores a value like: 0, 2, 4, 8, 16. The parameter GL_MULTISAMPLESAMPLES takes is 0, 1, 2, 3, 4, etc. Thus, 2x AA is actually giving out 4x, and 4x is actually giving out 16x. And the rest simply do not work.

Driver/me was just being dumb

edit: I may need to use NV_multisample_coverage to get 8x and 16x it seems...or something

Widescreen support

Currently, modification of DoomConfig.cfg is needed to play at a native widescreen resolution.

For example, if I want to play at 1440x900 :

seta r_customHeight "900"
seta r_customWidth "1440"
seta r_mode "-1"

This should be handled automatically by the engine.

Performance drop on second launch

Launched dhewm3 first time, changed resolution (r_mode -1) and did vid_restart on mars_city1 (starting new game basically). Got nice smooth performance.

After exiting the game and restarting it, performance became worse, the game felt jerky and looking at the dropship bogged fps down to ~20fps

On Linux it happens all the time, consistently. Deleting cfg files and helps until resolution is changed and the game is exited and restarted again.

resolution: 1920x1200
quality: ultra
CPU: Phenom X3 2.1 Ghz
RAM: 8Gb DDR2
GPU: GF 8800GT 512Mb VRAM

Can't load a mod folder from the mod menu in Doom 3

I downloaded a few mods without any DLLs. Just a map with textures and scripts/defs. So the readme of this mod/map says to place it into a folder outside of base/ and load it as mod (not idea why, maybe to keep base/ clean and neat). It works just fine in vanilla Doom 3, but dhewm3 says "can't load gamelib" (or something like that and goes crashes into the console). Even if I place base.dll and d3xp.dll into the mod folder it will still fail.

It's the same behavior on Linux and Windows.

shutting down: couldn't load game dynamic library
Shutting down sound hardware
idRenderSystem::Shutdown()
Shutting down OpenGL subsystem
Sys_Error: couldn't load game dynamic library
shutdown terminal support

Flesh out search path code

Note that I'm on Linux so i have a very Linux-centric bias. I'm not familiar with how it works on Windows or Mac OS X, nor any issues potentially specific to them.

As it is currently, dhewm3's search path is rather primitive (as the original Doom 3) behaves. It only uses up to two directories in its mechanism, which is normally $HOME/.doom3 followed by either the current directory (if it contains base or whatever fs_game is set to) or LINUX_DEFAULT_PATH as defined in framework/Licensee.h.

This actually causes a couple of issues to crop up, especially when trying to have dhewm3 installed on a system-wide basis and its own files separated from Doom 3's *.pk4 files. In particular, this has caused issues to appear as I have made packages for Arch Linux's AUR:

  • doom3-data sets up a /usr/share/doom3 directory (consistent with other packages demanding /usr/share/doom, /usr/share/quake, and similar) with base and d3xp sub-directories inside of it, containing *.pk4 files for the base game and Resurrection of Evil. (Note: the users have to supply the non-redistributable Doom 3 files themselves; this package pretty much only automates the download and installation of the 1.3.1 patch data)
  • dhewm3-git simply clones/updates this port's git repostiory and builds it (after patching framework/Licensee.h to define LINUX_DEFAULT_PATH as /usr/share/doom3), and installs both the dhewm3 binary and base game*.so into /usr/lib/dhewm3 and sets up a shell script at /usr/bin/dhewm3 to launch the game; the shell script performs the following:
    1. Sets the LD_LIBRARY_PATH environment variable to /usr/lib/dhewm3 so that it may load game*.so from the proper location
    2. Launches /usr/lib/dhewm3/dhewm3 (plus any command-line parameters passed to the shell script).

Doing things this way, it has the distinct, and rather unpleasant, effect of only being able to run the base game and not Resurrection of Evil. By keeping /usr/share/doom3 free of any architecture-dependent binaries and /usr/lib/dhewm3 free of a base directory so that the game may load, I am essentially locked out of any good way to have a system-wide installation that supports both.

My idealized scenario would support being able to have a /usr/lib/dhewm3 containing both base and d3xp sub-directories with their own game*.so files inside of them, as well as being able to load content from /usr/share/doom3, and then $HOME/.doom3 for user-specific stuff (CD-key, duct-tape mod, etc). It would provide a clean mechanism to have a system-wide package installed, multiple ports would be able to have their own game libraries installed without having to clobber over each other (aka: keeping /usr/share/doom3 clean of any architecture or port-dependent files).

Additionally, the search path should be user-customizable if so desired, via an environment variable. Many source ports for classic Doom support the DOOMWADPATH environment variable, which is a colon-separated list (like PATH) of directories to search for IWADs. a DOOM3PATH or similar might also be implemented as a way to specify a list of directories to search for Doom 3 content.

Weird warnings and random crash on starting new game

So I tried running Doom 3 today on Linux and noticed bunch of weird warnings when starting a new game:

----- Warnings -----
during game/mars_city1...
WARNING: Couldn't load image: lights/bfg_flare
WARNING: Couldn't load image: lights/blamplight_still_cv
WARNING: Couldn't load image: lights/plasmaglow
WARNING: Couldn't load image: lights/round_sin
WARNING: Couldn't load image: lights/square_flicker2
WARNING: Couldn't load image: lights/squarelight1sky
WARNING: Couldn't load image: lights/triangle2
WARNING: Couldn't load image: lights/viewweaponguilight
WARNING: Couldn't load sound 'guisounds.wav' using default
WARNING: file def/weapon_flashlight.def, line 162: Bad term 'bathroomtable'
WARNING: file materials/sfx.mtr, line 216: Bad term 'neontable2'
WARNING: file materials/sfx.mtr, line 2604: Bad term 'bathroom2table'
WARNING: file materials/sfx.mtr, line 2630: Bad term 'bathroom2table'
WARNING: file materials/weapons.mtr, line 1721: Bad term 'bathroomtable'
WARNING: file materials/weapons.mtr, line 1747: Bad term 'bathroomtable'

I bet warning were there before, but the reason I noticed it because dhewm3 crashed this time.

Client language

Thanks first! . ... I have a problem with language in dhemw3. I am editing the dhewm.cfg located into $HOME/.config/dhewm3/base (with object to change seta sys_lang "spanish") but when i start the game i get this error in shell sesion:

http://pastebin.com/BxFeTgsn

I hope solution and once again thanks. (Im running under Linux (ubuntu 11.10) )

SIGSEGV when certain files are missing

Having a default.cfg and a materails/default.mtr
when those two files:
→ script/doom_main.script
→ script/doom_defs.script

are missing dhewm3 will crash with:

Program received signal SIGSEGV, Segmentation fault.
0x00007fffe3102221 in Remove (node=0x3ccd820, this=0x7fffe37801f0)
at /home/kakarott/projects/iodoom3/dhewm3/neo/idlib/containers/BTree.h:231
231 if ( parent->key > parent->lastChild->key ) {

(gdb) print parent->lastChild
$3 = (idBTreeNode<idDynamicBlock, int> *) 0x0

Dhewm3 crashes if mod doesn't have corresponding gamelib

So let's say I have a mod without dll / so and I load it as dhewm3.exe +set fs_game mymod

Dhewm3 will crash unless I copy game.dll into mymod.dll

Doom 3 vanilla copies gamex86.dll automatically if mod folder doesn't have one (or if one is missing from pk4 file). Can dhewm3 do the same?

Linking errors

I'm trying to compile the entire dhewm3 code base after using cmake to prep my compilation with VS10 on my Windows platform. At first, the libraries are OK, but the executable itself is not due to 96 unresolved externals. SDL, JPEG-8, and so on. Here's the build log:

2>jpeg_memory_src.obj : error LNK2019: unresolved external symbol _jpeg_resync_to_restart referenced in function "void __cdecl jpeg_memory_src(struct jpeg_decompress_struct *,unsigned char *,unsigned long)" (?jpeg_memory_src@@YAXPAUjpeg_decompress_struct@@paek@Z)
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_destroy_decompress referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_destroy_decompress
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_finish_decompress referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_finish_decompress
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_read_scanlines referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_read_scanlines
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_start_decompress referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_start_decompress
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_read_header referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_read_header
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_CreateDecompress referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_CreateDecompress
2>Cinematic.obj : error LNK2019: unresolved external symbol _jpeg_std_error referenced in function "int __cdecl JPEGBlit(unsigned char *,unsigned char *,int)" (?JPEGBlit@@YAHPAE0H@Z)
2>Image_files.obj : error LNK2001: unresolved external symbol _jpeg_std_error
2>Common.obj : error LNK2019: unresolved external symbol _SDL_GetTicks referenced in function "unsigned int __cdecl AsyncTimer(unsigned int,void *)" (?AsyncTimer@@YAIIPAX@Z)
2>threads.obj : error LNK2001: unresolved external symbol _SDL_GetTicks
2>Common.obj : error LNK2019: unresolved external symbol _SDL_Quit referenced in function "public: virtual void __thiscall idCommonLocal::Shutdown(void)" (?Shutdown@idCommonLocal@@UAEXXZ)
2>SDL_win32_main.obj : error LNK2001: unresolved external symbol _SDL_Quit
2>Common.obj : error LNK2019: unresolved external symbol _SDL_RemoveTimer referenced in function "public: virtual void __thiscall idCommonLocal::Shutdown(void)" (?Shutdown@idCommonLocal@@UAEXXZ)
2>Common.obj : error LNK2019: unresolved external symbol _SDL_AddTimer referenced in function __catch$?Init@idCommonLocal@@UAEXHPAPAD@Z$0
2>Common.obj : error LNK2019: unresolved external symbol _SDL_Linked_Version referenced in function "public: virtual void __thiscall idCommonLocal::Init(int,char * *)" (?Init@idCommonLocal@@UAEXHPAPAD@Z)
2>Common.obj : error LNK2019: unresolved external symbol _SDL_GetError referenced in function "public: virtual void __thiscall idCommonLocal::Init(int,char * *)" (?Init@idCommonLocal@@UAEXHPAPAD@Z)
2>glimp.obj : error LNK2001: unresolved external symbol _SDL_GetError
2>SDL_win32_main.obj : error LNK2001: unresolved external symbol _SDL_GetError
2>Common.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function "public: virtual void __thiscall idCommonLocal::Init(int,char * *)" (?Init@idCommonLocal@@UAEXHPAPAD@Z)
2>SDL_win32_main.obj : error LNK2001: unresolved external symbol _SDL_Init
2>FileSystem.obj : error LNK2019: unresolved external symbol __imp__curl_easy_perform referenced in function "int __cdecl BackgroundDownloadThread(void *)" (?BackgroundDownloadThread@@YAHPAX@Z)
2>FileSystem.obj : error LNK2019: unresolved external symbol __imp__curl_easy_init referenced in function "int __cdecl BackgroundDownloadThread(void *)" (?BackgroundDownloadThread@@YAHPAX@Z)
2>FileSystem.obj : error LNK2019: unresolved external symbol __imp__curl_easy_setopt referenced in function "int __cdecl BackgroundDownloadThread(void *)" (?BackgroundDownloadThread@@YAHPAX@Z)
2>Unzip.obj : error LNK2019: unresolved external symbol _inflate referenced in function "int __cdecl unzReadCurrentFile(void *,void *,unsigned int)" (?unzReadCurrentFile@@YAHPAX0I@Z)
2>Unzip.obj : error LNK2019: unresolved external symbol _crc32 referenced in function "int __cdecl unzReadCurrentFile(void *,void *,unsigned int)" (?unzReadCurrentFile@@YAHPAX0I@Z)
2>Unzip.obj : error LNK2019: unresolved external symbol _inflateEnd referenced in function "int __cdecl unzCloseCurrentFile(void *)" (?unzCloseCurrentFile@@YAHPAX@Z)
2>Unzip.obj : error LNK2019: unresolved external symbol inflateInit2 referenced in function "int __cdecl unzOpenCurrentFile(void _)" (?unzOpenCurrentFile@@YAHPAX@Z)
2>snd_cache.obj : error LNK2019: unresolved external symbol __imp__alDeleteBuffers referenced in function "public: void __thiscall idSoundSample::PurgeSoundSample(void)" (?PurgeSoundSample@idSoundSample@@QAEXXZ)
2>snd_emitter.obj : error LNK2001: unresolved external symbol __imp__alDeleteBuffers
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alDeleteBuffers
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alGetError
2>snd_cache.obj : error LNK2019: unresolved external symbol __imp__alGetError referenced in function "public: void __thiscall idSoundSample::PurgeSoundSample(void)" (?PurgeSoundSample@idSoundSample@@QAEXXZ)
2>snd_efxfile.obj : error LNK2001: unresolved external symbol __imp__alGetError
2>snd_emitter.obj : error LNK2001: unresolved external symbol __imp__alGetError
2>snd_system.obj : error LNK2001: unresolved external symbol __imp__alGetError
2>snd_cache.obj : error LNK2019: unresolved external symbol __imp__alBufferData referenced in function "public: void __thiscall idSoundSample::MakeDefault(void)" (?MakeDefault@idSoundSample@@QAEXXZ)
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alBufferData
2>snd_cache.obj : error LNK2019: unresolved external symbol __imp__alGenBuffers referenced in function "public: void __thiscall idSoundSample::MakeDefault(void)" (?MakeDefault@idSoundSample@@QAEXXZ)
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alGenBuffers
2>snd_cache.obj : error LNK2019: unresolved external symbol __imp__alIsBuffer referenced in function "public: void __thiscall idSoundSample::Load(void)" (?Load@idSoundSample@@QAEXXZ)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_open_callbacks referenced in function "int __cdecl ov_openFile(class idFile *,struct OggVorbis_File *)" (?ov_openFile@@YAHPAVidFile@@PAUOggVorbis_File@@@z)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_clear referenced in function "private: int __thiscall idWaveFile::OpenOGG(char const *,struct waveformatex_s *)" (?OpenOGG@idWaveFile@@AAEHPBDPAUwaveformatex_s@@@z)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_pcm_total referenced in function "private: int __thiscall idWaveFile::OpenOGG(char const *,struct waveformatex_s *)" (?OpenOGG@idWaveFile@@AAEHPBDPAUwaveformatex_s@@@z)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_info referenced in function "private: int __thiscall idWaveFile::OpenOGG(char const *,struct waveformatex_s *)" (?OpenOGG@idWaveFile@@AAEHPBDPAUwaveformatex_s@@@z)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_read referenced in function "private: int __thiscall idWaveFile::ReadOGG(unsigned char *,int,int *)" (?ReadOGG@idWaveFile@@AAEHPAEHPAH@Z)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_read_float referenced in function "public: int __thiscall idSampleDecoderLocal::DecodeOGG(class idSoundSample *,int,int,float *)" (?DecodeOGG@idSampleDecoderLocal@@QAEHPAVidSoundSample@@HHPAM@Z)
2>snd_decoder.obj : error LNK2019: unresolved external symbol _ov_pcm_seek referenced in function "public: int __thiscall idSampleDecoderLocal::DecodeOGG(class idSoundSample *,int,int,float *)" (?DecodeOGG@idSampleDecoderLocal@@QAEHPAVidSoundSample@@HHPAM@Z)
2>snd_emitter.obj : error LNK2019: unresolved external symbol __imp__alSourcei referenced in function "public: void __thiscall idSoundChannel::ALStop(void)" (?ALStop@idSoundChannel@@QAEXXZ)
2>snd_system.obj : error LNK2001: unresolved external symbol __imp__alSourcei
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alSourcei
2>snd_emitter.obj : error LNK2019: unresolved external symbol __imp__alSourceStop referenced in function "public: void __thiscall idSoundChannel::ALStop(void)" (?ALStop@idSoundChannel@@QAEXXZ)
2>snd_system.obj : error LNK2001: unresolved external symbol __imp__alSourceStop
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alSourceStop
2>snd_emitter.obj : error LNK2019: unresolved external symbol __imp__alIsSource referenced in function "public: void __thiscall idSoundChannel::ALStop(void)" (?ALStop@idSoundChannel@@QAEXXZ)
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alIsSource
2>snd_emitter.obj : error LNK2019: unresolved external symbol __imp__alGetSourcei referenced in function "public: void __thiscall idSoundEmitterLocal::CheckForCompletion(int)" (?CheckForCompletion@idSoundEmitterLocal@@qaexh@Z)
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alGetSourcei
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcProcessContext referenced in function "public: virtual int __thiscall idSoundSystemLocal::AsyncUpdate(int)" (?AsyncUpdate@idSoundSystemLocal@@UAEHH@Z)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcSuspendContext referenced in function "public: virtual int __thiscall idSoundSystemLocal::AsyncUpdate(int)" (?AsyncUpdate@idSoundSystemLocal@@UAEHH@Z)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alGenSources referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alSourcef referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_world.obj : error LNK2001: unresolved external symbol __imp__alSourcef
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alGetProcAddress referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alGetString referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcMakeContextCurrent referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcCreateContext referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcOpenDevice referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcGetString referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcIsExtensionPresent referenced in function "public: virtual void __thiscall idSoundSystemLocal::Init(void)" (?Init@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcCloseDevice referenced in function "public: virtual void __thiscall idSoundSystemLocal::Shutdown(void)" (?Shutdown@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alcDestroyContext referenced in function "public: virtual void __thiscall idSoundSystemLocal::Shutdown(void)" (?Shutdown@idSoundSystemLocal@@UAEXXZ)
2>snd_system.obj : error LNK2019: unresolved external symbol __imp__alDeleteSources referenced in function "public: virtual void __thiscall idSoundSystemLocal::Shutdown(void)" (?Shutdown@idSoundSystemLocal@@UAEXXZ)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alSourcePlay referenced in function "public: void __thiscall idSoundWorldLocal::AddChannelContribution(class idSoundEmitterLocal *,class idSoundChannel *,int,int,float *)" (?AddChannelContribution@idSoundWorldLocal@@QAEXPAVidSoundEmitterLocal@@PAVidSoundChannel@@HHPAM@Z)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alSourceQueueBuffers referenced in function "public: void __thiscall idSoundWorldLocal::AddChannelContribution(class idSoundEmitterLocal *,class idSoundChannel *,int,int,float *)" (?AddChannelContribution@idSoundWorldLocal@@QAEXPAVidSoundEmitterLocal@@PAVidSoundChannel@@HHPAM@Z)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alSourceUnqueueBuffers referenced in function "public: void __thiscall idSoundWorldLocal::AddChannelContribution(class idSoundEmitterLocal *,class idSoundChannel *,int,int,float *)" (?AddChannelContribution@idSoundWorldLocal@@QAEXPAVidSoundEmitterLocal@@PAVidSoundChannel@@HHPAM@Z)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alSource3i referenced in function "public: void __thiscall idSoundWorldLocal::AddChannelContribution(class idSoundEmitterLocal *,class idSoundChannel *,int,int,float *)" (?AddChannelContribution@idSoundWorldLocal@@QAEXPAVidSoundEmitterLocal@@PAVidSoundChannel@@HHPAM@Z)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alSource3f referenced in function "public: void __thiscall idSoundWorldLocal::AddChannelContribution(class idSoundEmitterLocal *,class idSoundChannel *,int,int,float *)" (?AddChannelContribution@idSoundWorldLocal@@QAEXPAVidSoundEmitterLocal@@PAVidSoundChannel@@HHPAM@Z)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alListenerfv referenced in function "public: void __thiscall idSoundWorldLocal::MixLoop(int,int,float *)" (?MixLoop@idSoundWorldLocal@@QAEXHHPAM@Z)
2>snd_world.obj : error LNK2019: unresolved external symbol __imp__alListenerf referenced in function "public: void __thiscall idSoundWorldLocal::MixLoop(int,int,float *)" (?MixLoop@idSoundWorldLocal@@QAEXHHPAM@Z)
2>cpu.obj : error LNK2019: unresolved external symbol _SDL_HasAltiVec referenced in function "int __cdecl Sys_GetProcessorId(void)" (?Sys_GetProcessorId@@yahxz)
2>cpu.obj : error LNK2019: unresolved external symbol _SDL_HasSSE2 referenced in function "int __cdecl Sys_GetProcessorId(void)" (?Sys_GetProcessorId@@yahxz)
2>cpu.obj : error LNK2019: unresolved external symbol _SDL_HasSSE referenced in function "int __cdecl Sys_GetProcessorId(void)" (?Sys_GetProcessorId@@yahxz)
2>cpu.obj : error LNK2019: unresolved external symbol _SDL_Has3DNow referenced in function "int __cdecl Sys_GetProcessorId(void)" (?Sys_GetProcessorId@@yahxz)
2>cpu.obj : error LNK2019: unresolved external symbol _SDL_HasMMX referenced in function "int __cdecl Sys_GetProcessorId(void)" (?Sys_GetProcessorId@@yahxz)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_Delay referenced in function "void __cdecl Sys_Sleep(int)" (?Sys_Sleep@@Yaxh@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_CreateCond referenced in function "void __cdecl Sys_InitThreads(void)" (?Sys_InitThreads@@yaxxz)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_CreateMutex referenced in function "void __cdecl Sys_InitThreads(void)" (?Sys_InitThreads@@yaxxz)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_DestroyMutex referenced in function "void __cdecl Sys_ShutdownThreads(void)" (?Sys_ShutdownThreads@@yaxxz)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_DestroyCond referenced in function "void __cdecl Sys_ShutdownThreads(void)" (?Sys_ShutdownThreads@@yaxxz)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_KillThread referenced in function "void __cdecl Sys_ShutdownThreads(void)" (?Sys_ShutdownThreads@@yaxxz)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_mutexP referenced in function "void __cdecl Sys_EnterCriticalSection(int)" (?Sys_EnterCriticalSection@@Yaxh@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_mutexV referenced in function "void __cdecl Sys_LeaveCriticalSection(int)" (?Sys_LeaveCriticalSection@@Yaxh@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_CondWait referenced in function "void __cdecl Sys_WaitForEvent(int)" (?Sys_WaitForEvent@@Yaxh@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_CondSignal referenced in function "void __cdecl Sys_TriggerEvent(int)" (?Sys_TriggerEvent@@Yaxh@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_GetThreadID referenced in function "void __cdecl Sys_CreateThread(int (_cdecl)(void _),void *,struct xthreadInfo &,char const *)" (?Sys_CreateThread@@YAXP6AHPAX@Z0AAUxthreadInfo@@pbd@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_CreateThread referenced in function "void __cdecl Sys_CreateThread(int (_cdecl)(void *),void *,struct xthreadInfo &,char const *)" (?Sys_CreateThread@@YAXP6AHPAX@Z0AAUxthreadInfo@@pbd@Z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_WaitThread referenced in function "void __cdecl Sys_DestroyThread(struct xthreadInfo &)" (?Sys_DestroyThread@@YAXAAUxthreadInfo@@@z)
2>threads.obj : error LNK2019: unresolved external symbol _SDL_ThreadID referenced in function "char const * __cdecl Sys_GetThreadName(int *)" (?Sys_GetThreadName@@YAPBDPAH@Z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_SetVideoMode referenced in function "bool __cdecl GLimp_Init(struct glimpParms_t)" (?GLimp_Init@@YA_NUglimpParms_t@@@z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_WM_SetCaption referenced in function "bool __cdecl GLimp_Init(struct glimpParms_t)" (?GLimp_Init@@YA_NUglimpParms_t@@@z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_GL_SetAttribute referenced in function "bool __cdecl GLimp_Init(struct glimpParms_t)" (?GLimp_Init@@YA_NUglimpParms_t@@@z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_WasInit referenced in function "bool __cdecl GLimp_Init(struct glimpParms_t)" (?GLimp_Init@@YA_NUglimpParms_t@@@z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_GL_SwapBuffers referenced in function "void __cdecl GLimp_SwapBuffers(void)" (?GLimp_SwapBuffers@@yaxxz)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_SetGammaRamp referenced in function "void __cdecl GLimp_SetGamma(unsigned short * const,unsigned short * const,unsigned short * const)" (?GLimp_SetGamma@@YAXQAG00@Z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_GL_GetProcAddress referenced in function _GLimp_ExtensionPointer
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_WM_GrabInput referenced in function "void __cdecl GLimp_GrabInput(int)" (?GLimp_GrabInput@@Yaxh@Z)
2>glimp.obj : error LNK2019: unresolved external symbol _SDL_ShowCursor referenced in function "void __cdecl GLimp_GrabInput(int)" (?GLimp_GrabInput@@Yaxh@Z)
2>events.obj : error LNK2019: unresolved external symbol _SDL_PushEvent referenced in function "void __cdecl PushConsoleEvent(char const *)" (?PushConsoleEvent@@YAXPBD@Z)
2>events.obj : error LNK2019: unresolved external symbol _SDL_PumpEvents referenced in function "void __cdecl Sys_GenerateEvents(void)" (?Sys_GenerateEvents@@yaxxz)
2>events.obj : error LNK2019: unresolved external symbol _SDL_EnableKeyRepeat referenced in function "void __cdecl Sys_InitInput(void)" (?Sys_InitInput@@yaxxz)
2>events.obj : error LNK2019: unresolved external symbol _SDL_EnableUNICODE referenced in function "void __cdecl Sys_InitInput(void)" (?Sys_InitInput@@yaxxz)
2>events.obj : error LNK2019: unresolved external symbol _SDL_PollEvent referenced in function "struct sysEvent_t __cdecl Sys_GetEvent(void)" (?Sys_GetEvent@@ya?AUsysEvent_t@@xz)
2>SDL_win32_main.obj : error LNK2019: unresolved external symbol _SDL_strlcat referenced in function _redirect_output
2>SDL_win32_main.obj : error LNK2019: unresolved external symbol _SDL_strlcpy referenced in function _redirect_output
2>SDL_win32_main.obj : error LNK2019: unresolved external symbol _SDL_SetModuleHandle referenced in function _main
2>SDL_win32_main.obj : error LNK2019: unresolved external symbol _SDL_getenv referenced in function _WinMain@16
2>C:\Doom\Release\dhewm3.exe : fatal error LNK1120: 96 unresolved externals

Numerous multiplayer problems

Tested multiplayer more. A guy who played with me got an error upon connecting:

assertioin failed
authEmitTimeout > 0

Hitting "Abort" shuts down dhewm3, hitting "Retry" crashes it, Hitting
"Ignore" closes the window and continues the game.

I have never gotten such message, but this is a second person who did.

Another issue with connecting to server with RoE. Dhewm3 connects fine to a server that hosts Base game, but when connecting to RoE, it give "Client unknown to auth".

Dedicated server, 64bit Windows.

r_aspectRatio -1 crashes the engine when trying to connect to a server

Was trying to test multiplayer again yesterday, and got this:

assertion fail!
Game_local.cpp
Line 2767
Expression ( fov_x > 0 ) && ( fov_y > 0)

Windows 7 Pro 64bit (I recall the other guy had Linux)

setting r_aspectRatio to any other available value solves the crash, but doesn't solve having autodetection of aspect ratio working.

How to disable universal build when using cmake Xcode generator?

When generating an Xcode project using cmake -G Xcode ../neo I end up with a project that cannot be built (cannot be linked, to be specific). The problem is that the resulting project is trying to create a universal binary while the dependent libraries on my system (Ogg/Vorbis/etc) are single architecture binaries (x86_64).

I only want Xcode to build for my target architecture. How can I disable the universal building? I haven't had any luck using CMAKE_OSX_ARCHITECTURES.

(Note that I'm able to build just fine from the command line. E.g., not using the Xcode generator.)

Building x64 version with MinGW-w64

I am trying to build x64 version of Doom 3 on Windows but cmake seems to insist on building the x86 version. Are there any command line options I can use to force the x86_64 build?

A lot of warnings upon OpenAL init

Any idea what's that all about? (using pre-SDL2 git repo)

----- Initializing OpenAL ------
Setup OpenAL device and context
ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib audio/pcm_bluetooth.c:1614:(audioservice_expect) BT_GET_CAPABILITIES failed : Input/output error(5)
ALSA lib audio/pcm_bluetooth.c:1614:(audioservice_expect) BT_GET_CAPABILITIES failed : Input/output error(5)
ALSA lib audio/pcm_bluetooth.c:1614:(audioservice_expect) BT_GET_CAPABILITIES failed : Input/output error(5)
ALSA lib audio/pcm_bluetooth.c:1614:(audioservice_expect) BT_GET_CAPABILITIES failed : Input/output error(5)
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started
OpenAL: found device 'PulseAudio Default'
OpenAL: found device 'Built-in Audio Analog Stereo via PulseAudio'
OpenAL: found device 'ALSA Default'
OpenAL: found device 'HDA NVidia ALC888 Analog via ALSA'
OpenAL: found device 'HDA NVidia ALC888 Digital via ALSA'
OpenAL: found device 'HDA NVidia HDMI 0 via ALSA'
OpenAL: found device 'PortAudio Default'
OpenAL: found device 'No Output'
OpenAL vendor: OpenAL Community
OpenAL renderer: OpenAL Soft
OpenAL version: 1.1 ALSOFT 1.13
OpenAL: found EFX extension
OpenAL: found 256 hardware voices

Win64 build (MSVC 2010 Pro compiled or cross-compiled) isn't working

Tried all kind of ways to build Win64 bit today and yesterday, using MSVC 2010 Pro and cross-compiling on Linux. Dhewm3 crashes upon launch. Win32 builds work fine.

Note that my branch, which is simply dhewm3 pre-SDL2 with couple of reverts actually runs, doesn't crash, but produces black screen. Neither sound nor graphics work, but input works.

Fedora 17 - portable getifaddrs() on *nix broken

Hello,

first of all thank you very much for taking care of mantaining this great game engine.

I mantain my own private rpm for dhewm3 to be run on multiple RHEL 6 and Fedora 17 machines in my gaming room where do we play lan games. I have a problem with a commit on Fedora boxes.

2d69979

Braks Fedora 17 binaries, while RHEL (or CentOS) ones work perfectly fine. The src.rpm is the same, I spent a few days trying everything with different compilers and gcc options but I tracked down everything to that single commit. Reverting it makes the Fedora 17 build work fine.

Without reverting it, this is the only output I got when starting the engine in Fedora:

$ dhewm3
dhewm 1.3.1.1304 linux-x86_64 Jul 16 2012 13:56:49
terminal support enabled ( use +set in_tty 0 to disabled )
pid: 28210
3824 MB System Memory
Segmentation fault
$

Win 32/64 Dedicated server fails to compile and cross-compile

I am failing to compile dedicated binary on both Linux and Windows. Here is what I get on Windows:

//========================================================================
g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(33): error C2491: 'alGetError' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(37): error C2491: 'alIsSource' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(41): error C2491: 'alGenBuffers' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(43): error C2491: 'alSourceStop' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(45): error C2491: 'alGetSourcei' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(47): error C2491: 'alSource3i' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(50): error C2491: 'alGetString' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(54): error C2491: 'alGetInteger' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(56): error C2491: 'alcSuspendContext' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(58): error C2491: 'alcOpenDevice' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(62): error C2491: 'alcIsExtensionPresent' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(66): error C2491: 'alDeleteBuffers' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(68): error C2491: 'alIsExtensionPresent' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(76): error C2491: 'alBufferData' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(78): error C2491: 'alcMakeContextCurrent' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(82): error C2491: 'alcProcessContext' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(86): error C2491: 'alcDestroyContext' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(90): error C2491: 'alcGetString' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(98): error C2491: 'alBufferData' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(100): error C2491: 'alDeleteBuffers' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(102): error C2491: 'alIsExtensionPresent' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(106): error C2491: 'alDeleteSources' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(108): error C2491: 'alGetEnumValue' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(112): error C2491: 'alGetProcAddress' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(117): error C2491: 'alcCreateContext' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(121): error C2491: 'alcOpenDevice' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(125): error C2491: 'alListenerfv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(127): error C2491: 'alSourceQueueBuffers' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(129): error C2491: 'alSourcei' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(131): error C2491: 'alListenerf' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(133): error C2491: 'alcCloseDevice' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(135): error C2491: 'alIsBuffer' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(140): error C2491: 'alSource3f' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(142): error C2491: 'alGenSources' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(144): error C2491: 'alSourcef' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(146): error C2491: 'alSourceUnqueueBuffers' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\openal_stub.cpp(148): error C2491: 'alSourcePlay' : definition of dllimport function not allowed
4> stub_gl.cpp
3> threads.cpp
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(32): error C2373: 'glAccum' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1152) : see declaration of 'glAccum'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(32): error C2491: 'glAccum' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(33): error C2373: 'glAlphaFunc' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1153) : see declaration of 'glAlphaFunc'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(33): error C2491: 'glAlphaFunc' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(34): error C2373: 'glAreTexturesResident' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1154) : see declaration of 'glAreTexturesResident'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(34): error C2491: 'glAreTexturesResident' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(35): error C2373: 'glArrayElement' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1155) : see declaration of 'glArrayElement'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(35): error C2491: 'glArrayElement' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(36): error C2373: 'glBegin' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1156) : see declaration of 'glBegin'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(36): error C2491: 'glBegin' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(37): error C2373: 'glBindTexture' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1157) : see declaration of 'glBindTexture'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(37): error C2491: 'glBindTexture' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(38): error C2373: 'glBitmap' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1158) : see declaration of 'glBitmap'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(38): error C2491: 'glBitmap' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(39): error C2373: 'glBlendFunc' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1159) : see declaration of 'glBlendFunc'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(39): error C2491: 'glBlendFunc' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(40): error C2373: 'glCallList' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1160) : see declaration of 'glCallList'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(40): error C2491: 'glCallList' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(41): error C2373: 'glCallLists' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1161) : see declaration of 'glCallLists'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(41): error C2491: 'glCallLists' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(42): error C2373: 'glClear' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1162) : see declaration of 'glClear'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(42): error C2491: 'glClear' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(43): error C2373: 'glClearAccum' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1163) : see declaration of 'glClearAccum'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(43): error C2491: 'glClearAccum' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(44): error C2373: 'glClearColor' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1164) : see declaration of 'glClearColor'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(44): error C2491: 'glClearColor' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(45): error C2373: 'glClearDepth' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1165) : see declaration of 'glClearDepth'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(45): error C2491: 'glClearDepth' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(46): error C2373: 'glClearIndex' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1166) : see declaration of 'glClearIndex'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(46): error C2491: 'glClearIndex' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(47): error C2373: 'glClearStencil' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1167) : see declaration of 'glClearStencil'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(47): error C2491: 'glClearStencil' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(48): error C2373: 'glClipPlane' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1168) : see declaration of 'glClipPlane'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(48): error C2491: 'glClipPlane' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(49): error C2373: 'glColor3b' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1169) : see declaration of 'glColor3b'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(49): error C2491: 'glColor3b' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(50): error C2373: 'glColor3bv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1170) : see declaration of 'glColor3bv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(50): error C2491: 'glColor3bv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(51): error C2373: 'glColor3d' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1171) : see declaration of 'glColor3d'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(51): error C2491: 'glColor3d' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(52): error C2373: 'glColor3dv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1172) : see declaration of 'glColor3dv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(52): error C2491: 'glColor3dv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(53): error C2373: 'glColor3f' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1173) : see declaration of 'glColor3f'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(53): error C2491: 'glColor3f' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(54): error C2373: 'glColor3fv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1174) : see declaration of 'glColor3fv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(54): error C2491: 'glColor3fv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(55): error C2373: 'glColor3i' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1175) : see declaration of 'glColor3i'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(55): error C2491: 'glColor3i' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(56): error C2373: 'glColor3iv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1176) : see declaration of 'glColor3iv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(56): error C2491: 'glColor3iv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(57): error C2373: 'glColor3s' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1177) : see declaration of 'glColor3s'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(57): error C2491: 'glColor3s' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(58): error C2373: 'glColor3sv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1178) : see declaration of 'glColor3sv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(58): error C2491: 'glColor3sv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(59): error C2373: 'glColor3ub' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1179) : see declaration of 'glColor3ub'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(59): error C2491: 'glColor3ub' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(60): error C2373: 'glColor3ubv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1180) : see declaration of 'glColor3ubv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(60): error C2491: 'glColor3ubv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(61): error C2373: 'glColor3ui' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1181) : see declaration of 'glColor3ui'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(61): error C2491: 'glColor3ui' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(62): error C2373: 'glColor3uiv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1182) : see declaration of 'glColor3uiv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(62): error C2491: 'glColor3uiv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(63): error C2373: 'glColor3us' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1183) : see declaration of 'glColor3us'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(63): error C2491: 'glColor3us' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(64): error C2373: 'glColor3usv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1184) : see declaration of 'glColor3usv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(64): error C2491: 'glColor3usv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(65): error C2373: 'glColor4b' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1185) : see declaration of 'glColor4b'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(65): error C2491: 'glColor4b' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(66): error C2373: 'glColor4bv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1186) : see declaration of 'glColor4bv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(66): error C2491: 'glColor4bv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(67): error C2373: 'glColor4d' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1187) : see declaration of 'glColor4d'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(67): error C2491: 'glColor4d' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(68): error C2373: 'glColor4dv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1188) : see declaration of 'glColor4dv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(68): error C2491: 'glColor4dv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(69): error C2373: 'glColor4f' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1189) : see declaration of 'glColor4f'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(69): error C2491: 'glColor4f' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(70): error C2373: 'glColor4fv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1190) : see declaration of 'glColor4fv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(70): error C2491: 'glColor4fv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(71): error C2373: 'glColor4i' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1191) : see declaration of 'glColor4i'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(71): error C2491: 'glColor4i' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(72): error C2373: 'glColor4iv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1192) : see declaration of 'glColor4iv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(72): error C2491: 'glColor4iv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(73): error C2373: 'glColor4s' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1193) : see declaration of 'glColor4s'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(73): error C2491: 'glColor4s' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(74): error C2373: 'glColor4sv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1194) : see declaration of 'glColor4sv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(74): error C2491: 'glColor4sv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(75): error C2373: 'glColor4ub' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1195) : see declaration of 'glColor4ub'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(75): error C2491: 'glColor4ub' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(76): error C2373: 'glColor4ubv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1196) : see declaration of 'glColor4ubv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(76): error C2491: 'glColor4ubv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(77): error C2373: 'glColor4ui' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1197) : see declaration of 'glColor4ui'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(77): error C2491: 'glColor4ui' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(78): error C2373: 'glColor4uiv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1198) : see declaration of 'glColor4uiv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(78): error C2491: 'glColor4uiv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(79): error C2373: 'glColor4us' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1199) : see declaration of 'glColor4us'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(79): error C2491: 'glColor4us' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(80): error C2373: 'glColor4usv' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1200) : see declaration of 'glColor4usv'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(80): error C2491: 'glColor4usv' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(81): error C2373: 'glColorMask' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1201) : see declaration of 'glColorMask'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(81): error C2491: 'glColorMask' : definition of dllimport function not allowed
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(82): error C2373: 'glColorMaterial' : redefinition; different type modifiers
4> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\GL/gl.h(1202) : see declaration of 'glColorMaterial'
4>g:\games\steelstorm2_idtech4_svn\neo\sys\stub\stub_gl.cpp(82): fatal error C1003: error count exceeds 100; stopping compilation
4> util_stub.cpp
//========================================================================

Linux errors are there same:

//========================================================================
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:33:27: error: function ‘ALenum alGetError()’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALenum alGetError()’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:33:27: warning: ‘ALenum alGetError()’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:37:30: error: function ‘ALboolean alIsSource(ALuint)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALboolean alIsSource(ALuint)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:37:30: warning: ‘ALboolean alIsSource(ALuint)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:41:25: error: function ‘void alGenBuffers(ALsizei, ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alGenBuffers(ALsizei, ALuint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:41:25: warning: ‘void alGenBuffers(ALsizei, ALuint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:43:25: error: function ‘void alSourceStop(ALuint)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSourceStop(ALuint)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:43:25: warning: ‘void alSourceStop(ALuint)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:45:25: error: function ‘void alGetSourcei(ALuint, ALenum, ALint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alGetSourcei(ALuint, ALenum, ALint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:45:25: warning: ‘void alGetSourcei(ALuint, ALenum, ALint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:47:25: error: function ‘void alSource3i(ALuint, ALenum, ALint, ALint, ALint)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSource3i(ALuint, ALenum, ALint, ALint, ALint)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:47:25: warning: ‘void alSource3i(ALuint, ALenum, ALint, ALint, ALint)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:50:34: error: function ‘const ALchar* alGetString(ALenum)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘const ALchar* alGetString(ALenum)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:50:34: warning: ‘const ALchar* alGetString(ALenum)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:54:26: error: function ‘ALint alGetInteger(ALenum)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALint alGetInteger(ALenum)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:54:26: warning: ‘ALint alGetInteger(ALenum)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:56:27: error: function ‘void alcSuspendContext(ALCcontext_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alcSuspendContext(ALCcontext_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:56:27: warning: ‘void alcSuspendContext(ALCcontext_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:58:34: error: function ‘ALCdevice_ alcOpenDevice(const ALchar_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCdevice_ alcOpenDevice(const ALchar_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:58:34: warning: ‘ALCdevice_ alcOpenDevice(const ALchar_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:62:33: error: function ‘ALCboolean alcIsExtensionPresent(ALCdevice_, const ALCchar_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCboolean alcIsExtensionPresent(ALCdevice_, const ALCchar_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:62:33: warning: ‘ALCboolean alcIsExtensionPresent(ALCdevice_, const ALCchar_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:66:25: error: function ‘void alDeleteBuffers(ALsizei, const ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alDeleteBuffers(ALsizei, const ALuint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:66:25: warning: ‘void alDeleteBuffers(ALsizei, const ALuint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:68:30: error: function ‘ALboolean alIsExtensionPresent(const ALchar_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALboolean alIsExtensionPresent(const ALchar_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:68:30: warning: ‘ALboolean alIsExtensionPresent(const ALchar_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:72:25: error: function ‘void alBufferData(ALuint, ALenum, const ALvoid_, ALsizei, ALsizei)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alBufferData(ALuint, ALenum, const ALvoid_, ALsizei, ALsizei)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:72:25: warning: ‘void alBufferData(ALuint, ALenum, const ALvoid_, ALsizei, ALsizei)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:78:33: error: function ‘ALCboolean alcMakeContextCurrent(ALCcontext_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCboolean alcMakeContextCurrent(ALCcontext_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:78:33: warning: ‘ALCboolean alcMakeContextCurrent(ALCcontext_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:82:30: error: function ‘ALCvoid alcProcessContext(ALCcontext_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCvoid alcProcessContext(ALCcontext_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:82:30: warning: ‘ALCvoid alcProcessContext(ALCcontext_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:86:30: error: function ‘ALCvoid alcDestroyContext(ALCcontext_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCvoid alcDestroyContext(ALCcontext_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:86:30: warning: ‘ALCvoid alcDestroyContext(ALCcontext_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:90:38: error: function ‘const ALCchar_ alcGetString(ALCdevice_, ALCenum)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘const ALCchar_ alcGetString(ALCdevice_, ALCenum)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:90:38: warning: ‘const ALCchar_ alcGetString(ALCdevice_, ALCenum)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:94:25: error: function ‘void alBufferData(ALuint, ALenum, ALvoid_, ALsizei, ALsizei)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:100:25: error: function ‘void alDeleteBuffers(ALsizei, ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:102:30: error: function ‘ALboolean alIsExtensionPresent(ALubyte_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:106:25: error: function ‘void alDeleteSources(ALsizei, const ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alDeleteSources(ALsizei, const ALuint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:106:25: warning: ‘void alDeleteSources(ALsizei, const ALuint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:108:27: error: function ‘ALenum alGetEnumValue(const ALchar_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALenum alGetEnumValue(const ALchar_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:108:27: warning: ‘ALenum alGetEnumValue(const ALchar_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:112:26: error: function ‘void* alGetProcAddress(const ALchar_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void_ alGetProcAddress(const ALchar_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:112:26: warning: ‘void_ alGetProcAddress(const ALchar_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:116:35: error: function ‘ALCcontext_ alcCreateContext(ALCdevice_, const ALCint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCcontext* alcCreateContext(ALCdevice_, const ALCint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:116:35: warning: ‘ALCcontext* alcCreateContext(ALCdevice_, const ALCint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:121:34: error: function ‘ALCdevice* alcOpenDevice(ALubyte_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:125:25: error: function ‘void alListenerfv(ALenum, const ALfloat_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alListenerfv(ALenum, const ALfloat_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:125:25: warning: ‘void alListenerfv(ALenum, const ALfloat_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:127:25: error: function ‘void alSourceQueueBuffers(ALuint, ALsizei, const ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSourceQueueBuffers(ALuint, ALsizei, const ALuint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:127:25: warning: ‘void alSourceQueueBuffers(ALuint, ALsizei, const ALuint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:129:25: error: function ‘void alSourcei(ALuint, ALenum, ALint)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSourcei(ALuint, ALenum, ALint)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:129:25: warning: ‘void alSourcei(ALuint, ALenum, ALint)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:131:25: error: function ‘void alListenerf(ALenum, ALfloat)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alListenerf(ALenum, ALfloat)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:131:25: warning: ‘void alListenerf(ALenum, ALfloat)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:133:33: error: function ‘ALCboolean alcCloseDevice(ALCdevice_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALCboolean alcCloseDevice(ALCdevice_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:133:33: warning: ‘ALCboolean alcCloseDevice(ALCdevice_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:135:30: error: function ‘ALboolean alIsBuffer(ALuint)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘ALboolean alIsBuffer(ALuint)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:135:30: warning: ‘ALboolean alIsBuffer(ALuint)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:139:25: error: function ‘void alSource3f(ALuint, ALenum, ALfloat, ALfloat, ALfloat)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSource3f(ALuint, ALenum, ALfloat, ALfloat, ALfloat)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:139:25: warning: ‘void alSource3f(ALuint, ALenum, ALfloat, ALfloat, ALfloat)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:142:25: error: function ‘void alGenSources(ALsizei, ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alGenSources(ALsizei, ALuint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:142:25: warning: ‘void alGenSources(ALsizei, ALuint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:144:25: error: function ‘void alSourcef(ALuint, ALenum, ALfloat)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSourcef(ALuint, ALenum, ALfloat)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:144:25: warning: ‘void alSourcef(ALuint, ALenum, ALfloat)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:146:25: error: function ‘void alSourceUnqueueBuffers(ALuint, ALsizei, ALuint_)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSourceUnqueueBuffers(ALuint, ALsizei, ALuint_)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:146:25: warning: ‘void alSourceUnqueueBuffers(ALuint, ALsizei, ALuint_)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: At global scope:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:148:25: error: function ‘void alSourcePlay(ALuint)’ definition is marked dllimport
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp: In function ‘void alSourcePlay(ALuint)’:
/home/motorsep/games/doom3_dhew3_git/neo/sys/stub/openal_stub.cpp:148:25: warning: ‘void alSourcePlay(ALuint)’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
make[2]: *** [CMakeFiles/dhewm3ded.dir/sys/stub/openal_stub.cpp.obj] Error 1
make[2]: *** Waiting for unfinished jobs....
//========================================================================

All that when compiling on Win 7 with MSVC 2010 Pro and cross-compiling on Linux.

FullscreenFX_EnviroSuit in RoE does not render properly

When getting the EnviroSuit in RoE there seems to be a problem with the associated fullscreen effect and the game window shrinks to a small box in the lower left corner of the screen. Commenting out the code in FullscreenFX_EnviroSuit::HighQuality() at least makes the game playable at this point but doesn't provide the effect as it should.

To easily test this the console command "g_testFullscreenFX 2" can be used. All the other fullscreen fx types seem to work as intended.

Running on OpenBSD/amd64 with Intel HD4000 and Mesa 7.11.2.

shot00001

reloadEngine crashes into game's console

I've had this issue with Steel Storm 2, but I figured it's due to lack of content. However, I did reloadEngine with Doom 3, and instead of unloading maps and loading main menu, dhewm3 simply crashed into the console. I don't see any specific warnings or errors.

runAAS segfaults

running AAS generation on a map segfaults right before AAS file is saved:

100 %
1029345 splits
[Portalize BSP]
2058691 nodes
2058691 nodes portalized
[Remove Outside]
Segmentation fault (core dumped)

Here is gdb output:

Program received signal SIGSEGV, Segmentation fault.
0x00000000005cad81 in idBrushBSP::FloodThroughPortals_r (this=0x7fffffffd0d0,
node=0x159b7b50, contents=1, depth=130943)
at /home/user/neo/tools/compilers/aas/BrushBSP.cpp:1414
1414 void idBrushBSP::FloodThroughPortals_r( idBrushBSPNode *node, int contents, int depth ) {

segfault while loading saved game with current Dhewm3 git

Savegame created with earlier version of Dhewm3 can't be loaded with current revision Dhewm3 and crashes the game:

--------- Game Map Shutdown ----------
FATAL: recursed fatal error:
idRestoreGame::ReadObject: invalid object index
idHeap::Msize: invalid memory block
shutdown terminal support
Segmentation fault (core dumped)

some scripted animations don't play out correctly

Whem monsters are supposed to make a appearance in a specific way, they bodies tend to be stiff and flail around in a single location until the animation is over. This is apparent in cases such as the first imp encounter, or in Resurrection of Evil, the first vulgar encounter.
On Arch Linux x86_64

Multi-core support ??

Does Doom 3 have multi-core support which isn't enabled and exposed via r_smp cvar? If so, maybe there is a chance to enable that thing? :)

Chinese Windows 7 encoding subsitutions

Hi,

Windows version: Windows 7 Home Basic (Only comes in Chinese language, as bought in that region).
Visual Studio version: 2010 Express.

This Windows uses the GB2312 / Chinese Simplified encoding. The result is that when Visual Studio loads neo/sys/win_input.cpp I get the following text:

File Load

Some bytes have been replaced with the Unicode substitution character while loading file
...\neo\sys\win32\win_input.cpp with
Chinese Simplified (GM2312) encoding. Saving the file will not preserve
the original file contents.

All problematic characters that appear like so in the diff:

...', '', '...

Get changed to this:

...', '?,'...

Which results in this:

1>------ Build started: Project: ZERO_CHECK, Configuration: Debug Win32 ------
2>------ Build started: Project: dhewm3, Configuration: Debug Win32 ------
2> win_input.cpp
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2018: unknown character '0x60'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2143: syntax error : missing '}' before 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2143: syntax error : missing ';' before 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2059: syntax error : 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(119): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(131): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(131): error C2017: illegal escape sequence
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(131): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(132): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(132): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(132): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(136): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(147): error C2143: syntax error : missing ';' before '}'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(147): error C2059: syntax error : '}'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(153): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(153): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(154): error C2143: syntax error : missing '}' before 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(154): error C2143: syntax error : missing ';' before 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(154): error C2059: syntax error : 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(156): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(157): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(169): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(169): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(169): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(169): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(170): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(170): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(173): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(174): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(185): error C2143: syntax error : missing ';' before '}'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(185): error C2059: syntax error : '}'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(191): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(191): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(192): error C2143: syntax error : missing '}' before 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(192): error C2143: syntax error : missing ';' before 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(192): error C2059: syntax error : 'constant'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(193): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(193): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(193): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(193): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(193): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(194): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(195): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(195): error C2017: illegal escape sequence
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(195): error C2017: illegal escape sequence
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(195): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(207): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(207): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(207): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(207): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(210): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(210): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(210): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(210): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(210): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(211): error C2001: newline in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(212): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(212): error C2015: too many characters in constant
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(225): error C2143: syntax error : missing ';' before '}'
2>D:\VCS\GIT\doom3\dhewm3\neo\sys\win32\win_input.cpp(225): error C2059: syntax error : '}'
========== Build: 1 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========

Replacing '?, with '?' allows all projects to compile successfully.

Can these characters be made friendly to this encoding (and any others they may be problematic for)?

Failing to generate solution for x64 build

That never happened before (I cloned current git repo).

G:\games\dhewm3_vanilla\build\win64>cmake -G "Visual Studio 10 Win64" -DDHEWM3LI
BS=g:/games/dhewm3_build/x86_64-w64-mingw32 g:/games/dhewm3_vanilla/neo
-- Found Windows SDK v7.1: C:\Program Files\Microsoft SDKs\Windows\v7.1
CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindPack
ageHandleStandardArgs.cmake:97 (MESSAGE):
Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
Call Stack (most recent call first):
C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindPackageHandleStan
dardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindZLIB.cmake:85 (FI
ND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:81 (find_package)

-- Configuring incomplete, errors occurred!

Dhewm3 unexpected crash

.../neo/sound/snd_decoder.cpp:525: int idSampleDecoderLocal::DecodeOGG(idSoundSample_, int, int, float_): Assertion `false' failed.
Aborted (core dumped)

It happened after first level was loaded and I was hitting Esc to skip intro.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.