慕慕5134878
同问,请问您的问题解决了吗??我的也是键盘右键角色不会显示动画,但是其他三个方向都可以,不知道是哪里的问题
慕仙6061284
这个问题应该是他的资源的问题 这个动画 和视频中的不是同一个动画
船丿长
f代表着单精度,使用f可以使坐标表示的更为精确。
LymphV
鼠标拖动不就相当于持续点击?不是很确定。哈哈
LymphV
我的实现思路是这样的,保存一个目标位置,然后每一帧都向目标位置按一定速度移动。
具体代码这样子。
private Vector3 _targetPosition;
public float Speed;
void Update()
{
Vector3 dist = _targetPosition - transform.position; // 计算从当前位置到目标位置的向量
dist.y = 0; // 只在平面上移动,去除高度差。
Vector3 velocity = dist.normalized * Time.deltaTime * Speed; // 本次移动的向量
if(dist.magnitude < velocity.magnitude) // 如果这一次移动就会抵达目标位置,则直接使用当前位置到目标位置的向量作为移动向量
{
velocity = dist;
}
if(velocity != Vector3.zero) // 如果还没移动到目的地则进行这次移动
{
transform.Translate(dist);
}
}
void MoveTo(Vector3 pos)
{
_targetPosition = pos;
}因为Vector3 是值类型,所以不能通过判 null 来处理移动和不移动的状态,可以通过再加个 成员变量 _needMove 来避免每一帧都计算一次位移,这里懒得写了。
readlnh
动画是在3D软件里做的,导出为FBX文件,然后在unity里进行动画分割。
ImADog