Interface IDhApiRenderableBoxGroup

All Superinterfaces:
Collection<DhApiRenderableBox>, Iterable<DhApiRenderableBox>, List<DhApiRenderableBox>, SequencedCollection<DhApiRenderableBox>

public interface IDhApiRenderableBoxGroup extends List<DhApiRenderableBox>
A list of DhApiRenderableBox's that can be rendered to DH's terrain pass.
Since:
API 3.0.0
See Also:
  • Method Details

    • getId

      long getId()
      A unique numerical ID used by DH during rendering. This can also be used to bind/unbind specific IDhApiRenderableBoxGroup's from the renderer.
      Returns:
      the ID for this specific group
    • getResourceLocationNamespace

      String getResourceLocationNamespace()
      Used to determine which mods have added what to the DH renderer. This can be used both by the F3 pie chart so you as a mod developer can profile your code or by shader developers who want to render your objects differently.

      Should be used the same as a vanilla Minecraft ResourceLocation. For example if your mod named "Heavy Thunder" adds additional clouds named "Storm Front", your Resource Location would be something like "HeavyThunder:StormFront" and this method would return "HeavyThunder".
    • getResourceLocationPath

      String getResourceLocationPath()
      Used to determine what type of object mods have added what to the DH renderer. This can be used both by the F3 pie chart so you as a mod developer can profile your code or by shader developers who want to render your objects differently.

      Should be used the same as a vanilla Minecraft ResourceLocation. For example if your mod named "Heavy Thunder" adds additional clouds named "Storm Front", your Resource Location would be something like "HeavyThunder:StormFront" and this method would return "StormFront".
    • setActive

      void setActive(boolean active)
      Sets whether this group should render or not.
    • isActive

      boolean isActive()
      Returns:
      if active this group will render.
    • setSsaoEnabled

      void setSsaoEnabled(boolean ssaoEnabled)
      Sets whether this group should render with Screen Space Ambient Occlusioning.
    • isSsaoEnabled

      boolean isSsaoEnabled()
      Returns:
      if active this group will render with Screen Space Ambient Occlusioning.
    • setOriginBlockPos

      void setOriginBlockPos(DhApiVec3d pos)
      Sets where this group will render in the level.
    • getOriginBlockPos

      DhApiVec3d getOriginBlockPos()
      Returns:
      the block position in the level that all will render relative to.
    • setPreRenderFunc

      void setPreRenderFunc(Consumer<DhApiRenderParam> renderEventParam)
      Called right before this group is rendered.
      This is a good place to change the origin or notify of any box changes.
    • setPostRenderFunc

      void setPostRenderFunc(Consumer<DhApiRenderParam> renderEventParam)
    • triggerBoxChange

      void triggerBoxChange()
      If a cube's color, position, or other property is changed this method must be called for those changes to render.

      Note: changing the group's position via setOriginBlockPos(com.seibel.distanthorizons.api.objects.math.DhApiVec3d) doesn't require calling this method.
    • setSkyLight

      void setSkyLight(int skyLight)
      Only accepts values between 0 and 15
    • getSkyLight

      int getSkyLight()
    • setBlockLight

      void setBlockLight(int blockLight)
      Only accepts values between 0 and 15
    • getBlockLight

      int getBlockLight()
    • setShading

      void setShading(DhApiRenderableBoxGroupShading shading)
    • getShading