1980年、文教大学が日本で初めて立ち上げた情報学部。35年の歴史を持つこの学部は、情報技術を使ってどう社会を変えるのか、というシステムの研究が必要になる未来を見据えて作られた。
そして今、湘南キャンパスに拠点を構える情報システム学科にて川合康央先生が行っている研究は、Webやインタラクティブコンテンツ、ゲーム等の情報空間から、CGやCADを用いた景観シミュレーションによる都市空間に至るまで、幅広いジャンルにおけるユーザビリティに配慮したヒューマンインタフェースデザインだ。
その代表的な研究の一つ「都市空間シミュレーション」は、まちづくりにおける景観と災害に対する関心が高まる中、都市空間のイメージをわかりやすく伝えるため、Unityを用いて安価で高品質な3次元都市空間シミュレーションシステムを開発するというものだ。一体どのようにUnityを教育に役立てているのか、川合先生にお伺いした。
産学連携プロジェクト「都市空間シミュレーション」
川合先生が2013年から研究を行い、アップデートし続けている「都市空間シミュレーション」。国土地理院が公開しているオープンデータ「基盤地図情報」から得た地面の高低差などの3DデータをBlenderで3Dモデルに変換し、Unity上で再現している。
「まず、景観シミュレーションを作成しました。Unityを使うことで、建物の外壁や高さ、昼と夜の景観の見え方などを簡単に変更できます。さらに、このシステムを見た地域の方から依頼を受け、江戸時代の宿場町を再現する景観シミュレーションも作成することとなりました。Unityでのレンダリングを工夫することで、浮世絵風の加工もできました」
シミュレーションすることで、意外な事実がわかった。
「3Dモデルにして高さ情報を持たせることで、Unity上で津波や水害などのシミュレーションが出来るんです。街のモデルに、時速40キロぐらいの津波に相当するモデルを当ててみました。このデータでは道路や建物をレイヤー分けしているのですが、行った実験は、道路レイヤーの上に避難者を配置して、自治体でしている津波避難ビルに指定した速度で向かわせるというもの。それでわかったのが、実は内陸に避難ビルが少ないということ。自治体は海側に避難ビルを作りがちですが、避難者は内陸の方に逃げていくので、避難ビルが足りなくなるんです」
実際に、神奈川県藤沢市をモデルにした実験では、最も高い場所が江ノ島なのに、避難者は海から逃げようとして陸地へ向かってしまうという結果が出た。このようなシミュレーションを産学連携で行い、災害時のサイン計画や人間行動等の分析に活用している。
現在は、国土交通省が主導する、日本全国の3D都市モデルをオープンデータとして公開している「PLATEAU」のデータを使った研究が進行中だ。
「現在、Unity上でドライブシミュレーターを開発中です。地図に実際の道路と同じ高低差をつけることで、自動運転の学習用の環境を作ることができます。そうすると、実際に道路を走った時に車のサスペンションの動きがわかり、燃費効率を上げるといったシミュレーションが出来るので、車の開発に役立てることができます。他にも、事故の多い交差点にサインを置くことで事故を減らすことができないかという研究、フォトグラメトリのデータを入れて都市空間をデジタル化し、メタバースを作るという研究も行っています」
汎用性の高い3Dの都市空間をどこよりも早く実現する、それが今の課題だという。
FlashからUnityへ
元々、川合先生の研究では、Flashでインタラクティブコンテンツを作っていた。
「Flashのメリットは、アプリの中で絵を描いて、その絵に対してプログラムを貼りつけて動かす構造が分かりやすいので、デザインやプログラミングに興味がない学生でも使いこなせたことです。2013年頃にFlashが使えなくなり、色々開発環境を試してみたところでUnityに出会いました」
まず試してみたのが、コンピュータグラフィックス、CAD、空間デザインの授業でキャラクターを歩行させるリアルタイムレンダリングだ。
「学生がCADで作った建物のウォークスルーをUnity上で再現したところ、非常に評判が良かったので、Unityに移行していきました。UnityとFlashの共通点は、モデルや自分で描いた絵に対してプログラムを貼りつけられること。また、Unityでは移動のプログラムと発生するプログラムを分けて書くことができるので、コードの修正点がわかりやすいですし、視覚的にプログラムの構造を理解できる点がFlashより使いやすいんです。Unityはユーザーが多いので、詰まった時に教員に聞かなくても学生がインターネットで解決策を調べることも出来て、学習環境の構築もしやすい。また、CADデータをそのまま3次元データとして使えるなど、3Dデータを直接扱うことが出来るのも大きなメリットですね。学生たちに指導する際には、モチベーションの上がりやすいゲーム制作を行うことから始めています」
学生たちにとって、最も身近な情報システムはゲームやスマートフォンアプリケーションだ。もちろん金融や業務システムなど多くの情報システムがあるが、学生の段階では触れる機会がほとんどない。そこで最も身近なゲームを入り口にすることで、学生に情報システムを理解する上で必要な抽象化の概念をモチベーション高く身に着けてもらう。
「一年生の後期、一般教養よりも前にUnityでシューティングやアクションなど簡単なゲーム制作を始めてもらいます。『プロジェクト演習』という必修項目では、六人が一チームになって、学生自ら企画し実装まで行うので、ゲーム制作を通して、プログラミング、モデリング、さらにはネットワーク、インターフェースまで考えなくてはならない。それぞれの専門分野の先生に教えを乞うことで、幅広い知識を得ることになります」
これが学生にとって大きな力になる。
Unityで、まだ誰も行っていない研究を実現する
「研究室では、どうしても担当教員の研究に寄った課題を学生が選んでしまいますが、私はもっと自主性のある研究をしてほしいと思っています。そこで、例えばデジタルのシステムとコンテンツを使って社会問題を解決するという課題を出してみる。そして、新規性も必要です。学生の経験から出るアイデアというのはどうしても幅が狭くなってしまうので、先行事例を調べることが大事なんです。何度も壁にぶつかりながら血眼になって先行事例を調べていくことで、ようやく誰も実装したことがないアイデアに辿り着くことができます」
また、一つのアイデアでは凡庸な研究になるが、新たな要素を組み合わせることで新規性のある研究になることもある。
「Unityは、様々なデータをインプットすることができるのも多様な研究をする上では魅力です。既存のアセットを使うことで出来ることの幅も広がります。例えばOpenCVのアセットを使って顔画像認識を行ってメイクのアドバイスをしたり、ARのアプリで魚をさばく時にその魚のどこに骨があるかを表示することで調理しやすくするという研究も生まれました」
新規性のある研究を行うにあたって、Unityでプロトタイプをすぐに作れるのもメリットだという。「荒削りであっても、動くものをUnityで作って、学会や展示会など学外で発表することを推奨しています。さらに、研究を英語にして国際会議に出ると世界で初めてという形でクレジットが残るので、就職活動の際に有利になります。また東京ゲームショウでも展示を行っているので、卒業生含めゲーム業界の方にも見てもらう機会ができて、繋がりもできる。昔はゲーム業界に就職したいと言うと家族から猛反対に遭うことが多かったのですが、今や、親御さんが情報技術者の学生も多く、IT・ゲーム業界への就職を親御さんも応援する時代です。学生時代の研究をどんどんセルフブランディングという形で使って、未来に役立てて欲しいと思っています」
入学したきっかけは、川合先生のUnityの授業
川合康央研究室の学生、松井祐希さんと稲垣誠さん。システムエンジニアやデジタルクリエイターを目指し入学してくる学生が多い情報システム学科で、既にシステムエンジニアとして就職が決まっている二人だ。
「入学したきっかけは、オープンキャンパスで受けた川合先生のUnityの授業です。Unityを使うと、こんなに簡単に誰でもゲームが作れるんだ、勉強したいと思いました。ゲームを動かすC#やJavaなどのプログラミングを学んで、その分野に就職することを目指して情報学部に入りました」(松井)
「私もきっかけは川合先生です。東京ゲームショウに出展しているということで、ゲームが好きだったこともあって入学しました」(稲垣)
彼らもUnityを活用した研究を行っている。
「二年生の時に、学食の混雑状況がわかるシステムを作りました。卒業研究では、コロナ禍ということもあり、渋谷や新宿に設置されているライブカメラから混雑状況を認識して、PLATEAUの3Dモデルの上で可視化するというシステムをUnityで作っています。Unityだとデータを入れて自由に動かすことができますし、データベースをリンクできるのが強みです」(松井)
「私が作ったのは、Arduinoを使い、靴に加速度センサーをつけてプレイヤーの心拍数を取って、リアルタイムの心拍数からUnityで作ったリズムゲームに変化を与えるという作品です。心拍数が早くなるとゲームも同期して早くなるというものです。指導されたのは、既にあるものではなく新しいものを作りなさい、ということでした」(稲垣)
「Unityが使いやすいのは、色々なビューがあるので、直感的に配置がしやすいところです。プログラミングって、画面を見た瞬間に『ちょっと億劫だな』と思ってしまうことが多かったのですが、Unityは開発者が見やすいからとっつきやすいとすごく思います」(松井)
「Unityは、ある程度の機能が最初から揃っているところが本当に親切で、初心者でもいろんなことができるなと思いました。アップデートを重ねるたびにいろんな機能がまた増えていって、ここが楽になった、ここが分かりやすくなったという驚きが毎回あって助かっています」(稲垣)
「卒業後はプログラマ、SEとして働きますが、コロナがきっかけで行った研究などをもとに、社会に必要とされる需要性があるようなソフトの提案や開発に携われたらと思っています」(松井)
「私は業務システムやECサイトを作るような仕事に携わります。幅広いことを学びつつ、周りから信頼されるようなエンジニアになりたいです」(稲垣)