Хорошо, извините за задержку.
Я делаю вывод, что вы работаете с наземной плоскостью, если у вас есть Ground Plane Stage
и Plane Finder
в сцене и работает, мы находимся наХороший вопрос.
Теперь вам нужно только добавить кнопку к сцене, а в скрипт добавить что-то вроде этого:
public PlaneFinderBehaviour plane;
void Start()
{
...
buttonOnTheScene.onClick.AddListener(TaskOnClick);
...
}
void TaskOnClick()
{
Vector2 aPosition = new Vector2(0,0);
...
plane.PerformHitTest(aPosition);
}
Что это значит?
Сначалаиз всего, вы должны переместить Plane Finder
из иерархии в переменную сценария, чтобы у нас была ссылка на плоскость в сценарии.
Затем, когда вы нажимаете (или нажимаете) на кнопку, вы имитируете щелчок.(или коснитесь) на дисплее с помощью PerformHitTest
.
Если вам интересно, почему мой вопрос в комментарии, это потому, что Plane Finder Behaviour Script
имеет два типа режимов: интерактивный и автоматический.Interactive перехватывает нажатие на дисплее и показывает объект (на плоскости земли) в точном положении касания, автоматическое отображение объекта в центре плоскости.
Так что, если вы хотите, чтобы объектв точной позиции вы можете передать позицию Vector2
в PerformHitTest и, если вы хотите показать объект программно или сделать что-то, когда он показывает объект, вы можете вызвать пользовательский метод OnInteractiveHitTest
.
Вот и все.