3次元コンピュータグラフィックス 制作技法

3次元コンピュータグラフィックス

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/02/16 03:27 UTC 版)

制作技法

テクスチャマッピング

テクスチャマッピング

3DCGのモデルに画像を貼り付けることをテクスチャマッピング: texture mapping)、その貼り付けられる画像をテクスチャという。テクスチャを貼ることにより、モデリングやシェーダーのみでは表現の困難な、モデル表面の細かな色彩情報や質感などを設定することができる。

テクスチャの貼り付け方としては、単純にカメラ方向からモデルにテクスチャを投影するだけの方法や、UV座標によって切り出されたテクスチャの2次元画像領域をモデル表面に分割投影する方法などがある。

反射の強度を設定する反射マッピング、小さな凹凸を擬似的に表現するバンプマッピング法線マッピング、透明度を設定する透明度マッピングなどがある。形状の表面に画像の情報を加えることによって、表面の模様や質感が表現されて、より現実的な画像になる。ディスプレースメントマッピングのように、画像情報をもとに実際の凹凸形状を動的に生成する手法もある。

特にコンピュータゲームにおいては、リアルタイムで3DCGキャラクターを描画する必要から、極力少ないポリゴンで作成されたモデル(ローポリゴンモデル)に、ディテールや陰影などを描き込んだテクスチャを貼り付ける手法が行われている。

バンプマッピング

バンプマッピング

モデルの表面の法線の方向を変化させることによって、擬似的に凹凸を表現する技術。グレースケール画像で元形状に対する高低を定義する。少ないポリゴンで細かな陰影をリアルに表現できる利点があるが、実際に表面に立体的な凹凸があるわけではないので、ズーム時や、面を横から見た場合などに違和感のある画像となる。

近年[いつ?]は法線の方向(3次元ベクトル)を直接定義する法線マッピング(ノーマルマッピング)も用いられるが、法線マップを手作業で作成するのは困難であるため、通常は高精細モデルのディティールを法線マップに変換して単純化モデルに適用する手法が採られている。

ディスプレースメントマッピング

3Dモデルの頂点を実際に表面に対して上下に移動させて凹凸を表現する技術。バンプマッピングに比べて、実際に立体的な凹凸となるため違和感のない画像が得られるが、表現する凹凸に応じてポリゴン数が増大する欠点がある。リアルタイム3DCGの分野ではDirect3D 10およびOpenGL 3.2でジオメトリシェーダーが標準化された後、Direct3D 11/OpenGL 4にてテッセレーションが標準化され、GPUによるディスプレースメントマッピングが可能となった。

ハイパーテクスチャ

バンプマッピングによる凹凸の表現はあくまで擬似的に陰影を表現し、またディスプレースメントマッピングによる凹凸は3Dモデルそのものの頂点を移動させて凹凸を表現するだけであるのに対して、3Dモデルに立体的な濃度関数を掛け合わせることにより、小さな凹凸はもとより、深い溝や貫通した穴のような大きな構造も表現することができる技術。

パーティクル

ビルボーディングやメタボールによりレンダリングされたパーティクル。

ポリゴンはあくまで多角形の面なので、モデルにはっきりとした表面が無かったり、モデルのが膨大であったり、動きが不規則な煙や炎などを表現するのには不向きである。また、毛髪や草木など、ポリゴンで表現しようとするとその量から大変な人的労力やリソースが必要になるものがある。パーティクル (particle) はこれらの問題を解決するための技術である。パーティクルはこれらを微小な粒子の集合として表現し、確率モデルでその動き・形状を処理する。高度なモデリングまたはレンダリングソフトウェアで扱うことができる。これをレンダリングする際にはビルボーディングやメタボールなどの技術が使用される。

サブディビジョンサーフェス(細分割曲面)

サブディビジョンサーフェス(: subdivision surface)とは、大まかにモデリングされたポリゴンメッシュをメモリ上で細分化して、滑らかで継ぎ目の無い形状にする技術。少ないポリゴン数で形状を滑らかに表現できるため、編集や変形も容易になる。ただし、工業用CADなど形状に高い精度が要求されるときには利用できない。

ブーリアン

複数のオブジェクトどうしを集合演算する技術。他の形状と結合する(和)、一方の形状から他方の形状を削り取る(差)、重なっている部分のみを形状として抜き出す(積)ことなどができる。

メタボール

