ちょっと前に、学生から「スマホゲームであるようなライトの影響を受けないテクスチャのみのレンダリングできないんすか?」っと質問されたので、その方法を紹介。
昔、趣味でつくった女の子。
2017年9月19日火曜日
2017年9月17日日曜日
レンダリング(レンダー出力_深度/Depth)
レンダー出力のバリエーション「深度/Depth」紹介します。
こいつを利用することで、カメラからメッシュまでの距離をグレースケールで出力することができます。出力された画像はPhotoShopやAfterEfecutsなどでマスクとして利用することで、疑似的に被写体震度表現や空気遠近法やフォグ効果を表現することができます。
では、メッシュを用意します。
奥ゆきがわかりやすい感じでオブジェクトを配置しました。
こいつを利用することで、カメラからメッシュまでの距離をグレースケールで出力することができます。出力された画像はPhotoShopやAfterEfecutsなどでマスクとして利用することで、疑似的に被写体震度表現や空気遠近法やフォグ効果を表現することができます。
では、メッシュを用意します。
奥ゆきがわかりやすい感じでオブジェクトを配置しました。
2017年9月6日水曜日
レンダリング(レンダー出力_アンビエントオクルージョン/Ambient Occlusion)
前回はレンダリングについて、デフォルトの設定を紹介しました。
今回は、レンダー出力のバリエーションの一つである「アンビエントオクルージョン(Ambient Occlusion)」について紹介していきます。
アンビエントオクルージョンって何?
通常のレンダリングのように配置したライトの位置から影を描画するのではなく、
配置されたメッシュの位置関係から奥まった部分に影を描画するといったレンダー出力となります。例によって文章だけじゃ解りづらいと思いますので、実際にやってみます。
適当なモデルを用意します。
昔趣味でモデリングしたヤツ。
今回は、レンダー出力のバリエーションの一つである「アンビエントオクルージョン(Ambient Occlusion)」について紹介していきます。
アンビエントオクルージョンって何?
通常のレンダリングのように配置したライトの位置から影を描画するのではなく、
配置されたメッシュの位置関係から奥まった部分に影を描画するといったレンダー出力となります。例によって文章だけじゃ解りづらいと思いますので、実際にやってみます。
適当なモデルを用意します。
昔趣味でモデリングしたヤツ。
2017年8月1日火曜日
レンダリング(レンダー出力_デフォルト)
2017年7月20日木曜日
レンダリング(基本)
例によって当たり前すぎてずっと触れてませんでしたが、
学生向けの確認も含めて「レンダリング」について紹介していきます。
基本的なところですが、「レンダリング」を行うことで、モデリングしたメッシュやマテリアル、ライティング、カメラの設定をもとにして、3D空間を2次元の画像データとして書き出すことができます。
静止画作品、動画作品を制作する際は基本的にレンダリングを行って画像データとして出力する必要があるわけです。
まずは、適当なメッシュを用意して、適当にマテリアルの設定を行いました。
学生向けの確認も含めて「レンダリング」について紹介していきます。
基本的なところですが、「レンダリング」を行うことで、モデリングしたメッシュやマテリアル、ライティング、カメラの設定をもとにして、3D空間を2次元の画像データとして書き出すことができます。
静止画作品、動画作品を制作する際は基本的にレンダリングを行って画像データとして出力する必要があるわけです。
まずは、適当なメッシュを用意して、適当にマテリアルの設定を行いました。
2017年5月2日火曜日
マテリアルに画像を当てた際の「プロジェクションのタイプ」について
前回はマテリアルに画像を割り当てる方法を紹介しました。
今回は「プロジェクションのタイプ」について紹介していきます。
この項目で画像を張り付ける時のルールを決めることができます。
前回の最後のシーンから「シェーダツリー」の中の画像を選択している状態で、
「プロパティ」の「テクスチャロケータ」を選択します。
「プロジェクションのタイプ」をクリックするといくつか、タイプが表示されます。
ここで、タイプを選択することで「プロジェクションのタイプ」を変更することができます。
では、画像を貼り付けた際の、基本的なプロジェクションを紹介していきます。
「平面」
平面は文字通り平面状に画像を投影するタイプです。どの軸から投影するのか、XYZの軸を決めて貼り付けることができます。また、トランスフォームで位置やサイズを変更することもできます。壁や床などに画像を張る際利用できそうです。
作業画面を見ると白い枠が表示されてますね、これが画像をどの位置どんなサイズで貼っているかを視覚的に示したガイドになります。 トランスフォームの数値を変更することでガイドの形状が変形しているのが確認できると思います。
補足ですが、「自動サイズ」ボタンをクリックすることで、オブジェクトのサイズに簡単にフィットすることもできますのでためしてみてください。
「円柱」
円柱は電信柱や缶のような形状に対して円柱状に画像を貼り付けることができます。XYZの軸を選択することで、どの方向から画像を貼るか決めることができます。円柱の蓋になる部分が伸びてしまうので注意が必要です。
円柱も平面と同じくガイドが表示され、トランスフォームで変形することができます。
「球」
球は地球儀やボールなど球体状のメッシュに画像を貼るのに適したタイプです。
円柱と同じくXYZの軸を選択することで、どの方向で画像を貼るか決めることができます。
球も他のタイプと同じくガイドが表示され、トランスフォームで変形することができます。
「立方体」
立方体はXYZ軸それぞれ3方向から同時に「平面」で画像を投影するタイプでです。

