diff options
| author | Tyler Murphy <tylerm@tylerm.dev> | 2023-04-17 12:12:01 -0400 |
|---|---|---|
| committer | Tyler Murphy <tylerm@tylerm.dev> | 2023-04-17 12:12:01 -0400 |
| commit | 180aad05decc7eefa87e4e45d6747c48f40e5361 (patch) | |
| tree | 51545197f7c94b4022acab880772c9f4fc65db0e /src/main/java/net/tylermurphy/Minecraft/Scene/Objects/Transform.java | |
| download | minecraftjava-180aad05decc7eefa87e4e45d6747c48f40e5361.tar.gz minecraftjava-180aad05decc7eefa87e4e45d6747c48f40e5361.tar.bz2 minecraftjava-180aad05decc7eefa87e4e45d6747c48f40e5361.zip | |
save
Diffstat (limited to 'src/main/java/net/tylermurphy/Minecraft/Scene/Objects/Transform.java')
| -rwxr-xr-x | src/main/java/net/tylermurphy/Minecraft/Scene/Objects/Transform.java | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/main/java/net/tylermurphy/Minecraft/Scene/Objects/Transform.java b/src/main/java/net/tylermurphy/Minecraft/Scene/Objects/Transform.java new file mode 100755 index 0000000..2da820f --- /dev/null +++ b/src/main/java/net/tylermurphy/Minecraft/Scene/Objects/Transform.java @@ -0,0 +1,59 @@ +package net.tylermurphy.Minecraft.Scene.Objects;
+
+import net.tylermurphy.Minecraft.Scene.World;
+import org.joml.Vector3f;
+
+public class Transform {
+
+ private Vector3f position = new Vector3f(0f, 0f, 0f);
+ private Vector3f rotation = new Vector3f(0f, 0f, 0f);
+ private float scale = 1.0f;
+
+ public Transform setPosition(Vector3f position){
+ this.position = position;
+ return this;
+ }
+
+ public Transform setGlobalPosition(Vector3f position) {
+ this.position = new Vector3f(
+ position.x - World.world_origin.x(),
+ position.y,
+ position.z - World.world_origin.z()
+ );
+ return this;
+ }
+
+ public Transform increasePosition(float dx, float dy, float dz) {
+ this.position.x += dx;
+ this.position.y += dy;
+ this.position.z += dz;
+ return this;
+ }
+
+ public Transform setRotation(Vector3f rotation){
+ this.rotation = rotation;
+ return this;
+ }
+
+ public Transform setScale(float scale){
+ this.scale = scale;
+ return this;
+ }
+
+ public Vector3f getPosition(){
+ return position;
+ }
+
+ public Vector3f getGlobalPosition() {
+ return new Vector3f(position.x+ World.world_origin.x(),position.y,position.z+ World.world_origin.z());
+ }
+
+ public Vector3f getRotation(){
+ return rotation;
+ }
+
+ public float getScale(){
+ return scale;
+ }
+
+}
|