オープンソースの3D CAD「FreeCAD」をご存じだろうか。無償でありながら、3Dモデリング、メッシュデザイン、製図(ドラフト)、有限要素法解析(FEM)、レイトレーシング、ロボティクス機能など、標準機能がとにかく充実している。本連載では「FreeCAD 0.18」を用いて各機能の実際の操作や使用感を紹介していく。連載第7回では、レンダリング関連のワークベンチである「レイトレーシング」の使用感をレポートしたい。
3D CADで設計したモデルに色や質感といったリアルな表現を加えるとしたら、一昔前であれば、色設定に加え、陰影や光の設定が行える「シェーディング」を施す程度だった。だが、現在多くの3D CADの標準機能、あるいはアドオン機能によって「レンダリング」が行えるようになり、フォトリアリスティックな表現が可能となった。
本連載の主役である「FreeCAD」はどうだろうか。FreeCADに備わっているレンダリング関連のワークベンチは、「レンダー(Render)」および「レイトレーシング(Ray Tracing)」である。今回はこれらを試してみたい。
“レイトレーシング”とは、レンダリングの一手法のことで、現実の物理法則に基づいて、光線の伝播(でんぱ)をシミュレーションして表現する技術。モデルに設定されたマテリアルの条件を基に、光の反射や透過を踏まえた色彩を表現する。要するに、鏡面や透明な物体を、それらしく見せることができるといったものだ。
色付けや透過度の設定など、簡単なシェーディング程度であれば、レンダリング関連のワークベンチを用いなくとも、「Part Design」などで行える(図1)。アルミや真ちゅう、クロムといった、機械設計に使えそうなシェーディング用のマテリアルも少し備わっている。ただし、Body単位の設定のみで、フィーチャーや面単位では行えない。この辺りは今後の改善にも期待したいところだ。
FreeCADのWikiによれば、FreeCADの「レイトレーシング」ワークベンチは、“原則的に廃止(essentially obsolete)”とあり、開発は「レンダー」ワークベンチのプロジェクトに引き継がれているようだ。現在、「レンダー」ワークベンチは“開発中のフェーズ”にあるという。そのため、実際に試すにはGitHubから開発中のプログラムなどを入手する必要があり、検証を実施するまでの準備に時間を要する可能性が高い。
ということで、今回は「レンダー」ワークベンチの利用は後回しにして、“原則的に廃止”とあるものの、一応現在も使用できる「レイトレーシング」ワークベンチの使用感をレポートしたい。
FreeCADの「レイトレーシング」ワークベンチの利用には、オープンソースプログラムの「POV-Ray(Persistence of Vision Raytracer)」もしくは「LuxRender」(現在は「LuxCoreRender」)のいずれかが必要となる。ちなみに「レンダー」ワークベンチについても、さまざまな外部プログラムを使う前提になっている。
まずは、作業PCにPOV-Rayか、LuxCoreRenderをインストールする。それぞれの手順などは、以下を参考にしてほしい。
オープンソースレンダラーのPOV-Rayは、1980年代に、後にNVIDIAのチーフサイエンティスト兼アーキテクチャ担当副社長(現在は退任して独立)となったDavid Kirk Buck氏が開発したレンダリングプログラムを起源とする。数学的モデリングに強く、C言語のようなプログラムとマクロを用いてシミュレーションも行える。オープンソースの3D CGソフトウェア「Blender」のアドオンとして付属し、連携して使用できる。
POV-Rayは、公式Webサイトにある「Download Windows Installer」というリンクから、「povwin-3.7-agpl3-setup.exe」をダウンロードする(図2)。
ダウンロードしたインストーラを起動し、ウィザードに従って進めていけば簡単にインストールできる(図3)。
インストールが完了したら、少々面倒だが、POV-Rayの実行ファイル(.exe)のパスをどこかにメモしておく。
LuxRenderは、物理ベースレンダリングの新手法に関する教育本で紹介された「PBRT(Physically Based Rendering)」の理論やプログラム開発手法が基になっている。その著者は、Pixar Animation Studiosのレンダリングチームでの経験がある、Googleのソフトウェア開発者Matt Pharr氏、EPFL(スイス連邦工科大学ローザンヌ校)の助教授であるWenzel Jakob氏、Google ChromeのグラフィックスチームとNVIDIAのOptiX レイトレーシングエンジンでの開発経験を有する、ゲーム会社FanDuelの開発者Greg Humphreys氏といった、そうそうたるメンバーだ。ちなみに、LuxRenderからソースコードを刷新し、LuxCoreRenderとしてリニューアルされた現在は、エクスポートできるデータがBlender向けに限定されている。
LuxCoreRenderの公式Webサイトに行くと、Blenderのアドイン「BlendLuxCore」、スタンドアロン版「Standalone」、SDK版「LuxCore API SDK」の3種類が公開されている。ここでは、Windows版のStandaloneをダウンロードする(図4)。
インストーラーは特になく、ダウンロードしたZIPファイルを任意の場所で解凍するだけだ。こちらも実行ファイル(.exe)のパスをどこかにメモしておく。
Copyright © ITmedia, Inc. All Rights Reserved.