[Sammelthread] Crysis Performance & Tweaking

DX9 = Vertex Shader, Pixel Shader

DX10 = Unified Shader (Vertex/Pixel und Geometryshader)

Und ich kann mir ehrlich gesagt nicht vorstellen das man unter DX9 mit Vertexshader die Physikberechnung übernehmen kann. Geometryshader sind ja wie dafür gemacht.
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
@ death: sorry, aber ich weiss es wirklich nicht besser! Definitiv haben ATI und nVidia schon 2006 die Ausführung von Physikberechnungen auf ihren jeweiligen GPU's vorgeführt. Eine definitive Aussage, ob das mit Crysis jetzt auch möglich ist bei DX9 Karten oder nicht, finde ich nirgends. Es war von ATI und nVidia geplant, mit der Havok FX engine Physikberechnungen in den Shadereinheiten der GPU's auszuführen und das eben auch in den GPU's der x1000er Serie. Die Shader (ob geometry oder nicht) sollten laut ATI dafür immer noch besser geeignet sein als eine normale CPU...

Bitte, wenn Du es besser weisst, ich poste hier sowas um Leute aufzufordern, mir darüber mehr zu erzählen! Ich hab' nicht behauptet das ich darüber alles weiss nur es interessiert mich.. Also tu Dir keinen Zwang an mich zu belehren...

Und was die GeForce 7er angeht: Es stimmt wirklich, dass da sogar ein extra GEO-takt einstellbar war.. Was war das denn ausser ein Geometry-Shader?? Ausserdem, ATI 2900 und nV G80 haben doch nur unified shader.. d.h. für mich die können alles und werden nur für geometry und physik genutzt... Dedizierte Geometry-Shader haben die damit an sich also nicht... Also bitte, wenn mir das jemand auseinandersetzen kann, dann raus damit... Gern auch per PN!!

@ death: Du kannst es Dir nicht vorstellen, ist aber so! Kannst es nachlesen. Google mal nach ATI Crossfire Physics oder ähnliches. Du findest Artikel aus 2006, in denen berichtet wird über Physikberechnungen auf Karten der x1000er Serie.. nV das gleiche... Und Du verwechselst etwas.. Dafür wurden nicht unbedingt nur die Vertexshader benutzt. Shadereinheiten im allgemeinen sind recht universell einsetzbar! Aber wie genau das gemacht wurde ist nicht detailliert beschrieben.

Was stimmt ist, bei unified shadern ist es sicher einfacher zu programmieren... Aber letztlich alles eine Treiber/Enginefrage..

Der Unterschied zwischen unified shadern und dezidierten pixel/vertex und geometryrecheneinheiten ist nur die geringere spezialisierung. Dadurch kann der Chip flexibler reagieren... Effizienter muss das nicht sein (im prinzip sind unified shader nichts anderes als floating-point-recheneinheiten (addition und multiplikation).... Das war bei den pixel/vertexshadern nichts anderes, nur die pipelines sind einfacher aufgebaut bei den unified shadern..
 
Zuletzt bearbeitet:
Vertex Shader = Vertexshader kann nur Knoten manipulieren, z.B für Gesichtsanimationen (oder animationen in einem Spiel wie z.B Herr der Ringe Strategie. Dort wurden die Charaktere durch den Vertexshader animiert so das sie sich nicht alle gleich bewegen)


Geometryshader = Neue knoten können erstellt oder gelöscht werden und somit objekte auch geteilt werden.

EDIT

Geotakt

http://www.pc-erfahrung.de/grafikkarte/geotakt.html

1 min per google ;)
 
Zuletzt bearbeitet:
nochmal: unified shader sind nur einfacher für verschiedene aufgaben zu nutzen... die rechenleistung von pixel-und vertexshadern kann man auch für physikberechnungen nutzen... alles eine treiberfrage... es gibt bei unified shadern definitionsgemäß auch keine "geometryshader"...

und nochmal: ich will wissen, wie das bei crysis gelöst ist.. weil ich es nicht weiss... und Deiner Agitation entnehme ich, Du weisst es auch nicht...

