Age Lighting a conversation

If you feel like you're up to the challenge of building your own Ages in Blender or 3ds Max, this is the place for you!

Re: Age Lighting a conversation

Postby Sirius » Thu Apr 04, 2019 11:09 am

Tsar Hoikas wrote:I'm going to be looking into changing them over to RLE maps for 0.09

Wow, didn't even know this could be used for textures. Sounds okay I guess. :)

J'Kla wrote:If you are suggesting something like a buffer of stuff you have already baked for export that sounds like a good deal

Exactly. It's used pretty often by modern engines. If you ever saw some Unreal screenshots, that's why the engine nags you about "Lighting needs to be rebuilt".

Chacal wrote:2- lighting you avatar: place some lights for this, don't use them for baking (deactivate them before baking. It helps if you put them all in one layer). Make them sun lights for better performance.

Even better: put them in a light group that's not used by any material. This is MUCH more convenient.

And keep in mind objects without a "Bake Lighting" modifier can still receive light too (it's preferable for moving objects, although Plasma lighting is a bit tricky).

Christian Walther wrote:This can be done with soft volumes. At least it could in POTS. I have no idea how to do it with Korman, but there is documentation.

Soft volumes are a bit of a pain to setup, though. Personally I'd recommend to setup lighting so it's baked correctly, and worry about the avatar last. It's not too bad if the avatar's lighting doesn't match the rest of the scene IMHO (although that also comes from playing exclusively in first person view).

Christian Walther wrote:The soft volume approach does not do that. It could be done by having the walls cast realtime shadows, or maybe with a projection light.

I usually recommend to NOT use dynamic shadows in your Age for anything else than kickables (and even those can do without). They are that bad. They don't even match the intensity of the light source, fade weirdly with distance, and are horrible on the performances.

As you can guess I've spent so much time trying to get dynamic lighting in Plasma to behave in a somewhat sensible manner that I'd now rather avoid it entirely and rely only on baked lighting... Even though I still have trouble getting Blender to bake things correctly too :lol:


(Unity spoiled me when it comes to scene lighting. Dynamic per pixel lighting with good looking shadows and realtime GI is so cool and easy to setup, especially when combined with HDR and stuff...)
User avatar
Sirius
 
Posts: 1506
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Age Lighting a conversation

Postby Deledrius » Thu Apr 04, 2019 12:05 pm

Basically, almost all lighting in Plasma requires you to cheat. ;) Very little is done realtime, and as Sirius points out, it rarely is what you want anyway (both for the result and for performance) -- although I disagree about lighting the avatar with it, as it can be very effective in certain circumstances (such as the upper level in Gahreesen). This is all one of the biggest reasons people like newer engines: you get a lot better lighting for free just by putting them in the right places.

In Plasma, you'll need to combine a lot of different techniques and learn by experimentation. We've tried to make some of the lowest-hanging fruit auto- or semi-automatic in Korman, but even then too much of it is an artistic decision to handle entirely without intervention. Learning how to use soft volumes, projection lights (to fake shadows on the ground and other objects, like the shades in the upper office of Teledahn), transparent texture shadows, and avatar lighting all together to create convincing lighting is a lot of work but it's probably one of the single-biggest things that separates an Age that is visually pleasing and one that is difficult to even tolerate long enough to fully explore.
User avatar
Deledrius
Gehn Shard Admin
 
Posts: 1377
Joined: Mon Oct 01, 2007 1:21 pm

Re: Age Lighting a conversation

Postby J'Kla » Fri Apr 05, 2019 3:09 am

Chacal wrote:2- lighting you avatar: place some lights for this, don't use them for baking (deactivate them before baking. It helps if you put them all in one layer). Make them sun lights for better performance.
DO export them. They will dynamically light the avatar, and only the avatar, during the game.


Are there any specific notes or tutorials on the Baking process as we would use it for Korman and age Building or will I need to look for Blender specific stuff.

