三谷先生の研究室で行われている、研究の概要を教えて下さい。
私の研究室では、主にコンピュータグラフィックスを研究しています。私自身 は、CGで静止画や動画を出力する前の段階で必要となる、3次元の形を設計する ユーザーインターフェイスや、データ構造などを長年研究してきました。私の研究室の学生は、CGの基礎から応用まで幅広い研究に取り組んでいます。また、CG とは少し関係が薄いと思われるかもしれませんが、幾何学的に興味深い、折り紙 の設計技術に関する研究も行っています。
コンピュータグラフィックスの研究では、実世界の物や風景をそっくり再現しよ うという目標があります。また、頭の中にイメージしたものを自由に表現するた めにCGが使用されることがあります。
CGの技術をものづくりに役立てようという研究にも取り組んでいます。形が空中 に浮いているものや、物と物が交差して貫通しているようなものは実際には作れ ないわけですから、今度はいろいろな制約の中で形を作る必要がでてきます。折 り紙の場合、一枚の紙を折ってできる形でなくてはいけないという制約が非常に 厳しいので、興味深い研究対象になります。そういった形をどういう操作で作れ るようにするのか、といったことや、どういったデータの持たせ方をするとよいのか、というような研究をしています。
他にも、既にあるCGの技術を新しい分野に応用するために、どうしたらいいかというようなこともやっています。
研究内容を企業とコラボさせたり、共同研究することはありますか?
企業からお問い合わせいただく中で、一緒にうまくできそうなものがあれば共同研究をしましょう、という話をさせていただいております。
これまでにいくつかの企業様と共同研究してきましたが、1つ具体的な例を挙げ ると、服の画像を違和感なく合成する研究があります。オンラインで服を買うと きに、パソコンやスマホの画面で試着できるアプリケーションに活用できます。
これ以外に、折り紙のように一枚で形を作るという技術は、工業分野にも役立つ 素材の活用方法なので、いろいろな応用が考えられます。折り紙の技術が新しい服のデザインに活かされたこともありますし、新しいパッケージや箱のデザインなども考えられます。
三谷先生の研究室ではどのようなツールやプログラム言語を使いますか?
専門学校で使用されるツールに、Unityなどがあります。このようなツールを使ってコンテンツを作るというのが世間一般だと思うのですが、我々はそのツー ルを作る立場です。
CGで画像や映像を作るということは、画面の1ピクセルずつの色を計算で決定するということです。ハードウェアに近い、ベーシックなことなので、基本的にはC言語を用いることがほとんどです。
一方で、アプリケーションよりの開発の場合にはJavaを使用することもあります。
研究室に所属する、今井さんの研究内容を教えて下さい。
リアルタイムで、液体を描画した際の品質を向上させる研究しています。ゲーム など、インタラクティブなアプリケーションで使われている液体の描画というのは、液体表面だけの反射および屈折を計算しているので、コップに入った水の絵 を出すと、薄っぺらな絵になってしまいがちです。私はコップに入った水の手前 側と、奥の方の両方の屈折を計算することで、奥行き感のある液体の描画を実現 する研究をしています。
研究室に入る前にも自分でプログラムを書いていました。授業の課題で3Dのレースゲームなど、いくつかゲームを作るということはやっていましたし、サークルのウェブサイトを作ったこともあります。私はゲームが好きで、そのあたりの研究ができないかな、ということで先生の研究室に入りました。
最後に、ご覧の皆さんに先生から一言お願いします。
プログラミングは面白いということを、皆さんにお伝えしたいです。でも、何で面白いのだろう?どこが面白いのだろう?と思う方もいると思います。
私が学部3年生の時、ちょうどインターネットが普及しはじめたときだったので、ブラウザ上で動作するJavaAppletをたくさん作成しました。世界中で、僕が作ったプログラムで遊んでもらえるなんて、こんな面白いことはない!と思いました。それをきっかけにプログラムにハマり、より深くJAVAの勉強を始めまし た。「好きこそものの上手なれ」という言葉通り、それに勝るモチベーションはないと思います。面白くなるためには、頑張って第一歩を踏み出し、自分でモノを作る楽しさ、というものを知ってもらいたいです。それが、プログラミングを作る上でなくてはならないことのひとつだと思います。