bilinear Filtering

Wie schreibt man ein Phenomenon, bzw. einen Shader?

Postby Posativ on Wed Sep 12, 2007 22:28 pm

hot chip wrote:hier eine kurze Sequenze... so etwas hatte ich schon mal, nur jetzt mit Bildern im Map-Format.

www.infinity-vision.de/service/erde_v2.avi



Und wie schaut das ganze OHNE das Filtern aus? Die Animation ist wirklich nett, aber ich habe mich eher auf das Licht und Schattenspiel + Reflektionen konzentriert, als auf die Bilineare Filterung.
Posativ
Moderator
 
Posts: 677
Joined: Tue Jan 30, 2007 10:13 am

Postby banned on Thu Sep 13, 2007 1:18 am

na jut,

das Phenomenon da oben läuft ja, es ist nur die Frage welchen Space Wert man nimmt und damit komme ich noch nicht so klar :-D. Bei 1 rechnet er pyramidial und bei 0 bilinear, dann läuft es.

ich habe mir daraus jetzt ein jetzt Phenomenon geschrieben das so aus aussieht:

Image

mfg
hot chip
banned
 

Postby jb_alvarado on Mon Sep 17, 2007 14:14 pm

Schau mir das Ganze grade noch mal näher an... Dabei ist mir aufgefallen, dass die Werte aus dem Phenomenon noch nicht so optimal sind.

An dieser stelle noch mal Danke an Seeda, für das Übersetzten!

- Repeat ist klar: legt die Kachelung fest, 0 bzw. 1 heißt keine Kachelung

- alt_x/alt_y/alt_z legt fest ob beim kacheln gespiegelt werden soll, funktioniert nur in Verbindung mit einer Kachelung von 2, oder höher

- torus_xyz: habe ich noch nicht herausgefunden

- eccmax: ist die maximale erlaubte Exzentrizität für eine Ellipse. Wenn ich das richtig verstanden habe, heißt das soviel wie: je höher dieser Wert ist, desto genauer das AA

- maxminor: ist die maximale Anzahl von Texturpixeln für den minimalsten Radius einer Ellipse. Steht in direkter Verbindung mit eccmax und legt fest wie viele Pixel für das AA verwendet werden darf (?)
dieser Wert sollte zumindest bei einer Pyramid-Filterung auf jeden Fall höher. Sonst gibt's Treppchen... Wahlweise kann auch eccmax erhöht werden, da muss man halt testen, was schneller rendert.

- disc_r: Wird gebraucht bei der "screen to texture" Raum-Transformation. Ein Grundwert ( oder Standardwert ) wird gebraucht, wenn disc_r null ist oder nicht bestimmt ist. Für Szenen mit hohen " gebogenen" Oberflächen, sollte es sinnvoll sein eine hohen Wert im Bereich 0.0 - 0.3 zu wählen, wenn beim Aliasing Artefakte erscheinen.

- offset: hier kann man die Textur auf der Oberfläche verschieben

Bei Space sollte, denke ich, 1 hin, dann wird die Textur auch im Mateditor korrekt dargestellt.

Bis jetzt schaut meine Testgui so aus:

Image

Werd noch ein Rotate einbauen, dann sind eigentlich die wichtigsten Funktionen drin.

Was mich jetzt noch interessieren würde ist, wenn man beim Konvertieren kein Pyramid-Parameter angibt, ob dann trotzdem die Pyramidfilterung eingesetzt wird?!
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Postby Seeda on Mon Sep 17, 2007 14:22 pm

jetzt bräuchte man nur noch das einstellen der rgb output werte und den generellen outputwert , und die textur beschneide funktion, dann ist alles perfekt, und ich kann auf standard texturen verzichten :-D
User avatar
Seeda
Admin
 
Posts: 3784
Joined: Sun Nov 12, 2006 20:25 pm

Postby Seeda on Mon Sep 17, 2007 14:23 pm

bin etwas unverschämt :wink: aber des nimmst du mir net übel ? !
User avatar
Seeda
Admin
 
Posts: 3784
Joined: Sun Nov 12, 2006 20:25 pm

Postby jb_alvarado on Mon Sep 17, 2007 14:25 pm

