The base class to inherit entity view components from. Entity view components can be used to add features to entity views and gain simple access to all relevant Quantum game API and the Quantum entity. The view component is not updated (OnUpdateView, OnLateUpdateView) if the behaviour has been disabled. More...
Public Member Functions | |
void | Activate (Frame frame, QuantumGame game, QuantumEntityView entityView) |
Is only called internally. Sets the entity view parent. More... | |
void | Deactivate () |
Is only called internally. More... | |
void | GameChanged (QuantumGame game) |
Is only called internally. More... | |
void | Initialize (Dictionary< Type, IQuantumViewContext > contexts) |
Is only called internally. Sets the view context of this entity view component. More... | |
void | LateUpdateView () |
Is only called internally. More... | |
virtual void | OnActivate (Frame frame) |
Is called when the entity view is activated and the entity was created. More... | |
virtual void | OnDeactivate () |
Is called when the view component is deactivated. More... | |
virtual void | OnGameChanged () |
Is called from the QuantumEntityViewUpdater then the observed game is changed. More... | |
virtual void | OnInitialize () |
Is called when the entity view is enabled for the first time. The ViewContext is already set if available. Access to Game, VerifiedFrame, PredictedFrame and PredictedPreviousFrame is not available yet. More... | |
virtual void | OnLateUpdateView () |
Is called from the QuantumEntityViewUpdater on a Unity late update. More... | |
virtual void | OnUpdateView () |
Is called from the QuantumEntityViewUpdater on a Unity update. More... | |
void | UpdateView () |
Is only called internally. More... | |
Public Attributes | |
virtual QuantumGame | Game => _game |
The Game that the entity belongs to. This can change after the OnGameChanged() callback. Set before calling OnActivate(Frame). More... | |
bool | IsActiveAndEnabled => IsActive && enabled && gameObject != null && gameObject.activeInHierarchy |
Returns true if the view component is IsActive and Behaviour.enabled. More... | |
Frame | PredictedFrame => Game?.Frames.Predicted |
The newest predicted frame. Set before calling OnActivate(Frame). More... | |
Frame | PredictedPreviousFrame => Game?.Frames.PredictedPrevious |
The newest predicted previous frame. Set before calling OnActivate(Frame). More... | |
Frame | VerifiedFrame => Game?.Frames.Verified |
The newest verified frame. Set before calling OnActivate(Frame). More... | |
Protected Attributes | |
QuantumEntityView | _entityView |
Cached entity view is updated during Activate. More... | |
QuantumGame | _game |
Cached game object is updated during Activate and GameChanged. More... | |
Properties | |
bool | IsActive [get] |
Is the view component currently activated and not inside the pool. More... | |
bool | IsInitialized [get] |
Returns true if the view component has been initialized. More... | |
T | ViewContext [get] |
The view context of the QuantumEntityViewUpdater associated with this entity view component. More... | |
Properties inherited from Quantum.IQuantumViewComponent | |
bool | IsActive [get] |
Is toggled during Activate and Deactivate."/> More... | |
bool | IsActiveAndEnabled [get] |
Returns IsActive More... | |
bool | IsInitialized [get] |
The initialized state has to kept track of by the view component to not call it multiple times. More... | |
The base class to inherit entity view components from. Entity view components can be used to add features to entity views and gain simple access to all relevant Quantum game API and the Quantum entity. The view component is not updated (OnUpdateView, OnLateUpdateView) if the behaviour has been disabled.
T | The type of the custom view context used by this view component. Can be IQuantumEntityViewContext if not required. |
T | : | IQuantumViewContext |
|
inlinevirtual |
Is called when the entity view is enabled for the first time. The ViewContext is already set if available. Access to Game, VerifiedFrame, PredictedFrame and PredictedPreviousFrame is not available yet.
|
inlinevirtual |
Is called when the entity view is activated and the entity was created.
frame | The frame that the entity was created with, can be predicted or verified base on the QuantumEntityViewBindBehaviour |
.
|
inlinevirtual |
Is called when the view component is deactivated.
|
inlinevirtual |
Is called from the QuantumEntityViewUpdater on a Unity update.
|
inlinevirtual |
Is called from the QuantumEntityViewUpdater on a Unity late update.
|
inlinevirtual |
Is called from the QuantumEntityViewUpdater then the observed game is changed.
|
inline |
Is only called internally. Sets the view context of this entity view component.
contexts | All of the different contexts of the EntityViewUpdater, will select the matching type. |
Implements Quantum.IQuantumViewComponent.
|
inline |
Is only called internally. Sets the entity view parent.
frame | |
game | |
entityView |
Implements Quantum.IQuantumViewComponent.
|
inline |
Is only called internally.
Implements Quantum.IQuantumViewComponent.
|
inline |
Is only called internally.
Implements Quantum.IQuantumViewComponent.
|
inline |
Is only called internally.
Implements Quantum.IQuantumViewComponent.
|
inline |
Is only called internally.
Implements Quantum.IQuantumViewComponent.
virtual QuantumGame Quantum.QuantumViewComponent< T >.Game => _game |
The Game that the entity belongs to. This can change after the OnGameChanged() callback. Set before calling OnActivate(Frame).
Frame Quantum.QuantumViewComponent< T >.PredictedFrame => Game?.Frames.Predicted |
The newest predicted frame. Set before calling OnActivate(Frame).
Frame Quantum.QuantumViewComponent< T >.VerifiedFrame => Game?.Frames.Verified |
The newest verified frame. Set before calling OnActivate(Frame).
Frame Quantum.QuantumViewComponent< T >.PredictedPreviousFrame => Game?.Frames.PredictedPrevious |
The newest predicted previous frame. Set before calling OnActivate(Frame).
bool Quantum.QuantumViewComponent< T >.IsActiveAndEnabled => IsActive && enabled && gameObject != null && gameObject.activeInHierarchy |
Returns true
if the view component is IsActive and Behaviour.enabled.
|
protected |
Cached game object is updated during Activate and GameChanged.
|
protected |
Cached entity view is updated during Activate.
|
get |
The view context of the QuantumEntityViewUpdater associated with this entity view component.
|
get |
Is the view component currently activated and not inside the pool.
|
get |
Returns true
if the view component has been initialized.