18#ifndef INCLUDED_OVERLAYRENDERER
19#define INCLUDED_OVERLAYRENDERER
Class OverlayRenderer: Render various bits of data that overlay the game world (selection circles,...
Definition: OverlayRenderer.h:38
void Submit(SOverlayLine *overlay)
Add a line overlay for rendering in this frame.
Definition: OverlayRenderer.cpp:326
void EndFrame()
Reset the list of submitted overlays.
Definition: OverlayRenderer.cpp:355
void PrepareForRendering()
Prepare internal data structures for rendering.
Definition: OverlayRenderer.cpp:376
void RenderForegroundOverlays(Renderer::Backend::IDeviceCommandContext *deviceCommandContext, const CCamera &viewCamera)
Render all the submitted overlays that should appear on top of everything in the world.
Definition: OverlayRenderer.cpp:655
~OverlayRenderer()
Definition: OverlayRenderer.cpp:316
void Initialize()
Performs one-time initialization.
Definition: OverlayRenderer.cpp:321
OverlayRenderer()
Definition: OverlayRenderer.cpp:311
void Upload(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Upload prepared data to backend.
Definition: OverlayRenderer.cpp:474
NONCOPYABLE(OverlayRenderer)
void RenderOverlaysAfterWater(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Render all the submitted overlays that are embedded in the world (i.e.
Definition: OverlayRenderer.cpp:496
void RenderOverlaysBeforeWater(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Render all the submitted overlays that are embedded in the world (i.e.
Definition: OverlayRenderer.cpp:481
OverlayRendererInternals * m
Definition: OverlayRenderer.h:163
void RenderQuadOverlays(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Helper method; batch-renders all registered quad overlays, batched by their texture for effiency.
Definition: OverlayRenderer.cpp:587
void RenderSphereOverlays(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Helper method; batch-renders all sphere quad overlays.
Definition: OverlayRenderer.cpp:791
void RenderTexturedOverlayLines(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Helper method; renders all overlay lines currently registered in the internals.
Definition: OverlayRenderer.cpp:507
static const float OVERLAY_VOFFSET
Small vertical offset of overlays from terrain to prevent visual glitches.
Definition: OverlayRenderer.h:131
Definition: IDeviceCommandContext.h:42
IShaderProgram is a container for multiple shaders of different types.
Definition: IShaderProgram.h:81
Definition: OverlayRenderer.cpp:153
Line-based overlay, with world-space coordinates, rendered in the world potentially behind other obje...
Definition: Overlay.h:39
Rectangular single-quad terrain overlay, in world space coordinates.
Definition: Overlay.h:161
Definition: Overlay.h:169
Billboard sprite overlay, with world-space coordinates, rendered on top of all other objects.
Definition: Overlay.h:148
Textured line overlay, with world-space coordinates, rendered in the world onto the terrain.
Definition: Overlay.h:66