Gondwana Game Engine Development (master) - 2.6.1
Gondwana is a cross-platform 2.5D game and rendering engine written in C#/.NET 8. It provides fine-grained control over rendering, timing, and scene composition, with built-in support for parallax, z-ordering, pixel overhang, collision detection, and particle effects. Gondwana targets desktop and web platforms using SkiaSharp for graphics and pluggable audio backends for desktop and browser targets.
Loading...
Searching...
No Matches
Gondwana.Drawing.Direct Namespace Reference

Namespaces

namespace  ImageLayer
namespace  Particles

Classes

class  DirectComposite
 Represents a movable composite that owns other movable direct drawables and keeps their positions relative to a shared anchor. More...
class  DirectDarknessOverlay
 Renders a view-space darkness / fog overlay with optional world-space reveal sources. More...
class  DirectDrawingBase
 Provides the base implementation for direct drawing objects that can be rendered to the backbuffer with support for opacity, fade transitions, reveal animations, and flexible positioning modes. More...
class  DirectDrawingManager
 Manages the lifecycle, registration, and retrieval of all direct drawing objects in the Gondwana engine. More...
class  DirectDrawingMovableBase
 Provides an abstract base class for direct drawings that support physics-based movement. More...
class  DirectImage
 Renders a bitmap or image to a rectangular region with support for scaling modes, source clipping, tinting, opacity, blend modes, and rotation. More...
class  DirectLightLayer
 Convenience owner for a group of scene-layer radial lights. More...
class  DirectRadialLight
 Draws a bounded, radial light effect as a scene-layer direct drawing. More...
class  DirectRectangle
 Renders a configurable rectangle with support for fill, border, rounded corners, dash patterns, color pulsing, and pattern fills. More...
class  DirectSceneLayerDarknessOverlay
 Renders a world-bounded darkness/fog overlay as a scene-layer direct drawing. More...
class  DirectSvg
 Renders an SVG resource directly by rasterizing lazily and caching the bitmap per destination size. More...
class  DirectVideo
 Draws video frames provided by IVideoPlayer onto the backbuffer. Audio is handled by the IVideoPlayer implementation (e.g., VLC system output on desktop). Construct, control, update, draw and dispose on the engine/UI thread. More...
interface  IDirectCompositeChild
 Defines a movable direct drawable that may be owned by a DirectComposite. More...
interface  IDirectCompositeContainer
 Defines a container that can hold and manage a collection of direct composite children. More...
interface  IDirectDrawable
 Represents any drawable object (movable or static) that can render directly to a RenderSurfaceHost, report its position and bounds, and optionally support movement or composition. More...
class  TextBlock
 A retained-mode text drawable with wrapping, multi-line (
) support, horizontal/vertical alignment, padding, optional shadow/outline effects, and auto-shrink to fit. More...

Enumerations

enum  StretchMode { None , Fill , Uniform , UniformToFill }
 Defines how video content should be stretched or scaled to fit within its display bounds. More...
enum  DirectDrawingMode { SceneLayer , View }
 Specifies where direct drawing operations are applied within the rendering pipeline. More...

Enumeration Type Documentation

◆ DirectDrawingMode

Specifies where direct drawing operations are applied within the rendering pipeline.

This mode determines the coordinate space and lifecycle of direct drawing:

  • SceneLayer Draws in world space as part of a specific scene layer. Content scrolls, zooms, and parallax-moves with the camera.
  • View Draws in screen space at the view level. Content is fixed to the viewport and is not affected by camera movement, making it suitable for UI, overlays, and debug visuals.
Enumerator
SceneLayer 

Performs direct drawing within a scene layer using world-space coordinates.

Drawing in this mode is affected by camera position, zoom, and layer parallax, and participates in the normal scene rendering and refresh logic.

View 

Performs direct drawing at the view level using screen-space coordinates.

Drawing in this mode is independent of camera movement and world transforms, making it ideal for HUD elements, overlays, and diagnostic rendering.

Definition at line 25 of file DirectDrawingMode.cs.

◆ StretchMode

Defines how video content should be stretched or scaled to fit within its display bounds.

Enumerator
None 

Draws the video at its native size from the top-left corner of the bounds, without any scaling.

Fill 

Stretches the video to fill the entire bounds, ignoring the aspect ratio.

Uniform 

Scales the video uniformly to fit inside the bounds while preserving the aspect ratio. The video will be letterboxed or pillarboxed if necessary.

UniformToFill 

Scales the video uniformly to cover the entire bounds while preserving the aspect ratio. Content that overflows the bounds will be cropped.

Definition at line 6 of file StretchMode.cs.