Class MaterialData

java.lang.Object
org.boxutil.units.standard.attribute.MaterialData

public class MaterialData extends Object
  • Field Details

    • cullFace

      protected byte cullFace
    • textures

      protected final com.fs.starfarer.api.graphics.SpriteAPI[] textures
    • glTex

      protected final int[] glTex
    • state

      protected final float[] state
    • stateB

      protected final boolean[] stateB
    • bindTextureBuf

      protected final IntBuffer bindTextureBuf
  • Constructor Details

    • MaterialData

      public MaterialData()
    • MaterialData

      public MaterialData(MaterialData material)
  • Method Details

    • clearTextures

      public void clearTextures()
    • syncTextures

      public void syncTextures(ModelData entity)
    • reset

      public void reset()
      Without textures.
    • putShaderTexture

      public void putShaderTexture()
    • getTextures

      public com.fs.starfarer.api.graphics.SpriteAPI[] getTextures()
      May incorrect returns if set by texture id.
    • getTexturesID

      public int[] getTexturesID()
    • writeBindTexture

      protected void writeBindTexture(int target, com.fs.starfarer.api.graphics.SpriteAPI sprite, com.fs.starfarer.api.graphics.SpriteAPI defaultSprite)
    • writeBindTextureDirect

      protected void writeBindTextureDirect(int target, int texture)
    • writeBindTextureBuf

      protected void writeBindTextureBuf(int target)
    • getDiffuse

      public com.fs.starfarer.api.graphics.SpriteAPI getDiffuse()
      May incorrect returns if set by texture id.
    • getDiffuseID

      public int getDiffuseID()
    • setDiffuse

      public void setDiffuse(@Nullable com.fs.starfarer.api.graphics.SpriteAPI diffuse)
      Set null for default.
    • setDiffuse

      public void setDiffuse(int diffuse)
    • getNormal

      public com.fs.starfarer.api.graphics.SpriteAPI getNormal()
      May incorrect returns if set by texture id.
    • getNormalID

      public int getNormalID()
    • setNormal

      public void setNormal(@Nullable com.fs.starfarer.api.graphics.SpriteAPI normal)
      Set null for default.
    • setNormal

      public void setNormal(int normal)
    • getComplex

      public com.fs.starfarer.api.graphics.SpriteAPI getComplex()
      May incorrect returns if set by texture id.
    • getComplexID

      public int getComplexID()
    • setComplex

      public void setComplex(@Nullable com.fs.starfarer.api.graphics.SpriteAPI complex)
      Texture layout:
       
       channel   |    attribute
       ------------------------------
       x/red    ==>   emissive mask
       y/green  ==>   roughness
       z/blue   ==>   metalness
       w/alpha  ==>   *ignored
       
       
    • setComplex

      public void setComplex(int complex)
      Texture layout:
       
       channel   |    attribute
       ------------------------------
       x/red    ==>   emissive mask
       y/green  ==>   roughness
       z/blue   ==>   metalness
       w/alpha  ==>   *ignored
       
       
    • getEmissive

      public com.fs.starfarer.api.graphics.SpriteAPI getEmissive()
      May incorrect returns if set by texture id.
    • getEmissiveID

      public int getEmissiveID()
    • setEmissive

      public void setEmissive(@Nullable com.fs.starfarer.api.graphics.SpriteAPI emissive)
      Set null for default.
    • setEmissive

      public void setEmissive(int emissive)
    • getTangent

      public com.fs.starfarer.api.graphics.SpriteAPI getTangent()
      May incorrect returns if set by texture id.
    • getTangentID

      public int getTangentID()
    • setTangent

      public void setTangent(@Nullable com.fs.starfarer.api.graphics.SpriteAPI tangent)
      Set null for default.
    • setTangent

      public void setTangent(int tangent)
    • getCullFace

      public byte getCullFace()
    • setCullBack

      public void setCullBack()
    • setCullFront

      public void setCullFront()
    • setCullFrontAndBack

      public void setCullFrontAndBack()
    • setDisableCullFace

      public void setDisableCullFace()
    • getColorArray

      public float[] getColorArray()
    • getColorC

      public Color getColorC()
    • getColor

      public org.lwjgl.util.vector.Vector4f getColor()
    • getColorAlpha

      public float getColorAlpha()
    • getColorAlphaI

      public int getColorAlphaI()
    • setColor

      public void setColor(@NotNull org.lwjgl.util.vector.Vector4f color)
    • setColor

      public void setColor(float r, float g, float b, float a)
    • setColor

      public void setColor(Color color)
    • setColorAlpha

      public void setColorAlpha(float alpha)
    • setColorAlphaI

      public void setColorAlphaI(int alpha)
    • getEmissiveColorArray

      public float[] getEmissiveColorArray()
    • getEmissiveColorC

      public Color getEmissiveColorC()
    • getEmissiveColor

      public org.lwjgl.util.vector.Vector4f getEmissiveColor()
    • getEmissiveColorAlpha

      public float getEmissiveColorAlpha()
    • getEmissiveColorAlphaI

      public int getEmissiveColorAlphaI()
    • setEmissiveColor

      public void setEmissiveColor(@NotNull org.lwjgl.util.vector.Vector4f color)
    • setEmissiveColor

      public void setEmissiveColor(float r, float g, float b, float a)
    • setEmissiveColor

      public void setEmissiveColor(Color color)
    • setEmissiveColorAlpha

      public void setEmissiveColorAlpha(float alpha)
    • setEmissiveColorAlphaI

      public void setEmissiveColorAlphaI(int alpha)
    • getEmissiveStateArray

      public float[] getEmissiveStateArray()
    • getEmissiveState

      public org.lwjgl.util.vector.Vector3f getEmissiveState()
    • setEmissiveState

      public void setEmissiveState(float alphaToEmissive, float colorToEmissive, float glowPower)
    • getAlphaToEmissive

      public float getAlphaToEmissive()
    • setAlphaToEmissive

      public void setAlphaToEmissive(float alphaToEmissive)
      Parameters:
      alphaToEmissive - mix level, value: 0.0 to 1.0
    • setAlphaToEmissiveDefault

      public void setAlphaToEmissiveDefault()
    • isAdditionEmissive

      public boolean isAdditionEmissive()
      Use alpha mix when false. Vanilla rendering: usually is addition.
    • setAdditionEmissive

      public void setAdditionEmissive(boolean addition)
    • isIgnoreIllumination

      public boolean isIgnoreIllumination()
    • setIgnoreIllumination

      public void setIgnoreIllumination(boolean ignore)
      Will only draws diffuse map and emissive if true.
    • isColorToEmissive

      public float isColorToEmissive()
    • setColorToEmissive

      public void setColorToEmissive(float colorToEmissive)
      Parameters:
      colorToEmissive - mix level, value: 0.0 to 1.0
    • setColorToEmissiveDefault

      public void setColorToEmissiveDefault()
    • getGlowPower

      public float getGlowPower()
    • setGlowPower

      public void setGlowPower(float glowPower)
      Parameters:
      glowPower - Decided by final of emissive level; 0 to 1.0f
    • setGlowPowerDefault

      public void setGlowPowerDefault()
    • getAnisotropic

      public float getAnisotropic()
    • setAnisotropic

      public void setAnisotropic(float anisotropic)
    • getState

      public float[] getState()