[[cg:start|CG用語集トップ]] > [[cg:fundamentals:start|第1章 基礎・座標・色・ディジタル画像]] ====== 投影変換 ====== ===== 概要 ===== 投影変換は、[[cg:fundamentals:camera_coordinate_system|カメラ座標系]]で表された3次元データを、投影面上に表示できる形へ変換する処理である。[[cg:fundamentals:perspective_projection|透視投影]]や[[cg:fundamentals:parallel_projection|平行投影]]の考え方と関係し、3D空間の物体を2D画面に写す段階を担当する。[[cg:fundamentals:viewing_pipeline|ビューイングパイプライン]]では、[[cg:fundamentals:viewing_transformation|視野変換]]の後、[[cg:fundamentals:viewport_transformation|ビューポート変換]]の前に位置づく。 {{:cg:figures:chapter01:fig_1_36_viewing_pipeline_from_model_to_display.png?600|モデルから表示までの変換(ビューイングパイプライン)}} ===== 詳しい説明 ===== 3次元CGでは、物体をそのまま画面に表示することはできない。カメラから見た位置に変換された頂点を、投影面上の点として計算する必要がある。この変換が投影変換である。透視投影では遠くのものほど小さく見えるように変換し、平行投影では距離による大きさの変化を起こさない。投影変換で得られるのは、画面上に表示するための位置情報であり、色や明るさを決める処理とは別である。 ===== CG制作との関係 ===== CG制作では、カメラから見た構図や遠近感を決める基礎になる。遠近感を強めたい場合は透視投影、形や寸法を確認したい場合は平行投影の考え方が重要になる。 ===== ゲーム開発との関係 ===== ゲーム開発では、カメラ行列やプロジェクション行列として実装に現れる。投影変換の設定が不適切だと、物体が歪んで見えたり、画角や奥行きの印象が意図とずれたりする。 ===== 制作・実装での例 ===== DirectXやOpenGLでは、投影変換はプロジェクション行列として扱われることが多い。近クリップ面・遠クリップ面・画角などの設定は、最終的な見え方に直接影響する。 ===== 検定対策ポイント ===== 投影変換は、3Dから2D表示へ移るための変換である。[[cg:fundamentals:viewing_transformation|視野変換]]はワールド座標系からカメラ座標系への変換、[[cg:fundamentals:viewport_transformation|ビューポート変換]]は投影後の図を画面上の表示領域へ割り当てる変換であり、役割を分けて覚える。 ===== 関連用語 ===== * [[cg:fundamentals:camera_coordinate_system|カメラ座標系]] * [[cg:fundamentals:viewing_transformation|視野変換]] * [[cg:fundamentals:perspective_projection|透視投影]] * [[cg:fundamentals:parallel_projection|平行投影]] * [[cg:fundamentals:viewport_transformation|ビューポート変換]] * [[cg:fundamentals:viewing_pipeline|ビューイングパイプライン]] ===== タグ ===== * CGエンジニア検定 * 第1章 ---- [[cg:fundamentals:start|← 第1章 基礎・座標・色・ディジタル画像 の目次に戻る]] [[cg:start|← CG用語集トップに戻る]]