From dfb6b4e45065c618fdd2df7424fd66c439cd1841 Mon Sep 17 00:00:00 2001 From: HampusM Date: Fri, 7 Nov 2025 13:57:49 +0100 Subject: feat(engine): make renderer command-based --- engine/src/transform.rs | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'engine/src/transform.rs') diff --git a/engine/src/transform.rs b/engine/src/transform.rs index 7c0c941..05819bc 100644 --- a/engine/src/transform.rs +++ b/engine/src/transform.rs @@ -1,7 +1,46 @@ use ecs::Component; +use crate::builder; use crate::vector::Vec3; +builder!( + #[builder(name = Builder, derives=(Debug))] + #[derive(Debug)] + #[non_exhaustive] + pub struct Transform + { + pub position: Vec3, + pub scale: Vec3, + } +); + +impl Transform +{ + pub fn builder() -> Builder + { + Builder::default() + } +} + +impl Default for Transform +{ + fn default() -> Self + { + Self::builder().build() + } +} + +impl Default for Builder +{ + fn default() -> Self + { + Self { + position: Vec3::from(0.0), + scale: Vec3::from(1.0), + } + } +} + /// A position in world space. #[derive(Debug, Default, Clone, Copy, Component)] pub struct WorldPosition -- cgit v1.2.3-18-g5258