Mafia 2: Nvidia behebt Fehler in PhysX-Software

PC-Spiele Nachdem die Entwickler aus dem Hause 2K Games gestern die Demoversion zu ihrem Action-Spiel "Mafia 2" veröffentlicht haben, wurde recht schnell ein Problem im Zusammenhang mit der Physikbeschleunigung entdeckt. mehr...

Diese Nachricht vollständig anzeigen.

Jetzt einen Kommentar schreiben
 
Kann man diesen PhysX-Kram nicht mal abschaffen und lieber mal eine Engine schaffen, welche auf OpenCL oder DirectCompute setzt? Ist doch Mist mit diesem Kram.
 
@Knarzi: Warum sollten die Entwickler sich alles selber ausdenken wenn ihnen Physx viel von dieser Arbeit mit vorgefertigten Funktionen abnehmen kann? Solange Physik nicht Spielentscheidend wird, sondern nur schmückendes Beiwerk ist, lohnts den Aufwand nicht. Und DX11-Karten sind auch noch nicht die Mehrheit in PCs.
 
@DennisMoore: Weil man mit einer solchen Engine durch Lizensierung an andere Geld verdienen kann? Beispiel Havok-Engine, nur nutzt diese eben auch PhysX oder eben die CPU. Da ist nix mit sie müssten sich alles selber ausdenken. Einmal geschrieben, dann lizensiert, fertig. edit: Nvidia-Karten sind auch nicht in jedem Rechner. Nur werden DX11-Karten eben irgendwann doch mehrheitlich irgendwo drin sein, mehr als eben die entsprechenden Nvidia-Karten.
 
@Knarzi: Vielleicht möchten die Spieleentwickler aber gar nicht so ein Lizenzgeschäft aufziehen, sondern bloß ihr Spiel programmieren. Havok programmiert ja auch keine Spiele sondern die Physikengine. EDIT: Havok nutzt PhysX??? Ich dachte Havok wäre selber ne Physikengine. Dann benutzt die allerhöchstens CUDA, aber nicht PhysX. Wenn sie das täten, bräuchten sie ja gar nichts mehr selber machen.
 
@DennisMoore: Darum geht es doch, Havok könnte ihre Engine doch nach OpenCL oder DirectCompute porten. Und mit den meisten Grafikengines wird auch ein Lizenzgeschäft betrieben, weil man so Entwicklungskosten wieder reinbekommt. Und wie läuft es in der Regel? Jeder programmiert seine eigene Psysikengine, nur wenige greifen auf Havok zurück, weil sie nicht für alles einsetzbar ist.
 
@Knarzi: Havok könnte, ja. Aber Havok macht nicht. Also was soll der Spieleentwickler jetzt tun? Warten bis Havok in die Puschen kommt oder einfach auf eine vorhandene Physikengine setzen, die zwar nur auf nVidia-GPUs läuft und auf CPU? Oder eben eine eigene entwickeln wie z.B. Crytek? Wobei Crytek natürlich explizit darauf setzt die komplette Game-Engine weiterzulizenzieren. Und selbst wenn Havok auf DirectCompute oder OpenCL aufsetzen würde, so würde man nur mit DX11-Karten unter Vista und 7 Spaß haben. Was ist mit DX10- und DX9-Karten? Sollen ja immer noch sehr verbreitet sein. Man kann diesen Umstieg wohl für die Zukunft vorsehen, aber im Moment ist das IMHO die schlechtere Lösung. Havok würde das übrigens auch nicht aus Jux und Tollerei machen. Das muß sich auch in den Umsätzen niederschlagen. Idealistische Entscheidungen gibts da nicht.
 
@DennisMoore: Was ist bei PhysX mit Ati-Karten? Man würde damit aber schon mal in die Zukunft investieren, darum geht es doch. Sie schaffen es doch inzwischen auch drei Renderpfade für die entsprechenden Direct3D-Fassungen zu integrieren. Vista und Win7 sind inzwischen schon zusammen bei fast 40% Marktanteil und die Zeit wo sich DX11-karten durchsetzen wird ebenfalls kommen. Will ´man immer nur zurückschauen?´Bei PhysX mss bei vielen auch der CPU-Modus genutzt werden, wo ist also das Problem das gleich dabei zu machen, nur das früher oder später eben alle in den Genuss kommen.
 
@Knarzi: ja aber vorher wars auch ein witz ab gf8er karten war dx 10 hatte ja fast jeder, aber kaum einer vista, weil die games mit dx 9 auf win xp mit der gf8 besser liefen als auf dx10 vista.
 
@Knarzi: OpenCL und DirectCompute haben nichts mit Physik zu tun. Die GPU-Variante von PhysX läuft mit CUDA. Wenn sollte man also entweder fordern, dass eine PhysX-Implementierung mit OpenCL oder DirectCompute erstellt wird oder dass statt PhysX eine andere Physik-Engine verwendet wird. Was du da forderst ergibt nicht wirklich Sinn.
 
