Hi,
I'm not an expert in technical game artistry, but i got an idea lookin' at this screenshot from Watch Dogs:
The question is, does modern rendering optimization softwares take account the huge amounts of bloom, depth of field, lens flares and other effects that games today have? As far as i know, lighting effects aren't actual geometry so they aren't taken to account when doing stuff like occlusion culling, backface culling and such.
I think it could improve rendering performance if geometry behind those bloomy areas in the picture could be culled away completely. Maybe optimizer could check the transparency of the effect and adjust LOD accordingly? Maybe adjusting LOD based of the lighting intensity of the rendered image? There wouldn't be that much help for this particular image as the lights are so far away and meshes will be lodded anyway, but for lights/geometry that are close to camera, this would be very helpful.
Also depth of field could be used to adjust the LOD levels, not just for objects far away but up close to the camera.
This same idea would apply for the level of darkness in the game.
Why not optimize LOD levels according to the amount of blackness? Players won't see it, so why should the renderer?
As I said, I'm not expert in these things so it may very well be that these ideas are already used or not possible at all,
but i needed to share my thoughts. What do you think?
Replies
How it would differ from ,lets say, occlusion culling or backface culling? Cpu is doing that stuff all the time..
Theoretically your LOD-by-darkness might work, assuming you're not using a deferred solution, but how would you go about determining whether to drop a LOD or two? Average light level affecting the mesh? Average light level vs actual coverage? You'd most likely spend more cycles trying to determine all that than you'd save by LODing down (not to mention that these days, your typical bottleneck isn't going to be triangle performance).
Yeah but its not calculating a bunch of other LOD stuff.
Damn, youre right.
Could it be possible to questimate, like if a lamp would be X amount of distance away from the player, optimizer would know how much bloom it would produce and adjust the lod levels around it accordingly? i hope you can figure out what im trying to say here.. im really not pro with all this.
So the thing is, maybe the calculations could be done same time as other culling stuff using erm.. assumptions. Example! :
When playing Gears of war you press aiming button and camera zooms close to player and player/weapon etc gets blurred. Now, we know every time that when you press that button, it will zoom in and get all doffed out. There's really no other way around. In that case, LOD could be adjusted based on the dof.. right?
I havent read about deferred rendering. How it makes it different?
Yeah. I was thinking if it could be possible to calculate, at least, the areas where there's no light at all and lod down those areas heavily. And yeah because triangles aren't the concern usually, i think using lod for at least textures based on levels of darkness, that would make all sense.
Could it be calculated with comparing light intensities and their distances to objects?
Damn i would love to start experimenting with these things in Unity, but i don't have time for personal project right now..