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
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123456]
 NGondwana
 NAssets
 CAssetsFileRepresents a asset file used by the engine, providing functionality to load, manage, and save assets
 CAssetsFileEntryRepresents an entry for an engine asset file, including its type and name
 CAssetsFileIdentifierRepresents an identifier for a specific asset within a file, including its type and name
 NAudio
 NMidi
 CAudioResourceRepresents a audio resource that can be played, paused, resumed, and disposed
 CAudioResourceManagerManages the lifecycle of audio resources, providing loading, retrieval, cloning, and disposal functionality
 CStereoPanSampleProviderSimple stereo balancer: multiplies L/R samples independently. Expects stereo IEEE float (NAudio will convert upstream via ToSampleProvider())
 NCollision
 CAabbRepresents an axis-aligned bounding box (AABB) defined by its minimum and maximum coordinates along the X and Y axes. This is the collision area of a Gondwana.Drawing.Tile."
 CCollisionResult
 CCollisionWorld
 CIColliderWorld-space axis-aligned collider used by the collision system
 CTileCollider
 NConfiguration
 CEngineConfigurationSettings used by the engine when cycling
 CEngineConfigurationFileRepresents a configuration file for the engine, providing functionality to create, load, and save engine settings
 NDrawing
 NAnimation
 NCollisions
 NDirect
 NSprites
 NTilesheets
 CFrameRepresents the source Tilesheet and its coordinates to render on a destination
 CIDrawableRepresents an object that can be drawn on a visual surface, with properties for visibility and stacking order
 CTileRepresents an abstract base class for drawable tiles in the Gondwana engine. Provides core functionality for rendering, animation, collision detection, and scene layer integration
 NInput
 NGamepad
 NKeyboard
 NMouse
 CInputEventConfigurationBaseProvides a base class for input event configuration that implements throttling and pause functionality for various input types (keyboard, mouse, gamepad). This abstract class manages timing between events using high-resolution ticks and tracks the last event occurrence to enable event rate limiting. Derived classes extend this functionality for specific input device types
 NLogging
 CLoggingErrorEventArgsProvides data for the LoggingError event
 NMovement
 NScripted
 CIMovableDefines an object that can be moved within a specific coordinate space
 CIMovableOnSceneLayerImplemented by grid-space IMovable objects that belong to a specific Scenes.SceneLayer
 CMovementControllerCentral controller responsible for managing all movement modes for a single IMovable object. Combines three systems:

  • Follow – hard/soft following of pixel or grid targets.
  • Scripted – tween or constant-speed motion toward a destination.
  • Integrated – free physics-style integration (velocity and acceleration).

The controller automatically selects the correct behavior each frame internally through AdvanceMovement(float)

 CMovementStateRepresents the current motion state of an IMovable object, including velocity, acceleration, damping, and active scripted movements. This structure is used by MovementController to track and manage both physics-based (integrated) and scripted motion behaviors
 NRendering
 NBackbuffers
 NViews
 CRenderSurfaceAdapterBase
 CRenderSurfaceAdapterResizedEventArgsProvides data for the RenderSurfaceAdapterBase.Resized event
 CRenderSurfaceHost< TBackbuffer >Hosts a render surface and manages rendering of a scene to a backbuffer of the specified type. Provides coordination between the scene, views, and the underlying UI adapter for efficient rendering and presentation
 CRenderSurfaceHostBaseRepresents a base class for hosting a render surface, providing functionality for managing rendering operations, backbuffer access, and integration with platform-specific adapters
 CRenderSurfaceHostBindEventArgsProvides data for the RenderSurfaceHost<TBackbuffer>.BindToScene event
 NScenes
 CSceneRepresents a game scene containing multiple layers of tiles, sprites, and game objects. A scene organizes content into layers with independent coordinate systems, parallax scrolling, and z-ordering, providing a complete environment for rendering and gameplay
 CSceneLayerRepresents a single layer within a Scene, containing a grid of tiles and supporting various coordinate systems, parallax scrolling, and rendering properties. Scene layers provide the fundamental structure for organizing and rendering tile-based game content
 CSceneLayerTileRepresents the values stored at a single location on a SceneLayer
 NTimers
 CTimerRepresents a high-resolution timer that can trigger events at specified intervals and supports various timer types and cycles. This class is designed to be used within the Gondwana engine
 NVideo
 CIVideoPlayer
 CVideoFrameReadyEventArgs
 CVideoStateChangedEventArgs
 CVlcVideoPlayer
 NWinForms
 NInput
 NRendering
 CCyclesPerSecondCalculatedEventArgsProvides data for events that report calculated cycles per second (CPS) performance metrics. This event args class contains both gross and net cycle counts, their corresponding rates per second, and the sampling time period. Net CPS typically represents the effective frame rate (FPS) of the engine, while gross CPS includes all cycles regardless of whether they resulted in rendered frames
 CEngineRepresents the core game engine singleton responsible for managing the main update loop, input systems, rendering, timing, and subsystem coordination
 CEngineDispatcherProvides thread-safe dispatching of actions to the engine's background thread. This dispatcher allows external code to safely post work items that should execute on the engine's dedicated update loop thread, ensuring thread-safe access to engine state
 CEngineStateRepresents the complete serializable state of the game engine, including assets, scenes, sprites, audio resources, and custom data. This class provides functionality to save and load engine state to/from files with support for selective state management, compression, and merge operations. The state can be persisted as JSON and optionally compressed using GZip compression
 CIEngineDispatcherDefines a contract for dispatching actions to the engine's background thread in a thread-safe manner. Implementations of this interface provide mechanisms for posting work items from any thread to be executed on the engine's dedicated update loop thread, ensuring thread-safe access to engine state
 CIUiDispatcherDefines a contract for dispatching actions to the UI thread in a thread-safe manner. Implementations of this interface provide mechanisms for posting or sending work items from any thread to be executed on the application's main UI thread, ensuring thread-safe access to UI components and controls
 CTypedValueBagA flexible, strongly-typed value container intended for save-state extensibility
 CUiDispatcherProvides a concrete implementation of IUiDispatcher for dispatching actions to the UI thread using a SynchronizationContext. This class enables thread-safe marshalling of operations from background threads to the application's main UI thread