コンピュータグラフィックス(CG)には色々な専門用語がある。ひたすら、それらについて紹介する。
まず、CGではコンピュータ上にある仮想空間での位置を表現するために3次元直交座標系が用いられる。その中で、視点座標系とワールド座標系により、XY Zがどの向きに設定するかを分けられている。視点座標系は左手系、ワールド座標系は右手系と呼ばれ、それぞれ親指がX、人差し指がY、中指がZの方向に来る。また、スクリーン座標系ではレンダリングする画面の空間のX Y Zが示される。
3次元物体を2次元平面に表示する作業を投影といって、中でも空間座標系を投影することを透視投影という。
2次元平面上に並んだ図形を2次元から3次元へ変換して3次元物体を表現する手法をボクセル表現という。ボクセルとはピクセルとボリューム(体積)を組み合わせた用語である。
レンダリング
レンダリングはCG上の物体を平面画像に書き出す時に行われる処理である。レンダリングの処理をモデル化したレンダリング方程式によって頂点座標系の外積や内積から法線ベクトルや単位ベクトルを求める。
レンダリングの際、光の角度や光源からの距離を計算して、物体の影を求める処理のことをシェーディングという。シェーディングにも様々な手法がある。特定の範囲のみで、光源から物体表面に到達するまでの挙動をモデル化する事をローカルイルミネーションと言い、直接光だけで照明計算を行う局所照明モデルを用いる。一方で、CG空間の全ての範囲で、物体表面に到達するまでの挙動をモデル化する事をグローバルイルミネーションと言い、直接光だけでなく、反射面からの間接光を含めて照明計算を行う大域照明モデルを用いる。その代表にラジオシティ法があり、写実的な画像をレンダリングする際に用いられる。
また、光が物体に反射する時に用いられる関数がある。BDRFでは物体表面から反射する光を扱い、不透明物体をレンダリングするのに向いている。BSSDRFでは、人間の肌や大理石など、物体表面から入った光が、物体内部の深い部分で多重散乱した後に、表面から出て行く光も扱える。
レンダリングの際、物体の表面に画像(テクスチャ)を貼り付ける事で、物体の質感を表現する手法をテクスチャマッピングという。これに対して3次元的関数としてテクスチャを貼り付ける手法をソリッドテクスチャリングと言って、物体の断面を切断しても連続的な模様を再現できる。
また、貼り付けたモデルの凹凸を法線方向に押し出したように再現する手法をバンプマッピング、実際にジオメトリを変化させて凹凸を表現するディスプレイスメントマッピングがある。
また波や波による光を再現する際は、水面の光の屈折率をモデル化したフォトンを光源からばら撒き、フォトンマッピングによって作成されたフォトンマップに対して光源を追跡してコーティクスを再現する。
また、レンダリングにも様々な手法があり、イメージベースドモデリング/レンダリングでは、予めデータベースに登録した多数のイメージ(照明や物体の角度等)をモザイク状に組み合わせることによっね写実的なCG画像を早くレンダリングできる。その性質からビル群や森林のシーンをレンダリングする際に用いられる事が多い。ノンフォトリアリスティックレンダリングでは絵やイラストのような非写実的な画像をレンダリングする。手書きアニメーションと併用で使われる事が多い。
現実世界では、光源からカメラや眼に向かって光が入る事で物体を認識するが、視点に入ってくる光を視点の方から光源へと追跡して画像を認識する手法をレイトレーシング法という。
アニメーション
CGのアニメーションにおいて、人間のような多間接動物の動きを再現する際に、スケルトンモデルが使用される事が多い。スケルトンモデルとは多間接動物に擬似的に再現したもので、ボーンと呼ばれる骨格とジョイントと呼ばれる間接を持つ。このモデルを動かす際にはフォワードキネマティクスとインバースキネマティクスの手法が用いられる。フォワードキネマティクスでは、体の体感部分から末端部分に向かって連鎖的に、間接的に動かす手法で、野球のバットを振る動きなどの円運動に用いられる事が多い。一方でインバースキネマティクスでは、間接の末端部分の座標を先に決めて、その末端部分の座標を実現するための親となる間接の角度を追随して決める手法で、パンチの動作のような直線的な動作に用いられる事が多い。
その他のCG用語
パラメトリック曲面
時間や角度などの連続する値を持つ変数によって決まる曲線が存在する。曲線はこのパラメータ1つで表すが、曲面はパラメータ2つで表し、ポリゴンよりも滑らかな曲線を表面できる。
CSG表現
異なる2つの物体の和集合・積集合・差集合を演算することで、2つの物体から複雑な物体を作成する手法。
境界表現
3次元物体の頂点・エッジ・面の基本要素、接点や接線に直面して立体を表現する方法。
Boid
人工生命プログラムのことである。動物の群れのアニメーションを再現する際に用いられる。
動物の一つ一つをパーティクルとした時、物体や近くのパーティクルに近づき過ぎると離れるようにして、障害物に対しては方向転換をして衝突を避ける動き、近くのパーティクルと移動する方向・スピードを合わせようとする動き、群れの中心方向へ向かうように移動する動きを再現する。
ナビエ・トークス方程式
ナビエ・トークス方程式の粒子法により、水面が波打って飛沫が上がるような動きを再現できる。また、水の乱流は格子法によって水の入った空間を格子で分割して圧力や速度を求める。