Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

08.07.2005, 02:03

Interpolation von Texturen

Hi All!
Ich brauche euren Rat bei der Interpolation von Texturen.

1. Beim Laden von Texturen prüfe ich (also meine Funktion), ob die Seiten Zweierpotenzen sind. Wenn nein, soll ich diese Seiten a) mathematisch exakt auf die nächste Zweierpotenz runden (91 >>> 64; 112 >>> 128), b) immer aufrunden (91 >>> 128; 112 >>> 128), oder c) immer abrunden (91 >>> 64; 112 >>> 64)?

2. Wie soll man beim Erzeugen von MIP-Maps vorgehen? Ganz einfach immer den Durchschnitt von 4 Pixels einem Pixel der nächsten MIP-Map zuweisen (bilinear)? Oder soll man sogar eine Fourier-Analyse machen?

Ich hoffe, ihr könnt mir einige Tipps geben.

Grüsse
Benjamin

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

08.07.2005, 02:13

Re: Interpolation von Texturen

Hallo,

ich denke, "immer aufrunden" ist die beste Möglichkeit, da auf diese Weise schonmal keine Informationen verloren gehen. Es sei denn, Du achtest sehr auf den Speicherverbrauch.
Übrigens solltest Du erstmal testen, ob die Grafikkarte überhaupt 2^n-Texturen benötigt. Die meisten tun das nämlich nicht mehr, und dann wäre die ganze Rechnerei unnötig.

Zur Sache mit dem Filter: Wenn Du die MIP-Maps beim Laden erzeugen willst, dann solltest Du Dir eine Methode aussuchen, die auch schnell genug ist. Denn "mal eben" eine Fourier-Analyse zu machen wird sich beim Laden von vielen Texturen sehr bemerkbar machen. Wenn Du die MIP-Maps hingegen vorberechnest, sollte die Qualität an erster Stelle stehen.

Es gibt für all diese Fragen keine richtige oder falsche Lösung. Es kommt immer auf die Situation an und worauf Du mehr Wert legst.

3

08.07.2005, 12:21

Re: Interpolation von Texturen

Hallo David!
Vielen Dank für deine Tipps! Ich werde die Texturen also immer aufrunden, und anschliessend bilinear skalieren.

Zitat von »"David Scherfgen"«

Übrigens solltest Du erstmal testen, ob die Grafikkarte überhaupt 2^n-Texturen benötigt. Die meisten tun das nämlich nicht mehr, und dann wäre die ganze Rechnerei unnötig.

Ja, aber es ist viel einfacher, MIP-Maps von einer solchen Textur zu erstellen. Das mit der Fourier-Analyse werde ich im Moment sein lassen, weil ich es nicht verstehe.
Oder kann mir jemand erklären, wie es die Fourier-Analyse schafft, dass die MIP-Maps trotz Verkleinerung noch vergleichsweise scharf aussehen? Werden die dunkleren Pixel höher gewertet als die Hellen?


Grüsse
Benjamin

Werbeanzeige