Keeps its object at a point on the screen, such as the top-left corner, on every screen size and while the camera moves.
More...
|
| | ScreenAnchor () |
| | ~ScreenAnchor () override |
| | Component () |
| virtual | ~Component ()=default |
| | Component (const Component &)=delete |
| Component & | operator= (const Component &)=delete |
| ComponentType | GetType () const |
| | The class's type id (TypeId<T>()), 0 for an instance with no type info.
|
| ComponentType | GetBaseType () const |
| | The direct component base's type id, so GetComponent<Base>() finds subclasses.
|
| const ComponentTypeInfo * | GetTypeInfo () const |
| | The class entry this instance runs through.
|
| void | SetTypeInfo (const ComponentTypeInfo *info) |
| | Attaches the class entry.
|
| bool | DeclaresUpdate () const |
| | True when this class (or a reflected base) declares Update(), as the codegen read it from the class declaration.
|
| Object * | GetOwner () const |
| void | SetOwner (Object *owner) |
| virtual void | Awake () |
| | Called once, after AssetRefs and ObjectRefs are resolved.
|
| virtual void | Start () |
| | Called once before the first Update, after every component's Awake has run.
|
| virtual void | Update () |
| | Called every frame, only on classes that declare it.
|
| bool | HasAwoken () const |
| bool | HasStarted () const |
| void | MarkAwoken () |
| void | MarkStarted () |
| virtual void | LoadAssets () |
| | Loads the assets this component needs (sprites, fonts, ...).
|
| virtual void | UnloadAssets () |
| | Drops this component's asset pointers before shutdown.
|
| virtual void | RuntimeUpdate (float deltaTime) |
| | Engine-driven per-frame work (physics, animation, ...), separate from the script-facing Update(): it runs in every mode, including the editor in edit mode, on components whose NeedsRuntimeUpdate() is true.
|
| virtual void | OnAssetRefResolved (const char *propertyName, void *asset, const char *guid) |
| | Called after LifecycleManager resolves the AssetRef field propertyName to asset, loaded from guid.
|
| virtual bool | NeedsAssetLoading () const |
| | True when LoadAssets() should be called.
|
| virtual bool | NeedsRuntimeUpdate () const |
| | True when RuntimeUpdate() should be called each frame.
|
| bool | Deserialize (SceneFormat::SceneMsgPackParser &parser, uint32_t mapSize) |
| | Reads this component's fields from the MessagePack map the parser is at (mapSize key-value pairs), through the codegen's hash-switch deserializer.
|
| void | ResolveObjectRefs (Scene *scene) |
| | Points every ObjectRef field at its object in scene (ObjectRef.id -> ObjectRef.resolved).
|
| void | RemapObjectRefs (const std::unordered_map< uint32_t, uint32_t > &idRemap) |
| | Rewrites ObjectRef ids through idRemap (old id -> new id), after Instantiate() gave the copies new ids.
|
| bool | HasRefsResolved () const |
| void | MarkRefsResolved () |
| void | ResetRefsResolved () |
| virtual void | OnPropertyChanged (const char *propertyName) |
| | Called when the editor changes the field propertyName, after both Execute() and Undo() of ModifyComponentPropertyCommand.
|
Keeps its object at a point on the screen, such as the top-left corner, on every screen size and while the camera moves.
For a HUD: hearts at Top Left, a score at Top Right.
The object sits at the anchor plus the offset, in meters, with Y up. Its position in the Transform is set from these, so it is not edited there; rotation and scale still come from the Transform, and children follow the object as usual.
Placement runs once per frame, before drawing, from the scene's camera and the screen size (PlaceAll). The object then has a normal world position, so input and other scripts see it where it is drawn. With update set to Once, the game places it on its first frame only; the editor, outside play, places it every frame so the Play view shows the picked screen.