@frickler: Ich weiß, dass PhysX mit CUDA läuft, darum meine Vorderung nach einer Engine die OpenCL oder DirectCompute nutzt. Schreib ich so undeutlich? Was an "und lieber mal eine Engine schaffen, welche auf OpenCL oder DirectCompute setzt" ist so schwer zu verstehen? PhysX ist auch nur eine Engine!
 
@Knarzi: Was ist denn an der Engine auszusetzen? Sie funktioniert doch super. Es wäre doch nur wünschenswert wenn AMD endlich mal eine gescheite PhysX-Implementierung für ihre Karten bringt. AMD ist schuld
 
@frickler: PhysX ist nicht OpenSource und CUDA noch weniger! Wie soll AMD also das Ganze implementieren? Es wurde extra abgeschottet damit AMD es nicht übernehmen kann. Jemand zuhause bei dir?
 
@Knarzi: PhysX ist frei wie Bier: "The NVIDIA binary PhysX SDK is 100% free for both commercial and non-commercial use and is available for immediate download by registered PhysX developers. To become a registered PhysX Developer please complete the registration form (steps provided below) on NVIDIA's PhysX Developers Website.

The SDK contains headers, libs, dlls, samples, and documentation and the directions for obtaining access to the binary PhysX SDKs for all supported platforms are provided below:" Quelle: http://developer.nvidia.com/object/physx_downloads.html
 
@frickler: Ein SDK ist dafür da, dass man damit Software schreiben kann, sprich Spiele. Wo ist das freie DDK (Driver Development Kit) und die genauen Spezifikationen für AMD um PhysX in ihren Treibern und ihren Karten zu implementieren?
 
@Knarzi: Ati ist doch selber Schuld das Physx nur auf nVidia Hardware läuft. Sie wollten es ja nicht benutzen, obwohl es ihnen angeboten wurde. Jetzt kannste mit "Was ist mit Ati-Karten" also nicht ankommen. Selber Schuld. Und zu "wo ist also das Problem das gleich dabei zu machen, nur das früher oder später eben alle in den Genuss kommen.": Das Problem ist, dass es marketingtechnisch keinen Sinn macht auf die Packung zu schreiben "Wird vielleicht irgendwann mal GPU-beschleunigte Funktionen beherrschen".
 
zumals man es nicht auf ati karten nutzen kann :(

das spiel ist aber dennoch 100 mal besser als gta vom spiel gefühl her. super arbeit!
 
@mTw|krafti: Darum ja auch meine Aussage wegen DirectCompute bzw. OpenCL. Wobei das ja nun auch alles erst mit neueren Karten benutzt werden kann.
 
was hast du gegen physix auf der GPU ? und ja das gibt es nur auf nvidia karten, aus dem einfachen grund das ATI (wiedermal) eine gelegenheit hat sausen lassen
 
@zeroalpha: lol das hat nichts mit ATI zu tun. nVidia wird seine proprietäre Physik-Engine nunmal nur auf den eigenen Grafikkarten laufen lassen :D
 
@zeroalpha: Da gibts auch noch die Tatsache, dass die PhysX CPU-Berechnung (also wenn es nicht auf der Graka gemacht werden soll) nur singlethreaded und nicht auf aktuelle Technologien angepasst ist, da man lieber die Entwicklungsarbeit in die Unterstützung der eingenen Grafikkarten gesteckt hat. Aber wer weiss... vielleicht wäre eine Graka die 3D und PhysX gleichzeitig macht sogar langsamer wie ein Quad der noch 1-2 Kerne frei hat... ATi hat damit null zu tun. Es konnte damals halt nur einen geben der Ageia übernimmt... wenns ATi gewesen wäre, sähe es aber bestimmt nicht anders aus.
 
@RocketChef: Man kann ja seine zweite (oder dritte), auch schlechtere, nVidia Kraka für PhysX nutzen, aber insgesamt finde ich das Konzept einer Physikengine die nur auf einem Hersteller läuft sinnfrei. Zumal PhysX keine Vorteile bietet (im Vergleich zu Havoc o.ä.).
 
Eine Demo als BETA is natuerlich auch praktisch :D Naja besser jetzt Bugs als in der Verkaufsversion..
 
Find ich klasse dass sie das so schnell gemacht haben. Is ja nur ne Demo.
 
@DennisMoore: Was heißt nur eine Demo? Alles andere als schnell reagieren wäre wohl sehr peinlich für Nvidia, immerhin hat man es sich auch in diesem Fall wohl einiges kosten lassen damit die Entwickler auf Physx setzen. Wäre unheimlich peinlich wenn dieses dann nicht richtig will weil Nvidia selbst gepennt hat ;)
 
