細かい線分によって曲線を近似できるように、三角形によって曲面を近似することができる。
三角形は、
だから。
表面を個別のポリゴン(クワッドと呼ばれる四辺形か、三角形)の集まりに分割する処理。
テッセレーションのレベルが固定されると、特にオブジェクトがカメラに近いときには、輪郭のエッジが角ばって見える。
三角形は、3つの頂点の位置ベクトル, , によって定義される。
三角形の辺は、それを挟む2つの頂点の位置ベクトルの差によって定義される。
任意の2辺のクロス積を正規化することで、単位面法線ベクトルが定義される。
面法線ベクトルの向きを知るためには、三角形の前面と背面を定義する必要がある。
面法線ベクトルは外積なので、回転順序を指定すれば簡単に定義できる。
多くのグラフィックスAPIでは、回転順序に基づいて、背面側の三角形をカリングすることができる。 これにより、見えない三角形を描画せずに済む。
頂点を3つのグループに分けて、その3つの組み合わせそれぞれが1つの三角形に対応するようにリスト化することで、簡単にメッシュを定義することができる。
三角形リストの頂点の多くは何度も繰り返し使われている。これはメモリの浪費になる。
インデックス付き三角形リストでは、頂点のリストと三角形のリストを分けて管理することで、メモリの使用量を減らすことができる。
インデックスバッファを使うことなく、頂点の重複をある程度減少させるデータ構造。
回転順序に一貫性を持たせるために、直前の隣接する2つの頂点は、新しい三角形を形成するたびに位置を入れ替える。
頂点が, , , , , の順に並んでいるとき、三角形は次のように定義される。
頂点が, , , , の順に並んでいるとき、三角形は次のように定義される。
マテリアルは、メッシュの視覚特性をすべて記述したもの。
頂点属性はメッシュに付随しているため、メッシュとマテリアルとの組み合わせ(レンダーパケット)で、オブジェクトのレンダリングに必要な情報はすべて揃うことになる。