unity小技巧,向量与位置

1.已知两个点,求这两个点之间上的某个距离上的点

使用方法 Vector3 pos = Vector3.MoveTowards(current,target,maxDistanceDelta);

    // 摘要:
    //     Calculate a position between the points specified by current and target, moving
    //     no farther than the distance specified by maxDistanceDelta.
    // 参数:
    //   current:
    //     The position to move from.
    //   target:
    //     The position to move towards.
    //   maxDistanceDelta:
    //     Distance to move current per call.
    // 返回结果:
    //     The new position.
    public static Vector3 MoveTowards(Vector3 current, Vector3 target, float maxDistanceDelta);

2.已知起点,求往某个方向上一段距离上的点的位置

Ray ray = new Ray(gunPoint.transform.position, transform.TransformDirection(Vector3.forward));
Vector3 viewportPos = launcherCamera.WorldToViewportPoint(ray.GetPoint(GameInstantiateData.Instance.int_CameraToCastleDis ));

	//第一步:创建一个射线,传入起点 跟 射线反向
	// 摘要:
    //     Creates a ray starting at origin along direction.
    // 参数:
    //   origin:
    //   direction:
    public Ray(Vector3 origin, Vector3 direction);
	
	//第二步:通过ray.GetPoint(),传入所需要的距离的值就可以了
    // 摘要:
    //     Returns a point at distance units along the ray.
    // 参数:
    //   distance:
    public Vector3 GetPoint(float distance);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值