minecraft-src/net/minecraft/client/renderer/SpriteCoordinateExpander.java
2025-07-04 01:41:11 +03:00

52 lines
1.6 KiB
Java

package net.minecraft.client.renderer;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
@Environment(EnvType.CLIENT)
public class SpriteCoordinateExpander implements VertexConsumer {
private final VertexConsumer delegate;
private final TextureAtlasSprite sprite;
public SpriteCoordinateExpander(VertexConsumer delegate, TextureAtlasSprite sprite) {
this.delegate = delegate;
this.sprite = sprite;
}
@Override
public VertexConsumer addVertex(float x, float y, float z) {
return this.delegate.addVertex(x, y, z);
}
@Override
public VertexConsumer setColor(int red, int green, int blue, int alpha) {
return this.delegate.setColor(red, green, blue, alpha);
}
@Override
public VertexConsumer setUv(float u, float v) {
return this.delegate.setUv(this.sprite.getU(u), this.sprite.getV(v));
}
@Override
public VertexConsumer setUv1(int u, int v) {
return this.delegate.setUv1(u, v);
}
@Override
public VertexConsumer setUv2(int u, int v) {
return this.delegate.setUv2(u, v);
}
@Override
public VertexConsumer setNormal(float normalX, float normalY, float normalZ) {
return this.delegate.setNormal(normalX, normalY, normalZ);
}
@Override
public void addVertex(float x, float y, float z, int color, float u, float v, int packedOverlay, int packedLight, float normalX, float normalY, float normalZ) {
this.delegate.addVertex(x, y, z, color, this.sprite.getU(u), this.sprite.getV(v), packedOverlay, packedLight, normalX, normalY, normalZ);
}
}