「フロントプロジェクション」
フロントプロジェクションはカメラやライトの方向から画像を貼り付けることができるタイプです。
プロジェクションとなるカメラやライトを設定する必要があります。
「ボックス」
ボックスは「立方体」に似ていますが、XYZの軸それぞれの+方向-方向の計6方向から「平面」で画像を貼り付けることができるタイプです。
以上が基本的なプロジェクションのタイプです。
簡単な形状のオブジェクトであれば、これで一通りの画像を割り当てることができます。
色々とためしてみてください。
今回は「プロジェクションのタイプ」について紹介していきます。
この項目で画像を張り付ける時のルールを決めることができます。
前回の最後のシーンから「シェーダツリー」の中の画像を選択している状態で、
「プロパティ」の「テクスチャロケータ」を選択します。
「プロジェクションのタイプ」をクリックするといくつか、タイプが表示されます。
ここで、タイプを選択することで「プロジェクションのタイプ」を変更することができます。
では、画像を貼り付けた際の、基本的なプロジェクションを紹介していきます。
「平面」
平面は文字通り平面状に画像を投影するタイプです。どの軸から投影するのか、XYZの軸を決めて貼り付けることができます。また、トランスフォームで位置やサイズを変更することもできます。壁や床などに画像を張る際利用できそうです。
作業画面を見ると白い枠が表示されてますね、これが画像をどの位置どんなサイズで貼っているかを視覚的に示したガイドになります。 トランスフォームの数値を変更することでガイドの形状が変形しているのが確認できると思います。
補足ですが、「自動サイズ」ボタンをクリックすることで、オブジェクトのサイズに簡単にフィットすることもできますのでためしてみてください。
「円柱」
円柱は電信柱や缶のような形状に対して円柱状に画像を貼り付けることができます。XYZの軸を選択することで、どの方向から画像を貼るか決めることができます。円柱の蓋になる部分が伸びてしまうので注意が必要です。
円柱も平面と同じくガイドが表示され、トランスフォームで変形することができます。
「球」
球は地球儀やボールなど球体状のメッシュに画像を貼るのに適したタイプです。
円柱と同じくXYZの軸を選択することで、どの方向で画像を貼るか決めることができます。
球も他のタイプと同じくガイドが表示され、トランスフォームで変形することができます。
「立方体」
立方体はXYZ軸それぞれ3方向から同時に「平面」で画像を投影するタイプでです。
「フロントプロジェクション」
フロントプロジェクションはカメラやライトの方向から画像を貼り付けることができるタイプです。
プロジェクションとなるカメラやライトを設定する必要があります。
「ボックス」
ボックスは「立方体」に似ていますが、XYZの軸それぞれの+方向-方向の計6方向から「平面」で画像を貼り付けることができるタイプです。
以上が基本的なプロジェクションのタイプです。
簡単な形状のオブジェクトであれば、これで一通りの画像を割り当てることができます。
色々とためしてみてください。
2016年2月14日日曜日
プレビューレンダー
過去の投稿で何度も使ってきたけど、
これは、ほぼ最終レンダリングに近い状態
(モデルの形状、反射透過等のマテリアルの質感、大域照明等含むライティング)
をリアルタイムで表示してくれるという機能です。
通常なら制作の最終段階に近づくほど、
レンダリング>品質確認>修正>レンダリング・・(繰り返し)
っといった具合で完成を目指していくところですが、
リアルタイムで最終ルックに近い状態を確認しながらモデリング、マテリアルの設定、ライティング等進めていけるので驚異的なスピードで制作を進めていけることができます。
「プレビューレンダー」が更新される際にカーソルを置いている部分から優先的に表示してくれるという地味な機能も中々おもしろいです。
自分自身いくつかの3Dツールを利用してきましたが、
この「プレビューレンダー」やmodoの優秀なツール群のおかげで、
同じものを制作するにあたり、ものによっては半分程度の時間で制作を進められるようになっています。
早くできるということはその分トライアンドエラーの時間に費やすことができるので、単純に品質向上に繋がっていくのではないでしょうか?
詳しくは紹介していなかった「プレビューレンダー」を紹介します。
modoのメニューでは「プレビューレンダー」と書いているのですが、
ネットを見ると「プレビューレンダラ―」とあったりするのでどちらが正式名称なんでしょ・・・?
今回は言いなれている「プレビューレンダー」で進めていきます。
今回は言いなれている「プレビューレンダー」で進めていきます。
これは、ほぼ最終レンダリングに近い状態
(モデルの形状、反射透過等のマテリアルの質感、大域照明等含むライティング)
をリアルタイムで表示してくれるという機能です。
通常なら制作の最終段階に近づくほど、
レンダリング>品質確認>修正>レンダリング・・(繰り返し)
っといった具合で完成を目指していくところですが、
リアルタイムで最終ルックに近い状態を確認しながらモデリング、マテリアルの設定、ライティング等進めていけるので驚異的なスピードで制作を進めていけることができます。
「プレビューレンダー」が更新される際にカーソルを置いている部分から優先的に表示してくれるという地味な機能も中々おもしろいです。
自分自身いくつかの3Dツールを利用してきましたが、
この「プレビューレンダー」やmodoの優秀なツール群のおかげで、
同じものを制作するにあたり、ものによっては半分程度の時間で制作を進められるようになっています。
早くできるということはその分トライアンドエラーの時間に費やすことができるので、単純に品質向上に繋がっていくのではないでしょうか?
2016年1月28日木曜日
360度映像レンダリング_01
ちょいと、学生が360度映像を制作するということで、
modoでの360度映像としての出力まわりを検証してみました。
色々と手さぐりな部分もありますが、お付き合いください。
まずは背景となる画像を準備、
360度カメラで撮影した画像データをあずかりました。
とりあえず今回は静止画でやってみます。
「シェーダツリー」より「Environments」を展開し、
その中に「レイヤー追加」から画像を読み込みます。
「Environments」>「Environment」に画像が読み込まれました。
「F8」プレビューレンダーを開いてまわりを見回してみましょう。
読み込んだ画像とプレビューレンダ―の背景に張られている画像の
左右が反転しているのが確認できます。
画像を球状に配置したものを内側から見ている状態になっているためにおこる不具合です。
「シェーダツリー」から「Environment」に読み込んだ画像を選択して
「プロパティ」>「テクスチャロケータ」の「水平方向ラップ」に「-1.0」を入力します。
これで元となった画像と背景画像が反転していたものを一致させることができました。
下準備完了です。
一度カメラを360度映像用に切り替えてみます。
「アイテムリスト」から「Camera」を選択し、
「プロパティ」>「カメラ」>「プロジェクション」の「プロジェクションタイプ」を
「パースペクティブ」から「球面」に変更します。
「F8」プレビューレンダーで見るとなにやら歪んだ状態で表示されました。
この歪んだ状態が360度映像用のレンダリング出力になるようです。
今の状態では、オリジナルの画像とプレビューレンダーの画像がカメラの位置や角度が一致していないため、同じ表示ではありません。
まず、カメラのトランスフォームをリセットします。
最後にオリジナルの画像とプレビューレンダーの画像の比率を一致させましょう。
オリジナルの画像のサイズが2:1になっていますので、
今回カメラのフレームのサイズは640*320にします。
「シェーダツリー」>「Render」を選択、
「プロパティ」>「フレーム」のフレームの値を
「フレーム幅」 640
「高さ」320
と入力しておきましょう。
これでオリジナルの画像とプレビューレンダーの画像が一致したはずです。
次に3D空間にキャラクターを配置してみます。
中山さんがモデリングしてくれたキノコ君
モーションは西島君がつけています。
キノコを召喚しました。
パースペクティブとプレビューレンダーを見ながら位置を調整します。
背景に配置している画像データが環境マップとして影響しますので、
キノコの質感に背景にマッチしたいい感じの色味がついています。
ただ、室内の場合「Directional Light」は不自然なので「Dome Light」に変更しましょう。
「アイテムリスト」で「Directional Light」を右クリック、
プルダウンから「タイプの変更」「Dome Light」を選択します。
では、キノコのアニメーションを連番で360度画像として出力します。
メニューの「レンダー」から「アニメーションをレンダー」をクリック
表示されたウィンドウでフレームの長さを設定します。
今回は「開始フレーム」 1 「終了フレーム」 300
としました。
保存先のフォルダを選択して、ファイルの名前をつけて保存をクリック
今回保存形式は「tga」としています。
レンダリングが開始されます。
しばし待ちます。。。。
出来上がったデータをAdobeAfterEffects等の編集ソフトで編集します。
この工程については詳しく紹介はしませんが、
最終的にはyoutubeで360度映像に対応している「mp4」でレンダリングします。
動画として出力はされたのですが、このままでは360度映像として対応していません。
https://www.youtube.com/watch?v=n2nhZNTrozI&feature=youtu.be
「360.Video.Metadata.Tool」というツールを利用して、
360度映像に対応したデータにコンバートしなければなりません。
↓こちらのサイトに詳しい情報がありました。
https://support.google.com/youtube/answer/6178631?hl=ja
では、ツールを使ってみましょう。

