void RemoveImageAnchor(ARImageAnchor arImageAnchor) { // Debug.LogFormat("image anchor removed[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); // if (imageAnchorGO) { // GameObject.Destroy (imageAnchorGO); // } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { Debug.Log("image anchor added"); if (prefabsToGenerate.Exists(e => e.name.Equals(arImageAnchor.referenceImageName)) && prefabNotGenerated) { Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); refImageName = arImageAnchor.referenceImageName; GameObject prefabToGenerate = getPrefab(prefabsToGenerate, refImageName); imageAnchorGO = Instantiate <GameObject>(prefabToGenerate, position + prefabToGenerate.transform.position, prefabToGenerate.transform.rotation); QRPanel.SetActive(false); Button.SetActive(true); TakePhotoButton.SetActive(true); QRButton.SetActive(true); prefabNotGenerated = false; } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor added[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (arImageAnchor.referenceImageName == referenceImage.imageName) { Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); shinkawa = Instantiate <GameObject> (prefabToGenerate1, position, rotation); // shinkawaをinstantiate desk = Instantiate <GameObject> (prefabToGenerate2, position, rotation); // deskをinstantiate autd = Instantiate <GameObject>(prefabToGenerate3, position, rotation); // autdをinstantiate autdChild1 = autd.transform.GetChild(0).gameObject; autdChild2 = autd.transform.GetChild(1).gameObject; deskMeshRenderer = desk.GetComponent <MeshRenderer>(); autdChild1MeshRenderer = autdChild1.GetComponent <MeshRenderer>(); autdChild2MeshRenderer = autdChild2.GetComponent <MeshRenderer>(); // shinkawaのanimation関連の処理 shinkawa.AddComponent <Animator>(); animator = shinkawa.GetComponent <Animator>(); animator.runtimeAnimatorController = runtimeAnimatorController; animator.avatar = avatar; animator.enabled = false; } }
void UpdateImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor updated[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (arImageAnchor.referenceImageName == referenceImage.imageName) { if (arImageAnchor.isTracked) { if (!imageAnchorGO.activeSelf) { imageAnchorGO.SetActive(true); anchorID = referenceImage.imageID; //notesScript.GetID(anchorID); } imageAnchorGO.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); imageAnchorGO.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); anchorID = referenceImage.imageID; //notesScript.GetID(anchorID); } else if (imageAnchorGO.activeSelf) { imageAnchorGO.SetActive(false); anchorID = 0; //notesScript.GetID(anchorID); } } }
public void RemoveImageAnchor(ARImageAnchor arImageAnchor) { if (arImageAnchor.referenceImageName == referenceImage.imageName) { RemoveAnchor(); } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor added[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (arImageAnchor.referenceImageName == referenceImage.imageName) { // --------------------------------------------------------------- // THIS PART IS WHERE CODE GETS EXECUTED WHEN AN IMAGE IS DETECTED // --------------------------------------------------------------- Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); if (!destroyObjectOnEnd) { if (!hasAlreadyGeneratedPrefab) { imageAnchorGO = Instantiate <GameObject>(prefabToGenerate, position, rotation); hasAlreadyGeneratedPrefab = true; } } else { imageAnchorGO = Instantiate <GameObject>(prefabToGenerate, position, rotation); } } }
private void UpdateImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor updated[{0}] : tracked => {1}", arImageAnchor.Identifier, arImageAnchor.IsTracked); int index; if (arImageAnchor.ReferenceImageName != null && int.TryParse(arImageAnchor.ReferenceImageName, out index) && index >= 0) { GameObject gameObjectToAHandle = null; if (index < _gameObjects.Count) { gameObjectToAHandle = _gameObjects[index]; } if (gameObjectToAHandle != null) { if (arImageAnchor.IsTracked) { gameObjectToAHandle.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.Transform); gameObjectToAHandle.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.Transform); if (!gameObjectToAHandle.activeSelf) { gameObjectToAHandle.SetActive(true); } } else if (gameObjectToAHandle.activeSelf) { //gameObjectToAHandle.SetActive(false); } } } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { Debug.Log("image anchor added"); // Check that it's one of our images if (arImageAnchor.referenceImageName == imageParsons.imageName || arImageAnchor.referenceImageName == imageEcal.imageName) { // Visual debug and one empty gameObject is necessary to have a Transform in Unity anyway. Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); imageAnchorGO = Instantiate <GameObject> (prefabToGenerate, position, rotation); updateWorldOrigin(imageAnchorGO.transform); // If it's Parsons. if (arImageAnchor.referenceImageName == imageParsons.imageName) { data.SetLocation("parsons"); } else if (arImageAnchor.referenceImageName == imageEcal.imageName) { data.SetLocation("ecal"); } } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { Debug.Log("image anchor added"); if (arImageAnchor.referenceImageName == referenceImage.imageName) { Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); //playArea.SetActive(true); if (playArea) { playArea.transform.position = position; playArea.transform.rotation = rotation; UnityARSessionNativeInterface.GetARSessionNativeInterface().SetWorldOrigin(playArea.transform); UnityARSessionNativeInterface.GetARSessionNativeInterface().AddUserAnchorFromGameObject(playArea); if (generateReflectionProbe) { CreateEnvironmentProbe(UnityARMatrixOps.UnityToARKitCoordChange(position, rotation)); } } else { Debug.Log("Tried to add Image Anchor, but Play Area null"); } //imageAnchorGO = Instantiate(prefabToGenerate, position, rotation) as GameObject; //UnityARSessionNativeInterface.GetARSessionNativeInterface().SetWorldOrigin(imageAnchorGO.transform); //UnityARSessionNativeInterface.GetARSessionNativeInterface().AddUserAnchorFromGameObject(imageAnchorGO); //CmdSpawn(imageAnchorGO); } }
void UpdateImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor updated[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (arImageAnchor.referenceImageName == referenceImage.imageName && start) { Debug.Log("UpdateImageAnchor", gameObject); if (arImageAnchor.isTracked) { if (!imageAnchorGO.activeSelf) { imageAnchorGO.SetActive(true); } Move = UnityARMatrixOps.GetPosition(arImageAnchor.transform) - imageAnchorGO.transform.position; Rotate = imageAnchorGO.transform.rotation; imageAnchorGO.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); imageAnchorGO.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); //Line.GetGameobjects(imageAnchorGO.transform.position, imageAnchorGO.transform.rotation); } else if (imageAnchorGO.activeSelf) { imageAnchorGO.SetActive(false); } } }
void UpdateImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor updated[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (arImageAnchor.referenceImageName == _shadowReferenceImage.imageName) { if (arImageAnchor.isTracked) { _shadowPlaceholder.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); _shadowPlaceholder.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); } else { // image is not tracked } } if (arImageAnchor.referenceImageName == _litReferenceImage.imageName) { if (arImageAnchor.isTracked) { _litPlaceholder.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); _litPlaceholder.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); } else { // image is not tracked } } }
void UpdateImageAnchor(ARImageAnchor arImageAnchor) { //Debug.LogFormat("image anchor updated[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (bindObjectToImage && MuseumLocationService.imageAnchors.TryGetValue(arImageAnchor.referenceImageName, out GameObject GO)) { GO = MuseumLocationService.imageAnchors[arImageAnchor.referenceImageName]; if (arImageAnchor.isTracked) { if (!GO.activeSelf) { GO.SetActive(true); } if (bindObjectToImage) { GO.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); GO.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); } } else if (GO) { GO.SetActive(false); } } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor added[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); foreach (ARReferenceImage referenceImage in referenceImagesSet.referenceImages) { if (arImageAnchor.referenceImageName == referenceImage.imageName) { if (MuseumLocationService.imageAnchors.TryGetValue(referenceImage.imageName, out GameObject GO)) { continue; } // --------------------------------------------------------------- // THIS PART IS WHERE CODE GETS EXECUTED WHEN AN IMAGE IS DETECTED // --------------------------------------------------------------- Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); GO = Instantiate <GameObject>(prefabToGenerate, position, rotation); GO.name = prefabToGenerate.name + "-" + referenceImage.imageName; GO.transform.parent = transform; MuseumLocationService.imageAnchors[referenceImage.imageName] = GO; } } }
void AddImageAnchor(ARImageAnchor arImageAnchor) { if (arImageAnchor.referenceImageName == referenceImage.imageName) { if (adToGenerate != null) { Debug.Log("Generating Ad"); Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); imageAnchorGO = Instantiate <GameObject> (prefabToGenerate, position, rotation); Vector3 position2 = UnityARMatrixOps.GetPosition(arImageAnchor.transform); var newPos2 = new Vector3(position.x, position.y + 0.06f, position.z); Quaternion rotation2 = Quaternion.AngleAxis(30, new Vector3(0, 0, 1)); //UnityARMatrixOps.GetRotation (arImageAnchor.transform); adGO = Instantiate <GameObject> (adToGenerate, newPos2, rotation2); } else { Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); imageAnchorGO = Instantiate <GameObject> (prefabToGenerate, position, rotation); } } }
private static void IAnchorUpdate(ARImageAnchor anchor) { Logger.log(Logger.Type.Info, "IAnchorUpdate"); if (!tracking) { Logger.log(Logger.Type.Info, "tracking paused. Ignore."); return; } if (!anchors.Contains(anchor.identifier)) { Logger.log(Logger.Type.Warning, "=> IAnchorAdd (tracking was probably off and just turned on)."); IAnchorAdd(anchor); return; } if (IAnchorUpdated == null) { Logger.log(Logger.Type.Info, "no delegates for this event."); return; } Logger.log(Logger.Type.Info, "dispatch event."); IAnchor a = new IAnchor(anchor.identifier, UnityARMatrixOps.GetPose(anchor.transform), anchor.isTracked, anchor.referenceImageName); IAnchorUpdated(a); }
private static void IAnchorAdd(ARImageAnchor anchor) { Logger.log(Logger.Type.Info, "IAnchorAdd"); if (!tracking) { Logger.log(Logger.Type.Info, "tracking paused. Ignore."); return; } if (!anchors.Add(anchor.identifier)) { Logger.log(Logger.Type.Warning, "anchor was already added: {0}", anchor.identifier); return; } if (IAnchorAdded == null) { Logger.log(Logger.Type.Info, "no delegates for this event."); return; } Logger.log(Logger.Type.Info, "dispatch event."); IAnchor a = new IAnchor(anchor.identifier, UnityARMatrixOps.GetPose(anchor.transform), anchor.isTracked, anchor.referenceImageName); IAnchorAdded(a); }
void AddImageAnchor(ARImageAnchor arImageAnchor) { if (cubeInstance != null) { return; } if (arImageAnchor.referenceImageName == referenceImage.imageName) { Debug.Log("Add Cube"); var point = new ARPoint(); point.x = 0.5f; point.y = 0.5f; var hitResults = UnityARSessionNativeInterface .GetARSessionNativeInterface() .HitTest(point, ARHitTestResultType.ARHitTestResultTypeFeaturePoint); if (hitResults.Count == 0) { return; } var hit = hitResults[0]; var position = UnityARMatrixOps.GetPosition(hit.worldTransform); cubeInstance = Instantiate <GameObject>(prefabToGenerate, position, Quaternion.identity); // Notify all subscibers that he has found an image OnImageFound?.Invoke(); } }
void UpdateImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor updated[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (arImageAnchor.referenceImageName == referenceImage.imageName) { imageAnchorGO.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); imageAnchorGO.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); } //if (arImageAnchor.referenceImageName == referenceImage.imageName) { // if (arImageAnchor.isTracked) // { // if (!imageAnchorGO.activeSelf) // { // imageAnchorGO.SetActive(true); // } // imageAnchorGO.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); // imageAnchorGO.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); // } // else if (imageAnchorGO.activeSelf) // { // imageAnchorGO.SetActive(false); // } //} }
// マーカー更新 private void UpdateImageAnchor(ARImageAnchor anchor) { int index = GetImageAnchorIndex(anchor); if (index == UNDEFINED_SCORE) { return; } GameObject obj = _generateObjects[index]; if (anchor.isTracked) { if (isNotTrackingToUnactive && !obj.activeSelf) { obj.SetActive(true); } obj.transform.position = UnityARMatrixOps.GetPosition(anchor.transform); obj.transform.rotation = UnityARMatrixOps.GetRotation(anchor.transform); } else if (isNotTrackingToUnactive && obj.activeSelf) { obj.SetActive(false); } }
void RemoveImageAnchor(ARImageAnchor arImageAnchor) { Debug.Log("image anchor removed"); if (imageAnchorGO) { GameObject.Destroy(imageAnchorGO); } }
void RemoveImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor removed[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (MuseumLocationService.imageAnchors.TryGetValue(arImageAnchor.referenceImageName, out GameObject GO)) { Destroy(GO); } }
void AddTestPrefab(ARImageAnchor arImageAnchor) { Vector3 position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); imageAnchorGO = Instantiate <GameObject>(testPrefabToGenerate, position, rotation); Debug.Log("TestPrefabAdded"); }
void UpdateImageAnchor(ARImageAnchor arImageAnchor) { if (arImageAnchor.referenceImageName == referenceImage.imageName) { //playArea.transform.position = UnityARMatrixOps.GetPosition (arImageAnchor.transform); //playArea.transform.rotation = UnityARMatrixOps.GetRotation (arImageAnchor.transform); } }
void RemoveObjectAnchor(ARImageAnchor arImageAnchor) { Debug.Log("object anchor removed"); if (objectAnchorGO) { GameObject.Destroy(objectAnchorGO); } }
void RemoveImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor removed[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (destroyObjectOnEnd && imageAnchorGO) { GameObject.Destroy(imageAnchorGO); } }
void RemoveImageAnchor(ARImageAnchor arImageAnchor) { Debug.Log("image anchor removed"); //foreach (GameObject cube in cubes) //{ // Destroy(cube); //} }
private void RemoveImageAnchor(ARImageAnchor arImageAnchor) { Debug.LogFormat("image anchor removed[{0}] : tracked => {1}", arImageAnchor.identifier, arImageAnchor.isTracked); if (foodDisplayer) { Destroy(foodDisplayer); } }
void UpadteImageAnchor(ARImageAnchor arImageAnchor) { Debug.Log("image anchor updated"); if (arImageAnchor.referenceImageName == referenceImage.imageName) { imageAnchorGO.transform.position = UnityARMatrixOps.GetPosition(arImageAnchor.transform); imageAnchorGO.transform.rotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); } }
public void UpdateImageAnchor(ARImageAnchor arImageAnchor) { if (arImageAnchor.referenceImageName == referenceImage.imageName) { Vector3 newPosition = UnityARMatrixOps.GetPosition(arImageAnchor.transform); Quaternion newRotation = UnityARMatrixOps.GetRotation(arImageAnchor.transform); UpdateAnchor(newPosition, newRotation); } }
// 登録されているマーカーのインデックスを取得 private int GetImageAnchorIndex(ARImageAnchor anchor) { if (!_imageNames.Contains(anchor.referenceImageName)) { return(UNDEFINED_SCORE); } return(_imageNames.FindIndex((e) => { return e == anchor.referenceImageName; })); }