Rhino8 RhinoがSketchUpに追いついた!?

Rhino8 が発売された。「PushPull プッシュプル」という建築デザイナーには便利なコマンドがついた。ぶっちゃけて言えば、RhinoがSketchUpのように使えるようになったのである。SketchUpは、建築設計の実務で重宝されている3Dソフト。軽くてシンプルで、いろいろコマンドを使わずとも、マウス操作で直感的に操作できる。鉛筆で線を描いて四角に閉じると壁が簡単に立ち上がり、その壁面上に四角を描くと、壁の中に窓穴が開く。また面を「押し出したりたり引いたり」、まさに「PushPull プッシュプル」してスムーズに立体をつくる。

【00】SketchUpの画面。とても簡単で直感的な建築3Dソフト

一方Rhino様はというと、曲面のモデリングにとても優れており、家具やプロダクトデザインの領域などで広く使われているが、建築の世界では、ザハ様のようなスペシャルなフォルムのデザインでは有効なツールであるが、水平面と垂直面で構成される一般的な建築では、正直なところ、Rhinoの機能はオーバースペックである。というかSketchUpでは即座にできる単純な水平面と垂直面で構成される建築のモデリングが、Rhinoでは少々面倒であったりする。まずは8以前のRhinoの面倒さをデモしたいと思います。

Rhino7で三角屋根の家をモデリング

まず地面に6M角の四角を描き、そのポリラインを6M立ち上げ「ExtrudeCrv」、6x6x6の箱をつくる。上下がオープンな状態なので、
 
【01】地面に四角を描く 【02】四角を建ち上げる「ExtrudeCrv」

つぎに「Cap」で屋根と床をつける。(ちなみに「ExtrudeCrv」のオプションで最初から床と屋根をつけることができる。)フラットルーフに三角勾配をつけるため、フラットルーフの中央に補助線を描き、「SplitFace」で左と右で2つに分け、中央にエッジ(潜在的な稜線)を生成する。
 
【03】上下をふさぐ「Cap」 【04】水平屋根の中央にエッジをつくる「SplitFace」

そのエッジを選択しGumballでグイーっと持ち上げ、Z方向に立ち上げ山を作る。
 
【05】&【06】中央のエッジを持ち上げる

正面に窓を開けたいので、壁・床・屋根のエッジをオフセットした枠線を壁の面上に描く。その閉じた枠線で「SplitFace」で分割し、枠内の面を選択削除し、開口をつくる。
 
【07】正面壁に枠線を描き 【08】中をくり抜く「SplitFace」

反対の壁も同様に切り抜く。これで形はほぼ見えてきたので、この状態から「Cap」してみると、“せっかく”ここまで努力してくり抜いた壁がふさがってしまう。
 
【09】反対の壁もくり抜き 【10】「Cap」するがうまくいかない

結局モデルを全部分解「Explode」して正面の家形の枠だけを取り出し、この枠を6Mプッシュ「SrfExtrude」するとようやくフォルムが完成する。このように少々面倒なのである。(最初から立面で押し出せよと突っ込まないでね。)
 
【11】分解して正面の枠だけ取り出し 【12】押し出し直してようやく完成

Rhino8で三角屋根の家をモデリング

それではお待たせのRhino8の出番。Rhino7と同じ手順で6Mの四角の線を押し出すと、自動的に6Mのキューブが生成される。同様に屋根の中央線で「SplitFace」でエッジを描き、押し出す。ここまでは7と同じ手順。8ではシェーディングモードでの面の中の補助線が表示されなくなったので見た目がきれい。これももっと早くそうして欲しかった。
 
【13】四角を押し出すとキューブができ 【14】中央の稜線を押し出す

Inset  インセット

ここからが、Rhino8の改良である。「Inset」というコマンドで面に簡単にエッジのオフセットラインを描くことができるようになった。またAutoCplaneという新しいモードを有効にすると、面を選択するとその面に自動的に作業面/Cplaneが合わさる。これも便利。
★Tips Rhinoは直方体などオブジェクトを選択するとオブジェクトのまとまり全体が選択される。面やエッジや頂点などのサブ要素を選択する時は、「Ctl+Shift」で選択する。Rhino7以前でも同じ。

