components
18 items
classZBaseComponent
abstract class ZBaseComponent : ZComponent, ZLoggable
Represents the base class for components in the Zernikalos Engine.
interfaceZBindeable
interface ZBindeable
Represents a bindable resource or component in the Zernikalos framework. Classes implementing this interface indicate that they require binding prior to usage and unbinding after usage, typically for rendering or resource management purposes.
interfaceZComponent
interface ZComponent : ZRef
Represents a component in the Zernikalos Engine that provides basic initialization and renderability functionalities. This interface is used as a foundation for defining components that interact with a ZRenderingContext.
classZComponentData
abstract class ZComponentData : ZLoggable, ZRef
Represents an abstract base class for data objects associated with components in the Zernikalos Engine.
classZComponentRenderer
abstract class ZComponentRenderer : ZLoggable
Abstract base class responsible for rendering components in the Zernikalos engine. Serves as the foundation for implementing render-specific logic for components that require rendering capabilities.
classZComponentSerializer
abstract class ZComponentSerializer<T : ZComponent, D : Any> : KSerializer<T>
SERIALIZATION SECTION
enum ZMainComponentType : Enum<ZMainComponentType>
abstract class ZRefComponentSerializer<T : ZComponent, D : ZComponentData, K : ZRefComponentWrapper<D>>(loaderContext: ZLoaderContext) : KSerializer<T>
interfaceZRefComponentWrapper
interface ZRefComponentWrapper<D : ZRef>
interfaceZRenderizable
interface ZRenderizable
Defines a contract for objects that can be rendered on the screen using a rendering system. Implementing classes should provide the logic for drawing their visual representation.
abstract class ZRenderizableComponent<R : ZComponentRenderer> : ZBaseComponent
Represents an abstract component in the Zernikalos Engine that is renderizable, meaning it can produce a renderer to handle the rendering logic.
interfaceZResizable
interface ZResizable
An interface for objects that will listen to changes on the viewport dimensions.
abstract class ZSerializableComponent<D : ZComponentData>(data: D) : ZBaseComponent
classZViewport
@Serializable(with = ZViewportSerializer::class)
class ZViewport : ZRenderizableComponent<ZViewportRenderer> , ZRenderizable, ZResizable
Represents a viewport box for rendering objects in Zernikalos.
data classZViewportData
@Serializable
data class ZViewportData(var clearColor: ZColor = ZColor(.2f, .2f, .2f, 1.0f)) : ZComponentData
classZViewportRenderer
expect class ZViewportRenderer(ctx: ZRenderingContext, data: ZViewportData) : ZComponentRenderer
actual class ZViewportRenderer(ctx: ZRenderingContext, data: ZViewportData) : ZComponentRenderer
actual class ZViewportRenderer(ctx: ZRenderingContext, data: ZViewportData) : ZComponentRenderer
actual class ZViewportRenderer(ctx: ZRenderingContext, data: ZViewportData) : ZComponentRenderer
classZViewportSerializer
class ZViewportSerializer : ZComponentSerializer<ZViewport, ZViewportData>