Image not available

750x750

adaptive-screen-s....png

🧵 Untitled Thread

Anonymous No. 991535

What is the lifecycle of AO textures in gamedev? Lets say I'm modeling whole levels as Blender scenes, at which point should I create AO textures? Surrounding geometry matters so when I move things AO changes. Which means it's probably best to keep AO as shader node on Blender side, and only bake them into AO textures when everything is done. But this doesn't sound very convenient or maintainable, it seems I'll have to go through every object in scene, bake every AO texture individually and connect them into corresponding BSDF slot in shader? This is also destructive, because I cant' just move things afterwards without reintroducing AO shader node manually... Overall, sound like maintanance hell. Is there something to automatically bake AO, maybe even automatically rebake AO when objects move? Found some reddit comments saying that AO is mainly a dynamic effect in games, meaning it's not even baked but computed in real-time... But then other commenters say there are many games that actually DO bake it.
https://www.reddit.com/r/pcgaming/comments/42wu29/why_is_baked_in_ambient_occlusion_not_usually/
Also, is there such thing as self-AO? I think it would make sense to prebake AO shadows object casts on itself for curvy objects, but ignore shadows related to other objects in scene and leave them for realtime AO effect of game engine. But I'm not even sure how to tell Blender for example to only include self geometry into AO computations.

Anonymous No. 991540

In realtime, dynamic AO is screen space ao or "SSAO" which is calculated per frame just based on currently rendered geometry, it's a shader effect. The AO you bake to textures in a modeling program is plain AO, it takes the surrounding geometry and darkens areas where geometry is close to each other. It doesn't matter if it's another object or itself. If you wanna bake the maps per object in blender, you'll have to disable rendering for the unwanted objects in the outliner. You generally bake AO per object in isolation and then blend the result in some way with its diffuse texture or use it as a base for the diffuse, there's no real reason to leave it a separate map unless you plan to rebake it often. So baked AO is used for making the diffuse maps generally, especially if you're baking from a higher poly sculpt or something. You can bake them at any point you want, you don't need hyper accuracy all the time, but you generally want it when the model's geometry is mostly done. When it comes to environments, while you could bake AO for a very static environment, in realtime lightmaps are usually used instead of AO. Rather than geometry proximity darkening white surfaces, the effect of static lamps lighting darkness is baked ingame instead. Basically there's an often auto-unwrapped "lightmap" set of UVs, often the second uv channel, where no polygon overlaps another, and lighting is baked while the level is loading. This lets you avoid rebaking maps manually while working on the models and lets you have slightly more dynamic levels as you only need to rebake the lightmaps if something changes, like if you have a disappearing obstacle after something else in the game changes elsewhere, lightmaps let you handle that without manual work.

Anonymous No. 991542

>>991535
Baked AO curvature and lightmaps are part of the texturing process to add dirt, worn edges and to create more volume in your textures, yes AO is used in-game to create a fake global illumination too usually because it is cheaper.

Image not available

741x1042

113921894_p0_small.png

Anonymous No. 991548

>>991540
>>991542
That's a lot of useful information in a really condensed form, thanks!

Anonymous No. 991550

I guess in Blender to make it manageable for every material I'll create a separate material with suffix "_baked", so that I always can go back if needed. And I'll try to delegate lightmaps to game engine.
I feel they will work great for indoors areas, but for outdoors especially with daylight cycle I'll need either fully featured realtime shadows or at least some kind of dynamic AO.

Anonymous No. 991556

>>991535
>>991548
>>991550
Or you could not use blender and actually learn how to make renderings based on real methods by the professional. You can’t do anything in blender that requires the same level of professionalism why even try.

Image not available

1088x1088

GOTHy0wa8AA-__D.jpg

Anonymous No. 991560

>>991556
Bruh it's gamedev topic. Stuff you're talking about is extremely irrelevant.

Anonymous No. 991570

>>991560
>it's gamedev topic
Gamedev belongs to >>>/vg/ this is a board to shitpost about blender, Daz and Cris.

Anonymous No. 991574

>>991560
Then why did you go technical with all the possibilities of rendering in a specific way. We are 3D artists, not programmers. We don’t do game related stuff, we make the art.

Anonymous No. 991600

>>991570
>>991574
Its still relevant, you can do it on 3d software side and you can do it on game engine side, or you can do both in different proportions,
which is exactly what I decided to do (bake self-AO into diffuse in Blender, and use lightmaps / dynamic AO on game engine side).
It's not like this board is too fast or overcrowded to gatekeep gamedev like that.

Image not available

1136x640

IMG_0363.png

Anonymous No. 991602

>>991600
>Making it harder on yourself
Anon why…

Anonymous No. 991603

>>991602
>>991574
>>991570
>>991556
Holy shit you guys suck like are you women or something?

Anonymous No. 991608

>>991603
No one is going to spend hours recreating lightning from early 2000s, you’re the crazy here.

Anonymous No. 991616

>>991535
>No Ass Out
>Ass Always Out

Anonymous No. 991629

>>991535
When you bake AO is object related, AO textures can be used by itself to mix with diffuse like in the old days, we also used normal bake for the direction of the shadows, Now mostly AO Is used in combination of other textures like curvature as masks for effects like dirt and dust, corrosion, ect.
If you want to make something like your picture, you need to use screen space, which is a post process, you are going to hear different methods to produce AO this way like HBAO, HDAO or screen space directional...