forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Общие вопросы (http://forum.boolean.name/forumdisplay.php?f=166)
-   -   управление персонажем. (http://forum.boolean.name/showthread.php?t=17288)

Okay 20.09.2012 13:53

управление персонажем.
 
Недавно перешел на unity. Есть проблема с управлением персонажа. Когда нажимаешь кнопку "D", персонаж должен повернуться один раз, а поворачивается постоянно.

pax 20.09.2012 14:18

Ответ: управление персонажем.
 
Как-то так:

PHP код:

public class RotateOnce : MonoBehaviour
{
    
bool _rotating = false;

    
void Update()
    {
        if (!
_rotating && Input.GetKeyDown(KeyCode.D))
        {
            
StartCoroutine(RotateOnce());
        }
    }

    
IEnumerator RotateOnce()
    {
        
_rotating = true;

        var 
oldRotation = transform.rotation;
        var 
newRotation = transform.rotation * Quaternion.Euler(0, 90, 0);

        var 
t = 0f;

        while (
t < 1)
        {
            
transform.rotation = Quaternion.Slerp(oldRotation, newRotation, t);
            yield return 
null;
            
t += Time.deltaTime;
        }

        
transform.rotation = newRotation;

        
_rotating = false;
    }
} 


RegIon 22.09.2012 10:23

Ответ: управление персонажем.
 
Зачем карутины тут мутить?) Или это уже в моду вошло

pax 22.09.2012 23:10

Ответ: управление персонажем.
 
Цитата:

Сообщение от Костян (Сообщение 238837)
Зачем карутины тут мутить?) Или это уже в моду вошло

Лучше пример без корутин напиши, полезней будет ;)


Часовой пояс GMT +4, время: 07:10.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Перевод: zCarot