@Patata: Peinlich wäre es erst im Spiel wenn der Kunde Geld fürs Spiel bezahlt hat. Ich finds nicht weiter schlimm wenns in der Demo so kleine Fehlerchen gibt. In der Retail fänd ich es schlimmer. Ich weiß auch gar nicht wie du auf dieses Geldgerücht kommst.Es gibt im Moment keine andere vernünftige Lösung eine Physikberechnung auf der GPU durchzuführen. Wenn man nicht Physx nimmt, muss man sich ne eigene Physikengine schreiben und auf OpenCL oder DirectCompute setzen oder auf Havok und CPU-Physik. OpenCL und DirectCompute brauchen die neuen Shader 5 und funktionieren daher nur auf aktuellen DX11-Karten, wobei wiederum die ATi Karten der Mittelklasse wohl kaum genug Power haben um Grafik und Physik parallel zu handeln. Daher bräuchte man derer 2, was wiederum kaum jemand hat. CPU-Physik über Physx macht ebenfalls kaum Sinn, weil nVidia diesen Codeteil größtenteils so gelassen hat wie sie ihn von Ageia bekommen haben. Also komplett veraltet. Die Überarbeitung lässt auch noch auf sich warten.
 
@DennisMoore: Nachdem ich die Demo nun noch eine Weile gespielt habe (ja man kann auch alle Effekte mit nicht Nvidia Hardware zu sehen bekommen) fällt mir einmal mehr auf woran es in Wirklichkeit bei diesem Physik Kram Mangelt: An einer echten Physik Engine. Gerade hier bei Mafia 2 ist im Grunde abgesehen von der Kleidung die Umsetzung eher dürftig. Es sind mal wieder fest vorgegebene "Bruchstellen" an der Umgebung und den Objekten, die nichts mit Physx zu tun haben und auch ohne funktionieren und das einzige was Physx macht ist Partikel "aus dem Nichts" erschaffen. Gutes Beispiel ist in einem der Restaurant auf einen der Tische zu schießen, die gehen alle immer an den gleichen Stellen kaputt und es fallen gleich große Splitter ab, die in ihrer Größe nie zur Beschädigung passen und vor allem wenn Physx auf hoch steht irgendwann die Menge an Holz übersteigen aus der der Tisch jemals bestand. Und zum Thema CPU Physik, gerade da ist Mafia 2 ja schon eine deutliche Verbesserung, da man auch ohne Nvidia GPU und über die CPU Physx nutzen kann. Auf Hoch kann es bei vielen Partikeln schon eng werden, aber auf Mittel geht es schon noch. Und wie schon gesagt ist das was mit Physx realisiert wurde einfach nur ein Witz und etwas auf das man sehr gut verzichten kann.
 
@Patata: Haaaallloooo. Reality an Patata. Die CPU ist zu langsam für Physik auf Hoch. Das war sie bei Dark Void schon und das ist sie auch bei Mafia 2. Das was du siehst mit vorgefertigten Bruchstellen usw. ist das absolute Minimum. Bei GPU-Physx sprengst du eine Glasbausteinwand und jeder einzelne Splitter fliegt jedes Mal woanders hin und bleibt dort auch liegen. Schau dir mal o7 an. Hausmeister hats getestet. 20fps zu 73fps. Meinste ernsthaft deine CPU lässt so einen Leistungsfresser mal eben so nebenbei laufen wo eine Grafikkarte um 53fps einbricht? Im Leben nicht.
 
@DennisMoore: Offensichtlich hast du die Demo nie gespielt. Zum einen Ja die FPS Leistung bricht stark bei vielen Partikeln ein. Zum anderen Falsch man hat nicht weniger Effekte wenn man keine Nvidia Karte nutzt, der Physx Treiber nutzt dann halt die CPU anstelle einer Nvidia Karte. Und der wichtigste Unterschied ist, dass Mafia 2 im Gegensatz zu Titeln wie Dark Void tatsächlich von mehr CPU Kernen bei der Physikberechnung profitiert, daher sind die Einbrüche längst nicht so hoch wie bei Dark Void und co. Und du solltest dich mal genauer damit befassen was die Physx Effekte genau machen. Da sind diese Partikel aus dem Nichts unter anderem typische Standardeffekte die nichts mit Realismus zu tun haben. Am besten du spielst Mafia 2 niemals damit du deine Illusionen aufrecht erhalten kannst ^^ Nachtrag: http://i38.tinypic.com/2r3b5u1.jpg Auch mit Nvidia Hardware hat mein kein anderes Resultat, einziger Unterschied ist wohl, dass in dem Fall nicht die Framerate so schnell auf unter 20 runter gehen würde. Diese komischen Splitter / Partikel haben aber nichts mit Realismus zu tun, weil es immer eine Art Standardsplitter ist der nicht einmal zum angerichteten Schaden passt. Die "Löcher" im Tisch sind z.B. Standard in dem Spiel und bekommt man so auch zu sehen wenn Physx aus ist. Nachtrag 2: Um es noch mal etwas mehr zu verdeutlichen: http://i36.tinypic.com/2n69rg4.jpg habe nun nur auf diese eine Stelle geschossen, alle Splitter die zu sehen sind sollen also von dieser einen Stelle stammen. Man sollte recht gut erkennen, dass weder Splitterform noch Menge zu der Beschädigung am Tisch passen. Und solche Pseudo Effekte sind eben vollkommen überflüssig. Und ja die Framerate bricht dann ein, weil diese Pseudo Splitter immer mehr werden
 
