"Cabanos, emancipation" FPA Open World Game 3D

The old scene was tested on a slightly more powerful PC with a dedicated video card and the Rasterizer fluctuated between 5 and 9 m/s. This means that if you create your project with High Specs you will have problems with PC’s low specs, because your PC’s video card will mask all the flaws in your project. I had to do some hard optimization work to get the result of 4m/s for my PC with an integrated graphics card (Intel UHD Graphic).



Images run in my notebook i5 12Gen, 8RAM, Intel UHD Graphics. Standalone Player.
Very good, I had positive results after modifying some parameters and I already have something positive for my map. I believe there are as many optimizations as possible using the Range Engine’s own tools. But it’s not finished yet, there’s still more work to make this map better.

1 Like

nice ! what about adding an AO texture ?

It will give more depth to your geometry

2 Likes

Yeah, or you can try this SSAO-2d-Filter.
ssao.py (5.0 KB)
Without


With

Yes, at the moment some objects in the scene have AO Texture. Later on, everyone will have this feature.

Thank you for adding this filter. At the end of the project I will see the need to use filters or not. Some of them weigh quite a lot, so a good GPU is necessary to support this.

New Map of game. Ship port in progress…

You lose 6 fps just by using an SSAO type filter. For large projects, this becomes unfeasible. Better to use other resources. If it were a filter implemented in C++ internal to the engine, it wouldn’t say anything. But being in Python, this could be a loss of performance considering that there will still be the weight of enemy and player logic.

This map has already been finished, with only a few elements missing. Some color details have changed, soon there will be videos showing the results…

The extension .py is misleading. It is pure glsl-code running on GPU.
But perhaps better use AO-Texture instead.

In game engines, in projects, in history of computer perfomance always is all. If you work without thinking about it, you have already failed…

Yeah, the script is quite heavy. On my system it eats 4-5ms. Better not use it.

Would be interesting if using AO-Textures instead has a performance hit.
To compare how your game works with AO-Textures / without AO-Textures.

1 Like

Careful when talking about AO textures. We can say there’s 2 types of AO textures :

  • Object AO texture : It usually comes with the other Textures and simulates the areas that are usually darker (occluded from Ambient lighting) . Those texture are baked with the mere global Environment light source and are same for all objects with the same mesh

  • Atlas AO texture : This texture is global and simulates how light will penetrate, bounce and diffuse everywhere into all the geometry of your map… It’s simulates Indirect lighting whilst BGE just simulates direct lighting (= 0 bounces) Imagine a temple of white marble with just a sun outside … the light on the walls will be of infinite shades … So with all your light sources (not only Environment lighting) you can bake a whole Atlas AO texture for your map and the result will be outstanding ! Your game will look like something like Unity or Godot

The glsl filters tries to replicate the effect of Object AO texture but its more messy (black halo going outwards) and probably doesn’t work with Raytracing technic . But in no cases, the glsl filters can replace the Atlas AO texture

NB : DON’T MAKE the mistake we see everywhere. Don’t multiply Diffuse x AO … it’s wrong !! AO must NOT turn colors into black and you can’t get your colors back even with a strong light source ! Black under strong light remain Black whilst natural colors under strong light lean toward white.

AO has to work like this : Ambiant = (AO x Environment lighting)

So u must connect your AO texture with the Ambiant socket of the Extended Material Node

2 Likes

Just stumbled across this 7 year old video in old UPBGE. Can’t believe my eyes.
(sorry for OP but I HAVE to show it)

yes, that video is very well known and is indeed very good looking. I guess there’s things that aren’t support in this static setup. For example, an object going behind a red window or dynamic global illumination … He could have made this in Unreal and larp it as BGE. Pitty he didn’t share knowledges

1 Like

Map 3 in construction.