I suspect the latter if that is the case does anyone know where I can specifically find some detail?

To be honest in my past projects outside of age building, have all used dynamic lighting or have been lit by tinkering with emission values where I could ignore baking.

I am aware that there is some baking going on during export, from the conversation I take it that this can be done before export, so that the step of baking during export has little or nothing to do?

I would remind people lighting is a dark art I am just starting to get to grips with so please accept my ignorance.
User avatar
J'Kla
 
Posts: 1003
Joined: Wed Feb 20, 2008 3:16 pm
Location: Geordieland UK

Re: Age Lighting a conversation

Postby Deledrius » Fri Apr 05, 2019 3:13 am

J'Kla wrote:I would remind people lighting is a dark art I am just starting to get to grips with so please accept my ignorance.

I see what you did there. ;)

It really is, though. There's a lot to learn, and I wish I understood it all better myself.
User avatar
Deledrius
Gehn Shard Admin
 
Posts: 1377
Joined: Mon Oct 01, 2007 1:21 pm

Re: Age Lighting a conversation

Postby Chacal » Fri Apr 05, 2019 12:45 pm

J'Kla wrote:
Chacal wrote:2- lighting you avatar: place some lights for this, don't use them for baking (deactivate them before baking. It helps if you put them all in one layer). Make them sun lights for better performance.
DO export them. They will dynamically light the avatar, and only the avatar, during the game.


Are there any specific notes or tutorials on the Baking process as we would use it for Korman and age Building or will I need to look for Blender specific stuff.

I suspect the latter if that is the case does anyone know where I can specifically find some detail?

To be honest in my past projects outside of age building, have all used dynamic lighting or have been lit by tinkering with emission values where I could ignore baking.

I am aware that there is some baking going on during export, from the conversation I take it that this can be done before export, so that the step of baking during export has little or nothing to do?

I would remind people lighting is a dark art I am just starting to get to grips with so please accept my ignorance.



Beats me. In this short post I gave you the sum of all my knowledge about lighting Ages.
:)
Chacal


"The weak can never forgive. Forgiveness is an attribute of the strong."
-- Mahatma Gandhi
User avatar
Chacal
 
Posts: 2508
Joined: Tue Nov 06, 2007 2:45 pm
Location: Quebec, Canada

Re: Age Lighting a conversation

Postby Sirius » Sat Apr 06, 2019 5:27 am

