POV-Ray で CG を作成するには,次の 2 つの手順を繰り返すことになります.
シーンファイルを自由自在に編集するためには, 三次元座標 <x, y, z> を理解しておく必要があります. POV-Ray では,次の図のような座標系を使います.
これは,左手系という三次元座標です. x 軸,y 軸,z 軸のお互いの位置関係に注意してください. 左手の親指と人さし指と中指を互いに直角にして, 左腕を前に突き出してみると:
部品の位置を調整するときなどに, これら x, y, z の値を指定することになります.
次の 2 つのファイルを ダウンロード (リンクを右クリック→リンク先を名前を付けて保存) して作業を開始しましょう.
まず,ダウンロードしたシーンファイル myF1.pov をレンダリングしてみよう.
エディタを使って, シーンファイル myF1.pov の内容を見てみましょう. いろいろな呪文が書かれていますが,とりあえず今, 注目してほしいのは,次の部分です.
...
// F1 マシン
merge {
// マシン本体
merge {
object { RoundBody }
object { FrontLeg }
object { RearLeg }
}
// ドライバー
merge {
object { Driver }
object { Helmet2 }
}
}
...
シーンファイルは,次のような命令文から成り立っています.
シーンファイルに命令を書き加えて,部品を追加してみましょう.
たとえば,次のように書き加えてみよう.
...
// F1 マシン
merge {
// マシン本体
merge {
...
object { RoundNose1 }
object { RoundSide2 }
object { FrontWing2 }
object { RearWing1 }
}
// ドライバー
merge {
...
}
}
...
部品の種類は他にもあります. パーツの一覧の中から自由に選びましょう. パーツ組み合わせ例も参考にしてください.
シーンファイルの書き変えが終わったら, ファイルを上書き保存しよう. それから,もう一度,レンダリングしてみよう.
部品をただ追加しただけでは,ちょっと不格好ですね. 取り付け位置を変えてバランスよくしてみましょう.
たとえば,ホイールベース(前後のタイヤの間隔)がせまいので, 前タイヤ(FrontLeg)を 前に 30 cm , 後タイヤ(RearLeg)を 後に 20 cm , ずらしてみよう. シーンファイルを次のように書き変えればよい.
...
// F1 マシン
merge {
// マシン本体
merge {
...
object { FrontLeg translate <0, 0, -0.30> }
object { RearLeg translate <0, 0, 0.20> }
...
}
...
ここで,新しい命令が出てきました.
なぜ,z 方向に移動しているのか?わからなければ, さっき 基礎知識 で説明された 三次元座標の図を見直しましょう.
それと,数値の単位については,メートルと思っていてください. 30 センチの場合,0.3 です. (今組立てている F1 マシンの全長は 4.5 m 位,全幅は 2.0 m 位です.)
では,再びレンダリング...
おっと,今度は,前タイヤがフロントウィングとぶつかりそうです. それじゃ,前タイヤを少し後へもどしたり, フロントウィングの位置も変えてみようか... ちょっと,部品の種類が気に入らないな...
...こんな感じで,部品の種類や位置を自由にカスタマイズして行こう.
各 object には,色を着けることができます. たとえば,ボディーだけを赤にするには...
...
object { RoundBody pigment { color Red } }
...
もちろん,他の部品やドライバーの服・ヘルメットの色も変えられます. センスよくカラーリングしよう.
色の名前については, カラーの一覧の中から自由に選べます. 使い方は...
なお,object 毎ではなく,merge したもの全体について, 一度に着色することもできます. たとえば,マシン本体を全体的に青にするには...
...
// マシン本体
merge {
object { ... }
object { ... }
...
pigment { color Blue }
}
...
これで,merge { } 内のすべての object の色が変わります. (ただし,個別に着色済みの object については変化しません.)
「部品への着色と全体への着色をうまく使い分ければ, 能率良く作業できるかもしれない.」
作成したオリジナル F1 マシンをサーキットに持ち込もう.
次のように地面と空を追加します.
...
// F1 マシン
merge {
// マシン本体
merge {
...
}
// ドライバー
merge {
...
}
}
object { Ground }
sky_sphere { Fine }
...
(空については.カメラアングルを変えないと見えません. あとで確認してみてください.)
おっと,車体が地面にメリ込んじゃってます. F1 マシンを上に持ち上げなきゃ... それと,ついでに,座標軸も消しちゃいましょう.
...
// F1 マシン
merge {
// マシン本体
...
// ドライバー
...
translate <0, 0.30, 0>
}
...
/*
//座標軸
object { ... } // x軸
object { ... } // y軸
object { ... } // z軸
*/
...
ちなみに,ここまでの状態で, F1 マシンは直線コースに沿って配置されています. コースに対して斜めに配置したい場合には, いま追加した translate の直前に, rotate を追加してみましょう.
これを使うと,コーナーリング中の雰囲気に. (実際は直線コースなんですが... あとでカメラアングルを変えて確認してみてください.)
カメラアングルや照明方向を調整して,“CG 作品”を仕上げましょう. シーンファイルの次の部分を変更することになる.
...
// 照明
light_source {
<100, 200, -100> // 照明の位置
color White*1.5
parallel point_at <0, 0, 0>
}
// カメラ
camera{
location <5.0, 6.0, -8.0> // カメラの位置
look_at <0.0, 0.0, 0.0> // 注目先の位置
angle 25 // 視野角
}
この作業については,試行錯誤でやってみよう.
たとえば,camera の location の z 座標を + 8.0 に, それと,angle を 15 に変更してみると...
また,クローズアップで撮影するには,2 つの方法があります.
では,時間の許すかぎり,自由に作業してください. 最後には,あなただけのオリジナル作品を完成させましょう.
今回の記念品として後日,あなたの作品をハガキに印刷して郵送します. カッコイイ作品を作ってください.
「納得できるまで,いろいろ試してみよう.」 (時間的制約もあるので,妥協も必要ですが...)
たとえば,複数台の F1 マシンを配置すれば,レースの雰囲気に...