デジタルトランスフォーメーションの先をよむ - 今、そこにある未来 -プロフェッショナル連載記事

DXの先には何があるのか?ゲームエンジンと、ものづくりの世界

今回は、製造業のVR活用の先駆者であり、このゲームエンジンについても詳しい株式会社プロノハーツ 代表取締役 藤森匡康氏(長野県塩尻市)に、VRとゲームエンジンの活用についてお話を聞いてきました。

ゲームエンジンがものづくりの世界にやってきた

ゲームエンジンがものづくりの世界にやってきた

皆さんは、ゲームエンジンという言葉を聞いたことはありますか。

ゲームエンジンとは、 スマートフォンをはじめとするゲームで使用される3D描画処理、物理演算、衝突判定、サウンド入出力などの処理をあらかじめ組み込んだソフトウェアのことです。ゲームコンテンツメーカはこの組み込みソフトウェアを自社で作成せずに、ゲームエンジンに任せます。これにより、開発工程は効率化され、コンテンツ自体の品質向上により多くの時間をかけることが可能になります。

これまで、3Dの形状は3D CADファイル形式や変換したビュワーファイル形式によって表示されてきましたが、どうやらこのゲームエンジンによってその表示を行う技術が進んでいるという話を聞きつけました。

では、このゲームエンジンですが、どのように「ものづくり」の世界に影響を与えているのでしょうか。

 SOLIDWORKSもバージョン2019から、SOLIDWORKS CADファイルを、拡張子glbまたはglTFファイル形式にエクスポートできるようになりました。この形式のファイルには、形状、外観、テクスチャ、アニメーション、モーション スタディ、コンフィギュレーション、表示状態、分解図、照明、メタデータなどの情報が含まれています。これらのファイルを、UnityUnrealなどのプラットフォームにインポートして使用することができます。

SOLIDWORKS2020指定保存画面

SOLIDWORKS2020 指定保存画面

なぜ、SOLIDWORKSではこのファイル形式での保存ができるようになったのか。

SOLIDWORKSでは、eDrawingsというビュワー製品によってSOLIDWORKSデータファイルを VR(Virtual Reality:仮想現実)モードで開くことができますが、glbまたはglTFファイル形式のデータをUnity や Unrealにインポートすることで、さまざまな拡張現実(AR)、VRなどによりリアルな3D形状を見ることを目的にしたからではないでしょうか。

これまでは、3Dデータといっても、フラットパネルディスプレイ上で没入感の効果が小さい3Dモデルとして見てきましたが、VR用ヘッドマウントディスプレイ(HMD)を使用してデザインレビューなどを行う場面が普及していくことでしょう。

Unityって何?

Unityについて説明する藤森氏

Unityについて説明する藤森氏

ゲームをすることのない私にとっては、このゲームエンジンの話を聞くのも初めてでした。ゲーム開発には良い製品を早く市場に出すための高効率化が求められています。例えばゲームアプリケーションの動作に必要なグラフィックスやサウンド、物理シミュレーション、シーンやコードのエディタなどをその都度開発していては効率が上がりません。UnityとUnreal Engineは、このゲームエンジンの開発を行い、ゲーム会社で使用されている代表的なメーカになります。

それぞれの特徴を簡単にいうと、Unityは「プログラミングがしやすく、3Dゲーム開発が手軽にできる」とのこと。一方で、Unreal Engineは「高度なグラフィックにある」 とのこと。(藤森氏)ちなみに、有名なゲームでは、「Pokémon GO」はUnityが、「FINAL FANTASY」はUnreal Engineが使われていると聞いています。

それでもこの世界に詳しくない私にとっては、難しい話なのですが、藤森氏の話は続きます。

「CADの世界とCG(Computer Graphics)の世界は、製造業では別々の世界のように存在していたが、3Dを可視化する上で、さらにARやVRを使う上では、3Dゲームの世界で成長してきたCGの活用によって3D CADデータとCGの連携性ができたと考えることができるよね」

