建築Visualization blog

UE4,3ds Max,CAD,Revit,BIMやリアルタイム系レンダリングなどのつぶやき。

UE4でOculus quest!

みなさん、そろそろOculus questが届いているようですね!
今回は、とにかく最速で!建築VizをQuestで見たい!という方のための記事です。
環境:Windows10 UE4は4.22
ざっくり手順はこうです
  1. codeworksインストール
  2. quest開発者設定をスマホでON
  3. USBつなぐ (必要ならVysor起動)
  4. まめおさんのテンプレートをダウンロードする
  5. プロジェクト設定確認する
  6. oculus questコントローラのメッシュつくる(ダウンロードどうぞ!)
以上で起動!
基本的にはGo用の設定でいけるはずですが、手順を記載しておきます。
 

前準備

まずはお部屋をちょっと片づけて、スマホアプリでQuestの設定を終わらせましょう。手順は記述しませんので、Oculusのアプリに従ってすすめてください。
 

1.Android Codeworksをインストールする

以下のような、EpicGamesのインストールフォルダにあります 

f:id:digitalplus:20190609203524p:plain

 

 

 

その後、以下のフォルダからbatを起動する
必要なSDKにチェックを入れてインストールする。questはGoと同じAPI19です
 

f:id:digitalplus:20190609211916p:plain

 
 

2.quest開発者設定をスマホでON

スマホアプリを開いて、Questのその他の設定を開きます
開発者モードを選択
ONにする
 
 
 

3.USBつなぐ (必要ならVysor起動)

充電ケーブルは付いてるけど、PC接続用は付属してないです。
会社に転がっていた、Switch用のUSBケーブルを使いました。
Oculus側でUSBデバッグのメッセージが出たら、OKしてください。
 
ちなみに、スマホではなく、モニターに画像をミラーリングしたいなら、Vysorが便利です。
無料、有料版あります
 

4.テンプレート作りたくなかったら、まめおさんのダウンロードする

Go用のテンプレートが更新されています!感謝!

 

 
 
ダウンロードは以下からです

5.プロジェクト設定確認する

まめおさんのテンプレートを、4.22で起動します。
 
必要な設定をあげておきます。

プラットフォーム

赤くなっていたら、「今すぐ設定」を押す

f:id:digitalplus:20190609212104p:plain

Androidの項目
  • Minimum SDKVersion: 19
  • Target SDK Version: 19
  • Enable FullScreen Immersive on KitKat and above devices: True
  • Configure the AndroidManifest for deployment to Oculus Mobile

f:id:digitalplus:20190609212148p:plain

 
 
SDKのフォルダパス

f:id:digitalplus:20190609212219p:plain

プロジェクト項目

対応プラットフォーム
 
パッケージングの設定もついでに見ておく。これはいつも見てるよね。

f:id:digitalplus:20190609211646p:plain



 

 
 
 
↓Epic公式としては、こちらが詳しいので見ておくとよい(英語)

6.oculus questコントローラのメッシュつくる

これで、起動できるはずです 

f:id:digitalplus:20190609205130p:plain


 

しかし!Go用のテンプレですから、コントローラのメッシュがちがいますよね。
でもAボタンで進むことはできます!

f:id:digitalplus:20190609205622p:plain

 
ではBPを見てみましょう「BP_HMDPawn」
ここで、エンジンにコントローラのメッシュが無い問題・・・
メッシュを変えたいのですが、検索しても、Questのメッシュが無いですね!?

f:id:digitalplus:20190609212303p:plain

 
Epic様とエンタープライズ契約すれば、頂けるんだろうね。とほほです。そのうち入りますかね。
 
ざっくりと、新人アルバイトさんが練習がてら作ってくれました。

f:id:digitalplus:20190609205946p:plain

どうぞダウンロードしてください。改変、再配布、何でも可です。むしろ、改変してきれいに完成したら、どこかにUPしてください!

 