【15】「Inset」で面のエッジのオフセット枠線が自動生成

PushPull  プッシュプル

いよいよお待ちかねの「PushPull」 。プッシュ&プルしたい面上に、枠線を描くとその閉じた領域を即座に認識してくれるので、後はドラッグして押し出したり引き出したり簡単にできるのである。逆に言えば、このシンプルなモデリング操作が、NURBSモデリングのRhinoでは長年実現できていなかった。
 
【16】面をPush押し出したり 【17】Pull引き出したり

「Inset」と「PushPull」を使えば、壁に穴を開けたり、窓枠を作成したりなど建築モデルに必携の作業が、格段に容易になった。しつこく繰り返すが、PushPullというシンプルなコマンドが、Rhinoでは革命的なのでしょう。ということで、1%のスペシャルな建築造形のツールから、99%の標準的な建築の造形を包含した建築モデリングソフトにようやくなったのだ!(大袈裟)

【18】【19】「PushPull」と「Inset」で標準的な建築モデリングがだいぶ楽に

ちなみに3年ごとのアップデート時のディスカウント期間は2月末までなので、アップデートしたいデザイナーは急ごう。今回のキャンペーン価格は、以前より1万円割高となっていたが、「PushPull」もついたし、Windows/Macのコンバーチブル版になったので、いろいろ改良点が多いのでお得!?。いやいや、Rhinoさんはいつも庶民デザイナーの味方です(ありがとう)! 駆け込み購入後の建築デザイナーの取り急ぎの感想でした。まだまだいろいろあるはずよ。

HN 240216

参考チュートリアル(Rhino3dオフィシャルYoutube)↓

LumionからVRコンテンツをつくりWebで見る

せっかくLumionを持っていたら、ぜひVRコンテンツを作成したい。もちろんGearVRやOculusなどの本格的なコンテンツも作成できるが、ゴーグル(ヘッドマウントディスプレイ)を持って無くても見ることのできる便利なメディアが 、

Google VR View

Google VR View である。java scriptを埋め込むだけで、Lumionで作成した360°パノラマイメージをwebページ上で体験することができる。

SketchUpからLumionへ

それではLumionからコンテンツを作ってみよう。今回は下のSketchUpモデルを使う[Fig01]。

[Fig01] Lumionと同期させるSketchUPのモデル

LumionではSketchUpのファイル.skpをネイティブに開くことができるようになっている。前回のRevitからLumionへと同様、SketchUpでもLiveSyncを使うこともできるが、今回はLumionに.skpファイルを直接開く(インポートする)やり方でデモ。直接取り込むのとLiveSyncを使用して取り込むのも何も変わらない。(結局の所、筆者の遅いPCではLiveSyncを付けたまま作業できないし。。)取り込みには緑のインポートボタンを押す。

[Fig02] IMPORT

インポートはSketchUpのレイヤや表示などの設定がそのまま反映される。すなわち、SketchUpで例えば「レイヤ1」を非表示の状態でインポートするとLumionに「レイヤ1」は取り込まれない。Revit+LiveSyncと同様、SketchUpのマテリアルはLumionでそのまま有効。ガラスが不透明でインポートされるかもしれないが、その場合はLumionでまとめてアサインできるので問題ない(Revit+LiveSyncの時と同じ)。SketchUpの場合は、面で作成した木や人の要素や、ガラス以外のマテリアルやからマッピングテクスチャもすべてSketchUpと同じように取り込まれる[Fig03]。「ネイティブ」なので。

[Fig03] LumionではSketchUpモデル(.skpファイル)を直接インポートすることができる。

木や人はLumionで新たに入れ直し、SketchUpの不必要なレイヤは消して、.skpファイルを同期し直す。先の緑のIMPORTボタンを押すと、もう一つ同じモデルがインポートされてしまう。同期するには以下の手順で行う。まずモデルを選択すると、下のモデルの情報パネルが出てくるので[Fig04]、