この話でイメージがつきました。ARやVRを使用する時、また産業機械(装置)のような大容量データを見ようとすれば、その処理の速さが必要になります。ゲームエンジン特有の リアルタイム性や高品質な描画能力が生きてくるということなのでしょう。

ただ、本当にこのゲームエンジンの技術が製造業の世界で活用できるのでしょうか。

製造業DR pronoDR3.0

製造業DR pronoDR3.0

プロノハーツ社では、VRシステムによりデザインレビューを行うpronoDRという製品があります。“すべての人が使えるVR”を目指したもので、まさにUnityが使われています。

その特徴ですが、

  • CADデータ変換が簡便で早い
  • 部品の選択・移動ができる
  • 選択部品のガラス表⽰などの表⽰機能がある

 

Unityを使ったDRシステムでは仕事のやり方が変わります。

  • 大型装置を卓上に置いたイメージで、複数人でDRを行う
  • VR画面へ直接マークアップ(注記・配線配管)を行う
  • CADを開かなくても、寸法・距離測定ができる

 

将来はこんなこともできそうです。

  • 複数拠点で同じ画像を見ながらDRを行う
  • デジタルスキャニングした点群データの取り込み
  • AR/MRへの展開

点群データ

空間座標(x、y、z)による位置情報と色情報を持った点の情報を集めたデータのことで、3Dのレーダースキャナーによってこのデータを取得することができます。

私もこのVRシステムを体験しましたが、ソフトウェアで表示画像のひずみなどを補正することで、きれいな画像をMeta Quest2を使って見ることができました。高級なレンズを持った高額なHMDを使わなくてもよいことはコストメリットが高いといえます。

これもまた、Unityが、MetaやHoloLens(Microsoft)といったAR/VR/MR対応デバイスなどに幅広く対応しているからでしょう。今後もこのような機器は軽量小型化、高精細化など進化し続けるので、マルチプラットフォーム対応は、ユーザーメリットが高いといえます。

Unityでのシミュレーション

藤森氏から「Unityを使用すればシミュレーションもできるよ」という話がありました。私も過去にメカトロシミュレータによる動きのシミュレーションを行っていましたが、慣性力を反映することは容易ではありませんでした。

またSOLIDWORKSでもMotionという機能によって動きのシミュレーションを行いますが、その目的は、力学的なパラメータを求めるためのものなので、動かすという設定では、動くための設定を意図的に行うことから、必ずしも正確というわけでもないという印象をもっていました。

UnityROSの連携によって複雑なロボットシミュレーションも可能になっています。UnityがROSと連携できるようになって、ロボットの状態をUnity VRで見ることができるようになったと私は理解しています。

ROS(robot Operating system)

ロボット開発のために必要なライブラリとツールを持つオープンソース(ソースコードを広く一般に公開していて、だれでも自由に扱うことができる)のプラットフォームです。

次の画像は、工作機械の中でクーラントの吐出をシミュレーションしたものです。このような解析は、流体解析や粒子法といった手法を使います。

Unityによるクーラントの吐出シミュレーション

Unityによるクーラントの吐出シミュレーション

これら手法を使いこなすには、相当の技術が必要ですが、プロノハーツのエンジニアがUnityを使ってシミュレーションを行ったとのことです。あくまでも、液体の吐出状態を可視化したものですが、設計段階でノズルの向きや形状の変化によってこれをシミュレーションできるというのは効果的です。

これらのシミュレーションについても、CAEとCGそれぞれの世界の住み分けはあるものの、その世界は近づいているということがいえるでしょうし、「VRによって、よりリアリティのある検証ができるようになるのかな」と感じました。

さらには、実空間からIoTによるセンシングで多くのデータが集められ、このデータはゲームエンジンを使った空間の中で、シミュレーションに使われることや、たり、VRやAR、MR(Mixed Reality:複合現実)での表示が行われることで、デジタルツインの世界は広がり、進化していくことでしょう。

まとめ

今盛り上がっている製造業のDXのその先には、新たな勢力として、ゲームエンジンを利用した仕組みがものづくりの世界に普及していく可能性を実感しました。

この普及によって、「仕事のやり方」は今よりもさらに進化することでしょう。