- Home /
Framerate independent character movement
Hey guys and gals!
For a networking project I need a framerate independent movement script (for obvious reasons). I saw this one on UnityCookie but it only moves on the global axis not the local axis. What do I need to change to make it move locally instead of globally?
var speed : int = 5;
var gravity = 5;
private var cc:CharacterController;
function Start (){
cc = GetComponent(CharacterController);
}
function Update (){
if(networkView.isMine){
cc.Move(Vector3(Input.GetAxis("Horizontal") * speed * Time.deltaTime, - gravity * Time.deltaTime, Input.GetAxis("Vertical") * speed * Time.deltaTime));
}
else {
enabled = false;
}
}
Thanks in advance!
Comment
Best Answer
Answer by ScroodgeM · Aug 26, 2012 at 04:48 PM
replace
cc.Move(Vector3(Input.GetAxis("Horizontal") * speed * Time.deltaTime, - gravity * Time.deltaTime, Input.GetAxis("Vertical") * speed * Time.deltaTime));
with
cc.Move(transform.rotation * Vector3(Input.GetAxis("Horizontal") * speed * Time.deltaTime, - gravity * Time.deltaTime, Input.GetAxis("Vertical") * speed * Time.deltaTime));
Your answer
Follow this Question
Related Questions
targetframerate is being ignored 1 Answer
Framerate independent Movement 2 Answers
Lower Frame rate for less polys ? 1 Answer
Unity Create With Code Challenge 1 1 Answer
trying to regulate character speed. 1 Answer