Unity и ArCore: как разместить объект в реальном мире? - PullRequest
0 голосов
/ 28 октября 2018

Я работаю над проектом AR для школы.

Мне нужно разместить объект в определенном месте (школьные ворота), и мне нужно увидеть его с помощью камеры AR.

Я могу получить местоположение пользователя, но как я могу разместить объект?

1 Ответ

0 голосов
/ 29 октября 2018

Вы можете использовать увеличенное изображение для ворот, чтобы получить местоположение ворот.Потому что каждый раз, когда вы запускаете приложение, вашим источником будет позиция вашего устройства.Таким образом, физическое местоположение шлюза будет зависеть от места, где вы запустили свое приложение, и будет меняться каждый сеанс.Тогда вы можете сделать следующее:

    public GameObject YourGameObject;
    private List<AugmentedImage> m_TempAugmentedImages = new List<AugmentedImage>();
    Session.GetTrackables<AugmentedImage>(m_TempAugmentedImages, TrackableQueryFilter.Updated);

    foreach (var image in m_TempAugmentedImages){
          Anchor anchor = image.CreateAnchor(image.CenterPose);
          var obj = Instantiate(YourGameObject,anchor.transform);
          obj.transform.parent = anchor.transform;         
    }

В конечном счете этот фрагмент кода находит отслеживаемое увеличенное изображение, создает привязку в центре этого изображения и создает экземпляр вашего объекта в этом месте.Последнее оно привязывает ваш объект к физическому местоположению.

...