From 8b03e0b206946fd9849c95580f94fe4d25707953 Mon Sep 17 00:00:00 2001 From: Moritz Zwerger Date: Tue, 1 Aug 2023 03:22:11 +0200 Subject: [PATCH] improve element rotation performance --- .../models/block/element/ElementRotation.kt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/models/block/element/ElementRotation.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/models/block/element/ElementRotation.kt index 9c90dc8c2..024ee58fb 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/models/block/element/ElementRotation.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/models/block/element/ElementRotation.kt @@ -33,10 +33,15 @@ data class ElementRotation( fun apply(positions: FloatArray) { val angle = -angle.rad - Vec3(0, positions).rotateAssign(angle, axis, origin, rescale) - Vec3(3, positions).rotateAssign(angle, axis, origin, rescale) - Vec3(6, positions).rotateAssign(angle, axis, origin, rescale) - Vec3(9, positions).rotateAssign(angle, axis, origin, rescale) + + val vec = Vec3(0, positions) + + for (index in 0 until 4) { + val offset = index * 3 + vec.ofs = offset + + vec.rotateAssign(angle, axis, origin, rescale) + } }