Also. ich hab jetzt mal einiges ausprobiert.

Unsaubere Lösung
----------------

Du könntest das mittels der 3DGS Kollisionserkennung lösen, in dem du zwei Entities an der target-Position des "Strahls" erstellst und diese dann am Boden in zwei verschiedene Richtungen entlanggleiten lässt. Wie gesagt, unsauber. Langsam, und es darf kein "Schlagloch" in die Quere kommen. Aus den zwei resultierenden Positionsvektoren spannst du jetzt eine mathematische Ebene auf. Auf dieser Ebene kannst jetzt deine Druckwelle mit dem Gamestudio Partikelsystem platzieren.

Saubere Lösung
--------------

Oder du löst es rein mathematisch, was natürlich besser, aber auch komplizierter ist.



Da du den "Strahl" (Normalenverktor ^n) und den Punkt 0 (Rückgabewert von c_trace -> target) schon hast, musst du jetzt die Normalenebene rausbekommen. Und jetzt stecke ich. Problem: Wie kommt man auf die Normalenebene, wenn man nur den Richtungsvektor n und den Punkt O hat (der schwarze Punkt auf der Zeichnung. Im Fall der Druckwelle wie gesagt target). Frischt mal mein Mathewissen auf, bitte wink

Falls man die beiden Vektoren a und b hätte bzw. den Normalenvektor zu Ebene ab suchen würde, wäre das kein Problem:



Edit: Schau mal hier. Oder bemüh dein Mathe-Buch oder eine Formelsammlung falls du das noch / schon hast http://www.matheboard.de/archive/111411/thread.html

Also wenn du diese Ebene hättest, könntest du besipielsweise 16 Partikel erstellen und die auf dieser Ebene in 16 verschiedene Richtungen fliegen lassen. Alle 360 Grad /16 = 22,5 Grad einer. Das sieht dann aus wie eine Druckwelle. Aber erst brauchst du die Ebene.

So siehts aus, wenn einen plötzlich die Engine-Funktionen verlassen. Ohne frisches Abi mit guter Mathe-Note, oder besser Studium kommst du da nicht weit wink

Also, ihr Slins und JustSids da draußen. Macht da mal Programmcode draus laugh

Wofür brauchst du denn die Druckwelle? Explosion? Schwert, wie Otter es als Beispiel genannt hat? Wenn es auf der dreidimensionellen oder gar zweidimensionellen, statischen Ebene auch gehen würde, wäre das alles ein bisschen unkomplizierter. Da gibts nämlich Engine-Funktionen für, die sich JCL für dich ausgedacht hat. Nicht aufgeben. Am Anfang ist alles sehr schwierig wink
Und .. naja .. danach auch noch ^^