News:

One Minute Game Review by The Happy Friar: https://ugetube.com/@OneMinteGameReviews
Also on Rumble: https://rumble.com/c/c-1115371

idTech 4 (aka Doom 3 tech) Discord Server! https://discord.gg/9wtCGHa

Main Menu

RBDOOM-3-BFG 1.0.2 with soft shadowing

Started by trebor, May 19, 2014, 01:13:36 PM

Previous topic - Next topic

0 Members and 6 Guests are viewing this topic.

trebor

#15
I already implemented HDR and physically based shading on an experimental feature branch but it doesn't add any value to the default game.

Some sort of HBAO or other SSAO would be easy to implement although time consuming to get it right. Same goes for SSR. It's usually a performance killer.
A bigger problem with physically based shading is that it does not look spectacular with Doom 3 unless you start adding environment probes that capture the scene at level start or in regular updates.
You won't achieve the cool metallic look like in UE4 without those probes and this technique usually works best with static lighting and static scenes.
You need screen space reflections for all dynamic objects on top of that and it results in a lot visual errors.

But I like it to see the effect in the new Wolfenstein.

Both Epic and Crytek have no realtime GI solution for other light types than sun lights, afaik. It is very difficult and time consuming to implement so no option for me without being paid for it.

I've read a lot papers about PBR and it is more or less marketing buzz. If you have a look at the implementation of UE4 or The Order: 1886 ... people can correct me if I'm wrong but it is not physically based e.g. UE4 uses the Disney approach:
use magic constants in your formulars until the artists say OK!!

One of the reasons I added shadow mapping to id Tech 4 was that I was really disappointed by the UE4 performance and ... because I can.