↓↓3Dモデルをダウンロード
https://skfb.ly/6KZWy(2020年現在、ダウンロードできなくなっています。別の場所にQuest2とともに移動します。しばらくお待ち下さい。)
 
プロジェクトに取り込みます。マテリアルは適当に作ってください。 
 
 
では、さっきのBPを開いて、Meshをすりかえましょう。
このままのメッシュだと、単位や角度が違ったので、以下のようにしています。
必要に応じて、メッシュを修正してくださいね。 

f:id:digitalplus:20190609212342p:plain


 
いよいよ起動!
わーーい!!歩き回れる!Quest楽しすぎる!
 
 以上、簡単でしたよね!?
次は、点群の中にQuestで入れるようにするのが、当面の課題です!
 _____________________________________
追記!! 2019.06.10
まめおさんがQuest用のテンプレートを更新しています!すばらしい!
まめおさんありがとうございました!
 
mirako

UE4のSun Position Calculator Pluginを使って太陽をスライダーで動かす

こんにちは。natsumikanです。

先日、UE4で点群を1億点まで描画できました。

 

ここでは点群の描画ではなく、このプロジェクトで使用している「Sun Position Calculator Plugin」についてお話したいと思います。

「Sun Position Calculator Plugin」は、緯度・経度・日時等から、太陽の位置をシミュレーションできるプラグインです。

 

 とりあえず完成したのがこれ👇

 

 

 

やり方をざっくりですが説明します。

 

 

慣れてる人はドキュメント読めばわかると思います。

公式ドキュメントSun Positioning

 

 

UE4 4.21から追加された「Sun Position Calculator Plugin」を使用します。

プラグインを追加します。

f:id:digitalplus:20190312162949j:plain

Sun Position Calculator Plugin追加

・追加したらコンテンツブラウザに出てくるので、レベルに配置。

f:id:digitalplus:20190312164055j:plain

BP_SunPosition

「出てこない~」って人は、コンテンツブラウザの「表示オプション」を確認してみてください。

f:id:digitalplus:20190312164442j:plain

プラグインコンテンツを表示

 

・「BP_SunPosition」をレベルに配置したら、詳細パネルで【緯度・経度・タイムゾーン・日時・時間】を入力。

f:id:digitalplus:20190312172659j:plain

SunPosition詳細パネル

 

とりあえずここまでやったら、こんな感じになるはず


Sun Position Calculator Plugin

 

 

じゃぁこれを、プレイ中にできるようにしていきます。

 

・「Light Source」をム―バブルに。

f:id:digitalplus:20190312173508j:plain

Light Sourceをム―バブル

 

 

・スライダー用のウィジェットを新規に作る。

わからない人はココ見て→Unreal Engine | UI を作成し、表示する

 

 

 

・スライダーを追加する。(Slider_51)

スライダーの時間は好きな時間でOK。今回は9:00am~22:00pm。ただのテキストです。

f:id:digitalplus:20190312174620j:plain

Slider追加

次はグラフ

最終的にこうなる

f:id:digitalplus:20190312214722j:plain

 

 

イベントConstruct

Actor Classは「BP Sun Position」に。

f:id:digitalplus:20190312183444j:plain

 

 

On Value Changed(Slider_51)

f:id:digitalplus:20190312214438j:plain

 

 

On Value Changed(Slider_51)はデザイナーでスライダーの詳細パネルからイベントを追加。

f:id:digitalplus:20190312215157j:plain

 

MapRangeClamped

MapRangeClampedは

In Range A~In Range Bの範囲にあるValueをOut Range A~Out Range Bに変換するというノード。

今回はスライダーの0.0~1.0を9.0時~22.0時に変換という感じ。

f:id:digitalplus:20190312215410j:plain

MapRangeClamped



 ウィジェットはこれでOK!

レベルブループリントにウィジェットを表示させるBPを追加したら完了!

 

f:id:digitalplus:20190312221221j:plain

