Пример комплектации jogl

Привет, ребята, у меня проблемы с добавлением объекта в проекте JOGL. я знаю, что это можно сделать с помощью буфера выбора... но я не могу найти примеры никому?

1 ответ

Решение

В целом, как вы, вероятно, знаете, код JOGL транслируется напрямую из любых других примеров OpenGL, которые вы можете увидеть в Интернете.

GL_SELECT основанный выбор, кажется, очень не в пользу в эти дни; устарела в спецификации и плохо реализована драйверами.

Альтернативы, которые вы можете использовать:

  • Визуализация каждого объекта с уникальным цветом (и все освещение / туман и т. Д. Отключены), чтобы вы могли определить, над каким объектом находится мышь, с помощью glReadPixels, (Очистка буферов после этапа выбора, чтобы вы могли затем визуализировать вашу обычную графику). Этот подход объясняется лучшим ответом в OpenGL GL_SELECT или ручным обнаружением столкновений? например.

  • Приведение лучей в вашу геометрию (см. Ссылку "Часто задаваемые вопросы"). Это также означает, что вам не нужно иметь активный контекст gl в потоке, из которого вы вызываете код, fwiw.

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

http://www.opengl.org/resources/faq/technical/selection.htm

Другие вопросы по тегам