id Tech Forums

id Tech 4 (Doom3/Prey/Q4) => id Tech 4 Engine Coding => Topic started by: bitterman on October 20, 2015, 12:32:48 AM

Title: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 20, 2015, 12:32:48 AM
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.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: nbohr1more on October 20, 2015, 08:12:18 PM
Sure, compile this one:

https://github.com/raynorpat/Doom3
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 20, 2015, 11:15:57 PM
Yes, it's impressive. Thanks, nbohr1more.

https://github.com/raynorpat/Doom3/commit/71ba367fcc58336237669bbbf8b6c267a6f219a3 (https://github.com/raynorpat/Doom3/commit/71ba367fcc58336237669bbbf8b6c267a6f219a3)

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)?
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: nbohr1more on October 21, 2015, 11:12:44 AM
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?
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 21, 2015, 06:36:26 PM
In vanilla Doom3 we have deal with MFC.
This is my story:

http://idtechforums.fuzzylogicinc.com/index.php?topic=284.msg2755#msg2755 (http://idtechforums.fuzzylogicinc.com/index.php?topic=284.msg2755#msg2755)
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: nbohr1more on October 22, 2015, 01:53:17 PM
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.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: nbohr1more on October 22, 2015, 01:54:58 PM
Yep:

(General Notes at Github)

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

No MFC, No Problem.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: motorsep on October 22, 2015, 02:44:27 PM
Sure, no MFC - no tools.

MSVC 2013 and MSVC 2015 come with MFC.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 22, 2015, 09:53:19 PM
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:

Quote
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:

https://msdn.microsoft.com/en-us/library/b0084kay%28v=vs.120%29.aspx (https://msdn.microsoft.com/en-us/library/b0084kay%28v=vs.120%29.aspx)

But still don't understood how to fix it.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: motorsep on October 23, 2015, 09:07:24 AM
About that: http://stackoverflow.com/questions/4991707/how-to-find-my-current-compilers-standard-like-if-it-is-c90-etc
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 27, 2015, 01:28:23 AM
motorsep

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.


https://msdn.microsoft.com/en-us/library/754c3hy7.aspx (https://msdn.microsoft.com/en-us/library/754c3hy7.aspx)

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?
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 30, 2015, 11:35:00 PM
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.

Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on October 31, 2015, 10:06:08 AM
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"


https://bmgame.googlecode.com/svn/tools/debugger/DebuggerApp.h (https://bmgame.googlecode.com/svn/tools/debugger/DebuggerApp.h)

Has anyone info about bmgame and jmarshall?

Vanilla code scares me :)
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on November 01, 2015, 09:07:09 PM
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.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: nbohr1more on November 02, 2015, 05:19:49 PM
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.
Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: bitterman on November 02, 2015, 09:08:23 PM
nbohr1more, don't worry, thanks to this I learned a lot of new information about the structure and compilation of the original doom3 source code.

The message above is from author. I think he's right about best bet. Modified code looks working.

Title: Re: It is possible to get original Doom3 with shader system from D3BFG?
Post by: revelator on February 11, 2016, 01:27:44 AM
Looks like raynor is still working on it :) no project solution or cmake yet, but its getting there.