wegen Geotakt: alles klar, es waren die Vertexshader... THX...

Zur allgemeinen Information wegen Physik und DX9:

http://ati.amd.com/technology/crossfire/physics/Asymmetric_Physics_Processing_with_ATI_CrossFire.pdf
 
Zuletzt bearbeitet:
nochmal: unified shader sind nur einfacher für verschiedene aufgaben zu nutzen... die rechenleistung von pixel-und vertexshadern kann man auch für physikberechnungen nutzen... alles eine treiberfrage... es gibt bei unified shadern definitionsgemäß auch keine "geometryshader"...

Anscheinend hast du das prinzip von den UF Shader noch nicht verstanden, oder?

UF Shader: Es gibt keine Hardwareseitige trennung für Vertex/Pixel und Geometryshader. Sprich er kann "alles" sein was er will. Und natürlich gibt es per definition Geometryshader. Der ist nun mal mit D3D10 neu hinzugekommen.

und nochmal: ich will wissen, wie das bei crysis gelöst ist.. weil ich es nicht weiss... und Deiner Agitation entnehme ich, Du weisst es auch nicht...


Hab ich je was anderes behauptet, habe ja nicht umsonnst ein paar Seiten vorher gefragt. Dort wurde die behauptung in den Raum gestellt, das man mit einen befehl die Physik auf die GPU legen kann. Dafür wollte ich beweise. Das was du geschrieben hast, wa ja nun komplett falsch. Und zeig mir mal bitte eine Quelle wo man mit Vertex und Pixelshadern physik berechnen kann.
 
Zuletzt bearbeitet:
Naja kannst ja nochmal drüber nachdenken.. Aus meiner Sicht widerspricht sich "unified" mit dezidiert "geometry".. Aber vielleicht ist das Auslegungssache ;) oder Du weisst nicht was "dezidiert" bedeutet...

Kannst ja nochmal 'ne Nacht drüber schlafen...

Und guck Dir mal meinen Link an, da ist beschrieben wie man PIXELshader für Physikberechnungen benutzen kann, nur nicht besonders genau... Viel spass damit..
 
Zuletzt bearbeitet:
Meinst du vielleicht dediziert? Aber wie gesagt

UF Shader = Vertex, Pixel und Geoemtryshader ohne Hardwareseitige trennung. Was ist daran so schwer zu verstehen? Sprich eine eierlegende Wollmilchsau :d

EDIT

In deinem Link taucht nicht einmal das Wort Pixelshader auf. Aber du kannst mir ja mal bitte in eigenen Worten erklären wie man mit Pixel und Vertexshader Physik berechnen kann. Das interessiert mich. Entlasten ja (transforming per Vertexshader) aber übernehmen kann ich mir nicht vorstellen. Vertexshader kann ja keine neuen Knoten erschaffen und somit z.B keine Objekte trennen, was ja nun mal für Physik vom Vorteil wäre. z.B einen Felsen zerbersten lassen. Wenn ich mich recht erinnere, wollte Crysis genau da auftrumpfen. Per DX10 die CPU entlasten und somit mehr effekte ermöglichen, dank der Geometryshader.
 
Zuletzt bearbeitet:
Jaja hab ich schon verstanden... Daher gibts es eben keine Pixel/Vertex/Geometryshader mehr sondern nur noch unified shader mit denen man genausoviel machen kann wie mit allen recheneinheiten, nur einfacher...

dediziert - dezidiert... : http://faql.de/wortgebrauch.html

passt in diesem Fall beides, wobei Du wohl recht hast... EDV: dedizierter server...

aber ich weiss immer noch nicht, ob crysis bei dx9 grakas die shader zur physikberechnung nutzt..

zu Deinem edit: Guck Dir mal das (erste Schema) Bild an ;)

