diff options
| author | Linnea Gräf <nea@nea.moe> | 2025-07-17 11:52:28 +0200 |
|---|---|---|
| committer | Linnea Gräf <nea@nea.moe> | 2025-07-17 11:52:28 +0200 |
| commit | 25f0e7fd62db22036969120843165f4759530b8f (patch) | |
| tree | 262ed44e0e68464ba99f7650fed8df102c982fe5 /src/main/kotlin/util/render/TranslatedScissors.kt | |
| parent | 13d64762bbf110fbc52719fb9d93490648199dd2 (diff) | |
| download | Firmament-25f0e7fd62db22036969120843165f4759530b8f.tar.gz Firmament-25f0e7fd62db22036969120843165f4759530b8f.tar.bz2 Firmament-25f0e7fd62db22036969120843165f4759530b8f.zip | |
feat: Launch on 1.21.7
Diffstat (limited to 'src/main/kotlin/util/render/TranslatedScissors.kt')
| -rw-r--r-- | src/main/kotlin/util/render/TranslatedScissors.kt | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/src/main/kotlin/util/render/TranslatedScissors.kt b/src/main/kotlin/util/render/TranslatedScissors.kt index 8f8bdcf..70565ed 100644 --- a/src/main/kotlin/util/render/TranslatedScissors.kt +++ b/src/main/kotlin/util/render/TranslatedScissors.kt @@ -1,26 +1,26 @@ - package moe.nea.firmament.util.render -import org.joml.Matrix4f +import org.joml.Vector3f import org.joml.Vector4f import net.minecraft.client.gui.DrawContext fun DrawContext.enableScissorWithTranslation(x1: Float, y1: Float, x2: Float, y2: Float) { - enableScissor(x1.toInt(), y1.toInt(), x2.toInt(), y2.toInt()) + enableScissor(x1.toInt(), y1.toInt(), x2.toInt(), y2.toInt()) } + fun DrawContext.enableScissorWithoutTranslation(x1: Float, y1: Float, x2: Float, y2: Float) { - val pMat = matrices.peek().positionMatrix.invert(Matrix4f()) - val target = Vector4f() + val pMat = matrices.invert() + var target = Vector3f() - target.set(x1, y1, 0f, 1f) - target.mul(pMat) - val scissorX1 = target.x - val scissorY1 = target.y + target.set(x1, y1, 0f) + target.mul(pMat) + val scissorX1 = target.x + val scissorY1 = target.y - target.set(x2, y2, 0f, 1f) - target.mul(pMat) - val scissorX2 = target.x - val scissorY2 = target.y + target.set(x2, y2, 0f) + target.mul(pMat) + val scissorX2 = target.x + val scissorY2 = target.y - enableScissor(scissorX1.toInt(), scissorY1.toInt(), scissorX2.toInt(), scissorY2.toInt()) + enableScissor(scissorX1.toInt(), scissorY1.toInt(), scissorX2.toInt(), scissorY2.toInt()) } |
