アドプロ 2018.06.18

POV-Ray のウォーミングアップ

今回から,プログラミングの対象を 3D-CG とする. 3D-CG 記述言語 POV-Ray を利用し, 複雑なシーンを効率的に記述できるようになろう.


とりあえず使ってみる

モデリング(シーンファイルの編集)

モデリング(modeling)とは,CG の設計作業のことだ. POV-Ray の場合,人間が シーンファイル(拡張子:.pov)を エディタで編集することになる.

なお,シーンファイルをゼロから作るのは大変なので, 今回はとりあえず,シーンファイルのサンプル test.pov をダウンロードして使おう. (本日の作業用ディレクトリにダウンロードせよ.)

このシーンファイルの内容をエディタで確認してみよう:

$ gedit test.pov &

今回は,内容を理解できなくても良い.

レンダリング(画像の作成)

レンダリング(rendering)とは,CG の描画処理のことだ. POV-Ray の場合,povray コマンド によって, コンピュータがシーンファイルを画像ファイルへ自動的に変換してくれる:

$ povray  test.pov

うまく行けば,画像が(一瞬だけ)表示された後, 画像ファイル test.png ができているハズ.

$ ls
test.png    test.pov

結果確認(画像の表示)

画像を再確認するには, display コマンドを使えばよい:

$ display  test.png &
この display は, 画像処理ソフト集 ImageMagick の一部であって, POV-Ray 専用のものというわけではない.

またはレンダリングの際, コマンドにオプション +P を指定すれば, 結果表示を一時停止(pause)できる.

$ povray  +P  test.pov

場合に応じて,これら2通りの方法を使い分け, 作業を効率的に進めよう. 例えば:

もう少し具体的に?


povray コマンドの使い方

povray コマンドの一般形は,こんな感じ:

$ povray  オプション引数  シーンファイル名

次表のような,複数のオプション引数を自由に組み合わせ可能である.

povray コマンドの主要オプション
引数意味既定値
+P画像を表示したまま一時停止
+W整数画像の横方向のサイズを指定320
+H整数画像の縦方向のサイズを指定240
+A小数画像の微細度(品質)を指定1.0
演習室では POV-Ray の旧バージョン 3.6 を使っている. 現在の最新バージョン POV-Ray 3.7 では,各種の規定値が変更されており, 標準サイズも 800 × 600 となった.

ここで,画像サイズについては,通常は, 縦横比が 4:3 になるように指定する必要がある. また,微細度については,値が小さいほど高品質になる.

縦横比を変更したい場合,シーンファイル内で,その旨の指定が必要になる. が,初期段階では気にせず,最終仕上げ段階で変更すればよい.

なお,解像度が高い(サイズが大きく,微細度が小さい)ほど, レンダリングに時間がかかってしまう. この原則に注意して,作業を効率的に進めよう. 例えば:


シーンファイル作成の練習

今回は肩慣らしのためのお遊びです. 中学生向けの POV-Ray 体験コースを試してみよう.

この体験コースでは,F1 マシンの部品があらかじめ用意されているので, 作業はプラモデル感覚で,作品は簡単に出来上がってしまう. 今後は,より基本的な形状を元にして, 必要な部品を独自に作り出して行くことになる. もちろん題材は,F1 に限らず,自由だ.

ちなみに,POV-Ray では,レイトレーシング(ray-tracing)等の 高度なレンダリング手法が利用されており, モデリング次第では,極めて現実的 or 幻想的な画像を生成できる. また,特別研究などで説明図の作成に利用すれば, プレゼンの説得力が増すかもしれない. 次回から,さまざまな技を習得して行こう.


(c) 2018, yanagawa@kushiro-ct.ac.jp