Package org.boxutil.units.legacy
Class LegacyModelData
java.lang.Object
org.boxutil.units.legacy.LegacyModelData
For draw 3D object with lights and sprite:
LegacyModelData mesh = 'some init code';
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionLegacyModelData(org.boxutil.backends.struct.BUtil_Stack3f[] v, org.boxutil.backends.struct.BUtil_Stack3f[] vn, org.boxutil.backends.struct.BUtil_Stack2f[] vt, org.boxutil.backends.struct.BUtil_TriIndex[] vf) LegacyModelData(LegacyModelData source) -
Method Summary
Modifier and TypeMethodDescriptionintvoidglBindSpriteBeforeDraw(int textureID) voidglBindSpriteBeforeDraw(com.fs.starfarer.api.graphics.SpriteAPI sprite) voidglDraw(boolean withNormal, boolean withUV) CallGL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_DEPTH_TEST);before draw, if needed.voidvoidglPushAndApplyIllumination(float alphaMulti, org.lwjgl.util.vector.Vector4f materialAmbient, org.lwjgl.util.vector.Vector4f materialDiffuse, LegacyIlluminantObject... illuminant) Must callglPopAfterApplyIlluminationAndDraw()after draw.voidglPushAndApplyIllumination(float alphaMulti, org.lwjgl.util.vector.Vector4f ambientColor, org.lwjgl.util.vector.Vector4f materialAmbient, org.lwjgl.util.vector.Vector4f materialDiffuse, org.lwjgl.util.vector.Vector4f materialSpecular, org.lwjgl.util.vector.Vector4f materialEmission, Float materialShininess, boolean twoSideShading, boolean smoothShading, LegacyIlluminantObject... illuminant) Must callglPopAfterApplyIlluminationAndDraw()after draw.protected voidputColorData(FloatBuffer uploadBuffer, org.lwjgl.util.vector.Vector4f color, float alphaMulti)
-
Field Details
-
verticesCount
protected final int verticesCount -
_buffers
-
-
Constructor Details
-
LegacyModelData
-
LegacyModelData
public LegacyModelData(org.boxutil.backends.struct.BUtil_Stack3f[] v, org.boxutil.backends.struct.BUtil_Stack3f[] vn, org.boxutil.backends.struct.BUtil_Stack2f[] vt, org.boxutil.backends.struct.BUtil_TriIndex[] vf)
-
-
Method Details
-
putColorData
protected void putColorData(FloatBuffer uploadBuffer, org.lwjgl.util.vector.Vector4f color, float alphaMulti) -
glPushAndApplyIllumination
public void glPushAndApplyIllumination(float alphaMulti, @Nullable org.lwjgl.util.vector.Vector4f ambientColor, @Nullable org.lwjgl.util.vector.Vector4f materialAmbient, @Nullable org.lwjgl.util.vector.Vector4f materialDiffuse, @Nullable org.lwjgl.util.vector.Vector4f materialSpecular, @Nullable org.lwjgl.util.vector.Vector4f materialEmission, @Nullable Float materialShininess, boolean twoSideShading, boolean smoothShading, @NotNull LegacyIlluminantObject... illuminant) Must callglPopAfterApplyIlluminationAndDraw()after draw.- Parameters:
illuminant- maximum 8 objects.
-
glPushAndApplyIllumination
public void glPushAndApplyIllumination(float alphaMulti, @Nullable org.lwjgl.util.vector.Vector4f materialAmbient, @Nullable org.lwjgl.util.vector.Vector4f materialDiffuse, @NotNull LegacyIlluminantObject... illuminant) Must callglPopAfterApplyIlluminationAndDraw()after draw.- Parameters:
illuminant- maximum 8 objects.
-
glBindSpriteBeforeDraw
public void glBindSpriteBeforeDraw(int textureID) -
glBindSpriteBeforeDraw
public void glBindSpriteBeforeDraw(com.fs.starfarer.api.graphics.SpriteAPI sprite) -
glDraw
public void glDraw(boolean withNormal, boolean withUV) CallGL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_DEPTH_TEST);before draw, if needed. -
glPopAfterApplyIlluminationAndDraw
public void glPopAfterApplyIlluminationAndDraw() -
getVerticesCount
public int getVerticesCount() -
getVertexBuffer
-
getNormalBuffer
-
getUVBuffer
-