Clonk-Center Titelbild

Clonk Ideen / YDir,XDir mit Mass


[ Ideen lesen | Kategorien ]


AutorFeuermonster
Zeit17.03.2006 11:23:43
KategorieSonstiges: Realistische Physik
Niveau53

Wenn wir annehmen, ein Stein fällt auf die Erde, er schlägt auf und ... nichts passiert. Egal von wie hoch der Stein runterfällt, es passiert weiterhin nichts.

In der Realität kann es sein, dass der Stein zusammebricht. Oder beim Aufschlag ein "Loch" in die Erde macht.

So sollte es meiner Meinung nach sein.
(Ich habe es mal versucht, aber wenn man die Abfrage beim Hit() einträgt, wird die Geschwindigkeit auf 0 gewertet, da es sich beim Hit schon nicht mehr bewegt.)

Nachtrag: Kategorie vergessen. Jetzt geändert.


18 Kommentare


11.06.2006 18:07 von Käse:
Das ist doch mal eine gute Idee, das würde Clonk wieder ein Stück logischer machen!
Zuletzt geändert: 11.06.2006 18:07

19.03.2006 4:17 von Feuermonster:
XDir*100 und YDir*100

Also; 0*100 = 0, 0*100 = 0
Hm...

18.03.2006 15:12 von Sven2:
In NET2 kriegt Hit die Geschwindigkeit als Parameter XDir*100 und YDir*100. Folgendes wäre also z.B. ein hüpfender Stein (nicht getestet):

protected func Hit(int vx, int vy)
  {
  if (vy > 0) SetYDir(-vy, 150);
  }

18.03.2006 12:38 von boni:
kA, teste es halt ;)

18.03.2006 11:24 von s_m_w:
Ich meine Die Hitspeed parameter die Boni erwähnt hatte.

18.03.2006 11:22 von Quit:
wimre ja. Benutzte ich für ein Göttermobil, und das SL Shuttle benutzt es wimre auch..

18.03.2006 11:12 von s_m_w:
Gehen die Contact* Parameter auch in 4.95.5?

18.03.2006 10:31 von boni:
Mit GetXDir/GetYDir? Dann hätte ich dir auch gleich sagen können, dass es nicht geht. Aber wenn du genau gelesen hättest, was ich unten geschrieben hab, wüsstest du, dass es auch mit Hit geht.
Zuletzt geändert: 18.03.2006 10:31

18.03.2006 5:54 von Feuermonster:
@Boni

Ich habe ein TestObjekt gemacht, welches über Log die Geschwindigkeit beim Hit angibt, und die war immer 0,0

17.03.2006 19:45 von s_m_w:
Das seiht ganz nett aus:   ShakeFree(GetX(),GetY(),BoundBy((YDir+XDir/2)/100,1,100)); Knan man noch verbessern, da YDir und XDir immer positiv sein sollen, aber es erfüllt seinen Zweck.

17.03.2006 19:22 von boni:
Klingt nett. Hit bekommt wimre die Geschwindigkeit übergeben, aber auch bei Contact*-Callbacks haben die Objekte noch Geschwindigkeit.

17.03.2006 18:03 von s_m_w:
ShakeFree ist dafür gerade zu perfekt, die Net2 hitparameter ebenfalls, das sollte kein großes problem sien.
Zuletzt geändert: 17.03.2006 19:44

17.03.2006 16:42 von Clonkinator:
Hört sich interessant an. Natürlich wäre es auch realistisch, vorrausgesetzt, die entstehenden Löcher sind nicht übertrieben groß.
[Leider keine Votes mehr übrig]

17.03.2006 16:40 von Quit:
>Wenn ja, wäre es umzusetzen. Sven2?


Wimre hat NET2 doch so ulkige Hit() umsetzungen... z.B. kommen dann fünfzig Zaps raus %D

Irgendwann erinnere ich mich, in der Doku von OCF_Hit2 und OCF_Hit3 gehört zu haben, wimre auch Hit2 und Hit3(), für entsprechende Geschwindigkeiten

17.03.2006 14:43 von Drakkar:
Na ja, ein loch im Boden ist wirklich viel... Aber sonderlich interessant finde ich es nicht, noch kein Vote

17.03.2006 14:28 von Smith:
> oder bekommt man vielleicht sogar die Aufprallgeschwindgkeit bei Hit als Parameter mit?


Wenn ja, wäre es umzusetzen. Sven2?

17.03.2006 14:19 von Tyron:
>(Ich habe es mal versucht, aber wenn man die Abfrage beim Hit() einträgt, wird die Geschwindigkeit auf 0 gewertet, da es sich beim Hit schon nicht mehr bewegt.)

Ich glaube bei ContactBottom hat er noch die volle Geschwindigkeit oder bekommt man vielleicht sogar die Aufprallgeschwindgkeit bei Hit als Parameter mit?

17.03.2006 13:33 von Flinti:
Ganz gute Idee.
Aber ich finde es muss nicht gleich ein Loch in der Erde sein.
Sonst hat man ja nachher die ganze Karte voller löcher!
+ Vote