U3D 小球跟随鼠标在地上移动(二)

来源:互联网 发布:腾讯云怎么解析cn域名 编辑:程序博客网 时间:2024/06/11 00:48
using UnityEngine;using System.Collections;public class moveController : MonoBehaviour {public int moveSpeed;Vector3 targetPoint;// Use this for initializationvoid Awake () {targetPoint =  transform.position;}// Update is called once per framevoid Update () {getTargetPoint ();}void FixedUpdate(){                       //单位华,取得单位向量Vector3 targetForce = (targetPoint - transform.position).normalized;//利用刚体方法实现小球到滚动                rigidbody.AddForce (targetForce*moveSpeed);}void getTargetPoint(){Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);RaycastHit hitInfo = new RaycastHit();if(Input.GetMouseButtonDown(0)){if(Physics.Raycast(ray,out hitInfo) ){if(hitInfo.collider.gameObject.name == "Land"){targetPoint = hitInfo.point;Debug.Log("targetPoint:"+targetPoint);}}}}}
利用刚体到方法实现小球的移动,会因为惯性等因素,使小球控制精度降低
0 0
原创粉丝点击