首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在opengl中指定对象中的给定id

在opengl中指定对象中的给定id
EN

Stack Overflow用户
提问于 2012-11-14 10:52:20
回答 1查看 157关注 0票数 0

我正在开发一个多智能体应用程序。在模拟过程中,我显示了在任何时间步出现的代理。这个代理有他们自己的特定id。

我想通过使用拾取来识别这些对象并与之交互。我的拾取方法是有效的,但我无法获得代理的id (我只获得与代理的id不相关的几何体的id)。因此,我需要找到一种方法来为任何新绘制的几何图形分配相应的代理id。

当你绘制一个对象时(可能在glBegin()和glEnd()之间),opengl中有没有一种分配id的方法?

EN

回答 1

Stack Overflow用户

发布于 2012-11-14 10:56:22

过去,我成功地在backbuffer/FBO中为每个对象绘制了不同的颜色,进行拾取,读取该点的像素,然后将实际帧渲染为正确的颜色,以便人类可以看到它。使用着色器可以同时执行这两项操作。

然后,你只需在表格中查找颜色,就能找出物体是什么。这种方法非常慢。

更好(更快)的替代方法是从单击的位置投射光线,以查看光线与场景中的哪些对象相交。您还可以执行一些原始的截截体剔除,以减少潜在的可拾取对象集。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13372333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档