An emitter can cast rays outwards towards the world edge, to determine how 'inside' it is. ```cs var emitter = new Emitter() { Position = new Vector3F(10), AmbientPermeationRayCount = 128, AmbientPermeationBounceCount = 4, }; // Access stats when raytracing first completes emitter.OnRaytracingComplete = () => { var gainLF = emitter.AmbientPermeationGainLF; var gainHF = emitter.AmbientPermeationGainHF; }; // Add the emitter to the simulation context.AddEmitter(emitter); while (true) { context.Update(); // Access stats at runtime if (!emitter.Initialising) { var gainLF = emitter.AmbientPermeationGainLF; var gainHF = emitter.AmbientPermeationGainHF; } } ``` You can also customise the formula used to calculate the `AmbientPermeationGainLF` and `AmbientPermeationGainHF`. Read more: [[Ambient Permeation Gain Formula]].