Page MenuHomeFeedback Tracker

Occlusion Culling for structures (Rendering technique, huge performance saver since DX9)
Reviewed, LowPublic

Description

Right now Arma 3 doesn't support visible occlusion culling in terms of shape blocking, this can be seen by entering the structure just behind the tower at the air port and turning west (towards the ocean), then turning east (towards the mainland). You will see the FPS drop despite nothing visibly being rendered. This is where Occlusion Culling comes in and could play a vital role to performance increase across the board.

Occlusion culling is a technique used to not render objects in a view space or hidden behind other objects. The Arma series would be the example of picture 2 seen here
http://techpubs.sgi.com/library/dynaweb_docs/0640/SGI_Developer/books/Optimizer_PG/sgi_html/figures/view.frustum.culling.gif
note how the spheres and cone are rendered despite the camera NOT seeing them.

The third image would be what would happen if OC were implimented, they are essentially no longer in the scene and no longer rendered due to being hidden, just as shown here.
https://sslproxy.getsatisfaction.com/sslproxy/SWhAdDNLMG5zdGFuVGlWenmLbJDGd3CABhjZermgcystANA4T6nd0pzV0fSzBRRGOd17A4b8ZLwi6-HESbXI0t5d_RUjeg7VVjYlYJW1m3Esz2caI6KYXGXXwLJwcF9nSz8LN0i99GO3lwueWs0m1A==.png

Saving occluding techniques would be the difference between being the white box here and seeing AND rendering this http://docs.unity3d.com/Documentation/Images/manual/OcclusionCulling-1.jpg
versus seeing only that but rendering all of this http://docs.unity3d.com/Documentation/Images/manual/OcclusionCulling-0.jpg

The absence of this techniques makes it blinding obvious how Arma 2 had difficulty with Cherno, and will have even more difficulty with Ramadi and I suspect will run into the same thing in Altis. In closing, occlusion culling is purely a performance saving technique, it is vital to many developers and would DRASTICLY enhance performance for the Arma series.

It would no doubt take time but consider it a building block, a foundational step rather than "another feature".
The difference would be that if I were in a building in a city I'd only be rendering what I see from the window or the wall versus the whole city behind it.

Details

Legacy ID
3042325233
Severity
Feature
Resolution
Open
Reproducibility
Always
Category
Feature Request

Event Timeline

Bohemia edited Steps To Reproduce. (Show Details)Apr 30 2013, 12:44 PM
Bohemia edited Additional Information. (Show Details)
Bohemia set Category to Feature Request.
Bohemia set Reproducibility to Always.
Bohemia set Severity to Feature.
Bohemia set Resolution to Open.
Bohemia set Legacy ID to 3042325233.May 7 2016, 1:55 PM
MadDogX added a subscriber: MadDogX.May 7 2016, 1:55 PM

Actually, occlusion culling has been supported since Arma2. Perhaps the implemetation isn't perfect - e.g. not everything is culled - but it is there.

Bohemia added a subscriber: Bohemia.May 7 2016, 1:55 PM

Oh? Curious...I sure hope then that they continue to work on it for A3 since it could be the difference between 30 someodd fps in a large city versus 10 if that.

Ran out the door to see if maybe it was terrain but no change, also crouched behind some hesco bags, putting my face right in it and no change, same with the big green wall.

sarlac added a subscriber: sarlac.May 7 2016, 1:55 PM

Supported /= implemented

Khan added a subscriber: Khan.May 7 2016, 1:55 PM
Khan added a comment.Apr 30 2013, 1:54 PM

This suggestion was processed by our team and will be looked into. We thank you for your feedback.

Nicolii added a subscriber: Nicolii.May 7 2016, 1:55 PM

If object culling wasn't implemented your computer would crash every time you started a game. Games like Arma just wouldn't be possible to do without it. Even the beastliest of the beastly computers wouldn't be able to handle Altis.

It is possible that Arma doesn't cull behind geometry, which the techniques for doing so were vastly improved with DX11(or 10, I can't remember), but I've never bothered finding out if that is the case.

DX 11 bought many improvements that improved performance with rendering in games, it's just that we've hardly seen them as most games have been DX9 compatible and unable to use techniques because the time spent implementing such techniques was not worth while for developers.

@sarlac: I meant implemented. You can occasionally see it bug out when you're inside certain buildings, such as with the "blue doorframe bug" here in the tracker (#6436), where objects are obviously being incorrectly culled.

It's definitely there, just not working 100%.

dedmen added a subscriber: dedmen.Sep 13 2017, 1:11 PM

Occlusion has been added. This can be closed.