测试汽车物体相对于世界坐标的碰撞
Testing collision of car object with respect to the world coordinates
我正在做一个opengl C++停车场游戏。我想测试我的汽车对象的碰撞,我有 10 个汽车相对于世界坐标的末端顶点。并将它们分别存储在 x 和 y 的两个数组中,分别为 x[10] 和 y[10],所以现在假设我需要有一条障碍线,汽车不应该通过,并且 ve 结束坐标为 (x1, y1) 和 (x2, y2),其中 y1=y2...我应该怎么做?
我试过这样做
int collision()
{
for(i=0;i<=10;i++)
{
if( y[i]>=y1)
{printf("a");
return 1;}}
else return 0;
}
if( key == GLUT_KEY_UP) // up
{
glTranslatef(0.0,.1,0.0);
c=collision();
if(c==1)
goto l1;
glTranslatef(0.0,.1,0.0);
c=collision();
if(c==1)
goto l1;
glTranslatef(0.0,.1,0.0);
c=collision();
if(c==1)
goto l1;
glTranslatef(0.0,.1,0.0);
c=collision();
if(c==1)
goto l1;
glTranslatef(0.0,.1,0.0);
c=collision();
if(c==1)
{l1:
glTranslatef(0,-0.5,0);
}
}
以上是我代码的一小部分...我没有得到准确的结果,它不起作用。我是否为下键执行其他碰撞功能?
OpenGL既不是数学,也不是几何,也不是碰撞检测,也不是物理库。这是一个绘图API,它所做的只是将漂亮的图片绘制到屏幕上。时期。
您需要的任何其他内容都必须自己实现或使用第三方库。
相关文章:
- 在 OpenGL 中将笛卡尔世界坐标转换为球面局部坐标
- 如何在Openscenegraph中从二维鼠标点击的屏幕坐标点计算三维点(世界坐标)
- OpenGL屏幕坐标到世界坐标
- 将 2D 图像坐标转换为 z = 0 的 3D 世界坐标
- 计算世界坐标中z_far平面的顶点
- 如何将世界坐标转换为相机图像坐标
- 将 2D 屏幕坐标转换为 3D 世界坐标
- 如何获得世界坐标屏幕(DX11,C )的射线方向
- 在给定的世界坐标下修改网格上的纹理
- 相机外在矩阵到世界坐标
- 如何将像素坐标转换为世界坐标
- 图像点(像素)到真实世界坐标(米)
- 使用点云库将点云转换为世界坐标
- 鼠标世界坐标框2D
- 将 GL 模型视图矩阵转换为世界坐标
- 相机在世界坐标中的位置来自 cv::solvePnP
- 从模型矩阵或四元数中找到最终的世界坐标
- Kinect:从颜色空间到世界坐标
- c++ /OpenGL转换世界坐标到屏幕(2D)坐标
- 测试汽车物体相对于世界坐标的碰撞