Ihre Annäherung schreibt im Grunde vor, dass Schüsse auf einem Teil der Oberfläche einer Kugel landen, der durch den Winkel bestimmt wird. der Zielbereich innerhalb dieser Oberfläche ist eine Konstante; Die Wahrscheinlichkeitsverteilung ist innerhalb der Oberfläche konstant und an anderer Stelle gleich Null.
Gajet hat bereits eine Reihe guter Gründe angegeben, warum einige dieser Annahmen unverändert bleiben, hält jedoch an demselben Ungenauigkeitsmodell fest: einem begrenzten Winkelfehler. Das Ergebnis fällt immer noch mit r ^ -2 ab, aber mit einer kleinen Konstante.
Angenommen, der Schütze hat eine maximale Streuung von 5 °. Er hat die Chance, zwischen 0 ° und 1 ° Fehler zu schießen, aber die Fläche des Rings zwischen 4 ° und 5 ° ist viel größer als die Fläche des Rings / Kreises zwischen 0 ° und 1 °. Größere Fehler treten mit größerer Wahrscheinlichkeit auf. Erhöhen Sie den Fehler weiter und die Wahrscheinlichkeit sinkt plötzlich auf Null, da wir uns außerhalb der Fünf-Grad-Grenze befinden. Das scheint nicht sehr realistisch.
Eine genauere Darstellung wäre eine guassianische Verteilung des Winkelfehlers, dh : A(ϕ) = sqrt(a/π) exp(-a ϕ²)
. Die Variable a kann verwendet werden, um die Fähigkeiten des Schützen usw. einzuschließen. Beachten Sie, dass diese Lösung eindimensional ist. Wenn Ihr Ziel im Vergleich zu seiner Breite sehr groß ist, können Sie den vertikalen Fehler ganz weglassen und einfach davon ausgehen, dass der Schuss auf der richtigen Höhe gelandet ist. Alternativ können Sie die Berechnung zweimal ausführen und das Ergebnis multiplizieren, vorausgesetzt, das Ziel ist ungefähr rechteckig.
Um von der Wahrscheinlichkeitsfunktion zur tatsächlichen Wahrscheinlichkeit des Treffens eines Ziels zu gelangen, integrieren wir die Funktion A und erhalten eine teure Fehlerfunktion - die eigentlich als Fehlerfunktion bezeichnet wird : p(ϕ) = erf(ϕ sqrt(a))
. Der Winkel ϕ entspricht dem Winkel zwischen dem Zielpunkt und der Zielkante. In Bezug auf Zielgröße s und Abstand r : p(r) = erf(arctan(s/2r) sqrt(a))
. Diese Funktion ist unten für ein Ziel der Größe 1 und Genauigkeitswerte von a=2
und dargestellt a=10
.
Beachten Sie, dass im Gegensatz zu einem Abfall von r ^ -2 die Wahrscheinlichkeit sauber unter eins bleibt, egal wie nahe das Ziel ist. Aufgrund der extrem geringen Wahrscheinlichkeit, dass der Fehler mehr als 90 ° beträgt, kann sogar ein Ziel in einer Entfernung von genau Null verfehlt werden.
Wie ich bereits sagte, ist die Fehlerfunktion ziemlich teuer, aber ihr Argument ϕ sqrt(a)
variiert für ein vernünftiges Shooter-Szenario nicht allzu sehr. Wir können es viel besser machen, indem wir stattdessen einen Teil der Taylor-Reihe bewerten und das Ergebnis begrenzen. Zuerst kartieren wir x = arctan(s/2r) sqrt(a)
, dann bewerten wir : 2 x - (2/3) x^3 + (1/5) x^5 ...
. Lassen Sie so viele Begriffe weg oder fügen Sie sie hinzu, wie es für notwendig erachtet wird. Beachten Sie jedoch, dass eine gerade Anzahl von Begriffen bei geringen Entfernungen zu unerwünschtem Verhalten führt. Im Folgenden ist die tatsächliche Fehlerfunktion im Vergleich zu den ersten drei Nicht-Null-Termen der Taylor-Reihe dargestellt.
Abschließend ist dies reine Mathematik. Wenn Sie ein paar Sinusfunktionen, zufällige Koeffizienten und Logarithmen eingeben, macht Ihr Spiel möglicherweise genauso viel Spaß.