Doom 3 engine release and game code

Discuss programming topics for any language, any source base. If it is programming related but doesn't fit in one of the below categories, it goes here.
Post Reply
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: Doom 3 engine release and game code

Post by revelator »

darkradiant ofc :)

hmm plenty possibilities QT which resembles MFC but can handle more complex operations and is availiable on both win32 and linux, gtk also works on windows but its a bit more painfull to use.
personally id prefer tools in QT but thats just me.

Hmm the game dll seems to have some problems building "unable to load default.cfg" i tried moving it into a subfolder named base with the built doom3.exe but still fails so something is acting up.
Productivity is a state of mind.
Jok3r098
Posts: 3
Joined: Fri Nov 25, 2011 5:10 pm

Re: Doom 3 engine release and game code

Post by Jok3r098 »

You need to set the basepath so where your baspeath is as default it uses the working directory.

Code: Select all

+set fs_basepath "C:\Program Files (x86)\Steam\steamapps\common\doom 3"
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Doom 3 engine release and game code

Post by mh »

Hmm, well I've recreated the Reverse using two-sided stencil and it works perfectly, but I'm thinking that treading carefully is a better option. I'm certain that if there was an alternate way that could do it in one pass, and that didn't have patent heebeegeebies attached, JC would have included it in the released code. The two pass alternative (assuming you use two-sided stencil; 4-pass if not) only kicks in when the viewpoint is inside a shadow volume, so it's not really that big a deal to begin with.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
New Horizon
Posts: 6
Joined: Sat Nov 26, 2011 3:24 am

Re: Doom 3 engine release and game code

Post by New Horizon »

reckless wrote:darkradiant ofc :)
Hi, I'm one of the team members associated with The Dark Mod for Doom 3. Our upcoming Dark Radiant update is even closer to reaching feature parity with D3Edit. The new release will have animation previews, particle editing...and I'm sure a lot more. :) It's tailored for Darkmod editing but it also works with D3 and Quake 4. Should work with Prey as well. Now that the source code is released, hopefully we can achieve some tighter integration.
r00k
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Doom 3 engine release and game code

Post by r00k »

mh wrote:Hmm, well I've recreated the Reverse using two-sided stencil and it works perfectly, but I'm thinking that treading carefully is a better option.
Can this be done with a shadowmap and still side-step the patent lurkers, and still look better?
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: Doom 3 engine release and game code

Post by Spike »

shadow mapping has no patents that I am aware of.
Jok3r098
Posts: 3
Joined: Fri Nov 25, 2011 5:10 pm

Re: Doom 3 engine release and game code

Post by Jok3r098 »

Does the engine have a built in light baking system or is it all stencil shadows.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: Doom 3 engine release and game code

Post by revelator »

Hi, I'm one of the team members associated with The Dark Mod for Doom 3. Our upcoming Dark Radiant update is even closer to reaching feature parity with D3Edit. The new release will have animation previews, particle editing...and I'm sure a lot more. It's tailored for Darkmod editing but it also works with D3 and Quake 4. Should work with Prey as well. Now that the source code is released, hopefully we can achieve some tighter integration.
Great :)
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: Doom 3 engine release and game code

Post by revelator »

Hmm comes to mind several z-fail methods existed in the old tenebrae2 source (one for each card type if i remember correctly) we might end up making the code faster than it was to start with :)

ofc plenty new stuff that might work better.
Productivity is a state of mind.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Doom 3 engine release and game code

Post by mh »

Interestingly, the Reverse patent is probably unenforcable in the EU. Anybody fancy being a test case? ;)

http://en.wikipedia.org/wiki/Software_p ... Convention
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: Doom 3 engine release and game code

Post by revelator »

well im in the EU ;) so if you like sure :)
Productivity is a state of mind.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Doom 3 engine release and game code

Post by mh »

A possible other alternative exists. This is fully depth-pass for both cases and seems to work in my (admittedly limited) testing so far.

Code: Select all

		if (external)
		{
			glDepthFunc (GL_LEQUAL);

			// view outside the shadow volume
			GL_TwoSidedStencil (backEnd.viewDef->isMirror ? GL_FRONT : GL_BACK, GL_KEEP, GL_KEEP, tr.stencilIncr);
			GL_TwoSidedStencil (backEnd.viewDef->isMirror ? GL_BACK : GL_FRONT, GL_KEEP, GL_KEEP, tr.stencilDecr);

			RB_DrawShadowElementsWithCounters (tri, numIndexes);
		}
		else
		{
			glDepthFunc (GL_GEQUAL);

			// view inside the shadow volume
			GL_TwoSidedStencil (backEnd.viewDef->isMirror ? GL_FRONT : GL_BACK, GL_KEEP, GL_KEEP, tr.stencilDecr);
			GL_TwoSidedStencil (backEnd.viewDef->isMirror ? GL_BACK : GL_FRONT, GL_KEEP, GL_KEEP, tr.stencilIncr);

			RB_DrawShadowElementsWithCounters (tri, numIndexes);
		}
"GL_TwoSidedStencil" just selects the appropriate two-sided stencil algorithm to use (EXT, ATI or core GL 2.0); on GL 2.0 or better hardware you'd just replace it with a call to glStencilOpSeparate.

If this does turn out to be a robust replacement that doesn't violate the patent, it just shows even more clearly how utterly nuts the patent was to begin with.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: Doom 3 engine release and game code

Post by revelator »

gonna try it out :) ill report back.
Productivity is a state of mind.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Doom 3 engine release and game code

Post by mh »

Just re-read the Creative patent; it seems as though this kind of depth-test inversion was what the patent specifically referred to, so it's not safe to use. It does mean that their claim with reference to the Doom 3 method (zfail) seems to be on somewhat shakier grounds though.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
raynorpat
Posts: 27
Joined: Tue Feb 26, 2008 12:21 am
Location: USA
Contact:

Re: Doom 3 engine release and game code

Post by raynorpat »

Working on a GLSL backend:

Image

btw, has anyone checked out draw_exp.cpp? :)
Post Reply