I'm one of the first 100 UE4 subscribers since it is open for everyone and I wanted to see a performance comparison with a similar render image quality but entirely different render technology.
The tools are great and a lot better than the UDK tools and Epic removed almost everything I had to criticize about the UDK but UE4 is super slow if you consider that it is only lightmaps most of the time and super unstable. :(
I'm still evaluating UE4 wether it makes more sense to continue with that engine.

I talked to former id employees and they think that at least id Tech 4 or 4.5 (BFG) is a dead end. :(

I'm altogether very disappointed with the D3 GPL situation. It is almost 2.5 years since the D3 GPL release and there were almost no projects to talk about.
Even worse is that there is no collaboration between D3 modding veterans on Github and all other people only do minor engine tweaks and experiments but nothing that is really interesting for any gamer.

If you look at UE4 then you see quite the opposite with a really big community and they have done like 2800 commits in the past 2 months.


Zombie

Yeah it is a bit unforunate about the Doom 3 GPL situation, I'm no programmer or serious modder, mostly a content guy.

But I can probably say that all the work you've done so far is awesome and I really enjoyed playing through most of D3 with your engine.

In terms of features I think artistically what I'd love to see is some sort of AO solution and at least Prey like Gloss control and I'd be pretty happy to keep using D3 as a nice little place to make content.

I'm involved-ish right now with getting a UT map out with UE4, but making levels for D3 is a little easier.

Sir Blackington

I don't se why ssao would be of major importance in d3 as long as you keep the ambient light low and non shadow casting lights to a minimum then u shouldnt really need any type of ambient occlusion, am I right? I don't think tessalation is a huge must either. A robust LOD system can do a very good job. When it comes to PBR, I've been trying to get my head around it and gave up, according to treb it isn't just me so thanks. And as far as gi, have u guys tried out AMD's foward rendering + idea? As I'm sure u know I'm pretty noon at this stuff but they use a tiled approach to cull lights not contributing to specific tiles, anyways, they got bounce lighting in that.

Sir Blackington

#18
Also treb, did those Id guys give specific reasons why they think BFG edition engine is a dead end? It would b interesting to know what they think about it vs idtech 5. Also I never knew that prey had gloss maps, I don't have the game but that sounds pretty cool, ill have to check it out. After I get rbbfg to work, keeps failingvto make at 21%

Bladeghost

#19
The thing with PREY's extra glossy parts is a parameter in the materials.
look at the health basin material and see:

models/mapobjects/healthbasin/healthbasin
{
   noselfshadow
   matter_flesh
   collision
   forceoverlays

   renderbump  -size 1024 1024 -colormap  -aa 0 models/mapobjects/healthbasin/healthbasin_local.tga models/mapobjects/healthbasin/healthbasinhi.lwo
//   -trace 0.05

   qer_editorimage   models/mapobjects/healthbasin/healthbasin_local

   {
      blend diffusemap
      map models/mapobjects/healthbasin/healthbasin
      alphatest 0.5
   }
   bumpmap   addnormals(models/mapobjects/healthbasin/healthbasin_local,
         heightmap(models/mapobjects/healthbasin/healthbasin_h, 6 ) )   
   //specularmap models/mapobjects/healthbasin/healthbasin_s   

   {
      blend specularmap
      map   models/mapobjects/healthbasin/healthbasin_s
      specularexp 170, 5.3
   }
}

seems the specularexp makes the extra shine? maybe? I'm not sure.
it's a neat effect as I'd like to see it in D3

or yet use plastic wrap in photoshop...sometimes yuk :o sometimes not as it does have it's uses in some spots with translucency of course as an overlay. however if you've noticed the health basin is very shiny as an example.

Zombie

Quote from: Sir Blackington on June 05, 2014, 09:14:47 PM
I don't se why ssao would be of major importance in d3 as long as you keep the ambient light low and non shadow casting lights to a minimum then u shouldnt really need any type of ambient occlusion, am I right? I don't think tessalation is a huge must either. A robust LOD system can do a very good job. When it comes to PBR, I've been trying to get my head around it and gave up, according to treb it isn't just me so thanks. And as far as gi, have u guys tried out AMD's foward rendering + idea? As I'm sure u know I'm pretty noon at this stuff but they use a tiled approach to cull lights not contributing to specific tiles, anyways, they got bounce lighting in that.

AO is a must.

Saying keep the ambient low and no shadow casting lights just isn't a realistic way to look at it. We don't all want unrealistic pitch black maps. AO adds so much depth to a scene, I couldn't work with it. Granted I also work with next gen consoles, so I am used to all the bells and whistles.

Tessellation is pretty amazing, not for lod steps, but for gaining more detail from meshes. POM is terrible and has so much artefacts.

Sir Blackington

#21
Ill probably come around on the ao thing once I have near the kind of experience map making that you have, but right now I don't and I still think its possible to pull off sufficiently lit scenes without having to use ao to keep it from looking washed out.

As far as tessalation goes, it is pretty cool and would be a great tool to have, but would you consider it a must for a game to look and run good? Would making higher poly meshes offline and just using a good LOD system to figure out at run time which one to use be sufficient enough for most situations? Or is it impractical to make meshes of that complexity?

Also thanks Zombie and Bladeghost for the well thought of replys, I'm learning a lot over here, uve been applauded

motorsep

It all depends on what you are trying to accomplish. If you are after Crysis 4-like game, or The Division, then yeah, even idTech 5 is a dead end. However, there are a lot more visual styles than photorealism. There are small team and individual indies who won't sell a lot of copies of their games. Doom 3 BFG engine is a perfect fit for those cases. And yeah, idTech 4 is dead indeed.

The age of modding is gone. Doom 3 BFG is the worse engine iD made to the date, quality wise. Full of hack, in many ways incompatible with idTech 4 architecture (not even rendering wise). There are very few skilled people out there to poke at it. I mean, they poke, but that's about it. To make proper fixes, and improvements, this engine requires a lot of man hours and dedication. So it needs either die hard fan like tr3b or paid professional. It seems that tr3b is the only one in this world, and so far I am the only one who throws money at engine fixes/improvements. Thus, sad situation with no projects being developed.

Don't even get me going about collaboration. Look at Unity/UE community and at Doom 3. It's self-explanatory.

argoon

Hello trebor congrats for your engine i love the soft shadows just the ability to support alpha makes me  ;D.

Now i'm trying to import a custom map of mine to it using the suggested mod way, but i'm having some problems, does are:

1 - Not one of my custom .lwo models work i only see black boxes ingame.

2 - Any geometry that i make func_static on DarkRadiant becomes invisible ingame (collision still works)

This on a simple one room map.

I tryed import a more complex map and it didn't work, first because i was using a custom shader and the console complained about it, i deleted it then the error was gone, but the map still don't work, now i got a error saying " bad area model lookup" and i don't know what that means.

By the way is there any way to control the softness of the shadows? I'm asking because on a fence texture the shadows were so soft that i almost could see the fence pattern.     

nbohr1more

I used to be pretty gung-ho about trying to push for an SSAO solution in The Dark Mod but I must admit
that a number of our mappers have become adept at using grime decals to fake AO:




so much so that experimental builds with Sikkmod's SSAO solution added don't do much to enhance the scenes.
Of course it does save some labor for mappers so it's still a worthwhile pursuit but not an urgent one, per se.


Zombie

Quote from: nbohr1more on July 19, 2014, 10:52:06 PM
I used to be pretty gung-ho about trying to push for an SSAO solution in The Dark Mod but I must admit
that a number of our mappers have become adept at using grime decals to fake AO:




so much so that experimental builds with Sikkmod's SSAO solution added don't do much to enhance the scenes.
Of course it does save some labor for mappers so it's still a worthwhile pursuit but not an urgent one, per se.

I remember adding fake AO decals to our interiors in ETQW, after about 1 day id told us to immediately remove them, it was painful for sure to add them.

In the long run though it's probably much easier to just add it to the engine (not sikkmod)

nbohr1more

Oh yeah, I can definitely see the reasons to avoid such manual fixes.

Baking AO into textures (for example) leads to similar visual anomalies as baking standard
lighting in them. You get the tattoo effect in motion. For id \ splash damage at the time of ETQW there was probably
some concern that the lighting model might be enhanced with future updates and baking in any light attribute
would lead to problems with those new implementations.

That said, baked AO doesn't look as bad as baked lighting when mixed with realtime lighting. Just a little strange.
The Witcher series uses this technique and it seems that has lead to our lead artist applying AO to many assets.
(...A decision he may regret if a truly robust unified AO solution gets implemented...) It's still not too dire, the faked AO
sorta looks like dinge or grime accumulation anyway so it satisfies those TDM critics over at TTLG who claimed that
TDM looked too "clean" compared to the Thief series games.

Yeah, not to knock Sikkpin's work but using his SSAO solution is less than ideal currently. There's no way to differentiate
between skybox areas or alpha textures so artifacts are rampant in maps with outdoor scenes. I would love to see this
feature added to our dedicated ambient shader instead.

As for BFG with Glossmap support?

Here's a github fork:

https://github.com/cs121/TECH4-BFG

I don't have BFG so I can't comment on the results...

raynorpat

Hey tr3b,

any reason why you haven't ported over dmap and the aas compilers?




btw, shadows look really slick, an excellent job sir.

trebor

Quote from: raynorpat on July 28, 2014, 02:41:58 AM
Hey tr3b,

any reason why you haven't ported over dmap and the aas compilers?

btw, shadows look really slick, an excellent job sir.

Hey Pat, haven't seen you for a long time :)

The primary goal of the RBDOOM-3-BFG project was to create a solid code base for gamers that could be ported to any platform. The id Tech 4.x architecture is nice and our new code could also serve a GPL id Tech 5 crossplatform port.

I ported the BFG renderer to D3, made some enhancements like the shadow mapping and merged that stuff back to RBDOOM-3-BFG.
I haven't put any time into porting the old D3 tools. However you are welcome to create a pull request on GitHub.

Zombie

Quote from: trebor on July 29, 2014, 05:19:52 AM
Quote from: raynorpat on July 28, 2014, 02:41:58 AM
Hey tr3b,

any reason why you haven't ported over dmap and the aas compilers?

btw, shadows look really slick, an excellent job sir.

Hey Pat, haven't seen you for a long time :)

The primary goal of the RBDOOM-3-BFG project was to create a solid code base for gamers that could be ported to any platform. The id Tech 4.x architecture is nice and our new code could also serve a GPL id Tech 5 crossplatform port.

I ported the BFG renderer to D3, made some enhancements like the shadow mapping and merged that stuff back to RBDOOM-3-BFG.
I haven't put any time into porting the old D3 tools. However you are welcome to create a pull request on GitHub.

Hey Tr3b,

You have a normal version of DOOM 3 with shadow mapping?