レベルBP

ぜひ試してみてください~。

 


東京藝術大学 点群データ提供元】

gluon @gluontokyo
東京藝術大学 金田充弘研究室

#デジタル芸大

UE4で点群を描画できた!

こんにちは。mirakoです。

最近はAutodeskさんのコラム効果でしょうか。ブログのアクセスが増えて嬉しいです。

もっと技術情報を出したいところですが、今日はひとつご報告。

数か月間に渡って、弊社S氏が開発中の「UE4点描」を公開しました。f:id:digitalplus:20190223151451p:plain

点群の中を軽快にかけめぐるナイト君です。ナイト君はepicアセットストアで購入しました。

動画をYoutubeにて公開しています。

t.co

 

FPSは現状これくらい。使用ビデオカードはGTX1080です

f:id:digitalplus:20190223155127j:plain

この動画は、渋谷地下3Dデータ ©3D City Experience Lab.(https://3dcel.com)【表示4.0 国際】ライセンス https://creativecommons.org/licenses/by/4.0/)を改変して作成したものです。

渋谷地下3Dデータとは、渋谷駅の地下を縦350メートル、横400メートルにわたって、3Dレーザー計測された点群データです。実際には3,393,867,155点。33億!?

f:id:digitalplus:20190223163626p:plain

そんな大きな測量データは使用したことが無いです(汗)

その間引いたデータが、以下のサイトでptsで公開されています。

3D都市データの公開 - OPEN DATA | 3D City Experience Lab.

公開データは28,624,242点。

私たちのシステムでは、256x256点のブロックにして437個使用したので、

現在、28,639,232点で表示しています

今後はもっと大きなデータで実証実験をしながら、UIやVRモードの対応をしていきます。

現時点での機能

  • PTS変換モジュール
  • 点の大きさをランタイムで変更
  • 点の色を調整
  • LOD機能

OculusGoでも実験的には描画できているのですが、速度の問題や、コントローラの調整がまだ解決していません。

 

今月の社内勉強会で、詳しい内容と今後の課題を説明します。

【第18回定期社内勉強会:UE4点群活用】

ナビゲータ:UE4エンジニアS氏

日時:2/28(木)16:00~18:00 

場所:弊社 

今回は取引企業様、パートナー様に限定しておりますので、了承くださいませ。

当面は現場の案件で実験していきますが、点群データ公開していいよ!という協力企業様、機関様などありましたらお気軽にご一報くださいませ。

 

SpecialThanks!】

今回、開発のきっかけとなったのは、Twitterでの技術交換やxRArchiメンバーみなさんのおかげです。

Unityで「点描」を実現するさまを拝見させていただいて、これは弊社の敏腕エンジニアS氏なら、UE4でも出来る!と確信しました。(自分がやるわけじゃないのに偉そうw)

ご助言いただいた龍さん、ありがとうございます。

デジタル芸大、ほんとに美しいです! 

龍 lilea on Twitter: "ノイズの豊田啓介さんの取り組まれている #デジタル芸大 プロジェクト。そちらに参画させてもらっていて。

 

ではでは、点群に関しては、また別の情報の場を検討していますので、しばらくお待ちくださいませ。

3ds Maxからdatasmithへレイヤごとに書き出すスクリプト

 
本日は、自社スクリプトを掲載しますので、ご自由にお使いください。
 
これまで、UE4へFBXをもって行きたい時には、大量なデータ管理が複雑になるため、3ds Max上のレイヤごとにFBXを書き出すフリープラグインを使っていました。
Datasmithプラグインが使えるようになって、UVアンラップ作業などは、本当にラクになったのですが、モデルの修正や追加など、3ds MaxとUE4を行ったり来たり、という作業もあるかと思います。
そこで、レイヤごとに一括書き出しができるスクリプトを作ってみました。
ご使用は、各自の自己責任ということで、、よろしくお願いします。
 
2018年12月末更新  V1.0 
 
 
仕様
3ds Max2017、2018動作確認積み
Datasmithプラグインは別途インストールが必須です。Epic公式からダウンロードしてください。
 
実行すると、Datasmithか、FBXか選べます。
レイヤも選択できます。
 
 
スクリプト導入方法
 
1. 3ds Maxのインストール先に、スクリプトファイルを保存してください。
例えばscriptフォルダとか。
2. 3dsMaxを起動したら、一度スクリプトを起動してください。
 
3. 使いやすくするためにツールバーをカスタマイズします。
 例)「カスタマイズ」メニューの「ユーザーインターフェースをカスタマイズ」で新しいツールバーを作ります。
 「カテゴリ」の中に#Unrealが出来ていると思いますので選択して、新しいツールバーにDrag&Dropします。
