Summary
Base component to make
TimeStone
's visualizers.
Override callbacks OnSimulationStart()
, OnTimeLineChange(TimeStone.TimeTickOrigin)
, etc. and use visualizationEnabled
to code your visualizer
See PathVisualizer
for an example
- Namespace
- RedGirafeGames
.Agamotto .Scripts .Runtime .Visualizers - Base Types
-
- MonoBehaviour
- Derived Types
graph BT
Type-->Base0["MonoBehaviour"]
Type["AbstractTimeVisualizer"]
class Type type-node
Derived0["PathVisualizer"]-->Type
click Derived0 "/api/RedGirafeGames.Agamotto.Scripts.Runtime.Visualizers/PathVisualizer"
Derived1["OnionSkinVisualizer"]-->Type
click Derived1 "/api/RedGirafeGames.Agamotto.Scripts.Runtime.Visualizers/OnionSkinVisualizer"
Syntax
[AddComponentMenu("")]
[RequireComponent(typeof(TimeAgent))]
public class AbstractTimeVisualizer : MonoBehaviour
Attributes
Type | Description |
---|---|
AddComponentMenu | |
RequireComponent |
Fields
Name | Constant Value | Summary |
---|---|---|
autoAssignStone | ||
auto |
The visualizer listens to
OnSimulationComplete() UnityEvent to update wen received.
|
|
auto |
The visualizer listens to
OnTimeLineChange(TimeStone.TimeTickOrigin) UnityEvent to update when received. This
is mostly used to update during a recording
|
|
logDebug |
Log all messages
|
|
stone | ||
timeAgent |
The timeAgent. Should be present on the GameObject and will be automatically populated
|
|
visualizationEnabled |
Flag to know if the visualization must be visible. It will be set to false if critical data are missing, like the timeAgent or the timeStone for example.
|
Methods
Name | Value | Summary |
---|---|---|
AddStoneListeners |
void |
Add listeners to the TimeStone
|
Awake |
void | |
ClearVisualization |
void |
Base method to clear this visualizer.
Override in extending component.
|
OnInitTimeAgentsList |
void |
Callback to TimeStone's event InitTimeAgentsList
|
OnRecordStart |
void |
Callback to TimeStone's event OnRecordStop
|
OnRecordStop |
void |
Callback to TimeStone's event OnRecordStart
|
OnSimulationComplete |
void |
Callback to TimeStone's event OnSimulationComplete
|
OnSimulationStart |
void |
Callback to TimeStone's event OnSimulationStart
|
On |
void |
Callback to TimeAgent's event InitTimeAgentsList
Only used with
autoAssignStone = true, to automatically set the TimeStone if it's not already defined
The first stone to use this agent will be automatically assigned
|
On |
void |
Callback to TimeAgent's event OnSetDataTick
Can be useful if the visualizer is dependent to the current tick. See OnionSkinVisualizer for example.
|
OnTimeLineChange |
void |
Callback to TimeStone's event OnTimeLineChange
|
OnTimeLineClear |
void |
Callback to TimeStone's event OnTimeLineClear
|
RemoveStoneListeners |
void |
Remove listeners from the TimeStone
|
TryDisableClone |
void |
Visualizer is only used by the Original Time Agent.
But when a TimeAgent is cloned for simulation, its Visualizers components are cloned with it.
So if the time agent is a clone (used by simulation), visualizer is disabled to optimize
|
Update |
void |
Sets flag
visualizationEnabled in case the visualizer misses a critical data to be displayed.
This flag must be used in the Component extending AbstractTimeVisualizer
|