[Fig04] インポートモデルの情報パネル

左の同期ボタンを押す[Fig05]。 モデルが大きいと同期に少し時間がかかる。少し待つとSketchUpの平面の木や人が消える。同期なのでLumionでアサインしたガラスなどの設定は変わらないので安心ください。これでモデルの準備が完了です。

[Fig05] 同期ボタン

Lumion 360°パノラマビュー

いよいよVRコンテンツの書き出し。360°パノラマビューを使う。設定は、カメラや動画と同じ。

[Fig06] 360°パノラマビュー

[Fig07] パノラマビューモード

モノラルモード

レンダリングボタンを押すと、保存するファイル形式の設定画面となる。Target DeviceはGeneric(汎用デバイス)。Stereo(立体的)はOn/Offの設定があるが、まずはOffでレンダリングすると

[Fig08] レンダリング設定画面、モノラルモード(立体的オフ)

モノラルモードでは以下のようなレンダリング結果。

[Fig09] 360°パノラマビュー、モノラルモードでのレンダリング

ステレオモード

一方、ステレオモード(立体的)オンでレンダリングすると

[Fig10] レンダリング設定画面、ステレオモード(立体的オン)

左目と右目用の画像が上下にレンダリングさる。

[Fig11] 360°パノラマビュー、ステレオモードでのレンダリング

モノでもステレオでもどちらのレンダリングでもGoogleVRで見ることができるが、もちろんより臨調感のあるVRコンテンツはステレオです。これでコンテンツを書き出し完了。静止画(jpg)ですが、360°パノラマ画像はレンダリングに非常に時間がかかる。ちなみに著者の遅いPCでは上のレンダリングで半日かかる。おそらく5分程度の動画なら2~3時間でレンダリングできるはずです。

htmlの設定

ここからはサーバーにアップするためのhtmlのページの設定。以下の手順はGoogleVRの公式ページの通り。まずは、VRViewのjavaコードの埋め込み。htmlの中にGoogleのサーバのリンクを貼る。

<script src="https://storage.googleapis.com/vrview/2.0/build/vrview.min.js"></script>

次にBodyの中にvrviewを貼る。

<div id='vrview'></div>

最後にVRコンテンツのロード。

window.addEventListener('load', onVrViewLoad);

function onVrViewLoad() {
  // Selector '#vrview' finds element with id 'vrview'.
  var vrView = new VRView.Player('#vrview', {
    video: '/url/to/video.mp4',
    is_stereo: true
  });
}

上の例ではvideo:を読み込むことなになっているが、上のデモのような静止画(jpg)の場合は、「video: ‘/url/to/video.mp4’, 」の部分を 「image: ‘ファイル名.jpg’,」

に変えるだけ。以下はhtmlの例。幅と高さは適宜設定してください。

==============================================

<html>

<HTML>
<HEAD>
<TITLE>タイトル</TITLE>

<script src=”https://storage.googleapis.com/vrview/2.0/build/vrview.min.js”></script>

<script>
window.addEventListener(‘load’, onVrViewLoad);

function onVrViewLoad() {
var vrView = new VRView.Player(‘#vrview’, {
image: ‘ファイル名.jpg’,
is_stereo: true,
width: ‘100%’,
height: 500
});
}
</script>
</head>

<body>
<div id=”vrview”></div>
</body>

</html>

==============================================

サーバへのアップロード

htmlファイルをPC上で直接開くが、読み込むことがでない[Fig12]。

[Fig12] PC上(ローカル環境)ではGoogleVRが読み込めません。

PCのローカル環境ではGoogleVRが読み込めないようです。筆者はここでつまずく。サーバにアップして確認する。

[Fig13] GoogleVR

サーバにアップロードしたら無事に見れるようになりました。

簡単でしょ。試してみてください。

2020.11.22 HN

※動画(3分:1,280 x 720)のレンダリング時間は、360°パノラマイメージ(4,096 x 4,096)の半分。