indigo.shared.scenegraph
Members list
Type members
Classlikes
Ambient light isn't emitted from anywhere in particular, it is the base amount of illumination. It's important for a dark cave to light enough for your player to appreciate just how dark it really is.
Ambient light isn't emitted from anywhere in particular, it is the base amount of illumination. It's important for a dark cave to light enough for your player to appreciate just how dark it really is.
Attributes
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
AmbientLight.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait SpatialModifiers[BlankEntity]trait BasicSpatialModifiers[BlankEntity]trait Cloneabletrait EntityNode[BlankEntity]trait RenderNode[BlankEntity]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
BlankEntity.type
Attributes
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Blending instances tell Indigo how to blend the entities onto a layer, and then how to blend the layer onto the layers below it.
Blending instances tell Indigo how to blend the entities onto a layer, and then how to blend the layer onto the layers below it.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Parent type of camera instances. Cameras are used to look around your games graphics / levels / scenes.
Attributes
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
ClipPlayDirection.type
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
ClipPlayMode.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
ClipSheetArrangement.type
Represents many clones of the same clone blank, differentiated only by their transform data.
Represents many clones of the same clone blank, differentiated only by their transform data.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait DependentNode[CloneBatch]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
CloneBatch.type
Represents the standard allowable transformations of a clone.
Represents the standard allowable transformations of a clone.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
CloneBatchData.type
Used as the blueprint for any clones that want to copy it.
Used as the blueprint for any clones that want to copy it.
Value parameters
- cloneable
-
The primitive to clone, can be a Shape, Graphic or Sprite, or any custom entity that extends Cloneable
- id
-
The CloneId of this blank
- isStatic
-
Static clone blanks are only processed once and cached. This means that static sprites will never play their animations!
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
CloneBlank.type
Represents the allowable transformations of a tile clone.
Represents the allowable transformations of a tile clone.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
CloneTileData.type
Represents many clones of the same cloneblank, differentiated by their transform data and which part of the texture it is cropped on.
Represents many clones of the same cloneblank, differentiated by their transform data and which part of the texture it is cropped on.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait DependentNode[CloneTiles]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
CloneTiles.type
Used to distingush between cloneable and non-clonable scene graph nodes.
DependentNodes are built-in node types where Indigo understands how to build the shader data, and the bounds are dependant on the contents of the node.
DependentNodes are built-in node types where Indigo understands how to build the shader data, and the bounds are dependant on the contents of the node.
Attributes
- Companion
- object
- Supertypes
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
DependentNode.type
Direction lights apply light to a scene evenly from a particular direction, as if from a point a very long way away, e.g. the sun.
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
DirectionLight.type
EntityNodes can be extended to create custom scene elements.
EntityNodes can be extended to create custom scene elements.
Can be made cloneable by extending Cloneable
.
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
class BlankEntityclass Clip[M]
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
EntityNode.type
Represents different lighting falloff models, also known as attenuation, i.e. how much a light power decays over distance.
Represents different lighting falloff models, also known as attenuation, i.e. how much a light power decays over distance.
Quadratic is the most physically accurate, but possibly least useful for 2D games! All other models are unrealistic, but possibly easier to work with.
Note that "intensity" will feel different in different lighting models. Try smooth with intensity 1 or 2, Linear 5, or Quadratic 500 and compare.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Graphics are used to draw images on the screen, in a cheap efficient but expressive way. Graphic's party trick is it's ability to crop images.
Graphics are used to draw images on the screen, in a cheap efficient but expressive way. Graphic's party trick is it's ability to crop images.
Attributes
Used to group elements to allow them to be manipulated as a collection.
Used to group elements to allow them to be manipulated as a collection.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait SpatialModifiers[Group]trait BasicSpatialModifiers[Group]trait DependentNode[Group]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
Layers are used to stack collections of renderable elements on top of one another, and then blend them into the rest of the image composited so far. They are very much like layers from photo editing software.
Layers are used to stack collections of renderable elements on top of one another, and then blend them into the rest of the image composited so far. They are very much like layers from photo editing software.
During the scene render, each 'Content' layer in depth order is blended into the one below it, a bit like doing a foldLeft over a list. You can control how the blend is performed to create effects.
Layer stacks are purely an organisational device, and are ignored during rendering.
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Layer entries are holders for Layers, that can either be tagged or untagged. If a layer entry is tagged with a BindingKey
, then if two SceneUpdateFragements are merged together, two entries will the same tag will be combined at the depth of the original.
Layer entries are holders for Layers, that can either be tagged or untagged. If a layer entry is tagged with a BindingKey
, then if two SceneUpdateFragements are merged together, two entries will the same tag will be combined at the depth of the original.
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
LayerEntry.type
Parent type for all lights
Parent type for all lights
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Represents many identical clones of the same clone blank, differentiated only by their shader data. Intended for use with custom entities in particular.
Represents many identical clones of the same clone blank, differentiated only by their shader data. Intended for use with custom entities in particular.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait DependentNode[Mutants]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
Scene audio can either be played on a loop, or be silenced.
Scene audio can either be played on a loop, or be silenced.
Attributes
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class SingleTrackLoop
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
PointLight.type
RenderNodes are built-in node types that have their own size, and where Indigo understands how to build the shader data.
RenderNodes are built-in node types that have their own size, and where Indigo understands how to build the shader data.
Attributes
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
RenderNode.type
Describes what audio is currently being played by the scene as part of a SceneUpdateFragment
. Can play up to three audio sources at once.
Describes what audio is currently being played by the scene as part of a SceneUpdateFragment
. Can play up to three audio sources at once.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
SceneAudio.type
Represents a single audio source, how it is being played, and at what volume. You could implement a cross fade between two audio sources.
Represents a single audio source, how it is being played, and at what volume. You could implement a cross fade between two audio sources.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
SceneAudioSource.type
The parent type of all nodes a user might use or create. Defines the fields needed to draw something onto the screen.
The parent type of all nodes a user might use or create. Defines the fields needed to draw something onto the screen.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait DependentNode[T]class CloneBatchclass CloneTilesclass Groupclass Mutantsclass Sprite[M]class Text[M]trait RenderNode[T]trait EntityNode[T]class BlankEntityclass Clip[M]class Graphic[M]trait Shape[T]class Boxclass Circleclass Lineclass Polygonclass TextBoxShow all
A description of what the engine should next present to the player.
A description of what the engine should next present to the player.
SceneUpdateFragments are predicatably composable, so you can make a scene in pieces and then combine them all at the end.
Note that a SceneUpdateFragment represents what is to happen next. It is not a diff. If you remove a sprite from the definition it will not be drawn.
Value parameters
- audio
-
Background audio.
- blendMaterial
-
Optional blend material that describes how to render the scene to the screen.
- camera
-
Scene level camera enabling pan and zoom.
- cloneBlanks
-
A list of elements that will be referenced by clones in the main layers.
- layers
-
The layers game elements are placed on.
- lights
-
Dynamic lights.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
SceneUpdateFragment.type
Parent type for all Shapes, which are visible elements draw mathematically that require no textures. Shapes are quite versitile and support different fills and stroke effects, even lighting. Due to the way strokes around shapes are drawn, the corners are always rounded.
Parent type for all Shapes, which are visible elements draw mathematically that require no textures. Shapes are quite versitile and support different fills and stroke effects, even lighting. Due to the way strokes around shapes are drawn, the corners are always rounded.
Attributes
- Companion
- object
- Supertypes
-
trait SpatialModifiers[T]trait BasicSpatialModifiers[T]trait Cloneabletrait RenderNode[T]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
Spot lights emit light like a lamp, they are essentially a point light, where the light is only allow to escape in a particular anglular range.
Sprites are used to represented key-frame animated screen elements.
Sprites are used to represented key-frame animated screen elements.
Attributes
Used to draw text onto the screen based on font sprite sheets (images / textures) and a character mapping instance called FontInfo
. Text
instances are a bit of work to set up, but give super crisp pixel perfect results.
Used to draw text onto the screen based on font sprite sheets (images / textures) and a character mapping instance called FontInfo
. Text
instances are a bit of work to set up, but give super crisp pixel perfect results.
Attributes
Used to draw text on the screen quickly based on a font. Much quicker and eaiser to use that Text
, however suffers from all the problems of browser rendered fonts, most notably, you cannot have pixel perfect fonts (fine for mock-ups of HD UI layers perhaps).
Used to draw text on the screen quickly based on a font. Much quicker and eaiser to use that Text
, however suffers from all the problems of browser rendered fonts, most notably, you cannot have pixel perfect fonts (fine for mock-ups of HD UI layers perhaps).
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait SpatialModifiers[TextBox]trait BasicSpatialModifiers[TextBox]trait RenderNode[TextBox]trait SceneNodeclass Objecttrait Matchableclass AnyShow all
Represents a single line of text.
Represents a single line of text.
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Types
A CloneId is used to connect a Clone instance to a CloneBlank.
A CloneId is used to connect a Clone instance to a CloneBlank.
Attributes
Zoom your camera in and out! Behaves like physical camera's zoom, so x2 means "make everything twice as big". Unlike a real camera, you can zoom in or our infinitely!
Zoom your camera in and out! Behaves like physical camera's zoom, so x2 means "make everything twice as big". Unlike a real camera, you can zoom in or our infinitely!