zoukankan      html  css  js  c++  java
  • 鼠标点击是实现位移

    1.简单的位移,以及动画播放

    using UnityEngine;
    using System.Collections;

    public class ClickToMove : MonoBehaviour {
    public float speed;
    public CharacterController controller;
    public AnimationClip idle;
    public AnimationClip run;
    private Vector3 position;

    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {
    if (Input.GetMouseButton(1))
    {
    locatePosition();
    }
    moveToPosition();
    }

    void locatePosition()
    {
    RaycastHit hit;
    Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);

    if (Physics.Raycast(ray, out hit, 1000))
    {
    position = new Vector3(hit.point.x, hit.point.y, hit.point.z);

    Debug.Log(position);
    }
    }

    void moveToPosition()
    {
    if (Vector3.Distance(transform.position, position) > 0.4)
    {
    Quaternion newRotation = Quaternion.LookRotation(position - transform.position, Vector3.forward);
    newRotation.x = 0f;
    newRotation.z = 0f;
    transform.rotation = Quaternion.Slerp(transform.rotation, newRotation, Time.deltaTime * 10);

    controller.SimpleMove(transform.forward * speed);
    animation.CrossFade(run.name);
    }
    else
    {
    animation.CrossFade(idle.name);
    }
    }
    }

  • 相关阅读:
    hlgoj 1766 Cubing
    Reverse Linked List
    String to Integer
    Bitwise AND of Numbers Range
    Best Time to Buy and Sell Stock III
    First Missing Positive
    Permutation Sequence
    Next Permutation
    Gray Code
    Number of Islands
  • 原文地址:https://www.cnblogs.com/xwwFrank/p/4551039.html
Copyright © 2011-2022 走看看