Я пытаюсь создать 2D-игру в Unity. У моего игрового плеера есть некоторые функции, такие же, как у Doodle Army. Я хочу поворачивать руки и голову игрока с ограничениями до 45 градусов вверх и вниз, как армейский игрок каракули, с обеих сторон. Я использую два джойстика: один для движения, а второй - для прицеливания. таким образом, второй джойстик может вращать руку и голову в направлении движения джойстика. Я хочу ограничить это вращение до 45 градусов вверх и вниз с обеих сторон (влево и вправо (вверх и вниз)).
Любой может мне помочь.
Вот мой небольшой код для поворота рук и головы двухмерного спрайта.
using UnityEngine;
using System.Collections;
using UnityStandardAssets.CrossPlatformInput;
public class PlayerRotation : MonoBehaviour {
public float moveForce = 5, boostMultiplier = 2;
GameObject ga;
// Use this for initialization
void Start () {
ga = GameObject.Find ("Charac_Head");
}
// Update is called once per frame
void FixedUpdate () {
Vector2 moveVec = new Vector2 (CrossPlatformInputManager.GetAxis ("Horizontal2"),
CrossPlatformInputManager.GetAxis ("Vertical2")) * moveForce;
//ga.transform.LookAt(transform.position.toVector2() + moveVec);
//ga.transform.Rotate (0, 0, moveVec.y);
if (moveVec.y <= 4.0f && moveVec.y >= -4.0f) {
//ga.transform.right = moveVec;
ga.transform.Rotate(0,0,moveVec.y);
Debug.Log (moveVec);
}
//}
}
}