Jump to content
Unity Insider Forum

All Activity

This stream auto-updates     

  1. Today
  2. DaveMero

    Assetstore Publisher Automatic Payout Frage

    Ok dann muss ich das nochmal ausfüllen ich glaub das hab ich falsch angegeben. Danke für die schnelle hilfe😁
  3. Jomnitech

    Hilfe beim Steuerelement "Slider"

    in dem Script wo du die Munition hast: public int munition; public void setMunition(int muniUpdate) { munition = muniUpdate; } jetzt einfach unterhalb deines Sliders auf das + klicken, in dem leeren Feld dein Objekt hineinziehen wo dein Script drauf ist, dann als Funktion setMunition auswählen. habs jetzt nicht getestet, müsste aber so gehen.
  4. Yesterday
  5. Sascha

    Assetstore Publisher Automatic Payout Frage

    Du erbringst aber keine Dienstleistung, du verkaufst ein Produkt. An dieser Stelle dringend der übliche Hinweis: Bin kein Anwalt, kannst dich im Zweifelsfall nicht auf meinen Rat beziehen. Dienstleistungen bedeuten afaik, dass jemand (hier: aus den USA) dich beauftragt, etwas zu tun. Das ist hier eben nicht der Fall.
  6. Juhu, ich hab´s geschaft. Da das Problem ja nicht im Child "PlyMain" war, sondern durch die Drehung im darüberliegenden "PlyShip" entstanden ist, habe ich mein Dreh-Script nun auch dort angesiedelt: public class PlyRotUridium : MonoBehaviour { [SerializeField] GameObject ply; // [SerializeField] // GameObject plyShip; [SerializeField] Transform plyGun; [SerializeField] GameObject background; // [SerializeField] // GameObject backgroundStars; [SerializeField] float plyRotUridiumDuration = 1.0f; public Vector3 plyShipRot; float plyRotAngelEnd = 180.0f; float plyRotRealAngelEnd; float backgroundMoveSpeed; float backgroundStop = 0.0f; [SerializeField] float backgroundEndSpeed = -0.06f; bool rotUridiumYes = false; bool plyRotScriptYes = true; void Update() { if (Input.GetKeyDown("u") && !rotUridiumYes) { rotUridiumYes = true; var gunYes = ply.GetComponent<PlyGunMain>(); gunYes.enabled = !gunYes.enabled; // Kanonen ausstellen, damigt beim Drehen nicht sonstwohin geschossen wird. var plyRotScript = GetComponent<PlyShipRot>(); plyRotScript.enabled = !plyRotScript.enabled; // leichtes Drehen um Z Achse ausschalten, damit das Script mit diesem nicht zusammenkommt. plyRotScriptYes = false; Vector3 gunRot = plyGun.eulerAngles; gunRot.y += 180.0f; // Kanonen um 180 Grad drehen, damit später die Schußrichtung stimmt. plyGun.eulerAngles = gunRot; plyShipRot = transform.eulerAngles; backgroundMoveSpeed = background.GetComponent<TransformForward>().moveSpeed; StartCoroutine(PlyRotXZUridium(backgroundStop, backgroundEndSpeed, plyRotAngelEnd, plyRotUridiumDuration)); } } private void FixedUpdate() { if (!plyRotScriptYes) { transform.eulerAngles = plyShipRot; background.GetComponent<TransformForward>().moveSpeed = backgroundMoveSpeed; } } private IEnumerator PlyRotXZUridium(float targetBackStop, float targetBackStart, float targetRot, float duration) { var startBack = backgroundMoveSpeed; var startRotX = plyShipRot.x; var startRotZ = plyShipRot.z; for (var time = 0.0f; time < duration; time += Time.deltaTime) { var progress = time / duration; backgroundMoveSpeed = Mathf.Lerp(startBack, targetBackStop, progress); plyShipRot.x = Mathf.Lerp(startRotX, targetRot, progress); yield return null; } plyShipRot.x = targetRot; for (var time = 0.0f; time < duration; time += Time.deltaTime) { var progress = time / duration; backgroundMoveSpeed = Mathf.Lerp(startBack, targetBackStart, progress); plyShipRot.z = Mathf.Lerp(startRotZ, targetRot, progress); yield return null; } backgroundMoveSpeed = targetBackStart; plyShipRot.z = targetRot; var gunYes = ply.GetComponent<PlyGunMain>(); gunYes.enabled = !gunYes.enabled; yield return new WaitForSeconds(0.1f); plyRotScriptYes = true; var plyRotScript = GetComponent<PlyShipRot>(); plyRotScript.plyRot = new Vector3(0, transform.eulerAngles.y, 0); plyRotScript.enabled = !plyRotScript.enabled; yield return new WaitForSeconds(0.1f); rotUridiumYes = false; } } Was nun wie folgt aussieht: RotierenUridium4.mp4 Somit habe ich meine Probleme 1 bis 4 gelöst und Problem 5 umgangen. Nun noch die Bewegung des Background anpassen und fertig.
  7. DaveMero

    Assetstore Publisher Automatic Payout Frage

    Ok, ich habs nochmal durchgecheckt. Mich verwirrt nur eins. Erbringe ich Dienstleistungen innerhalb der USA?dann muss ich ja 30% TAX abgeben und die VAT sind auch nochmal 30% heist das ich muss jetzt 60 von meinen einkommen abdrücken? Bin mir nicht sicher bei den punkt ob ich Dienstleistungen innerhalb der usa beziehe. Ich bekomm das Geld ja von unity und die haben ihren sitz in san Francisco:/
  8. Sascha

    Assetstore Publisher Automatic Payout Frage

    Geh halt durch den Fragebogen, ist so ein (mehr oder weniger) neues US-Gesetzding. Die meisten Fragen fallen für dich sowieso weg, weil du kein US-Bürger bist.
  9. Hallo zusammen, Ich verkaufe ein paar assets im store und muss seit kurzem mein payout profil erstellen wobei ich eine frage nicht ganz verstehe. Ist mein Einkommen ein US source income für das ich die 30% TAX abgeben muss oder wie ist das gemeint? Mir wurde eine e-mail geschickt das meine zahlung zurückgehalten wird bis ich das bestätige. Wäre nett wenn mir jemand hilft ich habs nicht so mit juristischen Fragen, vorallem nicht in englisch😬
  10. Jomnitech

    Kamera Winkel (Rotation) Berechnen

    Also das hier funktioniert wesentlich besser, fehlt nur noch ein smoother Übergang beim drücken von Q oder E using System.Collections; using System.Collections.Generic; using UnityEngine; public class rotateTest : MonoBehaviour { public Transform controller; public float moveSpeed = 4; public float rotateSpeed = 20; public bool leftMove = false; public bool rightMove = false; public bool upMove = false; public bool downMove = false; public float zoomMin = 0.75f; public float zoomMax = 3; public float zoomSpeed = 0.25f; public int rotationY; public float _rotationY; // Update is called once per frame void Update() { // Movement moveLeftRight(); moveUpDown(); // Rotation rotateLeftRight(); } void moveLeftRight() { //MoveLR... } void moveUpDown() { //MoveUD... } void rotateLeftRight() { if (Input.GetKey(KeyCode.E) && Input.GetKey(KeyCode.LeftAlt)) { //controller.transform.Rotate(0, -rotateSpeed * Time.deltaTime, 0); _rotationY -= rotateSpeed*Time.deltaTime; } else if (Input.GetKeyDown(KeyCode.E)) { if(_rotationY != 0) { _rotationY = 0; } rotationY -=45; } if (Input.GetKey(KeyCode.Q) && Input.GetKey(KeyCode.LeftAlt)) { _rotationY += rotateSpeed*Time.deltaTime; } else if (Input.GetKeyDown(KeyCode.Q)) { if (_rotationY != 0) { _rotationY = 0; } rotationY += 45; } controller.eulerAngles = new Vector3 (0, rotationY+_rotationY,0); } }
  11. StolleJay

    Kamera Winkel (Rotation) Berechnen

    Danke. Ich werde es mal versuchen. Aktuell schnell mal getestet und ja das mit den 0 und 360 stimmt irgendwie noch nicht.
  12. Jomnitech

    Kamera Winkel (Rotation) Berechnen

    Oh, Rotation, meine Achillesferse. Rotation geht von 0 bis 180 und von 0 bis -180, euler angels sind wiederum von 0 bis 360, da bekomme ich immer die Kriese. Also die 0 360 Grad übergänge müsste man nochmals bearbeiten, aber ev. hilft es dir ja soweit? using System.Collections; using System.Collections.Generic; using UnityEngine; public class rotateTest : MonoBehaviour { public Transform controller; public float moveSpeed = 4; public float rotateSpeed = 20; public bool leftMove = false; public bool rightMove = false; public bool upMove = false; public bool downMove = false; public float zoomMin = 0.75f; public float zoomMax = 3; public float zoomSpeed = 0.25f; private Vector3 newPosition; public int rotationY; public float _rotationY; public float testeulerangle; // Update is called once per frame void Update() { // Movement moveLeftRight(); moveUpDown(); // Rotation rotateLeftRight(); } void moveLeftRight() { //MoveLR... } void moveUpDown() { //MoveUD... } void rotateLeftRight() { if (Input.GetKey(KeyCode.E) && Input.GetKey(KeyCode.LeftAlt)) { //controller.transform.Rotate(0, -rotateSpeed * Time.deltaTime, 0); _rotationY -= 1; } else if (Input.GetKeyDown(KeyCode.E)) { if(_rotationY != 0) { _rotationY = 0; } //controller.transform.Rotate(0, -45, 0); if(rotationY >=1 ) { rotationY -= 45; } else { rotationY =45; } } if (Input.GetKey(KeyCode.Q) && Input.GetKey(KeyCode.LeftAlt)) { //controller.transform.Rotate(0, +rotateSpeed * Time.deltaTime, 0); _rotationY += 1; } else if (Input.GetKeyDown(KeyCode.Q)) { if (_rotationY != 0) { _rotationY = 0; } //if(controller.eulerAngles.y != ) //controller.transform.Rotate(0, +45, 0); if (rotationY <= 359) { rotationY += 45; } else { rotationY =360; } } float yRoation = Mathf.Lerp(controller.eulerAngles.y, rotationY+_rotationY, rotateSpeed * Time.deltaTime);// lerp smooth out between two values controller.eulerAngles = new Vector3(0, yRoation, 0); testeulerangle = controller.eulerAngles.y; } } Ist noch nicht ganz schick und zu Ende gedacht, aber ich hab irgendwie gad ne blockade 🙃
  13. StolleJay

    Kamera Winkel (Rotation) Berechnen

    Ja so was wäre dann doch mehr oder weniger Sinnfrei Die Camera soll die Position halten bis man wieder Q oder E drücke ohne ALT.
  14. Jomnitech

    Kamera Winkel (Rotation) Berechnen

    Aso, ich dachte du willst das parent und child objekt separat drehen, und ich dachte mir noch warum sollte man sowas wollen 🙃 Jetzt noch eine Frage zur funktion, soll die Kamera direkt nach dem loslassen von Alt+E / Alt+Q, also nach dem frei drehen, direkt auf den nächsten 45Grad Schritt gehen oder erst wenn man eine Taste Q oder E drückt?
  15. StolleJay

    Kamera Winkel (Rotation) Berechnen

    Das Script ist noch nicht richtig Optimiert deshalb habe ich noch das .transform. drin Ja die Camera ist ein Child vom Controller. Die Camera selber drehe ich nicht sondern den Controller. Dadurch wird die Camera ja mit gedreht. Der Controller ist auch eine Art PoV (Point of View). Das mit den jeweils 45° klappt ja einwandfrei nur das von "Frei" Drehen zurück zu den jeweils 45° Schritten bekomme ich nicht hin.
  16. Jomnitech

    Kamera Winkel (Rotation) Berechnen

    Verstehe das Script nicht ganz. - Warum controller.transform.Rotate? controller ist doch bereits als Transform deklariert, müsste es nicht controller.Rotate() heissen? - Wo drehst du den die Kamera selbst? Wenn ich das richtig verstanden habe ist sie ein child Object vom Controller? aber ich sehe nur dass du den controller drehst?
  17. Hallo zusammen, ich brauche mal einen Denkanstoß. Für ein Projekt suche ich nach einer Möglichkeit einen Schlauch oder Kabel, welches an einem Punkt Fix ist und am andere Ende vom Spielercharakter "getragen" wird, dynamisch zu verlänger und auch wieder zu verkürzen. Ich habe keine Ahnung mit welcher Technik oder mit welcher Komponente alleine ich an diese Sache ran gehen könnte. Kann mich da mal jemand in die richtige Richtung lenken für meine weiteren Recherchen? Vielen lieben Dank.
  18. Last week
  19. StolleJay

    Kamera Winkel (Rotation) Berechnen

    Hallöchen, ich Melde mich heute mal wieder mit einem kleinen Problemchen an dem ich schon seit 1-2 Tagen hänge und nicht weiter komme. Ich habe ein Script für meine Kamera mit dem ich das Übergeordnete Objekt (Mein Camera Controller) um jeweils 45 Grad drehen kann. Zusätzlich kann man die Kamera aber auch wenn gewünscht ohne diese 45 Grad Frei Rotieren. Mein Problem dabei ist jetzt jedoch das wenn ich die Kamera Frei Drehe und und bei einem Winkel von zb. 51 lasse wie bekomme ich es hin das wenn ich die Kamera wieder um normale 45 Grad drehen will er erst mal von den 51 auf 90 Grad hoch geht bzw. auf 45 runter bevor diese wieder um ganze 45 Grad Rotiert? using UnityEngine; public class CameraController : MonoBehaviour { public Camera camera; public Transform controller; public float moveSpeed = 4; public float rotateSpeed = 20; public bool leftMove = false; public bool rightMove = false; public bool upMove = false; public bool downMove = false; public float zoomMin = 0.75f; public float zoomMax = 3; public float zoomSpeed = 0.25f; // Update is called once per frame void Update () { // Movement moveLeftRight(); moveUpDown(); // Rotation rotateLeftRight(); // Zoom zoomInOut(); } void moveLeftRight() { //MoveLR... } void moveUpDown() { //MoveUD... } void rotateLeftRight() { if (Input.GetKey(KeyCode.E) && Input.GetKey(KeyCode.LeftAlt)) { controller.transform.Rotate(0, -rotateSpeed * Time.deltaTime, 0); } else if (Input.GetKeyDown(KeyCode.E)) { controller.transform.Rotate(0, -45, 0); } if (Input.GetKey(KeyCode.Q) && Input.GetKey(KeyCode.LeftAlt)) { controller.transform.Rotate(0, +rotateSpeed * Time.deltaTime, 0); } else if (Input.GetKeyDown(KeyCode.Q)) { controller.transform.Rotate(0, +45, 0); } } void zoomInOut() { //Zoom... } }
  20. So, ich habe etwas experememtiert: - wenn ich "float plyRotAngelEnd = 179.0f;" eingebe ist das Ergebnis nach der Drehung für "Rotation" X, Y, Z: 1, -180,-1 - wenn ich nur über die X Achse drehe und nicht noch über Z Achse ist das Ergebnis nach der Drehung: -180, 0, 0 - wenn ich die X Achse und die Y Achse drehe ist das Ergebnis nach der Drehung: 0, 0, -180 Es scheint also so, dass Unity versucht die Werte für "Rotation" nach der Drehung zu optimieren - das mache ich mir doch zu Nutze für mein Problem Nummer 2. Dadurch, dass mein Schiff aufgrund des Wert "Rotation" Y = -180 gedreht ist, und die anderen Achsen nun wieder auf "0" stehen, nehme ich die Y Achse mit in meinem Script auf: Ich ergänze public float plyShipMainRotY; und in der Update Function plyShipMainRotY = plyShipMain.eulerAngles.y; und ändere in der FixedUpdate Function plyShipMain.eulerAngles = new Vector3(plyShipMainRotX, plyShipMainRotY, plyShipMainRotZ); Nun sieht die Drehung wie folgt aus - zur Verdeutlichung habe ich die Drehtzeit "plyRotUridiumDuration" etwas erhöht. Im Spiel drehe ich natürlich schneller. Da ich nun wirklich alle Achse nutze könnte ich eventuell anstatt 3 float Variablen mit einer Vector3 Variable arbeiten. Ich setzte mich aber ersteinmal an meine weiteren Probleme und hoffe, dass nicht in einem Update die Optimierung der Werte für "Rotation" wieder aufgehoben wird.
  21. Sascha

    Objekt mit Resources.Load() laden

    Wenn "cube" ein Ordner ist, kannst du den schlecht laden. Mal davon abgesehen, müssen Ressourcen in einem Ordner namens "Resources" sein. Mit "Objects/cube" lädst du also z.B. das Asset mit dem Pfad "Assets/Resources/Objects/cube.prefab" oder "Assets/Banana/Resources/Objects/cube.prefab". Das ist auch schon so der erste Punkt, an dem die Warnleuchten angehen dürfen - Resources sollte man einfach generell nicht außerhalb von Editorscripts benutzen.
  22. RealNiclas

    Objekt mit Resources.Load() laden

    Guten Morgen, ich versuche nun schon einige Zeit Objekte mittels Resources.Load() zu laden, bis jetzt aber ohne Erfolg. Egal wie ich den Pfad angebe, das Objekt ist am Ende immer NULL. z.B.: GameObject cube = Resources.Load("Objects/cube") as GameObject; Das Objekt liegt in folgendem Ordner: "Assets/Objects/cube" Weiß jemand woran das liegen könnte? Gruß: Niclas
  23. Jo, gerne! Es hat schon ein paar Minuten gedauert, bis ich die Werte heraus gefunden hatte. Aber irgendwie reizen mich solche Dinge enorm. Ich muss dann einfach wissen, wie es funktioniert. Vorallem, wenn ich erkenne, dass da irgendwas getrickst wurde.
  24. Hey malzbie! Echt super, wie du dir Mühe gemacht hast! Vielen Dank Ich hab 4x4 Felder und dafür aber 1.9m Distanz statt 1.4 und FoV 60. Ich werde aber sicher genau die selben Werte und auch Feldgrösser ausprobieren wie du ermittelt hast. Du scheinst es genau getroffen zu haben
  25. Ich konnte es nicht lassen und habe die nötigen Werte ermittelt. Schau hier:
  26. Stimmt schon. Meine Kamera ist recht tief, aber das kann man leicht mit hoheren Wänden ausgleichen. Wie ich oben schon geschrieben habe, sind meine Säulen viel mächtiger als die in Grimrock. Dadurch hatte ich FOV von 60 eingestellt. Wenn die Säulen schmaler sind, kann man ohne weiteres ein FOV von 50 einstellen. Dadurch kommt alles etwas näher ran, auch die Monster, die ein Feld weiter stehen. Es war nur ein Quick and Dirty Test um dir zu zeigen, dass FOV eben nicht hoch ist und somit einen Weitwinkel erzeugt, sondern eher kleiner als normal und somit zoomt. Und damit die Wände passen, ist alles viel enger gebaut, als es wirklich sein würde.
  27. Vielen Dank, dass du dir die Mühe gemacht hast! Du hast Recht, wenn man die Kamera nach hinten setzt, funktioniert das schon viel besser. Bin mit den Werten FoV, Neigung, Höhe und Position Offset zur Mitte am experimentieren. Habe es aber noch nicht so hinbekommen, wie in Grimrock. Schau mal deine Szene an... Wenn jetzt ein Gegner auf dem gegenüber liegenden Feld steht, ist die Distanz schon absurd gross für ein Kampf und deine Kamera ist auch sehr tief am Boden. In Grimrock wirkt das alles irgendwie ganz anders.
  28. Hi, ich möchte mit folgendem Script mein Schiff wie in beigefügtem Video drehen (was alles nicht klappt, schreibe ich am Ende): public class PlyRotUridium : MonoBehaviour { [SerializeField] GameObject ply; [SerializeField] Transform plyShipMain; [SerializeField] GameObject plyShip; [SerializeField] Transform plyGun; [SerializeField] GameObject background; // [SerializeField] // GameObject backgroundStars; [SerializeField] float plyRotUridiumDuration = 1.0f; public float plyShipMainRotX; public float plyShipMainRotZ; public float plyShipRotZ; float plyShipRotZSpeed; float plyRotAngelEnd = 180.0f; float plyRotRealAngelEnd; float backgroundMoveSpeed; float backgroundStop = 0.0f; [SerializeField] float backgroundEndSpeed = -0.06f; bool rotUridiumYes = false; void Update() { if (Input.GetKeyDown("u") && !rotUridiumYes) { rotUridiumYes = true; var gunYes = ply.GetComponent<PlyGunMain>(); gunYes.enabled = !gunYes.enabled; // Kanonen ausstellen, damigt beim Drehen nicht sonstwohin geschossen wird. var plyRotScript = plyShip.GetComponent<PlyShipRot>(); plyShipRotZ = plyShip.GetComponent<PlyShipRot>().plyRotZ; plyShipRotZSpeed = plyShip.GetComponent<PlyShipRot>().plyRotSpeed; plyRotScript.enabled = !plyRotScript.enabled; // leichtes Drehen um Z Achse ausschalten, damit das Script mit diesem nicht zusammenkommt. Vector3 gunRot = plyGun.eulerAngles; gunRot.y += 180.0f; // Kanonen um 180 Grad drehen, damit später die Schußrichtung stimmt. plyGun.eulerAngles = gunRot; plyShipMainRotX = plyShipMain.eulerAngles.x; plyShipMainRotZ = plyShipMain.eulerAngles.z; // var rotx = plyRotX; // plyRotRealAngelEnd = (rotx += plyRotAngelEnd); // eigentlich möchte ich hier zum vorhandenen Winkel zusätzlich 180° hinzurechnen. backgroundMoveSpeed = background.GetComponent<TransformForward>().moveSpeed; // StartRot(); StartCoroutine(PlyRotXZUridium(backgroundStop, backgroundEndSpeed, plyRotAngelEnd, plyRotUridiumDuration)); } } /* void StartRot() { while (plyShipRotZ == 0) { if (plyShipRotZ < 0) { plyShipRotZ += 1 * plyShipRotZSpeed; } if (plyShipRotZ > 0) { plyShipRotZ -= 1 * plyShipRotZSpeed; } } if (plyShipRotZ == 0) { StartCoroutine(PlyRotXZUridium(backgroundStop, backgroundEndSpeed, plyRotAngelEnd, plyRotUridiumDuration)); } } */ private void FixedUpdate() { if (rotUridiumYes) { // plyShip.transform.eulerAngles = new Vector3(0, 0, -plyShipRotZ); plyShipMain.eulerAngles = new Vector3(plyShipMainRotX, 0, plyShipMainRotZ); background.GetComponent<TransformForward>().moveSpeed = backgroundMoveSpeed; } } private IEnumerator PlyRotXZUridium(float targetBackStop, float targetBackStart, float targetRot, float duration) { var startBack = backgroundMoveSpeed; var startRotX = plyShipMainRotX; var startRotZ = plyShipMainRotZ; for (var time = 0.0f; time < duration; time += Time.deltaTime) { var progress = time / duration; backgroundMoveSpeed = Mathf.Lerp(startBack, targetBackStop, progress); plyShipMainRotX = Mathf.Lerp(startRotX, targetRot, progress); yield return null; } plyShipMainRotX = targetRot; for (var time = 0.0f; time < duration; time += Time.deltaTime) { var progress = time / duration; backgroundMoveSpeed = Mathf.Lerp(startBack, targetBackStart, progress); plyShipMainRotZ = Mathf.Lerp(startRotZ, targetRot, progress); yield return null; } backgroundMoveSpeed = targetBackStart; plyShipMainRotZ = targetRot; var gunYes = ply.GetComponent<PlyGunMain>(); gunYes.enabled = !gunYes.enabled; var plyRotScript = plyShip.GetComponent<PlyShipRot>(); plyRotScript.enabled = !plyRotScript.enabled; yield return new WaitForSeconds(0.2f); rotUridiumYes = false; } } Hier die Drehung: RotierenUridium.mp4 Erläuterung: wie im Video zu erkennen ist, hat mein Player verschiedene Child Objekte: - PlyShip (welches im Script eine Variable ist): dieses nutze ich, um ein kleines Kippen (Drehung um die Z-Achse) zu erzeugen, wenn man sich seitlich bewegt. Diese Drehung schalte ich im Script aus. - Child zu PlyShip: PlyMain (auch eine Variable im Script): hier sind alle sichtbaren Komponenten des Schiff enthalten - PlyGun (eine weitere Variable im Script): Die Spawn Punkte der verschiedenen Waffen Folgende Probleme habe ich: 1: ich drehe das GameObject "PlyMain" nur um die X und Z Achse. Wie im Video zu erkennen ist, stehen diese nach der Drehung wieder auf "0" und die Y Achse auf "-180", obwohl ich diese gar nicht ändere. Das ist warscheinlich mein Ursprungsproblem für den folgenden Punkt. 2: ich schaffe es nicht, die Drehung zu wiederholen, sprich mich zurück zu drehen. Eigendlich dachte ich, dass ich mit den Zeilen "var rotx = plyRotX;" und "plyRotRealAngelEnd = (rotx += plyRotAngelEnd);" iin der Update Funktion mir den aktuellen Wert der Achsen hole und dann 180° hinzurechne - klappt aber nicht. 3: wie geschrieben, hat mein GameObjekt "PlyShip" ein eigenes Script zu leichten Kippen des Schiff. Wenn mein "PlyShip" noch etwas gekippt ist, hat das natürlich optisch Auswirkungen auf das Child "PlyMain". Was mich wundert: es werden aber auch von "PlyMain" die Werte der Z Achse geändert (siehe Video am Ende). 4: um das zu umgehen habe ich die Funktion "StartRot" (im Script aktuell inaktiv geschaltet) eingebaut, um vor der eigendlichen Drehung das Kippen von "PlyShip" wieder auf "0" zu setzten. Das klappte aber auch nicht. 5: ich kann derzeit keine While Schleife ausführen. Unity stürzt mit dabei immer komplett ab. Ich muss es mit den Taskmanager beenden. Hier noch die Drehung, wenn das Schiff etwas gekippt ist: RotierenUridium2.mp4
  1. Load more activity

Announcements

Hy, wir programmieren für dich Apps(Android & iOS):

Weiterleitung zum Entwickler "daubit"



×