「360.Video.Metadata.Tool」を実行すると図のようなウィンドウが表示されます。
「Open」で編集ソフトから出力した「mp4」データを読み込み、
「Spherical」にチェックを入れて「Save as」でコンバート!
コンバートされたデータをyoutubeにアップしてみました。
https://www.youtube.com/watch?v=I34rdQmRIb8&feature=youtu.be
今回は背景は静止画でしたが、背景が動画の場合、
静止画と違って位置のマッチング等、色々と調整が必要な気がします。
また、時間がある時にでも検証してみたいと思います。
modoでの360度映像としての出力まわりを検証してみました。
色々と手さぐりな部分もありますが、お付き合いください。
360度カメラで撮影した画像データをあずかりました。
とりあえず今回は静止画でやってみます。
「シェーダツリー」より「Environments」を展開し、
その中に「レイヤー追加」から画像を読み込みます。
「Environments」>「Environment」に画像が読み込まれました。
「F8」プレビューレンダーを開いてまわりを見回してみましょう。
読み込んだ画像とプレビューレンダ―の背景に張られている画像の
左右が反転しているのが確認できます。
画像を球状に配置したものを内側から見ている状態になっているためにおこる不具合です。
「シェーダツリー」から「Environment」に読み込んだ画像を選択して
「プロパティ」>「テクスチャロケータ」の「水平方向ラップ」に「-1.0」を入力します。
これで元となった画像と背景画像が反転していたものを一致させることができました。
下準備完了です。
一度カメラを360度映像用に切り替えてみます。
「アイテムリスト」から「Camera」を選択し、
「プロパティ」>「カメラ」>「プロジェクション」の「プロジェクションタイプ」を
「パースペクティブ」から「球面」に変更します。
「F8」プレビューレンダーで見るとなにやら歪んだ状態で表示されました。
この歪んだ状態が360度映像用のレンダリング出力になるようです。
今の状態では、オリジナルの画像とプレビューレンダーの画像がカメラの位置や角度が一致していないため、同じ表示ではありません。
最後にオリジナルの画像とプレビューレンダーの画像の比率を一致させましょう。
オリジナルの画像のサイズが2:1になっていますので、
今回カメラのフレームのサイズは640*320にします。
「シェーダツリー」>「Render」を選択、
「プロパティ」>「フレーム」のフレームの値を
「フレーム幅」 640
「高さ」320
と入力しておきましょう。
これでオリジナルの画像とプレビューレンダーの画像が一致したはずです。
次に3D空間にキャラクターを配置してみます。
中山さんがモデリングしてくれたキノコ君
モーションは西島君がつけています。
キノコを召喚しました。
パースペクティブとプレビューレンダーを見ながら位置を調整します。
背景に配置している画像データが環境マップとして影響しますので、
キノコの質感に背景にマッチしたいい感じの色味がついています。
ただ、室内の場合「Directional Light」は不自然なので「Dome Light」に変更しましょう。
「アイテムリスト」で「Directional Light」を右クリック、
プルダウンから「タイプの変更」「Dome Light」を選択します。
では、キノコのアニメーションを連番で360度画像として出力します。
メニューの「レンダー」から「アニメーションをレンダー」をクリック
表示されたウィンドウでフレームの長さを設定します。
今回は「開始フレーム」 1 「終了フレーム」 300
としました。
保存先のフォルダを選択して、ファイルの名前をつけて保存をクリック
今回保存形式は「tga」としています。
レンダリングが開始されます。
しばし待ちます。。。。
出来上がったデータをAdobeAfterEffects等の編集ソフトで編集します。
この工程については詳しく紹介はしませんが、
最終的にはyoutubeで360度映像に対応している「mp4」でレンダリングします。
動画として出力はされたのですが、このままでは360度映像として対応していません。
https://www.youtube.com/watch?v=n2nhZNTrozI&feature=youtu.be
「360.Video.Metadata.Tool」というツールを利用して、
360度映像に対応したデータにコンバートしなければなりません。
↓こちらのサイトに詳しい情報がありました。
https://support.google.com/youtube/answer/6178631?hl=ja
では、ツールを使ってみましょう。

