Ich möchte einen Bildschirm stark vergrößert Rendern, so dass man die einzelnen Subpixel erkennen kann. Der Bildschirminhalt liegt dabei als Textur vor. Der Plan war also:
- Textur mit Punktfilterung samplen
- Eine Detailtextur, wo die rot-grün-blauen Subpixel drauf sind, in einer Kachelung drüberzeichnen, so dass jede Kachel exakt einen Pixel der Bildschirmtextur abdeckt (die Details lasse ich hier mal außen vor)
Also muss der Filter für Verkleinerung und Mip-Levels angepasst werden. So weit ich das sehe, bietet Direct3D 10 z.B. den Filtertyp D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR, wo die Textur nur in der Vergrößerung Punktfilterung nutzt und sonst lineare Filterung.
Deutlich besser, aber noch nicht optimal: Trilineare Filterung sieht immernoch, gelinde gesagt, bescheiden aus im Vergleich zu anisotroper Filterung.
Ist es möglich, für Minification und Mip einen anisotropen Filter zu setzen, aber für Magnification Punktfilterung?
Da Direct3D 11 keinen entsprechenden Filter-Typ anbietet wäre die Antwort intuitiv Nein, aber vielleicht fällt jemandem ein, ob man an der Textur selber oder in den Shadern was drehen könnte?
Wie sieht das in Direct3D 9 aus, wo man die drei Filter noch beliebig seperat einstellen kann: Wird das von irgendeiner aktuellen Hardware unterstützt?