Ich versuche C# und Unity zu verwenden, um eine einfache Spielmechanik zu erstellen, die es dem Spieler ermöglicht, 45
Grad nach rechts zu drehen und dann seine neue Rotation auf -45
einzustellen. Es funktioniert Art:Rotation Werte durcheinander C#
using UnityEngine;
using System.Collections;
public class Movement : MonoBehaviour
{
public float speed = 215f;
private bool isLeft = false;
void Update()
{
if (Input.GetMouseButtonDown(0))
{
if (isLeft == false)
{
transform.rotation = Quaternion.Euler(90, 45,0);
isLeft = true;
Debug.Log("Turned Right");
}
else
{
transform.rotation = Quaternion.Euler(90, 0, 0);
// No matter what I put as the x value, it always sets it to the z,
// for example: if I put
// transform.rotation = Quaternion.Euler(90, 270, 0);
// the position would be 90, 0, 270.
Debug.Log("Turned Left");
isLeft = false;
}
}
}
}
Hier ist, was ich passieren soll:
1. Klick: Drehwerte auf 90, 45, 0
2. Klick: Drehwerte auf 90, -45, 0
Am Ich benutze einen Befehl falsch?
Wenn Sie diese Zeile ändern: 'transform.rotation = Quaternion.Euler (90, 0, 0);' für diese eine 'transform.rotation = Quaternion.Euler (90, -45, 0);' sollte lösen Dein Problem – cjf93
Danke ich fühle mich blöd: p hat funktioniert :) – iFallOffStuff
habe ich als Antwort gepostet, bitte als richtig markieren :) – cjf93