ForgePatch/patches/minecraft/net/minecraft/client/renderer/TransformationMatrix.java.p...

45 lines
1.3 KiB
Diff

--- a/net/minecraft/client/renderer/TransformationMatrix.java
+++ b/net/minecraft/client/renderer/TransformationMatrix.java
@@ -9,7 +9,7 @@
import org.apache.commons.lang3.tuple.Triple;
@OnlyIn(Dist.CLIENT)
-public final class TransformationMatrix {
+public final class TransformationMatrix implements net.minecraftforge.client.extensions.IForgeTransformationMatrix {
private final Matrix4f field_227976_a_;
private boolean field_227977_b_;
@Nullable
@@ -133,4 +133,32 @@
public int hashCode() {
return Objects.hash(this.field_227976_a_);
}
+
+ // FORGE START
+ public Vector3f getTranslation() {
+ func_227990_e_();
+ return field_227978_c_.func_229195_e_();
+ }
+ public Vector3f getScale() {
+ func_227990_e_();
+ return field_227980_e_.func_229195_e_();
+ }
+
+ public Quaternion getRightRot() {
+ func_227990_e_();
+ return field_227981_f_.func_227068_g_();
+ }
+
+ private Matrix3f normalTransform = null;
+ public Matrix3f getNormalMatrix() {
+ checkNormalTransform();
+ return normalTransform;
+ }
+ private void checkNormalTransform() {
+ if (normalTransform == null) {
+ normalTransform = new Matrix3f(field_227976_a_);
+ normalTransform.func_226123_f_();
+ normalTransform.func_226110_a_();
+ }
+ }
}