PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Paletten-Texturen


aths
2005-03-23, 14:23:39
Wenn ich das richtig sehe, unterstützen neuere Chip keine Paletten-Texturen mehr. Wieso nicht? Für vieles wäre das richtig. Beispiel: Ein überwiegend grauer Bürgersteig. Eine überwiegend eintönige Wand. Alles Bereiche, wo die verwendeten Farben, im RGB-Würfel als Verteilung dargestellt, sich in einer Wolke konzentieren oder auf einer Fläche angeordnet sind. Entropie-Kodierung ist da nur angebracht.

Man könnte jetzt sagen, DXT komprimiert auch 4:1. Aber wenn man dort im DXT-Tile bei einigen Texeln hohe Kontrast-Unterschiede hat, werden die anderen Werte nur entsprechend grob quantisiert gespeichert. Bei Paletten-Texturen wäre das kein Problem.

Demirug
2005-03-23, 15:28:20
Unter D3D sind Paletten Texturen in Verbindung mit Multitexture weitgehend unbrauchbar weil sich alle Texturen eine Palette Teilen müssen.

Desweiteren kostet jede Palette irgendwo im Chip ein KB.

Das Erzeugen von Mipmaps ist sehr kompliziert und meist habe diese dann keine gute Qualität.

Mr. Lolman
2005-03-23, 16:22:05
Das Erzeugen von Mipmaps ist sehr kompliziert und meist habe diese dann keine gute Qualität.

Ist das nur bei den neueren Chips so? Denn Unreal Tournament konnte trotz 8bit-paletted-Textures sehr fein aussehen: http://img12.exs.cx/img12/3411/ut99hdr68cz.jpg (ok, durch HDRish ein bisschen verfälscht)

Xmas
2005-03-23, 16:54:48
Ist das nur bei den neueren Chips so? Denn Unreal Tournament konnte trotz 8bit-paletted-Textures sehr fein aussehen: http://img12.exs.cx/img12/3411/ut99hdr68cz.jpg (ok, durch HDRish ein bisschen verfälscht)
Nun müsste man nur noch wissen, welche Texturen davon mit Palette sind und wo überhaupt angesichts der hohen Auflösung und AF Mipmaps davon zum Einsatz kommen ;)

Das ist ein generelles Problem. Es kann gut aussehen, aber meist nur dann wenn der Farbumfang deutlich kleiner 256 Farben ist, so dass man die Zwischenstufen für die Mipmaps auch noch unterbekommt.

Mr. Lolman
2005-03-23, 17:21:27
Das ist ein generelles Problem. Es kann gut aussehen, aber meist nur dann wenn der Farbumfang deutlich kleiner 256 Farben ist, so dass man die Zwischenstufen für die Mipmaps auch noch unterbekommt.


Von dem Screenshot sind alle Texturen mit ner 8bit Palette, wie übrigens auch bei allen Anderen in dem Post hier: http://www.forum-3dcenter.de/vbulletin/showthread.php?p=2609300#post2609300 (Unreal/UT konnte AFAIK garnicht mehr als 8bittige Texturen darstellen, aber bei denen bin ich mir sicher, da ich sie alle eigenhändig in UT eingefügt hab)

Am 2. Screeenshot kann man am roten Haus hinter der linken Straßenlaterne sogar deutlich ein Bi-Band sehen. :|


Außerdem glaub ich, dass die notwendigen Pixel für die Mips sich im Normalfall locker durch die Palette abdecken lassen, da man immerhin nur max. 25% der Auflösung der Originatextur mit Pixel füllen muss. (Klar wenn die Palette z.B. nur aus grün/rot Tönen besteht, tut man sich dann schwer Gelb zu bekommen, falls ein grünes Pixel neben einem roten welchem seinen Platz findet. Aber wer braucht schon solche Texturen. Ich hab mich damals (anno Unreal/UT) viel mit Mips von 8 bittigen Palettentexturen herumgespielt, und eigentlich nie ein Problem mit dem Ergebnis gehabt...

Coda
2005-03-23, 17:58:34
Unreal konvertiert eh alle Texturen in 32 bit auf deiner Radeon.

micki
2005-03-23, 18:16:01
Man könnte jetzt sagen, DXT komprimiert auch 4:1.
6:1

und wenn du palletierte texturen haben möchtest, kostet dich das einen dependant texture read, mehr nicht.

MfG
micki

Demirug
2005-03-23, 18:17:51
6:1

und wenn du palletierte texturen haben möchtest, kostet dich das einen dependant texture read, mehr nicht.

MfG
micki

Nein, dann fehlt nämlich der Texturefilter.

Mr. Lolman
2005-03-23, 18:35:22
Unreal konvertiert eh alle Texturen in 32 bit auf deiner Radeon.

Ja und? Die Mipmaps sind schon direkt in den utx Packages gespeichert (ok wer weiss ob die dann auch verwendet werden, aber ich kann ja mal die Voodoo5 anwerfen...)

aths
2005-03-23, 18:53:29
6:1

und wenn du palletierte texturen haben möchtest, kostet dich das einen dependant texture read, mehr nicht.Wie willst du dann anisotrop filtern? Schon für bilineare Filterung komme ich auf 4 Reads, von den arithmetischen Rechnungen mal abgesehen.

Nach welcher Rechnung komprimiert DXT1 (oder DXT3) 6:1?