R
Optimizer schrieb:
@rapso:
Das mit der Performance lass ich als Argument durchaus gelten, aber tatsächlich verstehe ich deswegen noch nicht, warum es nicht als Option verfügbar ist. Und macht es nicht tatsächlich auch mal was kaputt, das im Treiber generell anzuschalten (wenn die texture unit gezielt für ne lineare interpolation genutzt wird)?
natuerlich macht es einiges kaputt, z.b. ist es nicht sinnvoll mathematische texturen wie z.b. normals auf die selbe weise zu interpolieren wie color texturen. AF einzuschalten im treiber macht genau soviel kaputt wie es verbesser bei crysis, wuerde ich meinen. wenn man es also richtig machen will, muessten die artist fuer jede textur fuer jedes objekt einzeln angeben welche filterung die richtige ist und zudem muessten die sampler der graphikkarten programmierbar sein um es richtig zu machen.
Das viele die Option nicht kennen, halte ich für kein Argument. Viele Leute wissen auch nicht was Texturfilterung überhaupt ist, trotzdem benutzt man es, weil es besser aussieht.
genau das ist das problem, die leute benutzen etwas von dem sie nicht wissen was es macht, hauptsache es ist erstmal an. am ende beschweren sie sich dass es langsam ist oder dass es fehler gibt und es komplett richtig zu machen ist aus oben angegebenen gruenden garnicht moeglich.
also laesst man es gleich.
Antialiasing hingegen kann kaum einfach im treiber nachgebaut werden, die hersteller wissen heutzutage kaum noch welcher buffer fuer was benutzt wird und selbst wenn, sie muessten spezielle resolves einbauen und die shader an sich anpassen um korrektes AA zu bieten. deswegen machen die hersteller das lieber selbst, und es ist auch sehr leicht erklaerbar fuer jeden "man rendert das bild doppelt so gross, skaliert es runter und deswegen verschwinden die kanten". versuch das mal fuer AF, "Texturen werden schaerfer"-"wieso sind sie unscharf?" "weil mipmaps, also klein skalierte texturen verwendet werden und bei der DDx DDy ableitung die kleinere genommen wird fuer die mipmap selektion" - "emm.. ahh.. emm.. kann man nicht einfach die grosse textur nehmen?" - "ja, aber das wuerde zu viel aliasing fuehren und performanceeinbruche aufgrund schlechter cache coherence verursachen" - "emm... aber..."
und bei jeder antwort verstehen die leute 50% nicht, was bei follow up fragen mit *0.5 aufakkumuliert -> die meisten raffen es nicht.
btw. finde ich deine Screenshots nicht ideal gewählt, sieh dir mal die hier an:
http://firbach.dyndns.org/garbage/af/crysis1.jpg
http://firbach.dyndns.org/garbage/af/crysis2.jpg
uo, sieht boese aus, was ist das, ne 7800 die das filtert? *Hehe*
Und hier find ich tatsächlich schon, dass es die Bäume kaputt macht, das generell im Treiber anzuschalten.
klar, die sind wegen HDR vermutlich nicht als simple colors abgelegt -> jede textur muss einzeln fuer AF selektiert werden und genau wie beim AA muss man fuer jedes format ein dediziertes AF implementieren, wenn man es richtig machen will.
aber du hast nur wenige framebuffer, jedoch hunderte texturen mit sicherlich ein paar zig formaten.
Und bei Oblivion ist der Unterschied echt erschreckend:
http://firbach.dyndns.org/garbage/af/oblivion1.jpg
http://firbach.dyndns.org/garbage/af/oblivion2.jpg
ein wenig mip bias wuerde genau so gut funktionieren, nehm ich mal an.