我對Unity和C#很陌生,一直在努力弄清楚這一點!Unity加速和減速C#
我希望我的船逐漸獲得速度,然後慢慢地停下來,好像沒有重力一樣,因爲它將成爲一個太空遊戲!
如果有人能幫助我,甚至指導我到這個問題的教程,我將不勝感激! :)
這裏是我的代碼,目前我的飛船......
using UnityEngine;
using System.Collections;
using UnityStandardAssets.CrossPlatformInput;
public class PlayerMovement : MonoBehaviour {
public float maxSpeed = 6f;
public float rotSpeed = 180f;
void Start()
{
}
void Update() {
Quaternion rot = transform.rotation;
float z = rot.eulerAngles.z;
z -= CrossPlatformInputManager.GetAxis ("Horizontal") * rotSpeed * Time.deltaTime;
rot = Quaternion.Euler (0, 0, z);
transform.rotation = rot;
Vector3 pos = transform.position;
Vector3 velocity = new Vector3 (0, CrossPlatformInputManager.GetAxis("Vertical") * maxSpeed * Time.deltaTime, 0);
pos += rot * velocity;
transform.position = pos;
}
}
如何才能做到這一點?
所以你想做出某種「easeInOutCubic」? (取自CSS) – Radinator
也許[this](http://answers.unity3d.com/questions/514505/acceleration-script.html)可以幫助你在不使用物理引擎的情況下實現你想要的東西(即使使用物理更容易你的情況我猜)。 – Kardux