カテゴリー
All Blender Rhinoceros

曲面メッシュを曲面サーフェスモデルに変換

検討モデルをサーフェスモデルで共有

Blenderで検討したメッシュモデルを、協力会社さまにサーフェスモデルで共有する機会が増えてきました。その際、特に注視すべき点は、いかに元のメッシュ形状に近いサーフェスモデルを生成できるか、だと思います。 

今回は、これまでにどのような手順で再現度の高いサーフェスモデルを生成してきたかご紹介します。 

再現度の高いサーフェスモデルを生成

Blenderからobjで書き出したスザンヌを読み込みました。(Subdivisionレベル2) 

このまま「ToNURBS」でサーフェスモデルに変換してみました。 

シェーディングビューで比較してみます。一見良さそうに見えますが…。 

㊧objを読み込んだままのメッシュモデル 

㊨ToNURBSで変換したモデル 

しかし、レンダリングビューで確認すると、各サーフェスのエッジが浮き上がって見えます。単純にメッシュの面を1枚ずつサーフェスに変換しただけのようです。 

ここで、別の手法として、Rhino7から実装されたSubD変換を活用してみたいと思います。とりあえずデフォルト設定のまま変換してみます。 

SubDに変換されました。 

やや角が取れた形状で近似していると思います。口や鼻まわりが顕著ですね。 

㊧objを読み込んだままのメッシュモデル 

㊥ToNURBSで変換したモデル 

㊨SubDに変換したモデル 

アダプティブサイズを100%にしてみました。 

当初のエッジが綺麗に再現されています。 

㊧アダプティブサイズ50%のSubD変換モデル 

㊨アダプティブサイズ100%のSubD変換モデル 

メッシュモデルと比較してみても再現度は高いと思います。 

㊧objを読み込んだままのメッシュモデル 

㊨アダプティブサイズ100%のSubD変換モデル 

最後にアダプティブサイズ100%のSubD変換モデルを「ToNURBS」でサーフェスモデルに変換してみます。 

レンダリングビューではSubDモデルとの違いがわかりませんね。 

㊧アダプティブサイズ100%のSubD変換モデル 

㊨SubDモデルをToNURBSで変換したサーフェスモデル 

シェーディングビューだと変換されたのがわかります。 

㊧アダプティブサイズ100%のSubD変換モデル 

㊨SubDモデルをToNURBSで変換したサーフェスモデル 

当初のメッシュモデルとSubDから変換したサーフェスモデルの比較です。 再現度は非常に高いと思います。

㊧objを読み込んだままのメッシュモデル 

㊨SubDモデルをToNURBSで変換したサーフェスモデル 

今回のこの手順で、Blenderで作成した曲面形状のメッシュを再現度の高いサーフェスモデルに変換することができました。
 

改めて手順をおさらいします。 

  1. objでメッシュを読み込む 
  2. メッシュモデルをSubDに変換(アダプティブサイズを上げると精度が向上) 
  3. SubDをNURBSに変換(ToNURBS) 


今回の検証にあたって、下記のサイトを参照させていただきました。非常に参考になりました。ありがとうございます。 

カテゴリー
All Blender

LOOKDEV STUDIOでマテリアルを確認

マテリアルの再現性

CGを活用したデザイン検討においては、想定した色や質感を正しく再現することが求められます。Postprocessで微修正を行うことも可能ですが、複数カットやアニメーションを依頼されている場合は、修正の手間が増えてしまします。特に汎用性の高い家具などのオブジェクトは、自分が設定したマテリアルが特殊なライティングに依存したものになっていないか確認する必要があります。

スタジオを活用したマテリアルの確認

マテリアルの再現性を確認するときによく使われるのが、CGで作成されたスタジオのシーンです。

ライティングや点景などを配置することで、色や質感だけでなく、反射したときのイメージまで再現することができます。

無料のスタジオセット

cgtraderから無料のスタジオセットが公開されていましたので、早速使ってみました。

https://www.cgtrader.com/free-3d-models/architectural/other/studio-lookdev

ログインするとダウンロード画面が表示されます。

ダウンロードして、シーンを開いてレンダリングしてみると、テクスチャのリンクが切れていました。

テクスチャ画像を保存したフォルダに再リンクします。

正しく表示されました。色見本も置いてあるのはありがたいですね。

スザンヌを置いてみました。

マテリアルの質感だけでなくオブジェクトの形状もわかりやすいと思います。

ROTATION_LINKをParentに設定するとターンテーブルの上を回るようなアニメーションになります。

様々なスケールに対応したスタジオセットが用意されていました。

ダウンロードサイトには下記のような説明がありました。

  • Macro objects scene. ( 10 cm3 )
  • Small object scene. ( 50 cm3 )
  • Medium object scene. ( 2->3 m3 )
  • Large object scene. ( 5->10 and above m3 )

