标签: algorithm 3d bounce particles
这很奇怪,但是我找不到任何清晰的算法来反弹3D空间中的球面边界。
例如,我有一个在空心球内具有任意速度的粒子。这个粒子没有任何形状/物体,只有一个点坐标。
当粒子撞击边缘时(与球体原点的距离大于球体半径),必须找到一个平面,然后从该平面计算反射角。
但是,也许还有另一种方法?
答案 0 :(得分:2)
扩大我的评论:
让 P 为粒子位置, V 为粒子速度,并以 C 为圆心。
然后:
您可以重新排列以消除平方根: