Завершающий быстрый новичок, изо всех сил пытающийся добавить узлы в сцену одним нажатием кнопки.
Я знаю, что могу использовать жест касания, чтобы получить координаты касания и выполнить тест удара, а затем поместить объект в трехмерное пространство. где постучал. Однако я хочу показать сферу или перекрестие в центре экрана устройства, и при нажатии кнопки в нижней части экрана происходит то же самое поведение при получении той же информации, которую дал бы жест касания. (По крайней мере, я думаю, что это то, что я Мне нужно сделать здесь, я не уверен.)
После загрузки моей сцены я добавляю маленькую Сферу к дочернему узлу камеры, например:
sphereNode = SCNNode(geometry: SCNSphere(radius: 0.020))
sphereNode?.position = SCNVector3Make(0, 0, -2)
sceneView.pointOfView?.addChildNode(sphereNode!)
Это местами сфера в центре экрана немного впереди камеры. Когда я перемещаю устройство по комнате, сфера остается в середине, как и ожидалось. Я хочу иметь возможность нажать кнопку, а затем получить информацию, которую дал бы жест касания, чтобы выполнить проверку удара и поместить новую сферу в сцену в этом месте. Если нет другого лучшего способа сделать это?
Требуемое поведение очень похоже на поведение измерительного приложения iOS. Точка измерения всегда находится в центре экрана, затем при нажатии Добавить новую точку добавляется.