Computer graphics 入門 VRMLを使用したCG 1.1 Computerの歴史 (1)自動計算システム ブール代数(1854年)+2進法 +スイッチ回路 ⇒ 1940年後半 (2)プログラム内臓式computer(現在のもの) 集合論(1895年、カントール)+ラッセルの パラドックス+ヒルベルトのプログラム+ゲー デルのアルゴリズム+チューリングの万能 チューリングマシーン(1936年) ⇒ 1950 年頃 2 1.2 CGの歴史 • 1960年:ボーイング社がコックピットの設計 に人型の図(ヒューマノイド)を作成 • 1961年:computer game, Spacewars • 1963年:CAD(Computer Assisted Design) • 1985年:Xerox 社がGUIの提唱 • 1990年:WWW提唱 • 1997年:VRML2.0 制定 3 2.1 CGのプロセス 1 モデリング:表示物体やその物体の移動・変 形を数学的に定義する。 2 レンダリング:定義された物体を抽象空間で 作成して、定義された移動・変形を行う。 3 投影:レンダリングで作成された像を2次元 のディスプレイに投影する。 4 陰線・陰面を消去する。 5 光線処理を行う(陰影をつける) 4 2.1 CGのプロセス(続き) 5 光線処理を行う(phone model による物質 光線をつける) 6 テクスチャーマッピング(模様をつける) 7 アニメーションや対話による操作をつける。 8 スプラインやベジエ曲線による複雑な曲線・ 曲面の作図 5 3 CGの座標系 • 2DCGの場合 横が第一座標、X軸 縦が第二座標、Y軸 • 3DCGの場合 横が第一座標軸、X軸 縦が第二座標軸、Y軸 前が第三座標軸、Z軸 • 数学では縦がZ軸なので注意 6 4.1 VRMLの基本 • 3DCGで必要な陰線・陰面処理と陰影 (シェーディング)を自動的に行う。 • 対話処理を自動的に行う。 • ネットワーク対応である。 • VRMLビューアプラグインが必要である(フ リーで手に入る) • 統合環境がない(エディターで作る)、デバッ グ機能はビューアが持っている。 7 4.2 VRMLのモデリング • 直方体(box)、球(sphere)、円柱(cylinder)、 円錐(cone)はパラメータを入れるだけで定義 できる。 • それ以外の複雑な立体図形はCGのモデリン グ理論を採用している。 例,多面体(polygon)を張り合わせるsurface model,引き抜き図形を作るスウィープモデ ル,3D地図にelevation grid,ワイヤーフレー ムモデル等 8 4.3 VRMLのプログラミング • プログラムの構造は object 指向型プログラミング (scene graphics)であって、積み木細工の要領で 作成する。 • 従って、全体が木構造になっていてわかり易い。 • 定義した立体の再利用やモジュール化はできるが、 外部からパラメータを操作できない。 • アニメーションや対話は ROUTE 制御という方法を 使うが、内部で計算できないために中間値データの 量が非常に大きくなる。 9 4.4 VRML詳細 • 色彩は光の3原色,赤(R),緑(G),青(B)の強 度をこの順で指定する。値は0~1の間 例:白 1 1 1,黒 0 0 0,赤 1 0 0, 黄 1 1 0,金色 0.8 0.7 0.3 • 角度は弧度法を使う 例:360°=2×π=6.28318 180°=π=3.14159 90°=π/2=1.5708 10 4.4 VRML詳細(続) • 円柱,円錐は縦方向(y 軸方向)が標準方向 • 基本図形は中心が座標原点に来るのが標準位置 • 図形定義の基本文 DEF name Transform{ rotation 1 0 0 0.0 # 回転軸 回転角度 translation 0 0 0 scale 1 1 1 children[ Shape{ geometry 図形の定義 appearance 光線の定義} ] } 11
© Copyright 2024 ExpyDoc