void Start() { VuforiaARController.Instance.RegisterVuforiaStartedCallback(OnVuforiaStarted); VuforiaARController.Instance.RegisterOnPauseCallback(OnVuforiaPaused); DeviceTrackerARController.Instance.RegisterTrackerStartedCallback(OnTrackerStarted); DeviceTrackerARController.Instance.RegisterDevicePoseStatusChangedCallback(OnDevicePoseStatusChanged); this.planeFinder.HitTestMode = HitTestMode.AUTOMATIC; this.productPlacement = FindObjectOfType <ProductPlacement>(); this.touchHandler = FindObjectOfType <TouchHandler>(); this.groundPlaneUI = FindObjectOfType <GroundPlaneUI>(); this.planeAnchor = this.planeAugmentation.GetComponentInParent <AnchorBehaviour>(); this.midAirAnchor = this.midAirAugmentation.GetComponentInParent <AnchorBehaviour>(); this.placementAnchor = this.placementAugmentation.GetComponentInParent <AnchorBehaviour>(); UtilityHelper.EnableRendererColliderCanvas(this.planeAugmentation, false); UtilityHelper.EnableRendererColliderCanvas(this.midAirAugmentation, false); UtilityHelper.EnableRendererColliderCanvas(this.placementAugmentation, false); // Setup a timer to restart the DeviceTracker if tracking does not receive // status change from StatusInfo.RELOCALIZATION after 10 seconds. this.timer = new Timer(10000); this.timer.Elapsed += TimerFinished; this.timer.AutoReset = false; }
void FireRope() { if (playerMotor.isSwinging) { ropeSystem.ResetRope(); return; } if (grapplingHookChargeDisplay.fillAmount < 0.95f || hasShotGrapplingHook == true) { return; } var hit = Physics2D.Raycast(transform.position, GetAimDirection(), 99f, ropeCollisionLayerMask); if (hit.collider != null) { AnchorBehaviour anchorProj = Instantiate(anchorProjectilePrefab).GetComponent <AnchorBehaviour>(); anchorProj.transform.position = transform.position; anchorProj.destination = hit.point; anchorProj.playerOwner = this.gameObject; anchorProj.speed = 100f; hasShotGrapplingHook = true; anchorProj.OnArriveAtDestination += () => ropeSystem.AttachRopeToPoint(anchorProj.transform.position, anchorProj.transform.rotation); anchorProj.OnArriveAtDestination += () => playerMotor.Jump(); anchorProj.OnArriveAtDestination += () => Destroy(anchorProj.gameObject); anchorProj.OnArriveAtDestination += () => hasShotGrapplingHook = false; } Debug.DrawRay(this.transform.position, GetAimDirection()); StartCoroutine(ReloadGrapplingHook()); }
// Use this for initialization void Start() { m_planeManagerA = ARContentA.GetComponentInChildren <PlaneManager>(); m_planeManagerB = ARContentB.GetComponentInChildren <PlaneManager>(); m_anchorInputListenerBehaviourA = ARContentA.GetComponentInChildren <AnchorInputListenerBehaviour>(); m_anchorInputListenerBehaviourB = ARContentB.GetComponentInChildren <AnchorInputListenerBehaviour>(); m_planeFinderBehaviourA = ARContentA.GetComponentInChildren <PlaneFinderBehaviour>(); m_planeFinderBehaviourB = ARContentB.GetComponentInChildren <PlaneFinderBehaviour>(); m_contentPositioningBehaviourA = ARContentA.GetComponentInChildren <ContentPositioningBehaviour>(); m_contentPositioningBehaviourB = ARContentB.GetComponentInChildren <ContentPositioningBehaviour>(); m_anchorBehaviourA = ARContentA.GetComponentInChildren <AnchorBehaviour>(); m_anchorBehaviourB = ARContentB.GetComponentInChildren <AnchorBehaviour>(); m_productPlacementA = ARContentA.GetComponentInChildren <ProductPlacement>(); m_productPlacementB = ARContentB.GetComponentInChildren <ProductPlacement>(); m_touchHandlerA = ARContentA.GetComponentInChildren <TouchHandler>(); m_touchHandlerB = ARContentB.GetComponentInChildren <TouchHandler>(); TurnOffBehaviour(false); TurnOffBehaviour(true); TurnOffBehaviour(false); }
private void Init() { navigationAnchor = new List <GameObject>(); infoAnchor = null; anchorNumber = -1; order = new List <int>(); listofAnchor = new List <AnchorBehaviour>(); ParamMenu.switchTo = null; }
public override Playable CreatePlayable(PlayableGraph graph, GameObject owner) { var director = owner.GetComponent <PlayableDirector>(); Transform tf = ExternalHelp.FetchAttachOfTrack(director, track); AnchorBehaviour beha = new AnchorBehaviour(); beha.Set(clip_pos, clip_rot, tf, director); return(ScriptPlayable <AnchorBehaviour> .Create(graph, beha)); }
private void GetAnchorInfo() { foreach (var anchor in listofAnchor) { if (anchor.order == anchorNumber) { infoAnchor = anchor; } } }
static bool anchorExists; // backs public AnchorExists property #endregion // PRIVATE_MEMBERS #region MONOBEHAVIOUR_METHODS void Start() { VuforiaARController.Instance.RegisterVuforiaStartedCallback(OnVuforiaStarted); VuforiaARController.Instance.RegisterOnPauseCallback(OnVuforiaPaused); DeviceTrackerARController.Instance.RegisterTrackerStartedCallback(OnTrackerStarted); DeviceTrackerARController.Instance.RegisterDevicePoseStatusChangedCallback(OnDevicePoseStatusChanged); m_PlaneFinder.HitTestMode = HitTestMode.AUTOMATIC; m_Playmat = FindObjectOfType <Playmat>(); m_PlaymatAnchor = m_PlaymatAugmentation.GetComponentInParent <AnchorBehaviour>(); UtilityHelper.EnableRendererColliderCanvas(m_PlaymatAugmentation, false); }
private void GetAnchorOrder() { navigationAnchor = new List <GameObject>(GameObject.FindGameObjectsWithTag("Anchor")); if (GameObject.FindGameObjectsWithTag("Anchor").Length > 0) { //Debug.Log("Found Anchor"); } foreach (var anchor in navigationAnchor) { AnchorBehaviour behaviour = anchor.GetComponent <AnchorBehaviour>(); listofAnchor.Add(behaviour); if (behaviour != null) { //Debug.Log("behaviour found" + behaviour.order +behaviour.sceneToGo); } order.Add(behaviour.order); } order.Sort(); }
void Start() { VuforiaARController.Instance.RegisterVuforiaStartedCallback(OnVuforiaStarted); VuforiaARController.Instance.RegisterOnPauseCallback(OnVuforiaPaused); DeviceTrackerARController.Instance.RegisterTrackerStartedCallback(OnTrackerStarted); DeviceTrackerARController.Instance.RegisterDevicePoseStatusChangedCallback(OnDevicePoseStatusChanged); m_PlaneFinder.HitTestMode = HitTestMode.AUTOMATIC; m_ProductPlacement = m_PlacementAugmentation.GetComponentInChildren <ProductPlacement>(); m_TouchHandler = m_PlacementAugmentation.GetComponentInChildren <TouchHandler>(); m_PlacementAnchor = m_PlacementAugmentation.GetComponentInParent <AnchorBehaviour>(); m_GroundPlaneUI = FindObjectOfType <GroundPlaneUI>(); arRCM = GameObject.FindGameObjectWithTag("FXCanvas").GetComponent <ARRenderedCanvasManager>(); UtilityHelper.EnableRendererColliderCanvas(m_PlacementAugmentation, false); }
void Start() { VuforiaARController.Instance.RegisterVuforiaStartedCallback(OnVuforiaStarted); VuforiaARController.Instance.RegisterOnPauseCallback(OnVuforiaPaused); DeviceTrackerARController.Instance.RegisterTrackerStartedCallback(OnTrackerStarted); DeviceTrackerARController.Instance.RegisterDevicePoseStatusChangedCallback(OnDevicePoseStatusChanged); m_PlaneFinder.HitTestMode = HitTestMode.AUTOMATIC; m_GroundPlaneUI = FindObjectOfType <GroundPlaneUI>(); m_PlaneAnchor = planeAnchor.GetComponent <AnchorBehaviour>(); m_MidAirAnchor = midAirAnchor.GetComponent <AnchorBehaviour>(); isPlaced = false; mainLight = GameObject.FindGameObjectWithTag(Tags.Light).GetComponent <Light>(); }
public override Playable CreatePlayable(PlayableGraph graph, GameObject owner) { var director = owner.GetComponent <PlayableDirector>(); var binding = director.GetGenericBinding(track); GameObject go = null; if (binding is Animator) { go = (binding as Animator).gameObject; } else if (binding is Animation) { go = (binding as Animation).gameObject; } AnchorBehaviour beha = new AnchorBehaviour(); beha.Set(clip_pos, clip_rot, go); return(ScriptPlayable <AnchorBehaviour> .Create(graph, beha)); }
static bool anchorExists; // backs public AnchorExists property #endregion // PRIVATE_MEMBERS #region MONOBEHAVIOUR_METHODS void Start() { VuforiaARController.Instance.RegisterVuforiaStartedCallback(OnVuforiaStarted); VuforiaARController.Instance.RegisterOnPauseCallback(OnVuforiaPaused); DeviceTrackerARController.Instance.RegisterTrackerStartedCallback(OnTrackerStarted); DeviceTrackerARController.Instance.RegisterDevicePoseStatusChangedCallback(OnDevicePoseStatusChanged); m_PlaneFinder.HitTestMode = HitTestMode.AUTOMATIC; m_TGOProductPlacement = FindObjectOfType <TGOProductPlacement>(); m_BEPIProductPlacement = FindObjectOfType <BEPIProductPlacement>(); m_TGOTouchHandler = FindObjectOfType <TGOTouchHandlerTest>(); m_BEPITouchHandler = FindObjectOfType <BEPITouchHandlerTest>(); m_GroundPlaneUI = FindObjectOfType <GroundPlaneTestUI>(); m_TGOAnchor = m_TGOAugmentation.GetComponentInParent <AnchorBehaviour>(); m_BEPIAnchor = m_BEPIAugmentation.GetComponentInParent <AnchorBehaviour>(); UtilityHelperTest.EnableRendererColliderCanvas(m_TGOAugmentation, false); UtilityHelperTest.EnableRendererColliderCanvas(m_BEPIAugmentation, false); }
} //END Awake //-------------------------------// private void CheckIfAnchorBehaviourExists() //-------------------------------// { #if VUFORIA //If the AnchorBehaviour doesn't exist, create it and link to it if( GetComponent<AnchorBehaviour>() == null ) { anchorBehaviour = gameObject.AddComponent<AnchorBehaviour>(); } //Otherwise if the script exists, link to it if( anchorBehaviour == null && GetComponent<AnchorBehaviour>() != null ) { anchorBehaviour = GetComponent<AnchorBehaviour>(); } #endif } //END CheckIfAnchorBehaviourExists
void Start() { VuforiaARController.Instance.RegisterVuforiaStartedCallback(OnVuforiaStarted); VuforiaARController.Instance.RegisterOnPauseCallback(OnVuforiaPaused); DeviceTrackerARController.Instance.RegisterTrackerStartedCallback(OnTrackerStarted); DeviceTrackerARController.Instance.RegisterDevicePoseStatusChangedCallback(OnDevicePoseStatusChanged); m_PlaneFinderBehaviour.HitTestMode = HitTestMode.AUTOMATIC; m_ProductPlacement = FindObjectOfType <ProductPlacement>(); m_TouchHandler = FindObjectOfType <TouchHandler>(); m_GroundPlaneUI = FindObjectOfType <GroundPlaneUI>(); copyShoe.transform.SetParent(m_ProductPlacement.gameObject.transform); #if (UNITY_IOS || !UNITY_ANDROID) copyShoe.GetComponentInChildren <Transform>().transform.localScale = new Vector3(2.5f, 2.5f, 2.5f); #elif UNITY_ANDROID copyShoe.GetComponentInChildren <Transform>().transform.localScale = new Vector3(6f, 6f, 6f); #endif copyShoe.GetComponentsInChildren <Transform>()[1].localRotation = Quaternion.Euler(0, 0, 0); m_PlacementAugmentation = copyShoe.transform.parent.gameObject; m_PlacementAnchor = m_PlacementAugmentation.GetComponentInParent <AnchorBehaviour>(); UtilityHelper.EnableRendererColliderCanvas(m_PlacementAugmentation, false); m_PlaneFinder.SetActive(false); shadowPlane = GameObject.Find("ShadowPlane"); shadowPlane.transform.SetParent(copyShoe.transform); shadowPlane.transform.localPosition = new Vector3(0, 0, 0); #if (UNITY_IOS || !UNITY_ANDROID) shadowPlane.transform.localScale = new Vector3(0.2f, 0.2f, 0.2f); shadowPlane.transform.position -= Vector3.up * 0.2f; #elif UNITY_ANDROID shadowPlane.transform.localScale = new Vector3(0.22f, 0.22f, 0.22f); shadowPlane.transform.position -= Vector3.up * 0.4f; #endif shadowPlane.transform.rotation = Quaternion.Euler(90f, 0f, 0f); m_ProductPlacement.SetProductAnchor(null); }
private List <Vector3> initNodes() { List <Vector3> retVector = new List <Vector3>(); int nodeCount = 0; for (int i = 0; i < clothWidth; i++) { for (int j = 0; j < clothHeight; j++) { Vector3 newPosition = new Vector3(j, i, 0); retVector.Add(newPosition); //GameObject newNode = (GameObject)Instantiate(nodePrefab, newPosition, transform.rotation); NodeInfo newNodeInfo = new NodeInfo(); newNodeInfo.GridPosition = new Vector2(j, i); newNodeInfo.WorldPosition = new Vector3(j, i, 0); newNodeInfo.Mass = nodeMass; newNodeInfo.Velocity = Vector3.zero; newNodeInfo.Vertex = nodeCount; //newNode.transform.parent = nodesParent.transform; //newNode.name = "Node " + newNodeInfo.GridPosition; nodes.Add(newNodeInfo); vertexNodeDict[nodeCount] = newNodeInfo; nodeCount = nodeCount + 1; if (newNodeInfo.GridPosition == new Vector2(0, 0)) { newNodeInfo.IsAnchor = true; anchor1 = (GameObject)Instantiate(anchorPrefab, newNodeInfo.WorldPosition, Quaternion.identity); AnchorBehaviour anchorBehaviour1 = anchor1.GetComponent <AnchorBehaviour>(); anchorBehaviour1.anchoredNode = newNodeInfo; //anchor1.transform.parent = newNode.transform; //newNode.transform.parent = anchor1.transform; } else if (newNodeInfo.GridPosition == new Vector2(clothWidth - 1, 0)) { newNodeInfo.IsAnchor = true; anchor2 = (GameObject)Instantiate(anchorPrefab, newNodeInfo.WorldPosition, Quaternion.identity); AnchorBehaviour anchorBehaviour2 = anchor2.GetComponent <AnchorBehaviour>(); anchorBehaviour2.anchoredNode = newNodeInfo; //anchor2.transform.parent = newNode.transform; //newNode.transform.parent = anchor2.transform; } else if (newNodeInfo.GridPosition == new Vector2(0, clothHeight - 1)) { newNodeInfo.IsAnchor = true; anchor3 = (GameObject)Instantiate(anchorPrefab, newNodeInfo.WorldPosition, Quaternion.identity); AnchorBehaviour anchorBehaviour3 = anchor3.GetComponent <AnchorBehaviour>(); anchorBehaviour3.anchoredNode = newNodeInfo; //anchor3.transform.parent = newNode.transform; //newNode.transform.parent = anchor3.transform; } else if (newNodeInfo.GridPosition == new Vector2(clothWidth - 1, clothHeight - 1)) { newNodeInfo.IsAnchor = true; anchor4 = (GameObject)Instantiate(anchorPrefab, newNodeInfo.WorldPosition, Quaternion.identity); AnchorBehaviour anchorBehaviour4 = anchor4.GetComponent <AnchorBehaviour>(); anchorBehaviour4.anchoredNode = newNodeInfo; //anchor4.transform.parent = newNode.transform; //newNode.transform.parent = anchor4.transform; } } } return(retVector); }