Package gaiasky.scenegraph
Class MeshObject
- java.lang.Object
-
- gaiasky.scenegraph.SceneGraphNode
-
- gaiasky.scenegraph.AbstractPositionEntity
-
- gaiasky.scenegraph.FadeNode
-
- gaiasky.scenegraph.MeshObject
-
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable
,I3DTextRenderable
,IModelRenderable
,IRenderable
,IStarContainer
,IVisibilitySwitch
,IPosition
public class MeshObject extends FadeNode implements IModelRenderable, I3DTextRenderable, IVisibilitySwitch
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class gaiasky.scenegraph.SceneGraphNode
SceneGraphNode.RenderGroup, SceneGraphNode.TLV3, SceneGraphNode.TLV3D
-
-
Field Summary
Fields Modifier and Type Field Description ModelComponent
mc
MODELITransform[]
transformations
TRANSFORMATIONS - are applied each cycle-
Fields inherited from class gaiasky.scenegraph.FadeNode
catalogInfo, highlighted, hlc, inSceneGraph, labelColour, labelPosition
-
Fields inherited from class gaiasky.scenegraph.AbstractPositionEntity
cc, coordinates, copy, distToCamera, octant, octantId, pos, posSph, size, viewAngle, viewAngleApparent
-
Fields inherited from class gaiasky.scenegraph.SceneGraphNode
aux3d1, aux3d2, aux3d3, aux3d4, aux3f1, aux3f2, aux3f3, aux3f4, children, computed, ct, id, localTransform, name, namekey, numChildren, opacity, orientation, parent, parentkey, parentName, ROOT_NAME, sg, translation
-
-
Constructor Summary
Constructors Constructor Description MeshObject()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addToRenderLists(ICamera camera)
Adds this entity to the necessary render lists after the distance to the camera and the view angle have been determined.void
doneLoading(com.badlogic.gdx.assets.AssetManager manager)
java.lang.String
getDescription()
float
getTextOpacity()
Gets the text opacityboolean
hasAtmosphere()
void
initialize()
boolean
isLabel()
Is it a label or another kind of text?void
render(ExtSpriteBatch batch, ExtShaderProgram shader, FontRenderSystem sys, RenderingContext rc, ICamera camera)
Label renderingvoid
render(IntModelBatch modelBatch, float alpha, double t, RenderingContext rc)
Model renderingboolean
renderText()
Tells whether the text must be rendered or not for this entityvoid
setAdditiveblending(java.lang.Boolean additive)
void
setDescription(java.lang.String description)
void
setModel(ModelComponent mc)
void
setRotate(double[] rt)
void
setScale(double[] sc)
void
setSize(java.lang.Double size)
Sets the absolute size (diameter) of this entityvoid
setSize(java.lang.Long size)
Sets the absolute size (diameter) of this entityvoid
setToLocalTransform(com.badlogic.gdx.math.Matrix4 localTransform, boolean forceUpdate)
void
setTransformName(java.lang.String transformName)
void
setTranslate(double[] tr)
java.lang.String
text()
Returns the textfloat[]
textColour()
Returns an array with the text colour in the fashion [r, g, b, a]void
textDepthBuffer()
Executes the blending for the textvoid
textPosition(ICamera cam, Vector3d out)
Sets the position of this text in the out vectorfloat
textScale()
Returns the text scale for the scale varying in the shaderfloat
textSize()
Returns the text sizevoid
updateLocal(ITimeFrameProvider time, ICamera camera)
Updates the local transform matrix.protected void
updateLocalTransform()
Update the local transform with the transform and the rotations/scales necessary.-
Methods inherited from class gaiasky.scenegraph.FadeNode
getBaseOpacity, getCatalogInfo, highlight, isHighlighted, isVisible, setCataloginfo, setCatalogInfo, setCatalogInfoBare, setFadein, setFadeout, setLabelcolor, setLabelposition, setPosition, setPositionobjectname, setUp, setVisible, update, updateLocalValues
-
Methods inherited from class gaiasky.scenegraph.AbstractPositionEntity
computeFuturePosition, getAbsoluteOrientation, getAbsolutePosition, getAbsolutePosition, getAlpha, getDelta, getDistToCamera, getHeight, getHeight, getHeight, getHeightScale, getNext, getOctant, getPos, getPosition, getPosition, getPosSph, getPredictedPosition, getRadius, getSimpleCopy, getSize, getViewAngle, getViewAngleApparent, isCopy, mustUpdatePosition, render2DLabel, render2DLabel, render2DLabel, render2DLabel, render3DLabel, setColor, setColor, setCoordinates
-
Methods inherited from class gaiasky.scenegraph.SceneGraphNode
add, add, addChild, addChild, addFocusableObjects, addNodes, addToIndex, addToRender, dispose, getAggregatedChildren, getChildByName, getChildByNameAndType, getChildrenByType, getComponentType, getCt, getFirstStarAncestor, getId, getLineCopy, getName, getNode, getNode, getOpacity, getOrientation, getRoot, getSceneGraphDepth, getStarCount, getVelocity, insert, isInRender, isInRender, isValidPosition, isVisibilityOn, mustAddToIndex, removeChild, removeFromIndex, removeFromRender, returnToPool, setComputedFlag, setCt, setCt, setId, setName, setNamekey, setParent, setParentkey, toString, update, updateNames, updateNamesRec
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gaiasky.render.IRenderable
getComponentType, getDistToCamera, getOpacity
-
Methods inherited from interface gaiasky.scenegraph.IVisibilitySwitch
getName, isVisible, setName, setVisible
-
-
-
-
Field Detail
-
mc
public ModelComponent mc
MODEL
-
transformations
public ITransform[] transformations
TRANSFORMATIONS - are applied each cycle
-
-
Method Detail
-
initialize
public void initialize()
- Overrides:
initialize
in classSceneGraphNode
-
doneLoading
public void doneLoading(com.badlogic.gdx.assets.AssetManager manager)
- Overrides:
doneLoading
in classFadeNode
-
updateLocal
public void updateLocal(ITimeFrameProvider time, ICamera camera)
Description copied from class:AbstractPositionEntity
Updates the local transform matrix.- Overrides:
updateLocal
in classFadeNode
-
updateLocalTransform
protected void updateLocalTransform()
Update the local transform with the transform and the rotations/scales necessary. Override if your model contains more than just the position and size.
-
setToLocalTransform
public void setToLocalTransform(com.badlogic.gdx.math.Matrix4 localTransform, boolean forceUpdate)
-
addToRenderLists
protected void addToRenderLists(ICamera camera)
Description copied from class:AbstractPositionEntity
Adds this entity to the necessary render lists after the distance to the camera and the view angle have been determined.- Overrides:
addToRenderLists
in classFadeNode
-
render
public void render(IntModelBatch modelBatch, float alpha, double t, RenderingContext rc)
Model rendering- Specified by:
render
in interfaceIModelRenderable
-
setDescription
public void setDescription(java.lang.String description)
- Specified by:
setDescription
in interfaceIVisibilitySwitch
-
getDescription
public java.lang.String getDescription()
- Specified by:
getDescription
in interfaceIVisibilitySwitch
-
setModel
public void setModel(ModelComponent mc)
-
setTransformName
public void setTransformName(java.lang.String transformName)
-
setTranslate
public void setTranslate(double[] tr)
-
setRotate
public void setRotate(double[] rt)
-
setScale
public void setScale(double[] sc)
-
setAdditiveblending
public void setAdditiveblending(java.lang.Boolean additive)
-
hasAtmosphere
public boolean hasAtmosphere()
- Specified by:
hasAtmosphere
in interfaceIModelRenderable
-
renderText
public boolean renderText()
Description copied from interface:I3DTextRenderable
Tells whether the text must be rendered or not for this entity- Specified by:
renderText
in interfaceI3DTextRenderable
- Returns:
- True if text must be rendered
-
render
public void render(ExtSpriteBatch batch, ExtShaderProgram shader, FontRenderSystem sys, RenderingContext rc, ICamera camera)
Label rendering- Specified by:
render
in interfaceI3DTextRenderable
- Parameters:
batch
- The sprite batchshader
- The shadersys
- The font render systemrc
- The render contextcamera
- The camera
-
textColour
public float[] textColour()
Description copied from interface:I3DTextRenderable
Returns an array with the text colour in the fashion [r, g, b, a]- Specified by:
textColour
in interfaceI3DTextRenderable
- Returns:
- Array with the colour
-
textSize
public float textSize()
Description copied from interface:I3DTextRenderable
Returns the text size- Specified by:
textSize
in interfaceI3DTextRenderable
- Returns:
- The text size
-
textScale
public float textScale()
Description copied from interface:I3DTextRenderable
Returns the text scale for the scale varying in the shader- Specified by:
textScale
in interfaceI3DTextRenderable
- Returns:
- The scale
-
textPosition
public void textPosition(ICamera cam, Vector3d out)
Description copied from interface:I3DTextRenderable
Sets the position of this text in the out vector- Specified by:
textPosition
in interfaceI3DTextRenderable
out
- The out parameter with the result
-
text
public java.lang.String text()
Description copied from interface:I3DTextRenderable
Returns the text- Specified by:
text
in interfaceI3DTextRenderable
- Returns:
- The text
-
textDepthBuffer
public void textDepthBuffer()
Description copied from interface:I3DTextRenderable
Executes the blending for the text- Specified by:
textDepthBuffer
in interfaceI3DTextRenderable
-
isLabel
public boolean isLabel()
Description copied from interface:I3DTextRenderable
Is it a label or another kind of text?- Specified by:
isLabel
in interfaceI3DTextRenderable
- Returns:
- Whether this is a label
-
setSize
public void setSize(java.lang.Double size)
Description copied from class:AbstractPositionEntity
Sets the absolute size (diameter) of this entity
-
setSize
public void setSize(java.lang.Long size)
Description copied from class:AbstractPositionEntity
Sets the absolute size (diameter) of this entity
-
getTextOpacity
public float getTextOpacity()
Description copied from interface:I3DTextRenderable
Gets the text opacity- Specified by:
getTextOpacity
in interfaceI3DTextRenderable
- Returns:
- Text opacity
-
-