Wegen der Erklärung: ich bin leider kein Informatiker, aber dass ATI und nV mit DX9 Grafikkarten Physik demonstriert haben ist Fakt. In den ATI White Papers steht drin dass sie es über die Pixelshader laufen lassen. Nochmal: Es ist so, Pixelshader können mathematische Operationen durchführen. Das ist allen "shadern" gleich. nur die Pipelinestruktur ist unterschiedlich, was zu mehr oder weniger großen Hemmnissen führt, einen vertex oder Pixelshader zu Physikberechnungen zu zwingen. Aber es ist nichts unmöglich. Eine Frage des Treibers. Bei ATIs HD2900XT werden ja auch die AA-Berechnungen ersatzweise in den Pixelshadern ausgeführt per treiber.. Und wie gesagt: ATI und nV haben auch Physikberechnungen demonstriert.

das heisst alles nicht, dass ich es bestreiten will, dass unified shader da bestimmt besser sind. Aber wenn es auch bei DX9 GraKas speziell mit Crysis möglich ist, dann würde ich das gerne nutzen, denn zur Zeit langweilt sich bei mir eine GraKa fürchterlich (was aber auch hoffentlich bald ein Ende hat, die Grafik limitiert bei mir so oder so stärker als die Physik...). Naja, und ich habe eben bemerkt, dass es etwas bringt diesen sys_physics_cpu - befehl zu nutzen... wie auch immer und ob es nun nur gefühlt sein mag oder nicht.. Dass müsste mal noch jemand anders mit einem potenteren System testen...
 
Zuletzt bearbeitet:
hmm ... also ich hab mich jetzt mal herabgelassen und mal die "empfohlenen" settings gemacht die mir crysis sagt und da rennt die scheise doch glatt mit 40 fps und ich find es sieht trozdem noch jut aus ^^

kurzer überblick - fast alles auf low, shadow high, 1280x1024, kein AA ...


tjoa, und ich hab nur nen dummen Intel D 805, 2 GB ram und ne 1950 XT
weis ned was ihr alle habt .. das spiel kann man so wunderbar spielen, es sieht tozdem sau fett hyper abnormal geil aus ... was will man mehr ^^
 
alles low aber shadows high da is dochn wurm drin oder? ;)
eher anders rum^^
probier ma den schatten tweak der hier irgendwo rumschwirrt und pack nen paar sachen auf medium
läuft zumindest bei mir ganz gut
 
Wegen der Erklärung: ich bin leider kein Informatiker, aber dass ATI und nV mit DX9 Grafikkarten Physik demonstriert haben ist Fakt. In den ATI White Papers steht drin dass sie es über die Pixelshader laufen lassen. Nochmal: Es ist so, Pixelshader können mathematische Operationen durchführen. Das ist allen "shadern" gleich. nur die Pipelinestruktur ist unterschiedlich, was zu mehr oder weniger großen Hemmnissen führt, einen vertex oder Pixelshader zu Physikberechnungen zu zwingen. Aber es ist nichts unmöglich. Eine Frage des Treibers. Bei ATIs HD2900XT werden ja auch die AA-Berechnungen ersatzweise in den Pixelshadern ausgeführt per treiber.. Und wie gesagt: ATI und nV haben auch Physikberechnungen demonstriert.

das heisst alles nicht, dass ich es bestreiten will, dass unified shader da bestimmt besser sind. Aber wenn es auch bei DX9 GraKas speziell mit Crysis möglich ist, dann würde ich das gerne nutzen, denn zur Zeit langweilt sich bei mir eine GraKa fürchterlich (was aber auch hoffentlich bald ein Ende hat, die Grafik limitiert bei mir so oder so stärker als die Physik...). Naja, und ich habe eben bemerkt, dass es etwas bringt diesen sys_physics_cpu - befehl zu nutzen... wie auch immer und ob es nun nur gefühlt sein mag oder nicht.. Dass müsste mal noch jemand anders mit einem potenteren System testen...

Das mag ja alles hinkommen, aber trotzdem ist meine Frage noch offen. Sprich wird die Physik komplett von der GPU übernommen (sys_physics_cpu) oder nicht. Denn das kann ich mir nicht vorstellen, da es rein physikalisch gar nicht möglich ist. Da weder der Pixel noch der Vertexshader vertices erzeugen kann. Dazu muss unter DX9 immer noch die CPU ran, was unter DX10 nicht mehr der fall ist.


