OpenGL-ES: как установить объект по координатам касания? - PullRequest
1 голос
/ 30 июня 2011

Я ищу способ иметь объект opengl (треугольники и т. Д.) В том месте экрана, где вы касаетесь экрана.Теперь у меня есть 3D-пирамида на экране, которая перемещается по экрану, основываясь на разнице между началом вашего прикосновения и местом, куда вы перетаскивали ее.но это не будет работать в openGL.Так у кого есть идея?
ps: я использую Java / Android.

1 Ответ

2 голосов
/ 30 июня 2011

OpenGL не похож на вид поверхности, где каждый элемент является постоянным. Это 3D эквивалент ручки и кисти. Вы должны отслеживать все данные самостоятельно.

Таким образом, в вашем обработчике событий касания вы используете входную координату, чтобы спроецировать луч на некоторую плоскость, перпендикулярную виду. Вы должны реализовать эту проекцию самостоятельно, но это достаточно просто: найдите «пересечение плоскости луча». Это дает вам координаты на плоскости, что соответствует проекции точек на экран, где пользователь коснулся. Эти координаты используются для преобразования объекта и перерисовки сцены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...