Skip to content

Commit 78bd1bb

Browse files
committed
Added xyzs to SpherePoints builder methods
1 parent 8398531 commit 78bd1bb

2 files changed

Lines changed: 22 additions & 22 deletions

File tree

src/main/java/dev/latvian/mods/kmath/SpherePoints.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ public void calculate() {
9090
*/
9191
}
9292

93-
public void buildQuads(UV uv, VertexCallback callback) {
93+
public void buildQuads(float x, float y, float z, float s, UV uv, VertexCallback callback) {
9494
var u0 = uv.u0();
9595
var v0 = uv.v0();
9696
var u1 = uv.u1();
@@ -109,27 +109,27 @@ public void buildQuads(UV uv, VertexCallback callback) {
109109
var u1l = KMath.lerp(nc.u(), u0, u1);
110110
var v1l = KMath.lerp(nr.v(), v0, v1);
111111

112-
callback.acceptPos(cc.x() * nr.m(), nr.y(), cc.z() * nr.m()).acceptTex(u0l, v1l).acceptNormal(nv.x, nv.y, nv.z);
113-
callback.acceptPos(cc.x() * cr.m(), cr.y(), cc.z() * cr.m()).acceptTex(u0l, v0l).acceptNormal(nv.x, nv.y, nv.z);
114-
callback.acceptPos(nc.x() * cr.m(), cr.y(), nc.z() * cr.m()).acceptTex(u1l, v0l).acceptNormal(nv.x, nv.y, nv.z);
115-
callback.acceptPos(nc.x() * nr.m(), nr.y(), nc.z() * nr.m()).acceptTex(u1l, v1l).acceptNormal(nv.x, nv.y, nv.z);
112+
callback.acceptPos(x + cc.x() * nr.m() * s, y + nr.y() * s, z + cc.z() * nr.m() * s).acceptTex(u0l, v1l).acceptNormal(nv.x, nv.y, nv.z);
113+
callback.acceptPos(x + cc.x() * cr.m() * s, y + cr.y() * s, z + cc.z() * cr.m() * s).acceptTex(u0l, v0l).acceptNormal(nv.x, nv.y, nv.z);
114+
callback.acceptPos(x + nc.x() * cr.m() * s, y + cr.y() * s, z + nc.z() * cr.m() * s).acceptTex(u1l, v0l).acceptNormal(nv.x, nv.y, nv.z);
115+
callback.acceptPos(x + nc.x() * nr.m() * s, y + nr.y() * s, z + nc.z() * nr.m() * s).acceptTex(u1l, v1l).acceptNormal(nv.x, nv.y, nv.z);
116116
}
117117
}
118118
}
119119

120-
public void buildLines(VertexCallback callback) {
120+
public void buildLines(float x, float y, float z, float s, VertexCallback callback) {
121121
for (int r = 0; r < rows.length - 1; r++) {
122122
for (int c = 0; c < cols.length - 1; c++) {
123123
var cr = rows[r];
124124
var nr = rows[r + 1];
125125
var cc = cols[c];
126126
var nc = cols[c + 1];
127127

128-
callback.acceptPos(cc.x() * nr.m(), nr.y(), cc.z() * nr.m());
129-
callback.acceptPos(cc.x() * cr.m(), cr.y(), cc.z() * cr.m());
128+
callback.acceptPos(x + cc.x() * nr.m() * s, y + nr.y() * s, z + cc.z() * nr.m() * s);
129+
callback.acceptPos(x + cc.x() * cr.m() * s, y + cr.y() * s, z + cc.z() * cr.m() * s);
130130

131-
callback.acceptPos(cc.x() * cr.m(), cr.y(), cc.z() * cr.m());
132-
callback.acceptPos(nc.x() * cr.m(), cr.y(), nc.z() * cr.m());
131+
callback.acceptPos(x + cc.x() * cr.m() * s, y + cr.y() * s, z + cc.z() * cr.m() * s);
132+
callback.acceptPos(x + nc.x() * cr.m() * s, y + cr.y() * s, z + nc.z() * cr.m() * s);
133133
}
134134
}
135135
}

src/main/java/dev/latvian/mods/kmath/render/SphereRenderer.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,27 +10,27 @@
1010
import net.minecraft.client.renderer.MultiBufferSource;
1111

1212
public interface SphereRenderer {
13-
static void entity(PoseStack ms, SpherePoints points, Color color, UV uv, LightUV light, OverlayUV overlay, VertexCallback callback) {
14-
points.buildQuads(uv, ms.last().transform(callback).withColor(color).withLight(light).withOverlay(overlay));
13+
static void entity(PoseStack ms, float x, float y, float z, float s, SpherePoints points, Color color, UV uv, LightUV light, OverlayUV overlay, VertexCallback callback) {
14+
points.buildQuads(x, y, z, s, uv, ms.last().transform(callback).withColor(color).withLight(light).withOverlay(overlay));
1515
}
1616

17-
static void entity(PoseStack ms, SpherePoints points, VertexCallback callback) {
18-
entity(ms, points, Color.WHITE, UV.FULL, LightUV.NONE, OverlayUV.NORMAL, callback);
17+
static void entity(PoseStack ms, float x, float y, float z, float s, SpherePoints points, VertexCallback callback) {
18+
entity(ms, x, y, z, s, points, Color.WHITE, UV.FULL, LightUV.NONE, OverlayUV.NORMAL, callback);
1919
}
2020

21-
static void quads(PoseStack ms, SpherePoints points, MultiBufferSource buffers, BufferSupplier type, boolean cull, Color color) {
22-
quads(ms, points, color, type.quads(buffers, cull));
21+
static void quads(PoseStack ms, float x, float y, float z, float s, SpherePoints points, MultiBufferSource buffers, BufferSupplier type, boolean cull, Color color) {
22+
quads(ms, x, y, z, s, points, color, type.quads(buffers, cull));
2323
}
2424

25-
static void quads(PoseStack ms, SpherePoints points, Color color, VertexCallback callback) {
26-
points.buildQuads(UV.FULL, ms.last().transform(callback).withColor(color));
25+
static void quads(PoseStack ms, float x, float y, float z, float s, SpherePoints points, Color color, VertexCallback callback) {
26+
points.buildQuads(x, y, z, s, UV.FULL, ms.last().transform(callback).withColor(color));
2727
}
2828

29-
static void lines(PoseStack ms, SpherePoints points, Color color, VertexCallback callback) {
30-
points.buildLines(ms.last().transform(callback).withColor(color));
29+
static void lines(PoseStack ms, float x, float y, float z, float s, SpherePoints points, Color color, VertexCallback callback) {
30+
points.buildLines(x, y, z, s, ms.last().transform(callback).withColor(color));
3131
}
3232

33-
static void lines(PoseStack ms, SpherePoints points, MultiBufferSource buffers, BufferSupplier type, Color color) {
34-
points.buildLines(ms.last().transform(type.lines(buffers)).withColor(color));
33+
static void lines(PoseStack ms, float x, float y, float z, float s, SpherePoints points, MultiBufferSource buffers, BufferSupplier type, Color color) {
34+
points.buildLines(x, y, z, s, ms.last().transform(type.lines(buffers)).withColor(color));
3535
}
3636
}

0 commit comments

Comments
 (0)