OpenGL:通过碰撞检测导航3D场景(带墙壁的房间)

时间:2010-12-08 14:53:56

标签: opengl 3d collision-detection

对于一个学校项目,我必须able to move inside a 3D scene like a room并在其墙壁上实施碰撞检测。

我正在寻找有关该主题的教程和参考书目。

我已经拥有红皮书和Opengl的超级明星。

3 个答案:

答案 0 :(得分:2)

最简单的想法是使用房间顶视图的颜色映射。 基本上你只使用2种颜色创建一个位图:

  1. 决定你的“墙壁”的一个
  2. 一个用于“其他一切”
  3. 以下是googling发现的一些文章:

    他们使用不同的语言,但这是无关紧要的,原则是一样的。

    获得颜色贴图后,您将有比率从3D中的x,z转换为2D颜色贴图中的x,y。理论上,如果需要,可以在运行时生成颜色贴图,渲染ortographic顶视图。您可以使用墙壁可能是场景中“最高”物体的事实来渲染墙壁。

    HTH

答案 1 :(得分:0)

那些家伙非常擅长:http://www2.imm.dtu.dk/visiondag/

您可以尝试与他们联系。我在那里上了一门课程,但我没有这里的确切参考。

这里有一个课程链接教程:

http://www2.imm.dtu.dk/~bdl/virtualreality.html

答案 2 :(得分:0)

Real-Time Collision Detection上有一本完整的书。

在从头开始编写自己的碰撞检测器之前,应考虑实施其余设置并插入现有库。如果你有一个正确的结果可以比较,那么开发一个程序要容易得多。

GAMMA研究小组开发了一些在机器人技术等方面很受欢迎的collision detection packages。您或您的机构可能会要求他们提供非商业或学术用途的包裹。其中一个软件包PQPYaobi的灵感来源,这是一个开源的C ++库。

Yaobi和PQP都很容易使用,只需要一堆三角形来模拟几何体。