aboutsummaryrefslogtreecommitdiff
path: root/stockton-types/src/components/mod.rs
diff options
context:
space:
mode:
authortcmal <me@aria.rip>2024-08-25 17:44:21 +0100
committertcmal <me@aria.rip>2024-08-25 17:44:21 +0100
commit95708732572431dc057a9fd71fa8bd8571a336a2 (patch)
tree3255e3407eb069c8124d41e1d6f60163b7c5091d /stockton-types/src/components/mod.rs
parent9bceddef62c48b56e7b93a2ca19636e1ff6486cb (diff)
feat(all): start using an ECS
Diffstat (limited to 'stockton-types/src/components/mod.rs')
-rw-r--r--stockton-types/src/components/mod.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/stockton-types/src/components/mod.rs b/stockton-types/src/components/mod.rs
index c96417e..0dd9fe9 100644
--- a/stockton-types/src/components/mod.rs
+++ b/stockton-types/src/components/mod.rs
@@ -14,3 +14,26 @@
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+
+use crate::Vector3;
+
+#[derive(Clone, Copy, Debug, PartialEq)]
+struct Transform {
+ /// Position of the object
+ pub position: Vector3,
+
+ /// Rotation of the object (euler angles in radians)
+ pub rotation: Vector3,
+}
+
+#[derive(Clone, Copy, Debug, PartialEq)]
+struct CameraSettings {
+ /// FOV (radians)
+ pub fov: f32,
+
+ /// Near clipping plane (world units)
+ pub near: f32,
+
+ /// Far clipping plane (world units)
+ pub far: f32,
+}