Immer dieser extra Wünsche :)... RGB-Justierung sollte kein Problem sein, Beschneiden schon. Dafür bräuchte man wohl eine richtige Bitmap-IO-Schnittstelle für .map. Dann wäre dieses Phenomenon eh hinfällig.
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Postby Seeda on Mon Sep 17, 2007 15:17 pm

Nun mal im Ernst, ich finde das ein klasse Sache, da es den Process mit MR zu arbeiten verbessern wird, ich erhoffe mir eine verbesserte systemstabilität , ja und letztlich auch eine Geschwindigkeitssteigerung, was ich bei eigenen Tests schon feststellen konnte.
User avatar
Seeda
Admin
 
Posts: 3784
Joined: Sun Nov 12, 2006 20:25 pm

Postby Seeda on Mon Sep 17, 2007 15:20 pm

Ideal wäre jetzt , wenn vielleicht auch nicht erfüllbar, wenn irgendwo zentral jetzt noch der Button für das convertierungstool direkt sichbar wäre zb. in den Rendersettings, oder ein Button in dem Mateditor.
User avatar
Seeda
Admin
 
Posts: 3784
Joined: Sun Nov 12, 2006 20:25 pm

Postby banned on Mon Sep 17, 2007 17:28 pm

klasse Jonathan,

finde die Erklärung der Parameter sehr hilfreich. Eccmax schalte ich default auf 20 und genügt in der Regel. Doch nun zu meinem Problem

ich habe das jetzt mal zusammen gesteckt im Material Editor für alle. Das Problem bei mir ist, das bilniear bei mir überhaupt nichts macht und wenn ich den space wert auf 0 stelle, macht er es, ist er auf 1, nimmt er sein pyramidialen Filter. Demo Szene ist im Anhang...
Attachments
test2.rar
Max9 Szene
(16.76 KiB) Downloaded 96 times
banned
 

Postby jb_alvarado on Mon Sep 17, 2007 17:33 pm

Ui, das ist seltsam. Dann habe ich da noch was falsch verstanden. Werds mir noch mal anschauen.
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Postby jb_alvarado on Tue Sep 18, 2007 9:00 am

So ich denke jetzt haben wir es :). Danke noch mal Seeda!


Elliptic Filterung funktioniert nur mit textur vector. Es arbeitet nicht mit Projectionen. Dieser Parameter gibt vor welchen Texturraum man benutzt. Hier muss es mit dem gewählten Parameter des mib_texture_vector shader vereinbar sein, und es muss 0 sein oder größer.
Rendering with mental ray, Seite 79


In der Regel sollte also (doch) 0 bei Space hin...
Auf Seite 64-67 gibt's noch eine ausführliche Beschreibung über Texture Vectors.
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Postby banned on Tue Sep 18, 2007 10:34 am

na super,

dann läuft es ja so richtig :-)

hier meine neuste Version, den Intensitätswert erzeuge ich über ein color mix Shader.

Image

mfg
hot chip
banned
 

Postby jb_alvarado on Tue Sep 18, 2007 10:38 am

Fein. Mein Tip wäre: Space auf 0 setzten und in der gui zu hidden, dafür für bilinear einen boolean setzten. Boolean ist im Shader halt vorgesehen, nicht scalar ;).
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Postby banned on Tue Sep 18, 2007 11:03 am

geht auch, nur dann ist es bilinear und das funktioniert z.B. nicht so gut mit alpha-masken und atmopshäre.

so denke geht es. Wenn man space =0 hat kann man transparente Masken vergessen. Daher habe ich den Space Wert als Transparenz deklariert. Jetzt ist es annähert logisch. :-D

Image

mfg
hot chip
banned
 

Postby jb_alvarado on Tue Sep 18, 2007 11:09 am

Hm, so ganz logisch finde ich das noch nicht :). Mit Space gibts du ja die zu verwendenden Vektorkoordinaten an. Sind diese Falsch (z.b. bei 1) kann die Bilieare-Filterung nicht verarbeitet werden, also handelt es sich hier lediglich um einen Fehler in der Verarbeitung. Da musst dir noch einen gescheiten namen für ausdenken ;).
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Return to Writing Shader and Phenomena®

Who is online

Users browsing this forum: No registered users and 1 guest

cron