logoalt Hacker News

cosmic_cheeseyesterday at 4:20 PM2 repliesview on HN

The thing that’s always bugged me about SSAO is the “jitter” visible when the player character or camera moves, which I would imagine is due to it being calculated in screen space. In some cases it’s so distracting it breaks immersion.

Given that accuracy isn’t the goal anyway I’ve often wondered if it wouldn’t be better in many cases to apply a sort of pre-calculated AO that uses a relatively small atlas of shading textures rendered on flat surfaces as decals (disclaimer: I am not a graphics programmer). It’d apply only to angular surfaces (so for example human faces wouldn’t be included) but I’d say that 80-90% of the benefit of AO lies in things like corners of rooms anyway — it’s really just manmade objects that look bad without AO, organic shapes don’t suffer nearly as badly.


Replies

StilesCrisisyesterday at 4:25 PM

"Baked ambient occlusion" does exist. It only works well in games where most objects are fixed. If there's a lot of flexibility in where objects are placed, then movable objects will stick out too much (they will lack the AO shading). It sounds like you're proposing using it only on static walls, which seems like it'd be totally viable.

show 1 reply
nananana9yesterday at 4:23 PM

The jitter is because it's usually rendered at 50% resolution - you can render it at full framebuffer size and it doesn't jitter but it's kind of hard to justify.

show 1 reply