35 lines
966 B
Java
35 lines
966 B
Java
package net.minecraft.client.renderer.special;
|
|
|
|
import com.mojang.blaze3d.vertex.PoseStack;
|
|
import com.mojang.serialization.MapCodec;
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
import net.minecraft.client.model.geom.EntityModelSet;
|
|
import net.minecraft.client.renderer.MultiBufferSource;
|
|
import net.minecraft.world.item.ItemDisplayContext;
|
|
import net.minecraft.world.item.ItemStack;
|
|
import org.jetbrains.annotations.Nullable;
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public interface SpecialModelRenderer<T> {
|
|
void render(
|
|
@Nullable T patterns,
|
|
ItemDisplayContext displayContext,
|
|
PoseStack poseStack,
|
|
MultiBufferSource bufferSource,
|
|
int packedLight,
|
|
int packedOverlay,
|
|
boolean hasFoilType
|
|
);
|
|
|
|
@Nullable
|
|
T extractArgument(ItemStack stack);
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public interface Unbaked {
|
|
@Nullable
|
|
SpecialModelRenderer<?> bake(EntityModelSet modelSet);
|
|
|
|
MapCodec<? extends SpecialModelRenderer.Unbaked> type();
|
|
}
|
|
}
|