メタボール

複数の3次元座標上の点を中心として濃度分布を設定し、濃度の閾値を形状の表面とする技術。球状の形状が引き付けあうようにみえる融合と、反発しあうように見える反転融合がある。正確な形状を作ることは難しいが、有機的な形状を少ない制御点で作るのに向いている。3DCG特有の概念ではなく、2Dの画像表現にも使われることもある。当初はその呼び名の通り球体を基本としていたが、その後改良が進められ、球体以外の形状も利用できるようになり、有機的な形状をモデリングする技術として活用されている。

モデリングの他に、流れる液体の表現等にも使われる。レンダリングに必要な計算量は多くともメモリの使用量が少ないのが利点だったが、現在[いつ?]ではそれらのリソースが充実している上、流体力学の計算法も進歩しているため、映像制作の現場では、見た目のチープなメタボールはほぼ使われることのない技術になっている。

インバースキネマティクス(逆運動学、IK)

インバースキネマティクス(: inverse kinematics)は3次元コンピュータグラフィックスの専門用語ではない。もともと力学の一分野であり、ロボティクス等のほうが「本家」である。

人間など多くの関節を持つ動物において、関節の末端部分の位置は常にその親となる部分の位置と角度に依存している。そのため、通常では関節の末端部分の位置を求める場合においてモデルの中心から末端にかけて順番に関節の角度計算をする、という向きが「順方向」である。しかし、その方向で計算したのでは、例えば「机の上を掌でなでるような動き」を実現するのは面倒なものとなる。なぜなら、関節の末端部分の位置の変化を求めるためには複雑な計算をモデルの中心から全て順方向に再計算しなおさなければならないため非常に非効率的だからである。この解決のため、末端部分の位置を先に決めてその関節の末端位置を実現するための親となる関節の角度を、一種の「逆問題」を解くようにして求めることが考えられる。

以上の説明からもわかるように、物理的な運動学に関して一般に考えることができる逆問題的な考え方のひとつである。

股-ひざ-足のような形状を想定してみると、足の裏が自転車のペダルにくっついたままペダルが回転運動をするアニメーションを作る場合に、ペダルの回転運動に合うように股・そしてひざや足の角度の変更を行なっていくのではなく、足部分の移動に追随する形で、逆に足-ひざ-股の順に各関節の動きを順次割りだして決定する方が、見た目も自然なアニメーションが作成できる。

ライティング(照光)

左上から順に点光源、スポットライト、平行光源、環境光、天空光、IBL。

3次元空間上に光源を設定することをライティング: lighting)と呼ぶ。光源によってモデルは可視物となる。光源には次のような種類がある。

  • 点光源:電球のように、一点からを全方向に放射する光源。光源から離れるにつれて、光は弱くなる。
  • スポットライト:点光源の変形で、角度を限定して光を放射する光源。
  • 平行光源:太陽のように、無限遠からの光をシミュレートする光源。太陽は厳密には無限遠にあるわけではないが、地球からはほとんど平行光源のように見える。点光源のように距離によって光の強さが変化することはなく、一定である。
  • 環境光:全ての物体を均一に照らす光源。間接光を擬似的に表現する。処理が高速だが、影が一様な輝度になってしまうなど不自然ではある。
  • 天空光:晴天の空のように、仮想の天球全体から光を放射する光源。環境光と似ているが、ラジオシティと組み合わせることで自然な間接光が表現できる。
  • IBL (Image-Based Lighting) :シーン全体を2次元の画像で覆い、その画像を光源として利用する手法。同じ画像を同時に背景として用いることにより、オブジェクトが周囲と非常によく「馴染んだ」、フォトリアルな画像を作り出すことができる。なお、ここではHDRI画像を用いるのが一般的である。

テッセレーションとポリゴンメッシュ

3DCGソフトウェアによっては、球や円柱などの単純なオブジェクト(プリミティブ)を、ポリゴンではなく中心点や半径、高さといった数値で扱う場合がある。これらの細部を編集したりレンダリングする場合は、ポリゴンメッシュに変換する必要がある。これをtessellationと呼ぶ(tessellateはモザイク模様にするという意味)。ただし、オブジェクトが本来持っていた形状情報である球体、円錐などのような抽象的な表現は失われてしまう。

反射とシェーディングモデル

