gpt4 book ai didi

iphone - 敌人和斜坡

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:35:10 26 4
gpt4 key购买 nike

您如何为移动的物体实现一定的坡度?我试图让一个敌人在屏幕上的 x,y 点生成,然后自己飞过屏幕到一个新的 x,y,同时添加一个斜坡,让它看起来像是向下、直线或向上俯冲。类似的东西。现在我只知道在某个方向生成和移动我的敌人,不知道从这里看什么。

最佳答案

如果你想在点之间的一条直线上移动,那么你可以计算 delta X 和 delta Y 为:

DX = X2-X1;
DY = Y2-Y1;

然后如果你想移动一个特定的距离(速度/帧),使用毕达哥拉斯定理归一化长度:

HYP = DX*DX + DY*DY;
HYP = sqrt(HYP);
DX = MoveD * DX/HYP;
DY = MoveD * DY/HYP;

然后:

// Move Distance (MoveD) From X1,Y1 to X2,X2 each screen update.
if ((abs(X2-X)<DX)&&(abs(Y2-Y)<DY))
{
X = X + DX;
Y = Y + DY;
} else
// STOP

“俯冲”可以通过动态改变端点来完成。从“目标”前面的终点开始,穿过目标并向上移动以创建“俯冲” Action 。添加“速度偏差”,使其加速向下移动并减速向上移动。

这也可以使用 Bresenham 画线算法或 DDA 的变体添加到整数数学中。

关于iphone - 敌人和斜坡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1242813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com