• Register
Post news Report RSS Archaica rendering internals - The Lighting

Rendering internals in Archaica - lighting step by step.

Posted by on

Here is a short and general description about how the lighting in Archaica is generated.

Note:

  1. On all the screens there are transparent and emissive materials (we just didn’t hide them).
  2. Archaica renderer evolved from light-pre pass to more deferred (for performance reasons - less draw calls). There is still option for computing lighting per-material (for example crystals use this).

Final effect

D 02 full scene

At first let’s take a look at indirect diffuse lighting (~ambient)

Every next screen shows another light technique added


Only height ambient (two colors interpolated by height):

01 height ambient only

Shadow color (fake secondary diffuse term). Takes into account scene height and normal (and it’s also colorized):

02 ambient shadow colorsec diff

With SSAO applied:

03 ambient shadowcolor ssao

And the last component: secondary directional light without shadows (fake simulation of the reflected light). So this is the full indirect lighting (diffuse; only secondary light adds something to the specular lighting term):

04 ambient shadow color ssao sec

SSAO alone:

05 ssao

Indirect specular lighting (exaggerated)

Computed as a single fullscreen pass:

06 secspec no mul reflectance

The direct lighting (diffuse and specular)

Direct light without shadows:

B 01 noshadows

Shadows alone:

B 02 shadows

And mixed - full direct lighting:

B 03 direct light

Additionally - full (direct and indirect) diffuse and specular lighting alone:

B 04 only full diffuse

B 05 only full specular

Final Light composition

The final lighting in Archaica:

C 01 full light no bloom

Bloom alone:

C 02 only bloom

Mixed - final lighting and bloom:

C 03 full light

As a curiosity - a final lighting without tonemapping:

C 04 no tonemapping

Final scene

Without fog:

D 01 full scene no fog

FINAL SCENE - with fog and godrays:

D 02 full scene

Additional comparison - Without colorgrading (colorgrading adds only a small correction to final look):

D 03 no colorgrading

And as a bonus - Archaica gbuffer

Diffuse:

E 01 diffuse

Normal:

E 02 gbuf normal

Depth:

E 03 gbuf depth

Reflectance (exaggerated):

E 04 gbuf reflectance powiekszon

Roughness:

E 04 gbuf roughness

Hope this is useful and interesting :)

Fell free to ask if You are interested in any part of computing the light (and final scene look) in Archaica!

Post comment Comments
sortris
sortris - - 1 comments

Great article! Thanks for that :)

Reply Good karma Bad karma+3 votes
pturecki
pturecki - - 4 comments

Thanks! There will be more articles like this one ;)

Reply Good karma Bad karma+2 votes
Freaking-Pingo
Freaking-Pingo - - 2 comments

An inspiring article. I have a reasonable understanding of the technical terms used in this article, yet I don't feel creative enough to actually produce such content myself. Do you know any literature that is a good read that could help widen my horizon on processes such as this?

Reply Good karma Bad karma+2 votes
pturecki
pturecki - - 4 comments

Thanks! It's hard to find all this information in one place. Try these two cool links I quickly found (and there are many more for sure):

Frame rendering in DeusEx:
Adriancourreges.com

and list of interesting tricks about doing various effects:
Simonschreibt.de

Hope this helps a bit. Cheers!

Reply Good karma Bad karma+2 votes
Freaking-Pingo
Freaking-Pingo - - 2 comments

The resources looks interesting, I'll surely have a go at them. Thank you.

Reply Good karma Bad karma+1 vote
pturecki
pturecki - - 4 comments

You're welcome!
Crytek presentations are very good too:
Crytek.com

Reply Good karma Bad karma+1 vote
Bojan.Endrovski
Bojan.Endrovski - - 1 comments

The game is looking amazing! Would love to read some more about how all the passes are used to make the final rendering.

Reply Good karma Bad karma+2 votes
pturecki
pturecki - - 4 comments

Thanks! We need to finish next Beta version and we try to find some time for more detailed article :)

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: