Gondwana Game Engine
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, mobile, and web platforms using SkiaSharp for graphics and NAudio for sound.
Loading...
Searching...
No Matches
Gondwana.Rendering.Backbuffers.BitmapBackbuffer Class Referencesealed

Provides a bitmap-based backbuffer implementation for rendering operations using SkiaSharp. This backbuffer maintains an in-memory bitmap surface that can be drawn to from a render thread and safely snapshotted for display on the UI thread. More...

Inheritance diagram for Gondwana.Rendering.Backbuffers.BitmapBackbuffer:
Gondwana.Rendering.Backbuffers.BackbufferBase

Public Member Functions

 BitmapBackbuffer (int width, int height)
 Initializes a new instance of the BitmapBackbuffer class with the specified dimensions.
override void Dispose ()
 Releases all resources used by the BitmapBackbuffer.
Public Member Functions inherited from Gondwana.Rendering.Backbuffers.BackbufferBase
virtual byte[] ToByteArray (SKEncodedImageFormat format=SKEncodedImageFormat.Png, int quality=100)
 Converts the current image to a byte array in the specified format and quality.

Properties

override SKCanvas Canvas [get]
 Gets the SKCanvas for drawing operations on this backbuffer.
SKFilterQuality FilterQuality [get, set]
 Gets or sets the filter quality used when drawing bitmaps to the backbuffer.
Properties inherited from Gondwana.Rendering.Backbuffers.BackbufferBase
SKCanvas Canvas [get]
 Gets the SkiaSharp canvas used for drawing operations on this backbuffer.
SKPaint FogPaint [get, set]
 Gets or sets the paint object used to render fog effects.
SKPaint GridLinePaint [get, set]
 Gets or sets the paint settings used to render grid lines.
SKPaint CollisionBoxPaint [get, set]
 Gets or sets the paint settings used to render collision boxes.
int Width [get]
 Gets the current Backbuffer width in a thread-safe manner.
int Height [get]
 Gets the current Backbuffer height in a thread-safe manner.
SKColor ClearColor [get, set]
 Gets or sets the color used to clear the drawing surface.

Additional Inherited Members

Protected Member Functions inherited from Gondwana.Rendering.Backbuffers.BackbufferBase
 BackbufferBase (int width, int height)
 Initializes a new instance of the BackbufferBase class with the specified dimensions.
void UpdateSize (int width, int height)
 Updates the stored backbuffer dimensions and raises the SizeChanged event.
Protected Attributes inherited from Gondwana.Rendering.Backbuffers.BackbufferBase
readonly SKPaint _fillPaint

Detailed Description

Provides a bitmap-based backbuffer implementation for rendering operations using SkiaSharp. This backbuffer maintains an in-memory bitmap surface that can be drawn to from a render thread and safely snapshotted for display on the UI thread.

Constructor & Destructor Documentation

◆ BitmapBackbuffer()

Gondwana.Rendering.Backbuffers.BitmapBackbuffer.BitmapBackbuffer ( int width,
int height )

Initializes a new instance of the BitmapBackbuffer class with the specified dimensions.

Parameters
widthThe initial width of the backbuffer in pixels.
heightThe initial height of the backbuffer in pixels.

Member Function Documentation

◆ Dispose()

override void Gondwana.Rendering.Backbuffers.BitmapBackbuffer.Dispose ( )
virtual

Releases all resources used by the BitmapBackbuffer.

This method disposes of the underlying SkiaSharp surface and bitmap resources. The disposal is thread-safe and idempotent.

Reimplemented from Gondwana.Rendering.Backbuffers.BackbufferBase.

Property Documentation

◆ Canvas

override SKCanvas Gondwana.Rendering.Backbuffers.BitmapBackbuffer.Canvas
get

Gets the SKCanvas for drawing operations on this backbuffer.

The canvas instance that can be used to perform drawing operations.

Access to the canvas is thread-safe and synchronized using an internal lock.

◆ FilterQuality

SKFilterQuality Gondwana.Rendering.Backbuffers.BitmapBackbuffer.FilterQuality
getset

Gets or sets the filter quality used when drawing bitmaps to the backbuffer.

The SKFilterQuality value that determines the quality of bitmap filtering during rendering. Default is SKFilterQuality.None for pixel-perfect rendering.