Das muß mir jetzt aber mal einer erklären. nVidia hat einen Bug in ihrem PhysX-Treiber, das Spiel wird entwickelt und veröffentlicht obwohl während der ganzen Zeit klar ist daß dieser Fehler existiert?
Oder haben sie ihr Programm so wenig getestet daß dieser Bug nie aufgetreten ist?
 
@Johnny Cache: schon vergessen, WIR SPIELER SIND DIE TESTER
 
@Sir @ndy: 1. Das Spiel kommt am 27.08.10. 2. Es handelt sich um die Demo-Version, wo der Bug aufgetreten ist.
 
Selbst mit dem patch von nVidia bricht meine Framerate derbst zusammen komme nicht über 20 fps ... ohne Physx über 73 fps im schnitt ... wobei das vielleicht auch an meiner alten karte liegen kann :)
 
Ich komme mit PhysX auf 28 FPS im Schnitt, ist das gut, schlecht?
 
Bei mir lässt sich des PhysX-Teil gar nicht installieren. Bei jedem Start von Mafia 2 kommt "PhysX ist nicht installiert und wird installiert." dann drückst auf OK, der Installer sagt "Setzt Installation von PhysX fort"... "Fertig" und das Spiel startet nicht. Bei erneutem Start von Mafia 2 dasselbe.
 
Dämliches PhysX - wie wäre es mit einem einheitlichen Standard?

Wenn ich Spiele sehe, bei denen auf der Verpackung oder auch beim Starten das Nvidia Logo mit "It's meant to be played - Nvidia" geworben wird, frage ich mich jedes Mal, was denn diese Schei*e soll! Super Nvidia hat Kohle in das Spiel investiert und super das Spiel ist für Nvidia Karten optimiert und super die ATI-User können nicht alle Features nutzen (Thema PhysX)...

Ich finde so etwas gehört generell unterbunden, dass bestimmte Hardwarehersteller bei einem Game bevorzugt werden. Nicht nur bei den Grafikkarten, sondern auch bei den Prozessoren, etc.
 
@Fr3@K: Naja PhysX ist net grad das "Beste" an dem Game, auch ohne ist das wunderschön :-)
 
Physik wird normalerweise von CPU berechnet. Also kann dieser PhysX-Quatsch doch einfach von normalen CPUs berechnet werden. Aber man packt den Kram auf die Nvidia Karten als Exklusiv. Das ist so, als würde man Antialaising für sich patentieren.

Mal einige Fakten: Mit PhysX läuft bei mir Mafia2 auf höchsten Einstellungen und FullHD mit 22 fps. Ich habe die 6-kern CPU von amd auf 3,4 ghz am laufen. Als Graka dient mir die hd5850. lasse ich den taskmanager nebendem spiel laufen und minimiere während des spiels das spielfenster, sehe ich, dass mein 6kern mit maximal 25% belastet wird. Wenn dieser PhysX Blödsinn doch nur die Kerne der CPU vollständig ausnutzen würde, wäre es doch voll flüßig darstellbar. Das alles ist ein riesiger Geldhahn für nvidia und deshalb boykottiere ich dieses Vorgehen mit dem nichtkauf ihrer karten. und überhaupt? was soll ich mit einer highend nvidia karte? sie ist vllt 2% schneller als die vergleichbare ati karte (5er serie) aber dafür gut 50-100 euro teurer... naja nichts für ungut, aber ich lege mein geld lieber sinnvoll an!
 
@Xello1984: ich hab auch ne nvidia...weil ich mal neugierig war, wie die mittlerweile sind...garantiert war es aber das erste und letzte mal :)
Kommentar abgeben Netiquette beachten!

Weiterführende Links

WinFuture Mobil

WinFuture.mbo QR-Code Auch Unterwegs bestens informiert!
Nachrichten und Kommentare auf
dem Smartphone lesen.

Folgt uns auf Twitter

WinFuture bei Twitter