ポリゴン
ポリゴン(polygon)とは、元々は多角形という意味であるが、主に3次元コンピュータグラフィックスにおいて、三角形や四角形(ソフトによっては五角形以上も扱える)の組み合わせで物体を表現する時の各要素を指す。
ちなみに、三角形や四角形などは、トポロジーでは閉じているので特にクローズドポリゴン(closed polygon)といい、ただの線分などの閉じていない物をポリラインあるいはオープンポリゴン(open polygon)といい、クローズドポリゴンと比較する場合がある。
ポリゴンおよびポリラインは2次元コンピュータグラフィックスにおいても同様な意味で用いられる。例えば、地理情報システム(GIS)で地図を描く場合に、領域の輪郭をポリゴンで記述し、道路や鉄道などをポリラインで記述する。
このようなポリゴンで構成された物体は、基本的に直線と平面のみで構成されるが、線・面分割を細かくしてスムーズシェーディングなどの処理を併用する事で擬似的に曲線・曲面も表現できる。またピクサー社は単純なポリゴン形状で有機的曲面形状を制御するサブディビジョンサーフェス技術を開発している。
概要
ポリゴンの数が増えるほど詳細な表現が可能になり、何らかの入力操作に応じてリアルタイムに表示計算を行うコンピュータやゲーム機では1秒間に処理できるポリゴンの数がハードウェアの性能の比較に用いられることもある。例えば、初期の家庭用ゲーム機では、1994年にはセガのメガドライブの周辺機器スーパー32Xでポリゴンのソフト(厳密にはこの場合のポリゴンは、三角形の意味でない)が発売されたが、スーパー32Xが32ビットでもメガドライブ自体は16ビットというハードの性能の限界があった。2000年に発売されたソニーのゲーム機、PlayStation 2に搭載されたEmotion Engineは、毎秒300~600万ポリゴン。近年では、携帯電話向けのものでさえ、東芝のTC35711XBGのように、毎秒1億ポリゴンにも達するものさえある。しかしCPUのFLOPSと同様、1秒間に処理できるポリゴンの数だけがハードウェアの性能の優劣を決定づける要素ではない。逆に、ハードの負荷を減らす為に制作側は極力少ない数のポリゴン(ローポリゴン)でキャラクターのモデリングを行う事を要求されるため、細部の表現には各種のテクスチャマッピングと組み合わせることが多い。
現在では、ほとんどの場合、三角形のポリゴンが使われる。 これは、四角形以上のポリゴンの場合は、個々の頂点座標の位置関係によっては、ポリゴンに捩れが発生してしまい、このときポリゴンの面を正しく(あるいは高速、またはグーロー補間に)塗り潰すアルゴリズムの実装が複雑なためである。
三角形ポリゴンであれば、三つの頂点座標がどのような位置関係でも条件を考慮せずに同じアルゴリズムで塗りつぶす事ができ、正しくグーロー補間することができる。
三角形ポリゴンを塗り潰すアルゴリズムを多少変更すれば、フラット補間なら四角形以上のポリゴンも塗りつぶせないことはないが、凹多角形の場合はアルゴリズムが複雑になり、フィルレートも低下する。 これらの理由から、リアルタイムコンピューターグラフィックスの世界では、三角形ポリゴンが使用されるのが普通である。
また、三角形ポリゴンを複数組み合わせて、四角形以上のポリゴンの処理を代替することは可能なので、いわゆるGPUなどは基本的に三角形ポリゴンの処理に特化した設計である(比較的に知名度があるハードウェアだと、セガModel3に使用されている、LockheedMartin Real3D/PRO-1000などは、四角形のポリゴンベースで処理をするが、もともとが軍事シミュレータ用であり例外的な存在である)。
凸多角形を塗り潰すアルゴリズムには、スキャンラインと辺の交点の間を塗るという方法がある。