2017-07-28 12 views
0

Also meine Frage ist ziemlich spezifisch, was bedeutet, dass es ziemlich schwer war, irgendetwas zu finden, das mir bei Google oder Stackoverflow helfen könnte.Anpassen des anfänglichen Aufzählungswinkels, um die vom Benutzer eingestellte Entfernung (Bereich Null) anzupassen (für Mathe-Götter)

Ich möchte Benutzern die Möglichkeit geben, die Entfernung/Reichweite auf ihren Pistolen einzustellen. Ich habe fast alles, was ich brauche, um das möglich zu machen. Ich habe einfach nicht den Winkel, den ich dem Richtungswinkel, aus dem die Kugel kommt, hinzufügen muss. Ich weiß nicht, welche Gleichung/Formel ich brauche, um das zu erreichen. Ich suche nichts Code-spezifisch, nur eine Idee von was/wie dies zu tun ist.

Da ich weiß nicht, was Formel, begann ich, um mit dieser Formel mit einigen Zahlen durcheinander einfach zu verwenden, fand ich:

(This formula applies to actual sniper) 
Range = 1000 * ActualTargetHeight/TargetHeightInMils(on the scope) 
BulletDrop = BulletDropSpeed*Range^2/2*VelocityOfTheBullet  
MilsToRaiseScope = 1000 * BulletDrop * RangeToTarget 

I ersetzt Bereich nur mit dem, was der Benutzer Null eingeschaltet ist. Ich habe das Gefühl, ich würde das MilsToRaiseScope einfach in eine Trigonometriefunktion werfen. Aber ich bin mir nicht sicher.

Wenn jemand verwirrt ist, über was ich spreche, können Sie ein Beispiel von dem finden, was ich in Battlefield 4 oder irgendeinem der Arma Spiele will. Mit Scharfschützen können Sie das Zielfernrohr auf die von Ihnen benötigte Entfernung auf Null stellen, so dass Sie sich nicht auf den Geschossabfall auf dem Zielfernrohr einstellen müssen.

Sorry für die lange Frage, wollen nur sicherstellen, dass jeder versteht! :)

Antwort

0

Mils entspricht (Militär) Winkelmesseinheit von 1/1000 von Radian, so ist es bereit zu bedienende Winkel

Zweite Formel seltsam aussieht. Höhenverlust ist abhängig von der Zeit des Fluges:

dH = g*t^2/2 = g * (Range/VelocityOfTheBullet)^2/2 

wobei g 9,81 m/s^2

Verwandte Themen