530 likes | 767 Views
Computer Graphics. 第 4 回 投影・ビューイングパイプライン モデリング. 芝浦工業大学情報工学科 青木 義満. 今日の講義内容. 座標変換 ( 教科書2章, 2-2 , 2-3, 2-4) カメラ,光源の位置,方向,モデル形状の記述,変換などに共通して必要な座標変換について学ぶ 3次元座標変換 投影 ビューイングパイプライン. 教科書との対応. 「コンピュータグラフィックス」 , CG -ARTS 協会 Chapter 2-2 3 次元座標変換 pp.26-31 Chapter 2-3 投影 pp.32-40
E N D
Computer Graphics 第4回 投影・ビューイングパイプライン モデリング 芝浦工業大学情報工学科 青木 義満
今日の講義内容 • 座標変換(教科書2章,2-2,2-3, 2-4) カメラ,光源の位置,方向,モデル形状の記述,変換などに共通して必要な座標変換について学ぶ • 3次元座標変換 • 投影 • ビューイングパイプライン Computer Graphics
教科書との対応 • 「コンピュータグラフィックス」 , CG -ARTS 協会 • Chapter 2-2 3次元座標変換 pp.26-31 • Chapter 2-3 投影pp.32-40 • Chapter 2-4ビューイングパイプライン pp.41-43 Computer Graphics
任意の軸のまわりの回転 • 直線が原点を通るよう平行移動 • 直線が軸(例えばx 軸)と重なるよう回転 • x軸まわりにθだけ回転 • もとにもどす(回転、平行移動) Computer Graphics
3次元空間中にある一つの立方体 様々な物体の見え方 (投影変換) いくつかの要因により,様々な見え方 Computer Graphics
視点 物体の見え方は何で決まる? • 視点の位置 • 視線の方向 • 物体と視点との距離 • 照明位置・方向,種類 • 物体表面の材質 Computer Graphics
投影の原理 • 投影とは? • 3次元図形をディスプレイモニタの画面や紙等の二次元平面上に表示するために,3次元図形を2次元図形に変換する処理のこと. • 透視投影と平行投影 Computer Graphics
Pw (Xw, Yw, Zw) Pi ( xi, yi ) x y f C (視点) 透視投影(Perspective projection) 相似関係より, xi : f = Xw : Zw yi : f = Yw : Zw X Z Y Pw (Xw, Yw, Zw) : 視点を原点とした際の点Pの3次元座標 Pi ( xi, yi ): Pの投影面(画像面)上での座標値 Computer Graphics
x 平面2(奥) 平面2(奥) y 平面1(手前) 消失点 平面1(手前) Zw, つまり,視点から物体までの距離(奥行き方向)が大きいほど・・・ →xi , yi の値は小さくなる. f, Xw, Yw一定のもと, 視点から物体までの距離( Zw)が∞になると... Computer Graphics
透視投影の特徴 • 遠くのもの(Z値が大きいもの)が近くのもの(z値が小さいもの)より小さく描かれる.→ 遠近感 • 人間のものの見え方と同様 • 写実的な画像表現 • 映画やゲームなどの表現に多用 • 平行な線が歪んで描画 • ものの形を正確に把握するには不向き Computer Graphics
とおくと, ならば (視点から物体までの距離が, 画像面から物体までの距離に比べて非常に大きい) 平行投影(Parallel projection) Computer Graphics
平行投影の特徴 • 遠くのものと近くのものが同じ大きさで描画 • 写実的画像作成,映画,ゲームには使われない. • 平行な線が投影面上でも平行,歪みのない投影図 • ものの形を正確に把握するのに有効 • CADの設計図やグラフの描画等に向く Computer Graphics
投影(3次元→3次元) • 実際には,3次元→2次元でなく,3次元→3次元の投影変換 • 奥行き方向の計算も含まれる • クリッピング • 隠面消去,隠線消去 に必要! • 3D→3Dの計算方法は,p.35-p.38に Computer Graphics
ビューボリュームと投影 • 透視投影における画角の効果 Computer Graphics
ビューボリュームとクリッピング • キーワード • ビューボリューム • クリッピング • 前方クリッピング面 • 後方クリッピング面 • ウインドウ(投影面) Computer Graphics
ビューイングパイプライン(p.41) • ビューイングパイプライン • 図形が定義され,各種の変換を受けて最終的に表示されるまでの一連の過程 • 複数の座標系の設定,及び幾何学的変換処理が必要 Computer Graphics
モデリング変換→視野変換 • モデリング変換 • ワールド座標系: • モデリング座標系: • モデリング座標系→ワールド座標系 • 視野変換 • カメラ座標系: • ワールド座標系→カメラ座標系 Computer Graphics
投影変換→ビューポート変換 • 投影変換 • カメラ座標系→投影座標系 • 透視投影と平行投影 • ビューポート変換 • デバイス座標系 • ビューポート • ビューポート変換 Computer Graphics
全体の変換,及び例 • 全体の変換 • モデリング変換と視野変換の例 • モデリング座標系→ワールド座標系 • ワールド座標系→カメラ座標系 Computer Graphics
モデリング • モデリングとは? • 描きたい物体の形,位置,大きさなどをコンピュータ内部で表現する作業のこと • 出来上がったデータ → モデル • 目的に応じた,適切なモデリングのために・・・ • 多面体の表現方法 • 曲線,局面の表現法 • 自然物,複雑な形状のモデリング方法 Computer Graphics
様々な形状モデリングの例 Computer Graphics
形状モデル(多面体の形状表現手法 1) • ワイヤーフレームモデル • 特徴点座標,稜線だけを記録することによって立体を表現したモデル 特徴 Computer Graphics
ワイヤーフレームモデルのデータ構造 • 頂点リストと稜線リスト Computer Graphics
形状モデル(多面体の形状表現手法 2) • サーフェスモデル • ワイヤーフレーム+面情報 特徴 Computer Graphics
サーフェスモデルのデータ構造 Computer Graphics
サーフェスモデルの実例 Computer Graphics
形状モデル(多面体の形状表現手法 3) • ソリッドモデル • サーフェスモデル+物体の内外を区別する情報 特徴 Computer Graphics
シェーディングとレイトレーシング Computer Graphics
形状の表現法の進化 Computer Graphics
ソリッドモデルの形状表現(p.50-) • 建築物や乗り物 → 人工的な物体 比較的、単純な形状の組み合わせ • 主に人工物を設計するCADの分野で使用されている表現 • 境界表現 • CSG表現 • スイープ表現 • 局所変形 Computer Graphics
境界表現 • 頂点・稜線・面のデータ+接続関係をグラフで示すことで立体を表現 3D-CADにおける基本表現! Computer Graphics
境界表現(B-reps)のデータ構造 Computer Graphics
CSG表現 • 立体をプリミティブ(基本立体)と,その組み合わせ表現 • 基本立体の種類,大きさ,位置情報,結合状態をツリー構造であらわす • 基本立体: 立方体,円柱,多角柱,錐体,球 • 集合演算: 和集合,積集合,差集合,補集合 Computer Graphics
CSGTree CSG Tree 引き算 Computer Graphics
CSG表現 の例 Computer Graphics
スイープ表現 • 平面図形を一定方向に移動したときの軌跡で立体を表現 • 局所変形との組み合わせで,様々な形状を表現可能 • 平行移動スイープ,回転移動スイープ Computer Graphics
他の表現方法 • ボリューム表現 • 八分木表現 • フラクタル図形 • メタボール • パーティクル Computer Graphics
ボリューム表現 • 立体を3次元の格子点上の小立方体の集合で表す • 小立体→ボクセル(2次元→ピクセル) • 各ボクセルの中央(あるいは角)に属性値を持つ(例: 色情報) • 長所 • データ構造が単純,集合演算が容易 • 人工的な物体より,自然界の不規則な形状表現に適する • 短所 • データ量が膨大,操作に手間がかかる ボクセル+透過率 → ボリュームデータ → ボリュームレンダリング Computer Graphics
ボリュームレンダリングの実例(1) Computer Graphics
ボリュームレンダリングの実例(2) 透過 Computer Graphics
八分木表現 • ボクセルを階層的に,木構造で生成 • 物体が存在するボクセルのみ細かく分割 • 空間量(メモリ)も少なくて済み,高速 3次元画像の八分木表現 Computer Graphics
フラクタル図形 • 全体形状がその形状の各部分にも現れるような形状. • 自己相似形状, 再帰構造 • 例)コッホ曲線,ジュリア集合,マンデブロ集合など Computer Graphics
中点変位法 • 中点に起伏量Zを加える操作を繰り返す • 起伏量Zは,正規分布に従う乱数によって決定 • 線分の長さが短くなるほど,標準偏差を小さくしていく Xm=(X1+X2)/2 、Ym=(Y1+Y2)/2 XX = Xm + Z、YY = Ym + Z Computer Graphics
中点変位法による画像生成 Computer Graphics
メタボール • 立体を球の集まりで表現 • 距離とともに減衰する影響力(関数)を定義し, その重ね合わせで形状を表現 → 雲,人体の表現 Computer Graphics
メタボールによる形状表現の例 Computer Graphics
パーティクル (p.91) • 形状が不定で,明確な表面が存在しない物体 • 樹木,炎,滝,雲 などの自然物 • 一定の規則に従って生成した多数の粒子で表現 • 粒子(パーティクル)の生成,移動,消滅,衝突 の物理的規則が必要 パーティクルで表現した 炎と煙 Computer Graphics
モデリング手法の選択 • モデリングする物体の特徴 • シーン中での物体の重要度 • 画像作成の目的 • 要求される精度とデータ量,計算量との関係 • 静止画像と動画像 • レンダリング速度 • LOD (Level Of Detail) Computer Graphics