現在[いつ?]の3DCGにおいて、速度面などの理由により単純化された照明モデル・反射モデルを利用する場合、多くはPhongの反射モデル (Phong reflection model) を採用している[注釈 1]。Phong反射モデルは経験則であり、ローカルイルミネーション(局所照明)の代表例である。より写実的なシーンを描画するためには、後述するラジオシティなどのグローバルイルミネーション(大域照明)をサポートする、光学的・物理学的に正しい照明モデル・反射モデルが使われるが、現実世界をシミュレートするには非常に複雑かつ膨大な計算を伴うため、レンダリングに時間がかかるようになる。レンダリング方程式英語版エネルギー保存則をもとに光の伝播を記述するものであり、物理ベースのレンダリングの基本となる理論である。

反射モデルは物体の性質にも左右される。コンピュータグラフィックスにおいて、物体の性質は材質(マテリアル)として定義・抽象化されるが、プラスチックや金属、皮膚や毛髪の質感をコンピュータグラフィックスで正確に再現するためには、それぞれの材質に応じた適切な反射モデルを使う必要がある。物体の色は光のRGB各成分の反射・吸収係数の違いによって生まれ、また鏡面ハイライトの色や形状は面の粗さや光源の特性にも左右される。金属光沢や回折模様を再現する場合は、物質の物理的・化学的特性や表面性状を考慮する必要がある。

また光の屈折現象をコンピュータグラフィックスで再現する場合、物質の特性として屈折率が重要な要素となる。多くの3DCGソフトウェアでは、屈折率 (index of refraction) を略してIORと表記する。

シェーディングとは、物体の陰影を計算することである。広義では反射モデルによる反射光の強度計算を含むが、狭義では後述の陰影補間技法を指す。

陰影補間

ポリゴンモデルから2次元画像を生成する過程での陰影の補間法には次のような種類がある。

補間法 概要 画像例
フラットシェーディング
: flat shading
ポリゴンの法線ベクトルと光源との角度から各ポリゴンの色を算出する。一つのポリゴンは一色に塗りつぶされる。単純なアルゴリズムなので計算が高速であるが、ポリゴンの継ぎ目ごとに不連続的に色が変化するため、滑らかには見えない。コンスタントシェーディング (constant shading) とも呼ぶ。
グーローシェーディング
: Gouraud shading
オブジェクトの各頂点の法線ベクトルを求め、頂点間は一次補間してピクセルの色を算出する。ピクセル間の継ぎ目は目立たなくなる。考案者の名前アンリ・グーロー英語版フランス語版に由来する。
フォンシェーディング
: Phong shading
オブジェクトの各頂点の法線の一次補間から、各ピクセルにおける法線を求めて、それを元に最終的なピクセルの輝度を算出する。グーローシェーディングにおける光沢の不自然さを改善する。考案者の名前ブイ・ツォン・フォン英語版に由来する。

Zソート法

隠面消去方法のひとつ。 ポリゴンの座標(大抵は中心点)を基準に、画面の奥(視線からもっとも遠いポリゴン)から、全てのポリゴンを順番に描画する。 後述のZバッファ法のような特殊な処理をせず、基本的に多角形を描画すればよいだけなので、実装が簡単であり、消費メモリが少なく非常に処理が高速にできる利点がある。Zバッファ法が普及するまでは古くは3DCG全般で利用され、また、最近[いつ?]まで家庭用ゲーム機におけるリアルタイム3DCGでは一般的に利用されていた。しかし、ポリゴン数が増えた場合は、ポリゴンをソートするコストがかかる、またフィルレートが膨大になるため、Zバッファ法と比較して速度的なメリットがなくなる。

ポリゴンが交差した場合に正しく表示することができないという欠点があるが、この解決策として、ポリゴンが互いに交差しないように静的、あるいは動的に細分化する方法がとられることがある。

Zバッファ法と異なり、半透明ポリゴンの描画に関しては、ポリゴンが交差する場合を除いて、概ね正しく扱うことができる。

Zバッファ法

隠面消去方法のひとつ。 多数のポリゴンが重なった場合、奥のポリゴンが手前に描かれてしまうような不都合が生じることがある。 これを防ぐために、各ポリゴンを描画する際、各画素について視点からの距離を全て記録し、現在記録されている深度よりも近い画素だけを描画する。 Zソート法と異なり、通常は、視点にもっとも近いポリゴンからレンダリングする(Zバッファで判定することで、奥に隠れたポリゴンのレンダリングをスキップできるため)。

