Skip to main content

Crate embedded_3dgfx

Crate embedded_3dgfx 

Source

Re-exports§

pub use draw::ReadPixel;
pub use bridge::AsEgPoint;
pub use bridge::AsNalgebraPoint;
pub use bridge::draw_to;
pub use bridge::eg_to_nalgebra;
pub use bridge::nalgebra_to_eg;
pub use bridge::render_drawable_to_buffer;
pub use character::CharacterController;
pub use completion::CompletionSlot;
pub use completion::WaitTransfer;
pub use completion::WaitTransferFuture;
pub use display_backend::AsyncDmaTransfer;
pub use display_backend::DisplayBackend;
pub use display_backend::DisplayError;
pub use display_backend::DisplayRegion;
pub use display_backend::DmaTransfer;
pub use display_backend::SimulatorBackend;
pub use display_backend::TransferError;
pub use draw::draw_zbuffered_2xssaa;
pub use draw::DitherConfig;
pub use draw::FogConfig;
pub use draw::fast_blend_rgb565;
pub use draw::fast_blend_rgba8888;
pub use draw::fast_blend_rgba8888_to_rgb565;
pub use draw::reverse_color_rgb565;
pub use draw::reverse_color_rgba8888;
pub use swapchain::StandardSwapChain;
pub use swapchain::SwapChain;
pub use input::InputState;
pub use lights::PointLight;
pub use lights::PointLightSet;
pub use particles::ParticleSpawn;
pub use particles::ParticleSystem;
pub use renderer::DirtyRegion;
pub use renderer::FrameCtx;
pub use retro::LightLevels;
pub use retro::PaletteMode;
pub use retro::RetroStyle;
pub use retro::ScreenTint;
pub use retro::SkyConfig;
pub use retro::StippleMode;
pub use retro::TextureMapping;
pub use sector_lights::LightEffectKind;
pub use sector_lights::SectorLight;
pub use sector_lights::light_level_at;
pub use sector_lights::light_level_u8_at;
pub use tilebin::TileBinStats;
pub use tilebin::TileConfig;
pub use transform_anim::AnimationPlayer;
pub use transform_anim::SampledTransform;
pub use transform_anim::TransformKeyframe;
pub use transform_anim::TransformTrack;
pub use tween::Easing;
pub use tween::Tween;
pub use tween::Tween3;
pub use tween::apply_easing;
pub use tween::lerp;
pub use tween::lerp3;
pub use tween::scale_rgb565;

Modules§

animation
Vertex Animation System
billboard
Billboard rendering for sprites that always face the camera
bridge
Interoperability bridges between embedded-3dgfx and embedded-graphics.
bsp
BSP world rendering — K3dengine::record_bsp and render_bsp_direct.
camera
character
First-person character controller with axis-aligned box collision.
command_buffer
completion
ISR-safe DMA completion signaling for async and sync present paths.
config
display_backend
Display backend abstraction for DMA-based rendering
draw
error
hardware_profile
hud
input
Platform-agnostic input state.
lights
Dynamic point lights for runtime illumination.
mesh
painters
Painter’s Algorithm Implementation
particles
Fixed-capacity, no-alloc particle system for embedded environments.
perfcounter
raycast
High-performance 2.5D DDA Raycasting and Mode 7 True 3D Perspective Floorcasting Engine.
renderer
retro
scene_format
scene_stream
sector_lights
Doom-style sector light animation descriptors and evaluators.
skeleton
Skeletal animation system with subspace deformation (skinning).
swapchain
Swap chain implementation for double-buffered rendering.
telemetry
texture
Texture mapping support for embedded 3D graphics
tilebin
transform_anim
Keyframed rigid-body transform animation (position, rotation, scale).
tween
Time-based interpolation and easing for boot sequences and UI motion.

Structs§

BudgetFallbackOutcome
DegradationOutcome
EndianCorrectedBuffer
A backend for FrameBuf which changes the underlying byte order. This can be useful when using the buffer for DMA with peripherals that have a different endianness than the host.
FrameBuf
Constructs a frame buffer in memory. Lets you define the width(X), height (Y) and pixel type your using in your display (RGB, Monochrome etc.)
K3dengine
MeshRayCastHit
Result of a ray cast against triangle geometry.

Enums§

DrawPrimitive
EndianCorrection
Enum indicating how the bytes should be converted in the host’s memory.

Constants§

DEPTH_EPSILON
Z_MAX_VALUE

Traits§

DMACapableFrameBufferBackend
Backends implementing this Trait can be used for DMA.
PixelRead
Readback capability shared with the rest of the ecosystem.

Functions§

clear_zbuffer
mesh_ray_cast
Ray-cast against triangle geometry using Möller–Trumbore intersection.
to_zdepth

Type Aliases§

ZDepth