Schüsse mit Timer oder Render-Prozedur

  • VB6

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von keanni.

    Schüsse mit Timer oder Render-Prozedur

    Ich bin im Moment dabei, so eine Art Weltraumshooter in directx 8 zu programmieren. Ich würde jetzt gerne wissen, wie man schüsse am besten (schnellsten) machen kann? Soll die Berechnung für die Position des Schusses im Timer oder in der Render-Prozedur erfolgen, oder gibt es noch eine andere Möglichkeit dafür?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „keanni“ ()

    ok, da niemand antwortet, werde ich mal schreiben, was ich bis jetzt rausgefunden habe: Wenn man die Berechnungen des Spieles in 4 Timer schreibt, ruckelt es stärker, als wenn man alles in die Render-Prozedur von DirectX schreibt. Mich würde jetzt noch interessieren, ob es neben den 2 genanten mathoden (über Timer/über Render-Prozedur) auch noch weitere gibt.
    erstmal danke für die antwort. Ich hatte bis jetzt das Problem, dass ich nur endlich viele Schüsse abfeuern konnte (bis Array oder Arbeitsspeicher voll waren). Jetzt habe ich dem Schuss noch die Eigenschaft "Abgefeuert" (als Boolean) gegeben, damit er den Schuss, nachdem er den Monitor verlassen hat, nicht mehr rendert. Und Wenn das Array voll ist, fängt er wieder vonvorne an.

    Daraus ergibt sich ein neues Problem: Ruckelt das denn nicht, wenn man z.B. einen "Splitschuss" macht, der nach schräg oben und schräg unten weggeht? Ich denke mal, dass man dann so um die 30-50 Schuss(bei mir als 16x16 Textur) auf dem Monitor hat. Gibt es noch eine bessere Lösung, z.B. den Schuss NICHT als Textur zu rendern, oder muss man dann zwangsläufig auf directx 7 umsteigen?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „keanni“ ()