Compare commits

...

2 Commits

Author SHA1 Message Date
cdc5eb3b96 Merged 2025-04-21 23:01:32 +02:00
3d371e2da2 more work done 2025-04-21 23:00:16 +02:00
2 changed files with 44 additions and 3 deletions

View File

@ -364,6 +364,19 @@ public class Matrix4f {
return this;
}
public Matrix4f translateZ(float z) {
if(z == 0F) return this;
if((properties & (PROPERTY_ROTATION | PROPERTY_SCALE)) == 0) {
data[M32] += z;
return evaluateProps();
}
data[M30] += data[M20] * z;
data[M31] += data[M21] * z;
data[M32] += data[M22] * z;
data[M33] += data[M23] * z;
return evaluateProps();
}
public Matrix4f translate(float x, float y) {
if(x == 0F && y == 0F) return this;
if((properties & (PROPERTY_ROTATION | PROPERTY_SCALE)) == 0) {

View File

@ -56,48 +56,79 @@ public class SimpleUIRenderer implements IUIRenderer, AutoCloseable {
}
@Override
<<<<<<< HEAD
public void pushTransform() { transformCache.push(); }
=======
public void pushTransform() {
transform.push();
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void popTransform() { transformCache.pop(); }
=======
public void popTransform() {
transform.pop();
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void translate(float z) { transformCache.translateZ(z); }
=======
public void translate(float z) {
transform.translate(0, 0, z);
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void translate(float x, float y) { transformCache.translate(x, y); }
=======
public void translate(float x, float y) {
transform.translate(x, y);
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void translate(float x, float y, float z) { transformCache.translate(x, y, z); }
=======
public void translate(float x, float y, float z) {
transform.translate(x, y, z);
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void scale(float scale) { transformCache.scale(scale); }
=======
public void scale(float scale) {
transform.scale(scale);
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void scale(float x, float y) { transformCache.scale(x, y, 1F); }
=======
public void scale(float x, float y) {
transform.scale(x, y, 1F);
invalidateMatrix();
}
>>>>>>> branch 'master' of ssh://git@git.speiger.com/Speiger/SimpleJavaEngine.git
@Override
<<<<<<< HEAD
public void rotate(Quaternion rotation) { transformCache.rotate(rotation); }
=======
public void rotate(Quaternion rotation) {
transform.rotate(rotation);
invalidateMatrix();
@ -139,7 +170,6 @@ public class SimpleUIRenderer implements IUIRenderer, AutoCloseable {
@Override
public void drawCustom(Consumer<Matrix4f> matrix) {
validateMatrix();
}
@Override
@ -153,8 +183,6 @@ public class SimpleUIRenderer implements IUIRenderer, AutoCloseable {
public void drawLine(float minX, float minY, float maxX, float maxY, float zLevel, int color) {
validateMatrix();
ensureDrawCall(GLMode.TRIANGLES, VertexTypes.POS_RGBA, 0);
}
@Override