C++ 碰撞问题c++;

C++ 碰撞问题c++;,c++,geometry,collision-detection,C++,Geometry,Collision Detection,我很难让一些基本的碰撞发生。我有一个图像,我在不同的形状弹跳。目前,我已经使矩形碰撞工作。这是相对容易的,因为直线是直的,所以我基本上只是把物体保持在一个直线上,如果它超出了x1,x2,y1或y2的界限,我就把速度改成相反的速度 我正试图在一个三角形内完成同样的事情,我正经历着最艰难的时刻。我读了一些书,但由于某种原因,我大脑中的电灯开关没有打开 所以我有一个三角形。。。我已经通过取(y2-y1)/(x2-x1)确定了斜率;但是,在编程中使用坡度以使碰撞正确注册方面,我无法取得任何进展 我会提供

我很难让一些基本的碰撞发生。我有一个图像,我在不同的形状弹跳。目前,我已经使矩形碰撞工作。这是相对容易的,因为直线是直的,所以我基本上只是把物体保持在一个直线上,如果它超出了x1,x2,y1或y2的界限,我就把速度改成相反的速度

我正试图在一个三角形内完成同样的事情,我正经历着最艰难的时刻。我读了一些书,但由于某种原因,我大脑中的电灯开关没有打开

所以我有一个三角形。。。我已经通过取(y2-y1)/(x2-x1)确定了斜率;但是,在编程中使用坡度以使碰撞正确注册方面,我无法取得任何进展

我会提供一些代码,但老实说,没有什么是接近工作lol

有没有关于如何让物体在三角形内弹跳的建议


或者,如何使obj从/样式线反弹?

取决于您希望参与的程度,您可能会发现游戏物理引擎开发很有帮助。这本书的优点在于,所有的源代码都可以通过和特定的源文件获得。代码非常干净且可用。

您需要的是直线碰撞检测,因为您可以将任何多边形分解为直线。试着用谷歌搜索一下,你应该看看GJK/EPA的算法。SAT也可以。太棒了,我会用谷歌搜索它。非常感谢。嗯,太棒了。实际上我想研究一个物理引擎。虽然现在对我来说似乎有点遥远,考虑到我仍然无法让线对线的碰撞起作用!lol;)不过我会查一查。