テクスチャファイルが大きいためか、少しレンダリング開始までに時間がかかるような気がしました。

しかし、手っ取り早くマテリアルやオブジェクトの形状の確認ができるので、これからも使っていきたいと思います。

カテゴリー
All Blender

波のようなバンドのアニメーション

Blenderのslackコミュニティである「みんなのBlender」で相談があった
波のようなバンドのアニメーションを作成してみたいと思います。
YouTubeに動画もアップしています。

まず平面メッシュの2点を削除して、直線を作ります。 

Subdivisionモディファイアを追加して、分割数を増やします。直線を分割しただけなので、まだ見た目は変わりません。 

Arrayモディファイアを追加して、配列複製します。 

Waveモディファイアを追加して、波のような凹凸をつけます。 

Screwモディファイアを追加して、太さ(幅)を与えます。 

隙間がないような幅にするためには、Screwの値をArrayモディファイアのDistanceと同じ値にします。ここでは、ドライバーとして貼り付けました。ドライバーを活用すると、ArrayモディファイアのDistanceを変更すれば、自動的にScrewの値も同じ値に変更されます。

Solidifyモディファイアを追加して、厚みを与えます。 

Auto Smoothを有効にします 

今回は簡略化するためにWaveモディファイアを使いましたが、Displaceモディファイアを使えば、さらに自由度の高いアニメーションが作成できると思います。 

カテゴリー
All Blender

ローポリの円筒を滑らかにする

ローポリの円筒を滑らかにする 

ローポリで作成された円筒系のメッシュにポリゴン分割を追加して、より滑らかなメッシュにする方法をご紹介します。 

下記のようなカクツキが目立つ円筒形を想定します。 

円筒の端部のエッジを選択します。 

Edge→Subdivide Edge-Ringを選択します。 

Viewportの左下で分割数などの数値を入力できます。 

分割数を増やして、より滑らかな円筒形になりました。 

カテゴリー
All Blender

インスタンスを解除して実体化する

インスタンスを解除

インスタンスコピーされたオブジェクトのインスタンスを解除して、それぞれ個々のオブジェクトとして編集できるようにしたいと思います。 

前回作成したシーンから続けてみたいと思います。 

複製されたインスタンスを選択します。 

Ctrl+Aから「Make Instance Real」を選択します。 

インスタンス機能が失われて、すべてのバラバラのオブジェクトになりました。 

メッシュ情報はリンクされたままになっています。 

メッシュのリンクも切断する場合は、Single User化しましょう。

カテゴリー
All Blender

複数オブジェクトで構成されるモデルを配列複製(その2)

配列したモデルをいろいろな方向に向かせたい 

前回作った配列させたモデルに対して、ランダムに少し回転を与えて、自然に配置したようなイメージを作りたいと思います。 

Displaceモディファイアを追加します。 

テクスチャを追加します。 

テクスチャパネルに移動して、Cloudsを追加します。 

Displaceモディファイアの設定に戻って、強さを好みに変更します。 

このような見た目になりました。いろいろな方向を向いていますが、Z軸は固定したいですよね。 

DisplaceモディファイアのDirectionを「Y」に変更します。 

Z軸を固定したまま、方向を変えることができました。 

Planeのレンダリングが不要な場合は、下記をオフにしてください。 

Planeが消えました。 

私はこのテクニックを、家具や商品、照明器具、植栽の配置などに活用しています。 

Objectプロパティの「Instancing」の機能を応用すると、下記のようなレゴブロックのアニメーションも作成することができます。 

今回のTipsもChris Pさんの動画を参考にしています。Blenderのパラメトリックモデリングを追究されている方で、非常に有益な情報を公開されています。下記にChris Pさんのチャンネルのリンクを貼っておきます。 

https://www.youtube.com/channel/UCEhvBzn6O_XEBKLnAfG4kBg
カテゴリー
All Blender

複数オブジェクトで構成されるモデルを配列複製(その1)

インスタンスを活用した配列複製 

家具や人形のような、1つのオブジェクトではなく、いくつかのオブジェクトによって構成されるモデルを作る機会が多いと思います。 
そのようなモデルに対して、Arrayモディファイアを与えたいというケースが多々あります。 
この場合、私はいつもCollectionインスタンスParentのインスタンス機能を使って、Arrayモディファイアを与えています。 

今回はこのようなオブジェクトの組み合わせを想定してみます。 

構成するオブジェクトを「Objects」という名前のCollectionに格納します。 

別のCollectionにPlaneを追加します。 

このPlaneに対して、Arrayモディファイアを追加します。今回はX,YそれぞれのArrayモディファイアを追加しました。 

このような感じです。 

