好的,我在 Android 中有一个粒子系统。
现在我使用了大约 500 个粒子,它们在屏幕上随机移动。我设置它以便触摸(实际上现在是运动)。所有的粒子都会接近你的手指。问题是它们以静态角度接近(没有考虑到它们与接触点的角度)。
任何人都有算法来确定如何均匀接近一个点?我试图以randians..然后转换等..变得非常混乱。这种简单的方法表明我以正确的速度移动……但它是一种简单的 45 角方法。(请记住,在 android 上没有负 x,y 坐标.. 左上角是 0,0.. 右下角是 (max,max)。函数采用 ontouch (x,y) 坐标。bx 是粒子坐标。
public void moveParticles(float x, float y) {
for (Particle b : Particles)
{
if (x <= b.x)
b.x = b.x -1;
else b.x = b.x +1;
if (y <= b.y)
b.y = b.y -1;
else b.y = b.y +1;
}
}