Перемещение объектов OpenGL пальцами - PullRequest
1 голос
/ 09 ноября 2010

Я разрабатываю приложение для Android с OpenGL и JNI (все содержимое OpenGL написано на языке C).

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

Есть ли способ сделать это?

Как назначить прослушивателю событий касание и перемещение событий, только когда пользователь касается куба?

ОБНОВЛЕНИЕ
Я хочу что-то вроде этого:

Повернуть куб пальцами

Спасибо.

1 Ответ

1 голос
/ 09 ноября 2010

Это называется "сбор" в 3d-ville ... Существует множество обучающих программ по теме, перемещающейся в разные стороны.Еще один вопрос (без вращения JNI) здесь, в StackOverflow.

Кроме того, посмотрите это видео по Google IO по разработке игр для Android, чтобы понять, почему ваш подход может быть не быстрее, чем на чистой Java... Это зависит.

Оказывается, вызовы JNI довольно дороги, поэтому рендерер на основе JNI может оказаться медленнее, чем чисто Java, если вы не очень осторожны.YM Will V.

Я почти уверен, что вам придется выслушивать все прикосновения, а затем менять поведение в зависимости от того, к чему прикоснулись.Я полагаю, вы могли бы вычислить ограничивающую рамку вашего куба на экране, а затем поэкспериментировать со своими слушателями каждый кадр (или каждый раз, когда он перемещается), но я серьезно сомневаюсь, что это будет наиболее эффективный путь.Слушайте все прикосновения, реагируйте соответственно.

...