ダイアログを閉じます
 
 
4. 実行 
 「Select folder」で保存先を決めてください
 拡張子、レイヤを選択して「Export」を押せば出来上がり!
 
 
今後、SketchUpのレイヤをdatasmithに書き出すのも作りたいな、と思っております!

UnrealDatasmithでProductViewerを使ってみる その1


 
最近、AreaJapanコラムのほうのアクセスは好調らしく、読んでいただいている方、本当にありがとうございます。
ブログのほうにも、今後コラムで伝えきれない点や、中級者むけの内容のTipsを増やしていきたいと思いますので、楽しみにしていてください。
さてさて、遅くなりましたが、UnrealEngine,4.21では大きな更新がありましたね!
UnrealStudioもRevit、SketchUpに対応しましたので、まずは軽く検証しておきました。
環境は Autodesk Revit2019, UE4、 4.21.1です。
Revitの対応は2018.3以降で、SketchUPはPro版2018以降ですのでご注意ください。
公式リリースノートはこちらから

Revit datasmith Exporter

ダウンロードはこちらから。今年の9月くらいまで無料期間が延びましたね。
 
インストールと書き出しについては簡単なので省略します。3DViewから書き出します。
適当にマテリアルいろいろ作ってみました

ProductViewerテンプレートでインポート

まず、新しいテンプレート「ProductViewer」で起動します
すぐにプレイできるようにしてあるので、BPを改良して使えそうです。
アウトライナを見てみます。
「Interactive_Root」の下にCADデータが入っているようです
このシーンには、「ProductViewer_Collector」というBPが入っています。
その詳細パネルでは、「Interactive Root」で、シーン内のアクタのRootが選択されていますので、どうやら、ここで、新しく自分で作ったDatasmithのSceneアクタに切り替えれば良いみたい。
その下には、OrbitかFlyingmodeかを選択できるようになっています。
 
 
 
では、新しいフォルダを作ってインポートします
 
