ARCore распознает пол и попытается остановить распознавание плоскости после создания объекта - PullRequest
0 голосов
/ 21 мая 2018

В руководстве ARCore, если вы узнаете плоскость с камерой и дотронетесь до нее, вы создадите объект, а если вы узнаете другую плоскость, вы сможете создать еще один объект.Однако я хочу распознать одну плоскость и создать объект, затем остановить распознавание плоскостей и одновременно скрыть уже распознанный диапазон.

Алгоритм выглядит следующим образом: Распознать пол -> Создать объект путемкасание распознанного диапазона -> остановить распознавание плоскости, скрыть первый распознанный диапазон и оставить только объект.

Мне удалось создать только один объект и предотвратить создание дополнительных объектов.Но я не знаю, как мне больше трогать код ... Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 22 мая 2018

Чтобы остановить распознавание плоскостей, вам необходимо получить доступ к конфигурации сеанса ARCore

// If you are using ARCore 1.2
FindObjectOfType<ARCoreSession>().SessionConfig.PlaneFindingMode = DetectedPlaneFindingMode.Disabled;

// If you are using a previous ARCore version
FindObjectOfType<ARCoreSession>().SessionConfig.EnablePlaneFinding = false;

Чтобы скрыть уже отслеженные плоскости, вам необходимо найти их и отключить их средство визуализации сетки.В ARCore вы могли бы сделать что-то вроде этого (я не проверял это)

DetectedPlaneVisualizer[] detectedPlanes = FindObjectsOfType<DetectedPlaneVisualizer>();
for(int i = 0; i < detectedPlanes.Length; i++)
{
    detectedPlanes[i].transform.GetComponent<MeshRenderer>().enabled = false;
}

Однако вы можете использовать ARCore плагин , который я написал, чтобы упростить разработку.При этом вы можете просто использовать одну строку кода для отключения отслеживаемых самолетов

EazyARCoreInterface.VisualizeDetectedPlanes = false;
...