ObjectsのCollection Instanceを追加します。 

Collection Instanceが追加されました。 

このCollection InstanceをCtrl+PでPlaneの子に設定します。 

Objectプロパティの「Instancing」から「Face」をクリックします。 

Planeのそれぞれの面にインスタンスコピーされました。 

カーソルを活用してCollection InstanceをPlaneの基点に合わせておきます。 

ピッタリ合いました。 

この手順により、PlaneのArrayモディファイアで個数やピッチをコントロールできるようになりました。 

次回は配列複製したこれらのインスタンスの向きにバラツキを持たせたいと思います。

カテゴリー
All Blender

無料テクスチャ・マテリアル検索サイト

複数サイトを横断検索

CC0の無料のテクスチャ画像やマテリアルを検索するとき、以前は、良さそうなサイトを見つけてはブックマークしていました。 

3dAssets.oneは、CC0のテクスチャ画僧やマテリアルを、複数サイトを横断して検索できます。 

https://www.3dassets.one/

試しに「interlocking」と打ち込んでインターロッキングブロックを検索してみます。 

検索結果が出てきました。 

おなじみのサイトも含まれていますね。 

今回はこちらをクリックしてみました。 

ここのサイトに遷移しました。 

substanceのマテリアルとテクスチャがダウンロードできるようですね。2Kのjpgを選択してみました。 

ダウンロードしたzipを展開してみると、テクスチャとマテリアルがダウンロードできていることが確認できました。 

テクスチャやマテリアルの作成は結構時間がかかりますよね。より優れた検索方法を見つけて、作業効率を上げていきましょう。 

カテゴリー
All Blender

Multiple Importance

Multiple Importanceについて

chocofurさんがMultiple Importanceについて無料のチュートリアルを上げています。Multiple Importanceは、インテリアのレンダリングにおいて、重要な役割を果たします。 

https://store.chocofur.com/interior-visualization-course-blender-2-80-lite/blender_model/course-blender-2-80-interior-visualization-tutorial-in-cycles-and-eevee

ここではその内容を日本語でざっくり要約してみたいと思います。 

メッシュのemissionマテリアルは、大量のアーティファクトの原因になります。 

Clampの設定で極端に明るい部分を抑えることができますが、奥のスポットライトのスカラップも消えてしまっています。 

発光するメッシュが小さい場合はアーティファクトが少なくなり、奥のスポットライトがクランプされません。 

大きいメッシュライトが必要なケースでは、マテリアル設定の「Multiple Importance」を外すとアーティファクトが少なくなります。「Multiple Importance」は光源が小さいときに効果を発揮します。 

もしメッシュライトを使ったときに、「アーティファクトが多くなった」、「他の照明が消えてしまった」といったことが起きたら、もう一度Multiple Importanceについて思い出してみてください。 

カテゴリー
All Blender

複数カットの自動レンダリング

複数カットのレンダリング 

作成したモデルを様々な角度からレンダリングしたいとき、通常は下記のステップをカメラ1つ1つに対して行う必要があります。 

  • レンダリングしたいカメラをアクティブにする 
  • レンダリング実行 
  • ファイル名をつけてレンダリング画像保存 

この作業を毎回行うのはちょっと面倒ですよね。建築やプロダクトデザイン分野においては、このような複数カットを頻繁に求められます。 

Render Burst Addon

Render Burst Addonは、いわゆるバッチレンダリングを実行するアドオンです。指定した複数のカメラを1つ1つレンダリングして、カメラ名をファイル名として保存してくれます。
下記からダウンロードできます。 

https://github.com/VertStretch/RenderBurst

Addonを有効にするとレンダープロパティにRender Burstが表示されます。 
Blender 2.8xの場合はこのような表示になっていると思います。 

非常にシンプルなAddonで、「All Cameras」か「Selected Only」を選択して、「Render !」をクリックするだけです。 

試しに4つのカメラを選択して「Selected Only」で実行してみます。 

ファイルの拡張子や保存パスは、出力プロパティでいつもの通り設定します。 

実行すると指定したフォルダに保存されました。 

エラー?? 

Blender 3.0.0 Alphaでは「All Cameras」「Selected Only」のフィルタがなぜか表示されません。「All Cameras」がデフォルトで選択されているので、Blender 3.0.0 Alphaでは全てのカメラがレンダリングされてしまいます。 

私はいつも選択したカメラのみで実行することが多いので、常に「Selected Only」で実行されるようにPythonを書き換えました。 

また、ファイル名の頭にレンダリングした日付が追加されるように書き換えました。 

これらを変更してAddonを入れ直し、実行してみると日付が追加されて保存されました。 

バッチレンダリングのAddonは他にもいくつかありますが、「Render Burst」がもっともシンプルで使いやすいと感じています。