Page 1 of 6

Taste It... It's Technical

Posted: Sat Jan 21, 2006 7:24 am
by Dazza
... by cade

Image

Posted: Sat Jan 21, 2006 11:21 am
by EER
Dynamic lighting!
:drools:

Posted: Sat Jan 21, 2006 1:24 pm
by Dragon
nice lighting although the shadow-maps are horribly jaggy... :lol:

Posted: Sat Jan 21, 2006 2:06 pm
by Jonas
Eh, nice, but... how is it done? Did you somehow modify the Unreal lighting (in which case I'll be very interested) or did you just copy that stuff into another engine, such as Unreal 2 (in which case I will merely be slightly amused)?

Posted: Sat Jan 21, 2006 2:12 pm
by CadeF
The shadow map resolution was 128px. If you want smooth shadows, and have a ps.3.0 capable card... http://aura-blue.com/cade/agrdx_softsha ... ghting.jpg
Edit: Think the shadows are jaggy? Lets see you try ;)
The shadow map resolution still is 128px, but now it has PCF and prioritizes itself based on z-depth, so it isnt jaggy anymore. It isnt as good as the link I posted (unless you have a ps.3.0 capable card), but it's not aliased. :)

How did I do it? Im writing my own renderer for DXA (Dazza can confirm it's me;) )

If we go along with DXA, I will write my own "engine" to play Deus Ex, including this renderer.

Renderer features include (but are not shown in the screenshots)
-Parallax mapping (displacement mapping)
-Gloss (shiny...) mapping
-Bump mapping
-Surface self-shadowing
-Perpixel lighting
-Shadow mapping

And I am not using the BSP for rendering anymore, I am only using it for physics. All lighting is realtime. Geometry can be much more complex now, as BSP holes are no longer a problem.

So yes, expect DXA to be different from every DX mod in existance.Granted, it won't run from DeusEx.exe but Deus Ex will still need to be installed in order to play it as the engine is linked with Deus Ex's engine. :)

And no, this is not Unreal or Unreal 2. It is my own renderer with Deus Ex's data files stuffed into it, it's sort-of a different engine.

Posted: Sat Jan 21, 2006 2:40 pm
by Trestkon
Very interesting indeed. And slick!

CadeF, I seem to remember you from somewhere...were you involved in the IW Rebirth project?

Posted: Sat Jan 21, 2006 3:45 pm
by Phasmatis
That's very cool. So does the engine import everything from DX without needing to edit the DX packages? If so will it work with other mods?

Posted: Sat Jan 21, 2006 4:06 pm
by Dragon
CadeF wrote:The shadow map resolution was 128px. If you want smooth shadows, and have a ps.3.0 capable card... http://aura-blue.com/cade/agrdx_softsha ... ghting.jpg
i don't want to offend but this blur doesn't look good. it blurs over the corner of objects making them shadowed in penumbra although they should not be :? . it looks like somebody went rampage with the GIMP blur filter ( although it's PS made ). nevertheless it's good with the engine restrictions in mind you have to cope with.
Edit: Think the shadows are jaggy? Lets see you try ;)
:lol: ... don't know exactly how much the dx-engine supports custom data in renderers but otherwise bumping resolution is the common first-try on jagging. but in general this is a defect of shadow-mapping you can only 'fake' away as good as possible with higher resolution.
but now it has PCF
PCF? that term i did not come across yet (maybe the german counterpart of it).

Posted: Sat Jan 21, 2006 11:09 pm
by CadeF
Trestkon - Thanks. Ion Storm forums, I did some coding projects including a content viewer for DX: IW and a .ini editor for T3. If Rebirth is the texturing project, I didn't do any textures for it.

Phasmatis: I can only interpret maps and textures right now. UScript will be decompiled from .u and parsed. It can be done, I've seen someone do it. Also, if a map/resource is "decompile-protected", my engine can't load it. It will work with every mod. But some things, like changing the player's model or conversations, will not. Changing the player's model will be in a config file, and conversations must load in the uncompiled .con made in conEdit.

Dragon - Bumping the res would also increase the vram requriements for each level. It is recommended (in GPU Gems), to use a 256px shadow map for a moving light source (as it must create a new shadow map each frame) and 512px shadow map for larger lights that move less (they can move, it's just that when they move, they require 4x fillrate to fill the shadow map). PCF stands for percentage-closer filtering. If you think it is too blurry, then I won't use a post-processing blur on the shadow map, only PCF.

Posted: Sun Jan 22, 2006 12:44 am
by Dragon
CadeF wrote:Bumping the res would also increase the vram requriements for each level. It is recommended (in GPU Gems), to use a 256px shadow map for a moving light source (as it must create a new shadow map each frame) and 512px shadow map for larger lights that move less (they can move, it's just that when they move, they require 4x fillrate to fill the shadow map).
yes it does... but now you can choice if you prefer fill-rate wasted on filling a texture (shadow-map) or a stencil-buffer (shadow-volume). both have their pros and cons.
PCF stands for percentage-closer filtering. If you think it is too blurry, then I won't use a post-processing blur on the shadow map, only PCF.
yeah i would definitly leave the post-bluring out (kinda DXIW bloom effect anyways) or make it optionable (which would be the best in my opinion). better less blur but more correct i would say.

Posted: Sun Jan 22, 2006 2:51 am
by CadeF
Shadow volumes don't work efficiently with flat geometry (example, one triangle) and do not support proper shadows off alpha testing.

Lets say I have a polygon, a window. The window's texture has 4 lines, the rest is transparent (pink). A shadow volume would cast a flat box shadow. Shadow mapping would not store the transparent region in it's depth buffer, so it would render correctly.

Posted: Sun Jan 22, 2006 2:34 pm
by Dragon
that's correct. shadow volumes can't handle transparency well but are pixel precise. shadow-maps can handle transparency but have resolution problems. like we say in german die wahl zwischen dem katzen- und hundescheissdreck (the choice between a dogs or a cats poo).

Posted: Sun Jan 22, 2006 4:54 pm
by Jonas
In Danish, we say the choice between the plague or cholera.

Posted: Sun Jan 22, 2006 6:58 pm
by Moonbo
Or, in Americanese ( :lol: ), "Damned if you do, damned if you don't."



-Gelo/Moonbo

Posted: Mon Jan 23, 2006 2:28 am
by CadeF
The resolution problems of shadow maps can be fixed by using PSM.
If you still think it's not good, lets see you make something.