/// <summary> /// Set the grid size and assign static instance /// </summary> void Awake() { //Assign the static instance instance = this; //Set the default sector size to be the same as the buffer distance SetSectorSize(bufferDistance); }
/// <summary> /// Make a static manager instance /// </summary> /// <returns></returns> public static FloatingOrigin Make() { if (Exists()) { return(instance); } else { GameObject g = new GameObject("Floating Origin Manager"); FloatingOrigin org = g.AddComponent <FloatingOrigin>(); org.Awake(); return(org); } }
/// <summary> /// Register transform with the manager and get list if attached colliders /// </summary> public void Start() { WorldPosition center = FloatingOrigin.Make().sceneCenter; //Ensure existance of floating origin manager FloatingOrigin.Add(this); this.worldPosition = new WorldPosition(this.unityPosition); UpdateColliderList(); if (worldPosition.SameSector(center)) { this.OnOriginEnter(center); } else { this.OnOriginExit(center); } }
public void Start() { FloatingOrigin.Add(this); this.worldPosition = new WorldPosition(this.unityPosition); UpdateColliderList(); }