![]() |
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.
|
Renders an SVG resource directly by rasterizing lazily and caching the bitmap per destination size. More...
Public Member Functions | |
| DirectSvg (SvgResource svgResource, RenderSurfaceHostBase renderSurfaceHost, SceneLayer sceneLayer, Rectangle worldBounds, string? nickname=null) | |
| Initializes a new world-space DirectSvg. | |
| DirectSvg (SvgResource svgResource, RenderSurfaceHostBase renderSurfaceHost, View view, Rectangle screenBounds, string? nickname=null) | |
| Initializes a new screen-space DirectSvg. | |
| DirectSvg | SetFilterQuality (SKFilterQuality quality) |
| Sets the filter quality used when drawing the cached SVG bitmap. | |
| Public Member Functions inherited from Gondwana.Drawing.Direct.DirectDrawingMovableBase | |
| Vector2 | GetPosition () |
| Gets the current position of this direct drawing in pixel coordinates. | |
| void | SetPosition (Vector2 p) |
| Sets the position of this direct drawing to the specified pixel coordinates. | |
| override void | Update (long tick) |
| Advances this direct drawing's movement using the elapsed time since its previous update, then performs the standard direct-drawing update logic. | |
| Public Member Functions inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |
| RectangleF | GetDrawLocationScreen (View view) |
| Gets the screen-space drawing location for this direct drawing as seen from the specified view. | |
| void | Draw (BackbufferBase backbuffer, RectangleF destRectScreen) |
| Renders this direct drawing to the backbuffer at the specified screen location. | |
| DirectDrawingBase | SetOpacity (float opacity) |
| Instantly sets the opacity to the specified value without animation. | |
| DirectDrawingBase | FadeTo (float targetOpacity, float durationSec) |
| Initiates a smooth fade transition to the specified target opacity over the given duration. | |
| DirectDrawingBase | FadeIn (float durationSec) |
| Fades this direct drawing from its current opacity to fully opaque over the specified duration. | |
| DirectDrawingBase | FadeOut (float durationSec) |
| Fades this direct drawing from its current opacity to fully transparent over the specified duration. | |
| DirectDrawingBase | CancelFade () |
| Cancels any active fade transition, leaving the opacity at its current value. | |
| DirectDrawingBase | SetReveal (float t01) |
| Instantly sets the reveal progress to the specified value without animation. | |
| DirectDrawingBase | SetRevealDirection (RevealDirection dir) |
| Sets the direction from which the reveal animation progresses. | |
| DirectDrawingBase | RevealTo (float t01, float durationSec, Func< float, float >? easing=null) |
| Initiates a smooth reveal animation to the specified target progress over the given duration, optionally using a custom easing function. | |
| DirectDrawingBase | CancelReveal () |
| Stops an active reveal animation at its current progress. | |
| int | CompareTo (DirectDrawingBase? other) |
| Compares this direct drawing to another for sorting by ZOrder. | |
| void | Dispose () |
| Releases all resources used by this DirectDrawingBase instance. | |
| override bool | Equals (object? obj) |
| Determines whether the specified object is equal to the current direct drawing. | |
| override int | GetHashCode () |
| Returns a hash code for this direct drawing. | |
Protected Member Functions | |||
| override void | OnDraw (BackbufferBase backbuffer, RectangleF destRectScreen) | ||
| override void | Dispose (bool disposing) | ||
Releases resources used by this DirectDrawingBase instance.
true, this method:
| |||
| Protected Member Functions inherited from Gondwana.Drawing.Direct.DirectDrawingMovableBase | |||
| DirectDrawingMovableBase (RenderSurfaceHostBase renderSurfaceHost, DirectDrawingMode mode, SceneLayer? sceneLayer, View? view, Rectangle? screenBounds, Rectangle? worldBounds, string? name=null) | |||
| Initializes a new instance of the DirectDrawingMovableBase class with integrated movement capabilities. | |||
| Protected Member Functions inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |||
| void | OnDraw (BackbufferBase backbuffer, RectangleF destRectScreen) | ||
| Performs the concrete drawing for this direct drawing to the backbuffer. | |||
| DirectDrawingBase (RenderSurfaceHostBase renderSurfaceHost, DirectDrawingMode mode, SceneLayer? sceneLayer, View? view, Rectangle? screenBounds, Rectangle? worldBounds, string? nickname=null) | |||
| Initializes a new instance of the DirectDrawingBase class. | |||
Additional Inherited Members | |
| Public Types inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |
| enum | RevealDirection { LeftToRight , RightToLeft , TopToBottom , BottomToTop } |
| Defines the direction from which a reveal animation progressively displays the direct drawing. More... | |
| Static Public Member Functions inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |
| static bool | operator== (DirectDrawingBase? left, DirectDrawingBase? right) |
| Determines whether two direct drawing instances are equal using reference equality. | |
| static bool | operator!= (DirectDrawingBase? left, DirectDrawingBase? right) |
| Determines whether two direct drawing instances are not equal using reference equality. | |
| static bool | operator< (DirectDrawingBase? left, DirectDrawingBase? right) |
| Determines whether the Z-order of the left direct drawing is less than the right. | |
| static bool | operator<= (DirectDrawingBase? left, DirectDrawingBase? right) |
| Determines whether the Z-order of the left direct drawing is less than or equal to the right. | |
| static bool | operator> (DirectDrawingBase? left, DirectDrawingBase? right) |
| Determines whether the Z-order of the left direct drawing is greater than the right. | |
| static bool | operator>= (DirectDrawingBase? left, DirectDrawingBase? right) |
| Determines whether the Z-order of the left direct drawing is greater than or equal to the right. | |
| Protected Attributes inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |
| readonly RenderSurfaceHostBase | _renderSurfaceHost |
| The render surface host that manages this direct drawing's rendering pipeline. | |
| Rectangle | _screenBounds |
| The current screen-space bounds for view-mode direct drawings, in pixels. | |
| Rectangle | _worldBounds |
| The current world-space bounds for scene-layer-mode direct drawings, in pixels. | |
| int | _zOrder |
| The Z-order used for draw sorting. Higher values draw later (on top). | |
| bool | _visible |
| Indicates whether this direct drawing is currently visible and should be rendered. | |
| long | _lastTick = HighResTimer.GetCurrentTick() |
| The last engine tick value used for delta-time calculations in Update. | |
| Properties inherited from Gondwana.Drawing.Direct.DirectDrawingMovableBase | |
| MovementController | Movement [get] |
| Gets the movement controller responsible for changing this direct drawing's position over time. | |
| MovementSpace | PositionSpace [get] |
| Gets the coordinate space in which this movable object's position is expressed. | |
| Properties inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |
| bool | HideWhenFullyTransparent = true [get, set] |
| Gets or sets a value indicating whether this direct drawing should be automatically hidden when its opacity reaches zero during fade transitions. | |
| RenderSurfaceHostBase | RenderSurfaceHost [get] |
| Gets the render surface host that manages this direct drawing's rendering pipeline. | |
| DirectDrawingMode | Mode [get] |
| Gets the drawing mode that determines how this direct drawing is positioned and transformed. | |
| SceneLayer? | SceneLayer [get] |
Gets the scene layer to which this direct drawing is attached, or null if the drawing is in view mode. | |
| View? | View [get] |
Gets the view to which this direct drawing is attached, or null if the drawing is in scene-layer mode. | |
| Rectangle | ScreenBounds [get, set] |
| Gets or sets the screen-space bounds of this direct drawing in pixels. | |
| Rectangle | WorldBounds [get, set] |
| Gets or sets the world-space bounds of this direct drawing in pixels. | |
| TypedValueBag | ValueBag = new() [get] |
| Gets the extensible value bag for storing arbitrary key-value data associated with this direct drawing. | |
| Guid | Id = Guid.NewGuid() [get] |
| Gets the unique identifier for this direct drawing. | |
| string? | Nickname [get] |
| Gets the optional human-readable name for this direct drawing. | |
| int | ZOrder [get, set] |
| Gets or sets the Z-order (depth) used for sorting this direct drawing relative to other drawables. | |
| bool | Visible [get, set] |
| Gets or sets a value indicating whether this direct drawing is visible and should be rendered. | |
| float | Opacity [get, set] |
| Gets or sets the current opacity of this direct drawing. | |
| Properties inherited from Gondwana.Drawing.Direct.IDirectCompositeChild | |
| SceneLayer? | SceneLayer [get] |
Gets the scene layer used by a scene-layer child, or null for a view child. | |
| View? | View [get] |
Gets the view used by a view child, or null for a scene-layer child. | |
| Events inherited from Gondwana.Drawing.Direct.DirectDrawingBase | |
| EventHandler< IDirectDrawable >? | Disposing |
| Occurs when this direct drawing is being disposed. | |
| EventHandler< DirectDrawingBase >? | FadeToCompleted |
| Occurs when a fade transition initiated by FadeTo, FadeIn, or FadeOut completes. | |
| Events inherited from Gondwana.Drawing.Direct.IDirectDrawable | |
| EventHandler< IDirectDrawable >? | Disposing |
| Occurs when the object is being disposed. | |
Renders an SVG resource directly by rasterizing lazily and caching the bitmap per destination size.
Definition at line 14 of file DirectSvg.cs.
| Gondwana.Drawing.Direct.DirectSvg.DirectSvg | ( | SvgResource | svgResource, |
| RenderSurfaceHostBase | renderSurfaceHost, | ||
| SceneLayer | sceneLayer, | ||
| Rectangle | worldBounds, | ||
| string? | nickname = null ) |
Initializes a new world-space DirectSvg.
| svgResource | The svg resource. |
| renderSurfaceHost | The render-surface host that owns the drawing. |
| sceneLayer | The scene layer that owns the content. |
| worldBounds | The bounds in world pixels. |
| nickname | An optional name used to identify the object. |
Definition at line 49 of file DirectSvg.cs.
| Gondwana.Drawing.Direct.DirectSvg.DirectSvg | ( | SvgResource | svgResource, |
| RenderSurfaceHostBase | renderSurfaceHost, | ||
| View | view, | ||
| Rectangle | screenBounds, | ||
| string? | nickname = null ) |
Initializes a new screen-space DirectSvg.
| svgResource | The svg resource. |
| renderSurfaceHost | The render-surface host that owns the drawing. |
| view | The view used for presentation and coordinate conversion. |
| screenBounds | The bounds in screen pixels. |
| nickname | An optional name used to identify the object. |
Definition at line 65 of file DirectSvg.cs.
|
protectedvirtual |
Releases resources used by this DirectDrawingBase instance.
| disposing | true to release both managed and unmanaged resources; false to release only unmanaged resources (called from finalizer). |
true, this method: Reimplemented from Gondwana.Drawing.Direct.DirectDrawingBase.
Definition at line 102 of file DirectSvg.cs.
|
protected |
Definition at line 86 of file DirectSvg.cs.
| DirectSvg Gondwana.Drawing.Direct.DirectSvg.SetFilterQuality | ( | SKFilterQuality | quality | ) |
Sets the filter quality used when drawing the cached SVG bitmap.
| quality | The image encoding quality, from 0 through 100. |
Definition at line 78 of file DirectSvg.cs.