If you want a few tips to set Blender's lighting to look correct, I can give you those... Note that they are mostly for statically lit objects, and won't always translate well to Plasma.
(Things related to the world tab are hidden by Korman right now, you'll have to switch to the Blender render to setup those - they will stick when you switch back to Korman, and will probably be brought back by future versions).
For outdoor scenes:
  • In the world tab, set the horizon color to white, and the zenith color to a dark blue.
  • Same panel, tick the "Blend Sky" and "Real Sky" checkboxes. Right now this only affects the rendered sky background and not the lighting, but we'll remedy this soon.
  • Tick "Environment Lighting". Set the intensity to 0.3. Choose "Sky color" from the dropdown next to it. (There is no need to activate the "Ambient occlusion" option above it, it's already built into the environment lighting.)
  • Your objects will now have ambient lighting as if they were outdoor on a clear day (assuming you setup a sun somewhere).
  • If you want the avatar to be lit up in a somewhat similar manner, add a few suns with very low intensity pointing at various directions in your Age. Set them as Plasma objects. Add them to an unused light group (so they don't accidentally light up baked objects. The sun that represents floor reverberation should match the color of your ground, and so on.

For indoor scenes, this will still work, but is less efficient. You should lower the ambient intensity and use colors that match your walls/ceilings-floors for the horizon and zenith color.
You can also get much better results by replacing the environment lighting with indirect lighting, but it's very tricky to use correctly. Properly setup, it can do wonders with light bouncing off walls and "reverbing" their color around. But in my experience it works better for indoor scenes, and takes VERY long to bake.

Now, about lights themselves (in the light panel):
  • Increase the shadow sample count for your lights (6-10 is usually fine), and increase the soft size of the shadows. This will make your shadows less sharp and much better looking. (Suns will need a VERY high soft size, as it's proportional to the width of the Blender scene.)
  • Try to give bright light sources a very pale color, and a more saturated one for dimmer lights (like pale yellow for the sun, a brighter orange for firemarbles, etc).
  • On some occasions, you can use two light sources: a bright pale one with a low radius, and a dimmer, larger one with more vibrant colors. This can approximate ambient reverberation of light in small spaces.
  • Try to use shadows cleverly to make your scene more interesting visually.

And don't forget you can get near-instant preview of Blender's lighting in the viewport using Shift-Z.

Hopefully that should help brighten things up a bit... ;)
User avatar
Sirius
 
Posts: 1506
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Age Lighting a conversation

Postby Aloys » Mon Apr 08, 2019 5:27 am

indirect ligntinh (...) takes VERY long to bake.


The baking time for decent (read: GI) in Blender is horribly frustrating right now. (or in other software for that matter: Unity lightmamp baking speed is atrocious, even on a decent GPU). And I don't understand wy. Nowadays we have real time lighting solutions in Unity/Unreal that look almost just as good, yet when it comes to baking lightmap it takes hours... And the final quality is only marginally better than the real time one... :( Why?
User avatar
Aloys
 
Posts: 1968
Joined: Sun Oct 21, 2007 7:57 pm
Location: France (GMT +1)

Re: Age Lighting a conversation

Postby Deledrius » Mon Apr 08, 2019 1:55 pm

Sirius wrote:If you want a few tips to set Blender's lighting to look correct, I can give you those...


Thanks for all that!
User avatar
Deledrius
Gehn Shard Admin
 
Posts: 1377
Joined: Mon Oct 01, 2007 1:21 pm

Re: Age Lighting a conversation

Postby Sirius » Mon Apr 08, 2019 2:16 pm

Yeah, I can understand that...

However, the lack of good GI solution isn't too surprising to me either. GI being a complex problem, all softwares have different ways to tackle it. And in most people's mind, it's normal for anything lighting-related to take hours to bake, since it's been that way for ages.

Full realtime GI solutions (like SEGI on Unity) look promising, but they still require too much horsepower to be realistically usable on regular client machines. I guess they could be used to enhance traditional lightmappers, but I'm not sure the data they output (usually world-space voxels) is easy to plug in normal raytracers.

With that said, I have to admit I'm curious to know how feasible/efficient such lightmapper would be... Waant !

Anyway, on the topic of Unity, I've found that once you correctly sort static from dynamic objects (mostly deactivating lightmapping for anything that isn't a wall) and use lightmapped realtime GI to help you place lights before definitely baking everything, then baking time becomes quite tolerable...

@Deledrius: You're welcome ! Hope it's useful :)
User avatar
Sirius
 
Posts: 1506
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Age Lighting a conversation

Postby Tsar Hoikas » Mon Apr 08, 2019 3:10 pm

Aloys wrote:The baking time for decent (read: GI) in Blender is horribly frustrating right now. (or in other software for that matter: Unity lightmamp baking speed is atrocious, even on a decent GPU). And I don't understand wy. Nowadays we have real time lighting solutions in Unity/Unreal that look almost just as good, yet when it comes to baking lightmap it takes hours... And the final quality is only marginally better than the real time one... :( Why?


That process is fundamentally different in ways that may not transfer well to baking. AFAIK the way modern realtime lighting works is by using a depth buffer to apply the lighting per-pixel to the final rasterized image. Unless you're using raytacing on a GeForce RTX, of course...
Image
Tsar Hoikas
Councilor of Technical Direction
 
Posts: 2180
Joined: Fri Nov 16, 2007 9:45 pm
Location: South Georgia

PreviousNext

Return to Building

Who is online

Users browsing this forum: No registered users and 14 guests