P.S sys_physics_cpu 0/1 hat bei mir keinerlei unterschiede gebracht. Ich gehe stark von CPU 0 oder 1 aus, sprich Kern 1 oder Kern 2.


EDIT

http://www.heise.de/newsticker/meldung/77282

Wenn die Grafikkarte mehr Funktionen übernimmt, wird die CPU entlastet und kann sich um andere Aufgaben wie die KI und Physikberechnung kümmern. Für Crysis setzt Crytek eine eigene Physik-Engine ein, die die Rechenleistung der CPU nutzt. Die Effekte sind also kein bloßer Zuckerguss, sondern haben spielerische Auswirkungen. Speziallösungen wie die PhysX-Engine von Ageia nannte Diemer abenteuerlich: "Wir wollen, dass unser Spiel auf mittleren Systemen läuft, die sich jeder Azubi leisten kann. An teuren Lösungen die nur auf spezieller Hardware läuft, sind wir nicht interessiert."

Wie gesagt, das die Grafikkarte bei Crysis die Physik übernimmt halte ich für völlig abwegig, da NV und ATI beide andere lösungsansätze haben ;) (DX9) und man wird kaum für beide Karten verschiedene physikrenderer entwickeln. DX10 wäre wieder ein anderer schnack, da mit den GS ein einheitlicher standard geschaffen wurde.
 
Zuletzt bearbeitet:
Speziallösungen wie die PhysX-Engine von Ageia nannte Diemer abenteuerlich: "Wir wollen, dass unser Spiel auf mittleren Systemen läuft, die sich jeder Azubi leisten kann. An teuren Lösungen die nur auf spezieller Hardware läuft, sind wir nicht interessiert."


muha selten so gelacht also ich würd mir lieber für 120euro ne physx ins system setzen anstatt quad cpu und 2x8800 ultra für ich weis nich wieviel euronen (und da denk ich noch nett mal an die stromrechnung) ums flüssig spielen zu können


und btw dx9 vga physik berechnung geht in company of heros ,ging sogar mit meiner x800
 
und btw dx9 vga physik berechnung geht in company of heros ,ging sogar mit meiner x800

Quelle

für 120euro ne physx ins system setzen anstatt quad cpu und 2x8800 ultra für ich weis nich wieviel euronen

Aha, komisch das ich in Crysis bisher bessere Physikspielchen sehen konnte als in GRAW2 mit Physix. Aussserdem krebst man mit Physix bei ca. 25FPS durch die gegend, soviel zu deiner dollen Karte.
 
Zuletzt bearbeitet:
Erinnert an Far Cry, dort hat man ja einfach Shader Modell 2 aktiviert um bessere Leistung zu erzielen.
 
Das stimmt wohl, dass die CPU dann immer noch etwas damit zu tun hat.. Auf der läuft ja der Treiber praktisch...

