# Events + Geometry Occlusion

**URL:** <https://qa.fmod.com/t/events-geometry-occlusion/21316>\
**Category:** FMOD Studio\
**Tags:** cpp\
**Created:** [March 4, 2024, 5:38pm UTC](https://qa.fmod.com/t/events-geometry-occlusion/21316 "2024-03-04T17:38:12Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![sagaceil](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/sagaceil/32/6302_2.png) [@sagaceil](https://qa.fmod.com/u/sagaceil)\
**Post date:** [March 4, 2024, 5:38pm UTC](https://qa.fmod.com/t/events-geometry-occlusion/21316/1 "2024-03-04T17:38:12Z")

</div>

Hello.  
I was searching to solve why my events are not affected by the geometry occlusion created with FMOD::System. To my suprice they seems to not being even supported by Studio. Thats weird as Studio is already a framework build on top of System and could simply call system-\>getGeometryOcclusion internally.  
My question: am I missing something and if not how I can reuse existing FMOD occlusion subsystem to incoporate with the Studio. And what is a rule of thumb guideline to support this feature ?

I was thinking of using callback event instance and add/remove them from list on every REAL\_TO\_VIRTUAL/VIRTUAL\_TO\_REAL to track “real” events and tick them every frame to adjust volume - but that sound a bit hacky.

Thanks for any suggestions 🙂

---

<div class="post-metadata">

**Author:** ![magomusica](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/magomusica/32/420_2.png) [@magomusica](https://qa.fmod.com/u/magomusica)\
**Post date:** [March 9, 2024, 8:51am UTC](https://qa.fmod.com/t/events-geometry-occlusion/21316/2 "2024-03-09T08:51:33Z")

</div>

I’d recommend using Oculus Spatializer or Steam Audio. They both have an occlusion system. Steam is more robust, with pathing/propagation.

---

<div class="post-metadata">

**Author:** ![Leah\_FMOD](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/leah_fmod/32/3685_2.png) [@Leah\_FMOD](https://qa.fmod.com/u/Leah_FMOD)\
**Post date:** [March 13, 2024, 4:26am UTC](https://qa.fmod.com/t/events-geometry-occlusion/21316/3 "2024-03-13T04:26:28Z")

</div>

Apologies for the delayed response.

it’s currently not possible to make use of the Core API’s geometry system when using the Studio API. This is because the two systems make use of different methods of panning; the Studio API uses the 3D panner DSP, which doesn’t support occlusion, while the Core API uses a bespoke non-DSP panner that does support occlusion.

If you require geometry-based occlusion, there’s a few options - making use of a 3rd party spatialization plugin, as @magomusica suggested, is one of them, but you can also create an “Occlusion” parameter on your events and use them to automate filtering/attenuation, and drive the occlusion by performing the requisite raycasts in your engine.

---

<div class="post-metadata">

**Author:** ![sagaceil](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/sagaceil/32/6302_2.png) [@sagaceil](https://qa.fmod.com/u/sagaceil)\
**Post date:** [March 13, 2024, 7:45am UTC](https://qa.fmod.com/t/events-geometry-occlusion/21316/4 "2024-03-13T07:45:15Z")

</div>

Hey, thanks for response.  
I already did custom occlusion tests based on scene physics and use “Occlusion” parameter if exists.

śr., 13 mar 2024, 05:36 użytkownik Leah\_FMOD via FMOD Forums \<[notifications@fmod.discoursemail.com](mailto:notifications@fmod.discoursemail.com)\> napisał:
