Class ItemStackRenderer

java.lang.Object
org.moddingx.libx.render.ItemStackRenderer
All Implemented Interfaces:
net.minecraft.client.renderer.special.SpecialModelRenderer<net.minecraft.world.item.ItemStack>

public class ItemStackRenderer extends Object implements net.minecraft.client.renderer.special.SpecialModelRenderer<net.minecraft.world.item.ItemStack>
This class is meant to apply a BlockEntityRenderer to items. Using it is really straightforward: Your item also needs a special item model. ItemModelProviderBase provides a method to generate that for you.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
     

    Nested classes/interfaces inherited from interface net.minecraft.client.renderer.special.SpecialModelRenderer

    net.minecraft.client.renderer.special.SpecialModelRenderer.BakingContext
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final net.minecraft.resources.Identifier
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <T extends net.minecraft.world.level.block.entity.BlockEntity>
    void
    addRenderBlock(net.minecraft.world.level.block.entity.BlockEntityType<T> beType, boolean readBlockEntityTag)
    Registers a BlockEntityType to be rendered with the ItemStackRenderer.
    net.minecraft.world.item.ItemStack
    extractArgument(net.minecraft.world.item.ItemStack stack)
     
    get()
    Gets the instance of the ItemStackRenderer.
    void
     
    static void
    registerSpecialModelRenderer(net.neoforged.neoforge.client.event.RegisterSpecialModelRendererEvent event)
     
    void
    submit(net.minecraft.world.item.ItemStack stack, com.mojang.blaze3d.vertex.PoseStack poseStack, net.minecraft.client.renderer.SubmitNodeCollector nodeCollector, int light, int overlay, boolean hasFoilType, int outlineColor)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • RENDERER_ID

      public static final net.minecraft.resources.Identifier RENDERER_ID
  • Constructor Details

    • ItemStackRenderer

      public ItemStackRenderer()
  • Method Details

    • addRenderBlock

      public static <T extends net.minecraft.world.level.block.entity.BlockEntity> void addRenderBlock(net.minecraft.world.level.block.entity.BlockEntityType<T> beType, boolean readBlockEntityTag)
      Registers a BlockEntityType to be rendered with the ItemStackRenderer.
      Parameters:
      beType - The Block Entity Type.
      readBlockEntityTag - If this is set to true and an item has block entity data, it is loaded before rendering.
    • extractArgument

      @Nullable public net.minecraft.world.item.ItemStack extractArgument(@Nonnull net.minecraft.world.item.ItemStack stack)
      Specified by:
      extractArgument in interface net.minecraft.client.renderer.special.SpecialModelRenderer<net.minecraft.world.item.ItemStack>
    • submit

      public void submit(@Nullable net.minecraft.world.item.ItemStack stack, @Nonnull com.mojang.blaze3d.vertex.PoseStack poseStack, @Nonnull net.minecraft.client.renderer.SubmitNodeCollector nodeCollector, int light, int overlay, boolean hasFoilType, int outlineColor)
      Specified by:
      submit in interface net.minecraft.client.renderer.special.SpecialModelRenderer<net.minecraft.world.item.ItemStack>
    • getExtents

      public void getExtents(Consumer<Vector3fc> output)
      Specified by:
      getExtents in interface net.minecraft.client.renderer.special.SpecialModelRenderer<net.minecraft.world.item.ItemStack>
    • get

      public static ItemStackRenderer get()
      Gets the instance of the ItemStackRenderer.
    • registerSpecialModelRenderer

      public static void registerSpecialModelRenderer(net.neoforged.neoforge.client.event.RegisterSpecialModelRendererEvent event)