Winkel Berechnung bei Spiele Programmierung, Winkel ohne rechtem Dreieck mit bekannten Seitenlängen berechnen?

Ich entwickle aktuell mein erstes Spiel und benötige mathematische Unterstützung bei der Winkelberechnung. Dabei ist das Bild, was ich auf die schnelle in Paint gezeichnet habe, wichtig. Auf dem zweiten seht ihr das Spiel, man muss Coins einsammeln, dann kommt man in den nächsten level, hat 5 leben, 15 sekunden zeit pro level...ist halt mein erstes spiel :) die texturen/sprites sind auch erst einmal testweise drin und teilweise noch nicht selber gemacht, um erst einmal die Möglichkeiten zu testen, also nicht wundern ^^

Wir haben eine Kugel bei C, die auf Spieler bei A abgeschossen wird. Nun ist es keine Kugel, sondern eine Patrone. Somit muss das Image gedreht werden, damit die Spitze der Patrone in schussrichtung zeigt (eine Patrone die Quer geschossen wird, sieht uncool aus ;)).

Das Image kann ich nach Grad drehen. Rechts ist 0°, oben 90°, links 180° usw., wie auf dem Bild zu sehen und durch den grauen Kreis dargestellt. Wenn die Kugel horizontal von rechts nach links geschossen wird, benötigt sie die Angabe 180°, um in Schussrichtung ausgerichtet zu sein.

Alles was ich benötige, ist der Winkel gamma (außer ich mache einen Denkfehler? müsste aber funktionieren, auch wenn ich ab einem bestimmten Wert die andere Seite des Winkels benötige). Dadurch dass ich die Position der Kugel und des Spielers im Raum weiß, kann ich die Seitenlängen a, b, c berechnen. Wahrscheinlich kann ich auch c1 und c2 berechnen, falls es mich weiterbringen sollte, bin mir da aber noch nicht sicher.

Ich habe eine hilfslinie eingezeichnet, um rechte Winkel zu bekommen. Dadurch könnte ich gamma1 und gamma2 berechnen, diese addieren und dadurch hätte ich das, was ich benötige. Aber ich weiß nicht wie und sitze schon ein paar stunden daran.

Soweit meine recherchen ergaben, kann ich mit den aktuellen Informationen diese Aufgabe nicht lösen.Welche Werte benötige ich, um gamma herausfinden zu können? Eventuell kann ich diese Werte programmiertechnisch herausfinden. Allerdings beschränkt es sich eher auf entfernungen (längen), außer ich übersehe etwas.

Kann mir jemand helfen? :)

Beim schreiben ist mir aufgefallen, dass wenn ich c1 und c2 habe, ich tatsächlich gamma1 und gamma2 berechnen und addieren kann. Das müsste soweit laufen. Dann muss ich jetzt herausfinden, wie ich an c1 und c2 komme. Gibt es eventuell einen einfacheren Weg? Die Berechnung wird sonst immer komplexer und somit ressourcenfressender

...zur Frage

Puh, vielen dank euch beiden. Nach hängen und würgen habe ich es jetzt endlich geschafft...Nach ein paar Implementierungsschwierigkeiten musste ich nur noch ab 180° (wenn er also einen halbkreis gemacht hat) die nächsten werte + 180 machen, sonst würde er wieder von 0 beginnen (grad geht im raum natürlich bis 360) und den Fixpunkt am Rand von der rechten Seite auf die linke Seite verschieben (damit er weiter hochzählt, und nicht plötzlich runter). Ich hätte auch den andere seite des winkels berechnen können, wäre aber mehr schreibarbeit gewesen und programmiertechnisch höherer aufwand.

Also noch einmal vielen Dank!! Ihr habt mir viel Zeit erspart :)

...zur Antwort

Prinzipiell stimme ich dem zu. Am besten zusammen kaufen oder sie kauft sich etwas und Überrascht mich damit. Einfach so oder vielleicht noch an z.B. Ostern. Aber als Geburtstagsgeschenk oder Weihnachtsgeschenk? Ich bin mir da noch nicht so sicher. Wir wohnen noch nicht zusammen. Ich werde an Weihnachten bei ihr sein. Sie schenkt mir also etwas, was anschließend bei ihr bleibt. Ich weiß nicht ob ich mich damit wirklich beschenkt fühle. Es würde sich glaub ich erst einmal anfühlen, wie als wenn sie sich selber beschenkt und ich auch etwas davon habe. Oder ich sehe das nur so, weil es für mich normal war, dass der Mann der Frau Dessous schenkt.

...zur Antwort