Ich dachte ja auch, dass sys_physics... den Kern festlegt... Aber man weiss es immer noch nicht :( Daher lasse ich die andere Hypothese mal stehen (Physik teilweise auf der GPU).

Es sollte doch so sein, dass die Spielphysik auf der CPU läuft und die Effektphysik zum Teil auf der GPU...

Und was mich überhaupt erst auf die Idee gebracht hat: In der beta gab es scheinbar den Befehl sys_physics_GPU = 0/1 , der festlegt, auf welcher GraKa die Physik läuft (bei SLI/CF)... Siehe erster Post dieser Thread..

//Dual Graphiccard Settings//

r_MultiGPU = 0
sys_physics_GPU = (Ihr könnt bei einem SLI oder Crossfire System die Physik komplett von einer der beiden Grafikkarten übernehmen lassen "0" steht für die erste Karte und "1" für die zweite Karte)
 
Hab mal ne frage an euch:
also ich habe jetzt crysis bei mir drauf nur mich stört dieser PostPrecessing effekt, ich mag das verwischen der texturen beim schnellen bewegen nicht so (zieht doch sicher viel leistung) jedenfalls würd ich dies gerne ausstellen, kann aber nur auf low auswählen, ist es bei low aus oder muss ich was anderes machen?
 
Hab mal ne frage an euch:
also ich habe jetzt crysis bei mir drauf nur mich stört dieser PostPrecessing effekt, ich mag das verwischen der texturen beim schnellen bewegen nicht so (zieht doch sicher viel leistung) jedenfalls würd ich dies gerne ausstellen, kann aber nur auf low auswählen, ist es bei low aus oder muss ich was anderes machen?

r_motionblur = 0 in der game.cfg eintragen und diese dann schreibschützen.
 
Alles klar, danke euch
 
Quelle



Aha, komisch das ich in Crysis bisher bessere Physikspielchen sehen konnte als in GRAW2 mit Physix. Aussserdem krebst man mit Physix bei ca. 25FPS durch die gegend, soviel zu deiner dollen Karte.

da liegen wohl welten zwischen das eine is ne physik simulation und das andere sind vorberechnete sollbruchstellen und mir gefällt die simu wesentlich besser sieht wesentlich realer aus


und zu coh einfach mal in optionen gehen und häckchen bei physik über video berechnen setzen
 
Und das soll also heissen das die GPU die kompletten Physikberechnungen durch nimmt? Alleine das ATI nur Shader 3.0 und Shader 4.0 vorsieht, schliesst schon deine X850 für Physikberechnungen aus.

Zur Physix: Wenn ich schon eine beschleunigerkarte im Rechner habe, erwarte ich auch flüssiges Gameplay. Und das wird mit der Physix nicht gewährleistet, da einfach noch zu viel die GPU und CPU mit rechnen müssen. Denn die Physix kann keine neuen Polygone einfügen.

@öse

r_MultiGPU = 0 steht wohl für SLI oder non sli und den Befehl sys_physics_GPU gab es zumindest nicht in der Beta3, die ich ja gespielt habe und es noch tuhe. Ausserdem gibt es in der Beta keine Spielphysik, sondern nur Effektphysik.
 
Zuletzt bearbeitet:
Wie gesagt, das die Grafikkarte bei Crysis die Physik übernimmt halte ich für völlig abwegig, da NV und ATI beide andere lösungsansätze haben ;) (DX9) und man wird kaum für beide Karten verschiedene physikrenderer entwickeln. DX10 wäre wieder ein anderer schnack, da mit den GS ein einheitlicher standard geschaffen wurde.

Ja richtig, wie ich schon einmal geschrieben habe ist das noch nicht implementiert. Die Befehle sind nur Dummies zum Testen und zum Implementieren per Patch später.
 
Wieso sollte das nicht gehen? Wenn du ein SLI Board hast dann geht das, klar. Aber 2*8 Lanes oder 1*16 und 1*4 werden die Karten sicherlich etwas ausbremsen. Kann man ja aber später mit nem neuen Unterbau trotzdem weiternutzen!
 
Klar ist voll abwärtskompatibel! Vor allem auf nem Nvidia Chipsatz solltedas rennen^^
 
@ deathcrush: r_multiGPU weiss ich, dass das SLI/CF on/off sein soll.. Den Befehl kennt er auch...

es gibt also bei DX10 in der API eine vereinheitlichte Programmierung für "Software-Geometry-Shader", die auf den shadereinheiten ablaufen.. Dann sehe ich wohl auch schwarz für DX9 und Physik.. Ist wohl zu hoher Aufwand für alte Karten..

Wobei das zu verschmerzen ist, ich brauche die Leistung eh bei der Grafik...

sys_physics_GPU gabs also auch in der beta nicht... ok.. Ich frag mich wieso man das immer wieder findet.. @ vento: aha es wurde also damit rumgespielt, ist aber noch nicht implementiert...
 
Zuletzt bearbeitet:
Hey Normal_User da sollte es noch keine Tests geben, da das sicher eher ne seltenere Kombo ist mit GT SLI auf nem NF4 und die GT noch nicht so stark verfügbar ist und noch net lange raus. Aber von der technischen Seite her sollte es da 0 Probleme geben!
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh