Repository navigation
v1.20.0
3D scenes get distance fog and a crossfade between two environment maps for day and night cycles, and steady frames on fast GPUs allocate nothing. RecursiveAI.OneGame.Physics ships as 1.20.0-preview.1.
Added
- Distance fog in the 3D renderer.
Scene3D.Fog(FogSettings:Enabled,Color,Start,End,MaxDensity) fades every surface (PBR, toon, flat, unlit, outlines, masked and blended materials, instanced draws, dynamic meshes, billboards) towards a colour with its distance from the camera. It is a per-frame constant: changing it uploads nothing and rebuilds nothing, and steady frames still allocate nothing. Off by default; frames with fog off are unchanged. - Environment crossfade.
Environment3D.NextMapandBlendmix the backdrop, the diffuse light and the specular light of two environment maps, so a day cycle can step through keyframes without a pop: atBlend1, making the next map the first and the following one the next atBlend0 draws the same picture. ChangingBlendrefilters nothing. - Live control
environmentoperation: read and set the fog, the blend weight, the environment intensity and its yaw.
Fixed
- The Vulkan backend no longer allocates managed memory on a random frame of a steady run. Command encoders are created up front, and upload staging pools are sized from what a submission uses and then kept fixed (a miss waits for the GPU instead of growing the pool). On a fast GPU the pools used to grow whenever the GPU first lagged further behind, which showed up as sporadic small allocations in frames that should allocate nothing.