PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Havok kündigt HydraCore an


Gmax
2005-07-14, 21:27:30
Die neue Physikengine soll auf mehrere Plattformen ( XBox360, PS3 und
Pc ) laufen und speziell auf Multicorebetrieb getrimmt sein.
Damit dürften sie def. der PhysX Karte die Suppe versalzen, hehe :P

http://www.havok.com/company/news/Havok_HydraCore_2005_Final.pdf

Demirug
2005-07-14, 21:34:16
Warum? PhysX soll ja das vielfache Leistungsvermögen einer CPU haben. Soviele Cores um damit auf das gleichen Level zu kommen findet HydraCore ja gar nicht.

Wobei PhysX natürlich erst noch beweisen muß das sie wirklich soviel Leistung hat.

Spasstiger @ Uni
2005-07-15, 07:44:06
Hydra Core ist nur eine Softwarelösung? Wo liegt denn dann leistungsmäßig der Vorteil gegenüber der Hardwarelösung PhysX?

Cyphermaster
2005-07-15, 09:09:27
Das kannst nicht direkt vergleichen - HydraCore soll ja doch "nur" Multicore ausnutzen, also z.B. bei einem DC-Prozessor den bisher total sinnfrei rum-idlenden Kern ansteuern und mit der Physik auslasten; bei HT eben ähnlich einen Hintergrund-Prozeß daraus machen. Quasi die Basis für einen "PhysX 4 free"-Effekt, solange Spiele noch nicht schon per se Multicore-fähig programmiert sind.

Eine dedizierte zusätzliche PhysX-CPU wäre folglich spätestens mit MC/HT-fähigen Games höchstwahrscheinlich überlegen, ist aber auch wieder von angepaßten Software-Lösungen abhängig.

DerRob
2005-07-15, 13:20:48
ideal wäre eigentlich eine physikengine, die sich automatisch der gegebenen hardwareumgebung anpasst. ist z.b. nur ne singlecore-cpu vorhanden, wird die flugbahn eines explodierenden teils nur ganz grob berechnet. ist nen 2. core vorhanden, darf der die flugbahn schon schön genau berechnen. und bei der physx-cpu ists dann ganz korrekt, und zusätzlich wirbelt das teil noch um sich selbst und verliert weitere teilchen, die dann ebenfalls durch die gegend sausen. :biggrin:

Xmas
2005-07-15, 16:45:45
Problem dabei ist, dass alles zusätzlich berechnete eigentlich nur schmückendes Beiwerk sein darf, sonst verändert es ja die Spielmechanik.

Die Grafik ist im übrigen insofern falsch als dass weniger Zwischenschritte nicht in derselben Flugbahn resultieren. Je weniger Zwischenschritte, desto weiter weg vom tatsächlichen Ziel liegt auch der berechnete Aufprall.

Gast
2005-07-15, 18:40:58
ideal wäre eigentlich eine physikengine, die sich automatisch der gegebenen hardwareumgebung anpasst. ist z.b. nur ne singlecore-cpu vorhanden, wird die flugbahn eines explodierenden teils nur ganz grob berechnet. ist nen 2. core vorhanden, darf der die flugbahn schon schön genau berechnen. und bei der physx-cpu ists dann ganz korrekt, und zusätzlich wirbelt das teil noch um sich selbst und verliert weitere teilchen, die dann ebenfalls durch die gegend sausen. :biggrin:


wenn es sich dabei um einen durch die gegend hüpfenden gegner handelt den man treffen will kann das aber ganz schnell in die hose gehen wenn z.b. bei UT jeder den körper wo anders sieht ;)

DerRob
2005-07-15, 19:22:06
Problem dabei ist, dass alles zusätzlich berechnete eigentlich nur schmückendes Beiwerk sein darf, sonst verändert es ja die Spielmechanik.

Die Grafik ist im übrigen insofern falsch als dass weniger Zwischenschritte nicht in derselben Flugbahn resultieren. Je weniger Zwischenschritte, desto weiter weg vom tatsächlichen Ziel liegt auch der berechnete Aufprall.
ja klar, wichtige/spielbeeinflussende objekte sollten natürlich von allen möglichst gleich berechnet werden. aber der singlecore berechnet dann halt nur die flugbahn, der dualcore lasst das teil noch umherwirbeln, und bei physx wird halt noch ein rauchschweif hinterher gezogen, der im wind verweht wird. na gut, der rauch könnte jetzt wieder die sichtbehindern und wieder spielentscheidend werden... :rolleyes:
aber wieso ändert sich das ziel einer flugbahn, wenn ich weniger punkte auf dieser kurve ausrechne? den einschlagpunkt könnte man doch auf allen systemen mit gleicher genauigkeit ausrechnen, nur der weg dorthin ist halt nich ganz so genau. im multiplayer muss halt z.b. der server entscheiden, was nun sache ist (ja du hast getroffen, zeige die explosion / nein, vorbeigeschossen, lass das projektil weiter fliegen)


wenn es sich dabei um einen durch die gegend hüpfenden gegner handelt den man treffen will kann das aber ganz schnell in die hose gehen wenn z.b. bei UT jeder den körper wo anders sieht ;)
warum? wenns sich um andere mitspieler handelt, berechnet entweder jeder selbst seine position, und liefert die daten an alle andere pcs (bzw. an den server, der sie dann verteilt). wo also dein rechner deine spielfigur hinberechnet hat, sieht sie auch jeder andere. oder der server berechnet die positionen/flugbahn aller spieler, und verteilt sie mit seiner genauigkeit an alle anderen mitspieler.

Spasstiger
2005-07-15, 19:39:36
aber wieso ändert sich das ziel einer flugbahn, wenn ich weniger punkte auf dieser kurve ausrechne? den einschlagpunkt könnte man doch auf allen systemen mit gleicher genauigkeit ausrechnen, nur der weg dorthin ist halt nich ganz so genau.


Damit du das Geschoss an einem bestimmten Punkt aufkommt, muss die physikalische Formel exakt berechnet werden. Du musst bedenken, dass die Physikengine die Flugbahn nicht im Voraus berechnet, sondern bei jedem Rechenschritt neu entscheidet, wohin das Objekt nun weiterfliegt. Bei einer weniger genauen Rechnung bzw. bei größeren Abständen zwischen den Schritten entstehen so deutlich größere Abweichungen.

Neomi
2005-07-15, 19:52:36
aber wieso ändert sich das ziel einer flugbahn, wenn ich weniger punkte auf dieser kurve ausrechne?

Weil es für viele Dinge keine Bewegungsgleichung gibt oder diese sehr komplex ist. Die meisten Sachen werden iterativ berechnet, jeder neue Schritt baut auf dem Ergebnis des vorigen auf. Und deshalb wird das Gesamtergebnis bei unterschiedlichen Zeitscheiben (zeitliche Abstände, in denen die Physik aktualisiert wird) auch unterschiedlich ausfallen.

warum? wenns sich um andere mitspieler handelt, berechnet entweder jeder selbst seine position, und liefert die daten an alle andere pcs (bzw. an den server, der sie dann verteilt).

Dann passiert genau das, was bei Quake 3 schon der Fall war. Die Spieler mit hoher Framerate (117 war optimal, wenn ich mich nicht irre) konnten weiter springen und Stellen erreichen, zu denen die anderen nicht konnten.