インポートがうまく行ってないのがけっこうあります(涙
ガラスや、メタルも継承されていないのは、おそらく、Revit2019の新しい物理アセットを使ってしまったのがいけないのかと思います。一般マテリアルアセットで作成したものが、うまく互換できているようです。この辺は、詳しく調べるとして、今回はテンプレートで遊んでみたいと思います。
 
 
では、アウトライナから、SampleのInteractive_Rootと、その子になっているサンプルアクタを消します。
「ProductViewer_Collector」の詳細パネルで、新しくインポートされたRevit_testアクタを指定します。
 
これでプレイしてみましょう。Startを押します。VRにも対応してるようですが、デスクトップで開きます。
 
 
クリックしないで、カーソルオーバーで、黄色くハイライトされるの、いいですね。
クリックすると、Zoomしてくれます!
 

Revitのメタデータを表示できるようにしよう

今後期待できるのは、このBIMデータが参照できる点ではないでしょうか。
I
メッシュの詳細パネルで、AssetUserDataを確認できます。
Revit上のパラメータの「キー」と「値」が継承してありますので、
これの「マテリアル」キーが表示されるようにテストしてみましょう。
 
 
以下の公式動画でBPでの説明がされていますので参考までに。「4.3インポートされたメタデータの使用」
 
しかし、公式の説明ではまずマウスについてのノード説明があるのですが、
こちらのテンプレートは、既にマウス使えてますので、以下のノードを省略しますね。
では、改良して、「クリックしたら、値が表示される」ようにします。これは動画の説明と同じです
レベルBPで、検索ワードにmouseなど入力して、「マウスの左ボタン」イベントを作り、ブランチ から、「get hit result Under Cursor for Objects」をつなぎます。この「get hit result」はすっごい便利。あとは、以下のように、[Get Datasmith User Data Value for Key]ノードを作ってください

f:id:digitalplus:20190105202803p:plain

BP

 
 
プレイし、クリックしたら画面に表示されます
 

カーソルオーバーで、値が表示されるようにする

別の方法です。
このテンプレートのBPを加工してやってみます。
まず、先ほどのレベルBPのノード消します。
Blueprintsフォルダを見ると、Mouse操作用のBPがありますので開きます
「ProductViewer_Mouse_Pawn」です
イベントグラフをみると、「Bind Highlightable」があります。
これが、カーソルオーバーで、黄色くハイライトするノードっぽい!
この後ろに[Get Datasmith User Data Value for Key]ノードつないで表示するだけ!簡単!

f:id:digitalplus:20190105202957p:plain

datasmithノード
 
思ったより簡単にできました。
 
PrintStringではデザインがかっこ良くないので、次回はウィジェットで値が表示されるようにしたいと思います!
 
mirako
 

新年のご挨拶

f:id:digitalplus:20190102161512j:plain

明けましておめでとうございます。

2018年も、たくさんの方に支えていただきました。

北九州イノベーションギャラリーでの自主作品コンテンツの発表に始まり、Tooさんでのセミナー登壇、7月から始まったAutodeskコラムの執筆活動と、OUTPUTにあわただしく走り回ったような気がします。

周囲の方が、そういった機会に気にかけてくださり、声をかけて頂くことが、何より嬉しく、出会いの多い1年でした。

その一方で、通常業務に追われ、新しいUE4の開発が思うように進まないもどかしさもありました。

これまでどおり、パース業務も大切ですが、ゲームエンジンや新しいテクノロジーを使って、どうやって建築業界の問題を解決していくか、人と街をつなげられるか、を引き続き考えて、提案型のコンテンツ開発を続けていきたいと思います。

少しづつですが、2015年ごろから種まきしていた活動が、VR時代に後押しされて、進みはじめた感触があります。

2019年は何かしら、建築におけるゲームエンジン活用を発表できるように計画を進めておりますので、楽しみにしていてください!

今年もどうぞよろしくお願いいたします。

 

  スタジオ・デジタルプラス 代表 大橋ユキコ

 

7月のMeetupが記事になりました

こんにちはmirakoです。

11月は何かとアートイベントも多いですし、建築業界はすっかり年末モードでお忙しいことと思います!

ところで、7月に東京、大阪、福岡とツアーさせていただいた、Too建築ビジュアライゼーションMeetup、内容が公開されました。

あまりの緊張に、しどろもどろになっていたり、動画が再生されなかったり、本当に

ヘタなトークでしたが、こちらの記事では、とても上手くまとめて頂いています。

関係者の皆様、ありがとうございます。

www.kviz.jp

 

今年は熱いメッセージを業界内外に発信したいという思いで、よく活動した1年ではありましたが、実際のところ、あまりOutPutはできていないです。来年は技術的な知見のOutputを積極的にしたい!

あ、気づくともう年末の挨拶になっている・・・。

今年中にまた何かブログ書きます。書きます詐欺って言われてそうなので、書きます!

(宣言しておく)

ではでは年末まで、パース屋さんは納品ラッシュが続くと思いますが、寒さに負けず、乗り切りましょう!!