Показать сообщение отдельно
Старый 09.02.2013, 13:45   #5
SGREED
ПроЭктировщик
 
Аватар для SGREED
 
Регистрация: 05.02.2013
Сообщений: 149
Написано одно полезное сообщение
Ответ: Управление wasd

Вот я думаю будет нормально.
Управление идет из зазначеных клавиш, в скрипте не нужно назначать, все только при присваивании.
Файл желательно назвать PlayerMovement, и все будет работать.
using UnityEngine;
using System.Collections;

[
RequireComponent ( typeof( CharacterController ))]
public class 
PlayerMovement : MonoBehaviour {
         public 
float moveSpeed;
         public 
float backSpeed;
         public 
float strafeSpeed;
         public 
string goForward;
         public 
string goBack;
         public 
string goLeft;
         public 
string goRight;
         
         private 
Transform _myTransform;
         private 
CharacterController _controller;
         
         public 
void Awake (){
                 
_myTransform = transform;
                 
_controller = GetComponent<CharacterController>();
         }
         
         
void Start () { 
                 
moveSpeed = 7.0f;
                 
backSpeed = moveSpeed / 2;
                 
strafeSpeed = moveSpeed / 2;
                 
goForward = "w";
                 
goBack = "s";
                 
goLeft = "a";
                 
goRight = "d";

         }
         
         
void Update () {
                 
Walk();
                 
Strafe();
         }
         
         private 
void Walk (){
                 if( 
Input.GetKey( goForward )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.forward ) * moveSpeed);
                 if( 
Input.GetKey( goBack )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.forward ) * -backSpeed);
         }
         
         private 
void Strafe (){
                 if( 
Input.GetKey( goLeft )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.right ) * -strafeSpeed);
                 if( 
Input.GetKey( goRight )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.right ) * strafeSpeed);
         }
} 
это только управление от третего лица.
Камера нге будет поворачиваться, щас напишу, по любому кому то пригодиться
(Offline)
 
Ответить с цитированием