It is possible to get original Doom3 with shader system from D3BFG?

Started by bitterman, October 20, 2015, 12:32:48 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


What if I need only glsl instead arb 1.0?

The code for both projects is available, but I don't understand the amount of changes required.

I believe that a simple replacement of the files is not limited.

With BFG I learned a lot about swf, binarization and other advanced things but didn't create any new content.

Dream bogged down in technical details.


Yes, it's impressive. Thanks, nbohr1more.

As I understand the main idea: the calls of the ARB (red marker) replaced with the appropriate calls GLSL (green marker), right?

What mod was used for this project?

Can I freely use this project for third party mods?

And do I need to compile it with MBCS (multybyte character set)?


Yes, Pat Raynor completely replaced the ARB shaders and their render path with GLSL here.
The project is mostly Pat's own work with some references obtained by reviewing BFG source.

Yes, it's GPL, you may use this with mods. To my knowledge DLL mod loading should still work here (unlike Dhewm3).

I don't see any MBCS requirement? Is that required for Vanilla Doom 3 too?


Not sure if that's applicable here. As I recall Raynorpat was the one who ported vanilla Doom 3 editing tools to RBDoom3BFG and MFC removal was part of his work there.



(General Notes at Github)

"We expect the solution file is compatible with the Express releases"

No MFC, No Problem.


Sure, no MFC - no tools.

MSVC 2013 and MSVC 2015 come with MFC.


Quote from: nbohr1more on October 22, 2015, 01:54:58 PM
"We expect the solution file is compatible with the Express releases"

It's from original disclaimer. Original D3 can be compiled without MFC and MFC-tools (like editor, editGUIs, editAFs).

I tried to compile this one with MSVC2013CE5 + MBCS.

This package haven't any .sln. Then I merged it (not sure about this) with original doom3.gpl-TTimo and now get errors:

1. ...glext.h ... Line 1361: can't evaluate '__STDC_VERSION__', not defined

2. MSB3073: The command "...Debug/TypeInfo.exe: VCEnd" exited with code -1.

See picture below.

I found this:

But still don't understood how to fix it.



I think this code is uncomplete. Perhaps it's a part of private project.
Anyway, author don't answers to me.

nbohr1more, did you manage to get working code (D3 GLSL)?

How to compile the files from the SDK?
Wasn't there an .sln file?


QuoteTo create a project from existing code files

    On the File menu, click New, and then click Project From Existing Code.

    The Create New Project from Existing Code Files wizard opens.

    Use the wizard to specify the details of the existing code files that will be added to the project and the application that will be created when you build the project.

Ok, now I get error in curl_GUSIConfig.cpp from neo\curl\src\macos\src:

Quote#include <GUSIConfig.h>

QuoteFile GUSIConfig.h not found

Why MSVC try to compile this code (it's for MAC OS)?
How to disable this?


As I think we should not combine the code with vanilla Doom3 code. Stupid idea :)

I did some unsuccessful experiments with autogenerated .sln (MSVC->File->New->Project From Existed Code).

In addition to problems with dependencies and build order there are difficulties with the compilation of rudimentary code, MFC options etc.

The author doesn't respond, furthermore it is not clear whether the code completed.


idLib compiled fine.

CurlLib - many typical errors (sys/time.h etc).

It's possible to replaced it with a newer?


#include "../../framework/sync/Msg.h"

There is no framework/sync!

// jmarshall <-- fix for legacy stuff
#define msg_t idBitMsg
#define MSG_ReadShort( x ) x->ReadShort()
#define MSG_ReadString( x, r, y ) x->ReadString(r, y)

#include "../../game/game_local.h"

//#include "../../framework/sync/Msg.h"

Has anyone info about bmgame and jmarshall?

Vanilla code scares me :)


QuoteMostly builds on Mac OS X with Xcode...

... best bet is to manually merge in the changes to a clean copy of
the doom source.


Sorry bitterman. I've been tied up with my Dark Mod duties but I will say this falls outside my area of expertise.
I would suggest pinging raynorpat at github to see if he has any advice on your compiling issues.