diff --git a/fabric-renderer-api-v1/src/client/java/net/fabricmc/fabric/api/renderer/v1/model/ForwardingBakedModel.java b/fabric-renderer-api-v1/src/client/java/net/fabricmc/fabric/api/renderer/v1/model/ForwardingBakedModel.java index ee4a824d9..f86a07035 100644 --- a/fabric-renderer-api-v1/src/client/java/net/fabricmc/fabric/api/renderer/v1/model/ForwardingBakedModel.java +++ b/fabric-renderer-api-v1/src/client/java/net/fabricmc/fabric/api/renderer/v1/model/ForwardingBakedModel.java @@ -20,11 +20,14 @@ import java.util.function.Supplier; import net.minecraft.block.BlockState; +import net.minecraft.client.render.RenderLayer; import net.minecraft.client.render.model.BakedModel; import net.minecraft.client.render.model.BakedQuad; import net.minecraft.client.render.model.json.ModelOverrideList; import net.minecraft.client.render.model.json.ModelTransformation; +import net.minecraft.client.render.model.json.ModelTransformationMode; import net.minecraft.client.texture.Sprite; +import net.minecraft.client.util.math.MatrixStack; import net.minecraft.item.ItemStack; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; @@ -33,6 +36,11 @@ import net.fabricmc.fabric.api.renderer.v1.render.RenderContext; +import net.minecraftforge.client.ChunkRenderTypeSet; +import net.minecraftforge.client.model.data.ModelData; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + /** * Base class for specialized model implementations that need to wrap other baked models. * Avoids boilerplate code for pass-through methods. @@ -100,4 +108,50 @@ public ModelOverrideList getOverrides() { public BakedModel getWrappedModel() { return wrapped; } + + @Override + @NotNull + public List getQuads(@Nullable BlockState state, @Nullable Direction side, @NotNull Random rand, @NotNull ModelData data, @Nullable RenderLayer renderType) { + return wrapped.getQuads(state, side, rand, data, renderType); + } + + @Override + public boolean useAmbientOcclusion(BlockState state) { + return wrapped.useAmbientOcclusion(state); + } + + @Override + public boolean useAmbientOcclusion(BlockState state, RenderLayer renderType) { + return wrapped.useAmbientOcclusion(state, renderType); + } + + @Override + public BakedModel applyTransform(ModelTransformationMode transformType, MatrixStack poseStack, boolean applyLeftHandTransform) { + return wrapped.applyTransform(transformType, poseStack, applyLeftHandTransform); + } + + @Override + public @NotNull ModelData getModelData(@NotNull BlockRenderView level, @NotNull BlockPos pos, @NotNull BlockState state, @NotNull ModelData modelData) { + return wrapped.getModelData(level, pos, state, modelData); + } + + @Override + public Sprite getParticleIcon(@NotNull ModelData data) { + return wrapped.getParticleIcon(data); + } + + @Override + public ChunkRenderTypeSet getRenderTypes(@NotNull BlockState state, @NotNull Random rand, @NotNull ModelData data) { + return wrapped.getRenderTypes(state, rand, data); + } + + @Override + public List getRenderTypes(ItemStack itemStack, boolean fabulous) { + return wrapped.getRenderTypes(itemStack, fabulous); + } + + @Override + public List getRenderPasses(ItemStack itemStack, boolean fabulous) { + return wrapped.getRenderPasses(itemStack, fabulous); + } }