「360.Video.Metadata.Tool」を実行すると図のようなウィンドウが表示されます。
「Open」で編集ソフトから出力した「mp4」データを読み込み、
「Spherical」にチェックを入れて「Save as」でコンバート!
コンバートされたデータをyoutubeにアップしてみました。
https://www.youtube.com/watch?v=I34rdQmRIb8&feature=youtu.be
今回は背景は静止画でしたが、背景が動画の場合、
静止画と違って位置のマッチング等、色々と調整が必要な気がします。
また、時間がある時にでも検証してみたいと思います。
2014年12月7日日曜日
ワイヤーフレームのレンダリング
私用でワイヤーフレームのレンダリングをする機会があったのでちょいと調べてみました。
「modoではワイヤーフレームのレンダリング出来なかったはず」と思っていたのですが、
modo801から「カーブをレンダリング」という機能と「Convert Polygon to PolyLine」というスクリプトを使うことでワイヤーフレームのレンダリングをすることができました。
実際にやってみます。
適当なカーブを用意しました。
続いて「シェーダツリー」から「Final Color Output」を選択し、「プロパティ」の「メッシュ」の中にある、「カーブをレンダリング」にチェックを入れます。
「F9」でレンダリングしてみます。
カーブをレンダリングすることができました。
「カーブ半径」に数値を入力することでカーブの太さを変えることができます。
「カーブ半径_5mm」
また、マテリアルの設定を変えることで色を変えたりスペキュラをあたえたり反射の効果もできるようです。
以上を踏まえて、今度はポリゴンモデルのワイヤーフレームレンダリングをおこなってみます。
まずポリゴンをラインに変換するスクリプト
「Convert Polygon to PolyLine」をダウンロードしておきます。
↓
http://modogroup.jp/tipsblog/scripts/convert-polygon-to-polyline/
適当なメッシュを用意します。
このままではワイヤーフレームのレンダリングはできません。
スクリプトを使ってエッジのみを抜き出します。
「アイテムリスト」で実行したいメッシュを選択しておきます。
「システム」>「スクリプトの実行」をクリック、
「mjg_poly2polyline.py」を実行します。
「アイテムリスト」に「PolyLine_Mesh」という名前でエッジのみのメッシュが追加されました。
「カーブをレンダリング」にチェックが入っているのを確認してレンダリングしてみます。
なにやらよく解らない状態でレンダリングされてしまいました。
「カーブ半径」が大きすぎたようです。
数値を調整してレンダリングしてみました。
ワイヤーフレームでレンダリングしたい際の参考にしてみて下さい。
「modoではワイヤーフレームのレンダリング出来なかったはず」と思っていたのですが、
modo801から「カーブをレンダリング」という機能と「Convert Polygon to PolyLine」というスクリプトを使うことでワイヤーフレームのレンダリングをすることができました。
実際にやってみます。
適当なカーブを用意しました。
続いて「シェーダツリー」から「Final Color Output」を選択し、「プロパティ」の「メッシュ」の中にある、「カーブをレンダリング」にチェックを入れます。
「F9」でレンダリングしてみます。
カーブをレンダリングすることができました。
「カーブ半径」に数値を入力することでカーブの太さを変えることができます。「カーブ半径_5mm」
また、マテリアルの設定を変えることで色を変えたりスペキュラをあたえたり反射の効果もできるようです。
以上を踏まえて、今度はポリゴンモデルのワイヤーフレームレンダリングをおこなってみます。
まずポリゴンをラインに変換するスクリプト
「Convert Polygon to PolyLine」をダウンロードしておきます。
↓
http://modogroup.jp/tipsblog/scripts/convert-polygon-to-polyline/
適当なメッシュを用意します。
このままではワイヤーフレームのレンダリングはできません。
スクリプトを使ってエッジのみを抜き出します。
「アイテムリスト」で実行したいメッシュを選択しておきます。
「システム」>「スクリプトの実行」をクリック、
「mjg_poly2polyline.py」を実行します。
「カーブをレンダリング」にチェックが入っているのを確認してレンダリングしてみます。
なにやらよく解らない状態でレンダリングされてしまいました。
「カーブ半径」が大きすぎたようです。
数値を調整してレンダリングしてみました。
ワイヤーフレームでレンダリングしたい際の参考にしてみて下さい。
登録:
投稿 (Atom)

























