2002年07月23日Smart Filtering要約テクスチャのフィルタリングは現代の3Dグラフィックスにおける必須機能である。 3Dのアクセラレーション機能が登場するまで、リアルタイムテクスチャマッピングには、 四角っぽさ丸出しの、点補間フィルタだけが使われていた。 今では、我々はいろいろなフィルタを使うことができる(ミップマップベースの縮小、 バイリニアフィルタによる拡大など)。
![]() それぞれの場合で、それに見合うフィルタを用いる。 その1:四つのすべてのテクセルが同じ領域にあるので、 このテクセルの補間には、バイリニアフィルタを使う。 その2:上の二つのテクセルと下の二つのテクセルで分かれている。 水平境界線の上の領域の色は上の2つのテクセルによって線形補間される。 下の領域も同様に処理する。その他の場合のフィルタも同じような方法で定義される。 テクセル補間のためのフィルタ番号は、テクスチャと一緒に格納されている(各テクセルに4bitを付加することによって実現している)。 レンダリング段階では、このフィルタ番号を読み込むことによって、テクセル補間に正確なフィルタを使うことができる。 だから、このテクニックを使うと、拡大率にかかわらず、均一色領域の間をはっきりとした境界線として表現できる。 さらに、均一色領域内部にバイリニアフィルタを使うことによって、待望の滑らかさを得る。
個人的な感想(訳者による)実行画面もとてもきれいで久々に驚いた。 これをハードウェアがサポートすれば、正に「革命」となりうるだろう。 320x240の解像度で実行される2Dゲームでも、解像度を上げて、この手法を取り入れれば 画質が向上すると思われる。 しかし、α値はどこに格納するのか、などの点が気になった。 |
|