Zバッファとは、深度を記憶するメモリ領域のことであり、Zバッファ法はアルゴリズムが簡単なためハードウェア化しやすい利点があるが、Zバッファ用のメモリの分だけ、Zソート法よりもメモリは多く消費する。単純に、ピクセル単位で奥行きを判定して、ポリゴンのピクセルを塗るか塗らないかを判定しているだけなので、半透明なポリゴンは、Zバッファ法だけでは正しく処理できない(この場合、一度Zバッファ法で不透明なポリゴンだけ描画し、さらにZソート法で半透明なポリゴンを重ねて描く)。また、互いに接近した平行、あるいは低い角度で交差するポリゴンにおいて、Zバッファに記録される深度の精度によっては、隠面消去が正しく行われない、Zファイティング(Z-fighting)と呼ばれる現象が起きる。

ゲームやCADソフトウェアのプレビュー表示など、リアルタイムでの描画によく利用される。

スキャンライン

スキャンライン(: scanline rendering)とは、スクリーンを横一行ごとに分割して、その一行ごとに深度を計算してレンダリングする手法のことである。透過を表現したり、シェーディングと併用することで陰影も表現できる。スキャンラインとは走査線を意味する。比較的高速だが、得られる画像の品質は基本的にレイトレーシングよりも劣る。

レイトレーシング(光線追跡法)

レイトレーシングによるサンプル画像。

レイトレーシング: ray tracing)は、視点から光源までの光を追跡することでレンダリングする手法。視点から描画する各画素の方向へ直線を伸ばし、物体と交錯する可否を数学的に判定する。照度は光源との方向ベクトルで計算する。反射と屈折は反射率および屈折率をもとに再帰的に探索を繰り返す。物体との交錯がなくなれば計算は終了する。スキャンラインでは得られない反射や屈折などの表現が可能になる。フォトリアリスティックな画像が得られる反面、大変なレンダリング時間が掛かる。そのため屈折の計算処理については、簡略化あるいは制限を設けるのが一般的である。リアルタイム3DCGの分野では、GPUの発展と共に、レイトレーシングのリアルタイム化が試みられており、Adobe After Effects CCではNVIDIA OptiX英語版が採用された。

ラジオシティ

ラジオシティによるサンプル画像。床や壁に当たった光が拡散し、軟らかな陰影を表現している。

ラジオシティ: radiosity)は、各ポリゴンに光のエネルギー量を持たせて形状の相互反射を計算することで、間接光(やわらかい光の回り込み)などを表現する技術。大域照明(グローバルイルミネーション)の代表例である。計算に膨大な時間が必要になるが、完全拡散面で構成されるシーンでは、一旦物体相互間の光の反射を計算し終えれば、物体や光源が移動しない限り、その計算結果を保存して別のアングルからのレンダリングへ再利用することができる。照明工学の分野で発達した技術を3DCGのレンダリングに応用した。

フォトンマッピング

フォトンマッピング: photon mapping)は、光をモデル化したフォトンを光源からばらまいてフォトンマップを作成し、次に作成されたフォトンマップに対し、光線追跡法を適用することでレンダリングする手法。計算量を抑えつつ、物体や媒質の質感や透明感を表現できる。ラジオシティと同様、計算結果の再利用が可能。

パストレーシング

パストレーシングによるサンプル画像。

通常のレイトレーシングと同様にカメラから視線を飛ばし、オブジェクトと交わった点を始点としてさらに大量に2次視線を飛ばす。ここで得られた色や明るさを平均してその点の色とする。この手法をパストレーシング(: path tracing)という。物体表面での光の乱反射を再現できるが、明暗差が大きいシーンではノイズが出やすい。


注釈

  1. ^ Phongシェーディング (Phong shading) とはまた違う技術である。

出典

  1. ^ コンピュータグラフィックス | 3. 3次元変換と投影, 佐藤証, 電気通信大学
  2. ^ 日本にフルCGアニメは根付くのか?”. CGWORLD.jp/Enhanced-Endorphin. ボーンデジタル/東映アニメーション (2012-2013). 2019年11月13日閲覧。






3次元コンピュータグラフィックスと同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「3次元コンピュータグラフィックス」の関連用語

3次元コンピュータグラフィックスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



3次元コンピュータグラフィックスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの3次元コンピュータグラフィックス (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS