Skip to main content

Module prelude

Module prelude 

Source

Modules§

app
app_error
config
default_plugin
node
the Node trait is the base trait for every node. the scene is made up of types the implement this trait.
node_builder
the NodeBuilder is used to help create and build nodes within a scene. instead of having tons of parameters NodeBuilder splits node properties into different methods which decreases tedious code and increases readability
node_transform
represents the current transform of a given node. each node has a transform that can be manipulated to move, rotate, and scale the node in 3D space.
plugin

Structs§

App
Main app for the engine
AppState
Contains the runtime state of the application (window, renderer, etc.)
AssetHandle
AssetLibrary
Camera3D
A 3D camera that can be use in a 3d environment.
Camera3DBuilder
builder implementation for Camera3D
Collider3D
Collider3DBuilder
ColliderEnter
ColliderExit
Color
represents a linear color with rgba
Config
Container
containers can store arbitrary data with the scene
ContainerBuilder
builder implementation for container
Core3D
DirectionalLight
Directional light casts light on a scene from a single direction, like the sun. It is used to simulate sunlight in a scene. It is a type of light that is infinitely far away and has no attenuation. It is defined by a direction and a color. It can also cast shadows using a shadow map.
DirectionalLightBuilder
builder implementation for directional lights
Empty
Empty nodes are nodes with no special functionality.
EmptyBuilder
builder for the Empty
Environment
EventCtx
EventReceiver
FixedTimeStep
FixedUpdate
Frame
Manages the frame per second of the game
GameContext
The main game context, containing all the necessary information for the game to run. This includes the window, the nodes, the frame manager, the input manager, and the shadow distance.
GltfScene
Init
Init app state where you can load plugins/scenes but can’t reference the renderer etc
Input
Manages the input from the user
LazyTexture
Mat4
A 4x4 column major matrix.
MaterialBufferData
buffer data for the uniform std430
MaterialProperties
Material properties for the mesh
Mesh3D
Mesh3DBuilder
NodeHandle
Typed Handle to a node in the scene
NodeId
NodeReadGuard
RAII guard for immutible access to a node.
NodeTransform
Represents a nodes transform data in 3d space with position, rotation, and scale as well as a precalculated model matrix.
NodeWriteGuard
RAII guard for mutible access to a node.
Physics
Physics3D
PointLight
point lights nodes represent point lights in the Scene
PointLightBuilder
point light specific builder
Quat
A quaternion representing an orientation.
Ready
Res
ResMut
Resolution
RigidBody3D
RigidBody3DBuilder
Running
Running app state where the app is in the event loop. The renderer is initialized in this state
Scene
A hierarchical scene graph for storing and organizing nodes.
SceneNode
Update
Vec2
A 2-dimensional vector.
Vec3
A 3-dimensional vector.
Vec4
A 4-dimensional vector.

Enums§

AlphaMode
how to treat alpha channel for fragment colors
CapsuleAxis
ColliderShape
Collider shape types
KeyCode
Code representing the location of a physical key
MouseButton
Describes a button of a mouse controller.
ResolutionScale
Resolution scale factor for environment maps
WindowMode

Traits§

Buildable
Buildable nodes have a builder to configure nodes before they are added into a scene
Builder
the builder trait contains a bunch of default building methods for a builable node.
EventLabel
Instanceable
The Instanceable trait is used to define that a node can be efficiently instanced.
IntoScene
Node
The Node trait is used to define that a type is a node in the scene graph. A node is a part of the scene tree that can be transformed and have children. the node_manager only stores nodes that implement the Node trait.
Plugin
Resource
SceneAsset
SceneBuilder

Functions§

time_callback
times a callback and stores it in target

Derive Macros§

Node
Derives the Node trait for a struct with fields for transform, children, and events.