Package gaiasky.scene.record
Class ModelComponent
java.lang.Object
gaiasky.scene.record.NamedComponent
gaiasky.scene.record.ModelComponent
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable
,IObserver
,IUpdatable<ModelComponent>
,IComponent
public class ModelComponent
extends NamedComponent
implements com.badlogic.gdx.utils.Disposable, IObserver, IUpdatable<ModelComponent>
-
Field Summary
Modifier and TypeFieldDescriptionboolean
boolean
COMPONENTSdouble
boolean
Fields inherited from class gaiasky.scene.record.NamedComponent
name
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
addReflectionCubemapAttribute
(com.badlogic.gdx.utils.Array<Material> materials) void
Turns off all directional lights.void
Turns off all point lights.void
Completely disables the depth test.void
Sets the depth test of this model to read only.void
Sets the depth test of this model to read and write.com.badlogic.gdx.graphics.g3d.environment.DirectionalLight
dirLight
(int i) Returns the given directional light.void
void
dispose()
void
doneLoading
(com.badlogic.gdx.assets.AssetManager manager, com.badlogic.gdx.math.Matrix4 localTransform, float[] cc) void
doneLoading
(com.badlogic.gdx.assets.AssetManager manager, com.badlogic.gdx.math.Matrix4 localTransform, float[] cc, boolean mesh) boolean
hasDirLight
(int i) boolean
boolean
hasPointLight
(int i) void
initialize
(boolean mesh) void
initialize
(String name) void
boolean
boolean
boolean
boolean
Returns whether this model is tessellated or not.void
load
(com.badlogic.gdx.math.Matrix4 localTransform) void
Event notification call.com.badlogic.gdx.graphics.g3d.environment.PointLight
pointLight
(int i) Returns the given point light.void
print
(Logger.Log log) void
randomizeAll
(long seed, double size) Creates a random model component using the given seed.void
removeReflectionCubemapAttribute
(com.badlogic.gdx.utils.Array<Material> materials) void
setAmbientColor
(double[] color) void
setAmbientColor
(Double level) void
setAmbientLevel
(Double level) void
setBlendMode
(BlendMode blendMode) void
setBlendMode
(String blendModeString) void
setColorAttribute
(int attrib, float[] rgba) void
setCulling
(Boolean culling) void
setCulling
(String culling) void
setDepthTest
(int func, boolean mask) void
setFloatAttribute
(Material mat, int attribute, float value) void
setFloatExtAttribute
(int attrib, float value) static void
setGlobalAmbientLight
(float level) Sets the ambient lightvoid
setIntAttribute
(Material mat, int attribute, int value) void
void
Sets the model file path (this must be a .g3db, .g3dj or .obj).void
setModelInitialized
(boolean initialized) void
void
setPrimitiveType
(int primitiveType) void
setPrimitiveType
(String primitiveType) void
void
void
setSize
(double sizeInternal) void
setStaticlight
(Boolean staticLight) void
setStaticlight
(Double lightLevel) void
setStaticlight
(String staticLight) void
setStaticLight
(Boolean staticLight) void
setStaticLight
(Double lightLevel) void
setStaticLight
(String staticLight) void
setTransparency
(float alpha) void
setTransparency
(float alpha, int blendSrc, int blendDest, boolean blendEnabled) void
setTransparencyColor
(float alpha) void
Sets the type of the model to construct.void
setUsecolor
(Boolean usecolor) void
setUsecolor
(String usecolor) void
setUseColor
(Boolean useColor) void
setUseColor
(String useColor) void
setVector3Attribute
(Material mat, int attribute, com.badlogic.gdx.math.Vector3 value) void
setVROffset
(NaturalCamera cam) toString()
void
touch()
void
touch
(com.badlogic.gdx.math.Matrix4 localTransform) Initialises the model or texture if LAZY_X_INIT is onvoid
update
(boolean relativistic, com.badlogic.gdx.math.Matrix4 localTransform, float alpha) void
update
(boolean relativistic, com.badlogic.gdx.math.Matrix4 localTransform, float alpha, int blendSrc, int blendDst, boolean blendEnabled) void
update
(float alpha) void
update
(float alpha, boolean relativistic) void
update
(com.badlogic.gdx.math.Matrix4 localTransform, float alpha) void
update
(com.badlogic.gdx.math.Matrix4 localTransform, float alpha, int blendSrc, int blendDst, boolean blendEnabled) void
Sets the depth test of this model using the information in theblendMode
attribute like so: blendMode = alpha -> depth reads and writes blendMode = additive -> depth reads but no writesvoid
updateEclipsingBodyUniforms
(com.badlogic.ashley.core.Entity entity) void
updateRelativisticEffects
(ICamera camera) void
updateRelativisticEffects
(ICamera camera, float vc) void
updateRelativisticEffects
(Material mat, ICamera camera) void
updateRelativisticEffects
(Material mat, ICamera camera, float vc) void
updateVelocityBufferUniforms
(ICamera camera) void
updateVelocityBufferUniforms
(Material mat, ICamera camera) void
updateWith
(ModelComponent object) Methods inherited from class gaiasky.scene.record.NamedComponent
createModelParameters, gaussian, gaussian, gaussian
-
Field Details
-
forceInit
public boolean forceInit -
instance
-
env
-
params
-
type
-
modelFile
-
scale
public double scale -
culling
public boolean culling -
tessellated
public boolean tessellated -
mtc
COMPONENTS -
rec
-
vbc
-
-
Constructor Details
-
ModelComponent
public ModelComponent() -
ModelComponent
-
-
Method Details
-
setGlobalAmbientLight
public static void setGlobalAmbientLight(float level) Sets the ambient light- Parameters:
level
- Ambient light level between 0 and 1
-
pointLight
public com.badlogic.gdx.graphics.g3d.environment.PointLight pointLight(int i) Returns the given point light.- Parameters:
i
- The index of the light (must be less thanConstants.N_POINT_LIGHTS
).- Returns:
- The point light with index i.
-
hasPointLight
public boolean hasPointLight(int i) -
clearPoints
public void clearPoints()Turns off all point lights. -
dirLight
public com.badlogic.gdx.graphics.g3d.environment.DirectionalLight dirLight(int i) Returns the given directional light.- Parameters:
i
- The index of the light (must be less thanConstants.N_DIR_LIGHTS
).- Returns:
- The directional light with index i.
-
hasDirLight
public boolean hasDirLight(int i) -
clearDirectionals
public void clearDirectionals()Turns off all directional lights. -
initialize
- Specified by:
initialize
in interfaceIComponent
- Overrides:
initialize
in classNamedComponent
-
initialize
public void initialize(boolean mesh) -
initializeEnvironment
public void initializeEnvironment() -
doneLoading
public void doneLoading(com.badlogic.gdx.assets.AssetManager manager, com.badlogic.gdx.math.Matrix4 localTransform, float[] cc) -
doneLoading
public void doneLoading(com.badlogic.gdx.assets.AssetManager manager, com.badlogic.gdx.math.Matrix4 localTransform, float[] cc, boolean mesh) -
load
public void load(com.badlogic.gdx.math.Matrix4 localTransform) -
update
public void update(boolean relativistic, com.badlogic.gdx.math.Matrix4 localTransform, float alpha, int blendSrc, int blendDst, boolean blendEnabled) -
update
public void update(com.badlogic.gdx.math.Matrix4 localTransform, float alpha, int blendSrc, int blendDst, boolean blendEnabled) -
update
public void update(boolean relativistic, com.badlogic.gdx.math.Matrix4 localTransform, float alpha) -
update
public void update(com.badlogic.gdx.math.Matrix4 localTransform, float alpha) -
update
public void update(float alpha, boolean relativistic) -
update
public void update(float alpha) -
touch
public void touch() -
touch
public void touch(com.badlogic.gdx.math.Matrix4 localTransform) Initialises the model or texture if LAZY_X_INIT is on -
setModelInitialized
public void setModelInitialized(boolean initialized) -
addColorToMaterial
public void addColorToMaterial() -
dispose
public void dispose()- Specified by:
dispose
in interfacecom.badlogic.gdx.utils.Disposable
-
setVROffset
-
setTransparency
public void setTransparency(float alpha, int blendSrc, int blendDest, boolean blendEnabled) -
setSize
public void setSize(double sizeInternal) -
disableBlending
public void disableBlending() -
updateDepthTest
public void updateDepthTest()Sets the depth test of this model using the information in theblendMode
attribute like so:- blendMode = alpha -> depth reads and writes
- blendMode = additive -> depth reads but no writes
-
depthTestReadOnly
public void depthTestReadOnly()Sets the depth test of this model to read only. -
depthTestReadWrite
public void depthTestReadWrite()Sets the depth test of this model to read and write. -
depthTestDisable
public void depthTestDisable()Completely disables the depth test. -
setDepthTest
public void setDepthTest(int func, boolean mask) -
setTransparency
public void setTransparency(float alpha) -
setTransparencyColor
public void setTransparencyColor(float alpha) -
setFloatExtAttribute
public void setFloatExtAttribute(int attrib, float value) -
setIntAttribute
-
setFloatAttribute
-
setVector3Attribute
-
setColorAttribute
public void setColorAttribute(int attrib, float[] rgba) -
setType
Sets the type of the model to construct.- Parameters:
type
- The type. Currently supported types are sphere|cylinder|ring|disc.
-
setMaterial
-
setModel
Sets the model file path (this must be a .g3db, .g3dj or .obj).- Parameters:
model
- The model file name.
-
setStaticlight
-
setStaticlight
-
setStaticlight
-
setParams
-
setScale
-
setScale
-
setCulling
-
setCulling
-
setUsecolor
-
setUseColor
-
setUsecolor
-
setUseColor
-
getBlendMode
-
setBlendMode
-
setBlendMode
-
updateVelocityBufferUniforms
-
updateVelocityBufferUniforms
-
updateEclipsingBodyUniforms
public void updateEclipsingBodyUniforms(com.badlogic.ashley.core.Entity entity) -
updateRelativisticEffects
-
updateRelativisticEffects
-
updateRelativisticEffects
-
updateRelativisticEffects
-
addReflectionCubemapAttribute
-
removeReflectionCubemapAttribute
-
hasHeight
public boolean hasHeight() -
isTessellated
public boolean isTessellated()Returns whether this model is tessellated or not.- Returns:
- Whether the model is tessellated.
-
notify
Description copied from interface:IObserver
Event notification call. -
isModelInitialised
public boolean isModelInitialised() -
isModelLoading
public boolean isModelLoading()- Returns:
- Whether the model is loading or it has finished.
-
isStaticLight
public boolean isStaticLight() -
setStaticLight
-
setStaticLight
-
setStaticLight
-
setAmbientColor
public void setAmbientColor(double[] color) -
setAmbientLevel
-
setAmbientColor
-
setPrimitiveType
public void setPrimitiveType(int primitiveType) -
setPrimitiveType
-
toString
-
randomizeAll
public void randomizeAll(long seed, double size) Creates a random model component using the given seed. Creates random elevation data, as well as diffuse, normal and specular textures.- Parameters:
seed
- The seed to use.size
- The size of the base body in internal units.
-
print
-
updateWith
- Specified by:
updateWith
in interfaceIUpdatable<ModelComponent>
-