Dynamically Generated and UV Mapped Minimap
Summary
This system continuously projects the static environment near the player onto a texture using top-down orthographic projection. As a form of optimization, the environment is only re-rendered when the player moves beyond the bounds of the previously rendered area or toggles the minimap zoom level lerp. That texture then serves as the basis for rendering accurate map topology (e.g. height data) and is dynamically culled in an HLSL shader based on the minimap's current radius relative to the player's world position. The much smaller minimap then translates its 0-1 UV coordinates to the unculled region of the full environment texture, ensuring correct scale and orientation on the HUD, while also adjusting the position and scale of any other sprites placed within the minimap context.
Showcase
Topology Rendering and Culling Shader

Minimap UV Translating Shader

Environment texture rescaled in runtime according to a maximum radius set to 100 metres

Environment texture rescaled in runtime according to a minimum radius set to 50 metres

Minimap Setup

Rendering the Geometry

Culling the Rendered Geometry

Final Sprite Render With Runtime UV Mapping
