zoukankan      html  css  js  c++  java
  • unity游戏教程 space shooter (玩家控制器)

    为了更好地理解unity,模仿了教程,以下均为教程中的代码:

    PlayerController.cs:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;

    [System.Serializable]
    public class Boundary{
    public float xMin,xMax,zMin,zMax;
    }
    public class PlayerController : MonoBehaviour {
    public float speed;
    public float tilt;
    public Boundary boundary;

    private float nextFire;
    public float fireRate;
    public GameObject shot;
    public Transform shotSpawn;
    
    // Use this for initialization
    void Start () {
    	
    }
    
    // Update is called once per frame
    void Update () {
    	if (Input.GetButton("Fire1")&&Time.time > nextFire){
    		nextFire = Time.time + fireRate;
    		Instantiate (shot,shotSpawn.position,shotSpawn.rotation);
    		GetComponent<AudioSource> ().Play ();
    	}
    
    
    }
    
    void FixedUpdate(){
    
    	float moveHorizontal = Input.GetAxis ("Horizontal");
    	float moveVertical = Input.GetAxis ("Vertical");
    	Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical);
    
    	GetComponent<Rigidbody> ().velocity = speed * movement;
    	GetComponent<Rigidbody> ().position = new Vector3 (Mathf.Clamp(GetComponent<Rigidbody>().position.x,boundary.xMin,boundary.xMax),
    		0.0f,
    		Mathf.Clamp(GetComponent<Rigidbody>().position.z,boundary.zMin,boundary.zMax));
    	GetComponent<Rigidbody> ().rotation = Quaternion.Euler (0.0f, 0.0f, GetComponent<Rigidbody> ().velocity.x * -tilt);
    }
    

    }

  • 相关阅读:
    uva 11080(二分图染色)
    poj 3255(次短路)
    uva 707(记忆化搜索)
    uva 436(floyd变形)
    uva 11748(求可达矩阵)
    uva 11573(bfs)
    Codeforces Round #226 (Div. 2) 解题报告
    uva 11354(最小瓶颈路--多组询问 MST+LCA倍增)
    uva 534(最小瓶颈路)
    uva 538(简单图论 入度出度)
  • 原文地址:https://www.cnblogs.com/1997Ff/p/7364683.html
Copyright © 2011-2022 走看看