SIGGRAPH 2016 レポート
2016/11/07
  • このエントリーをはてなブックマークに追加

はじめに

カブクの甘いもの担当の高橋憲一です。
7月24日から28日までアメリカのアナハイムで開催されていたコンピューターグラフィクスの国際カンファレンスであるSIGGRAPH 2016に参加してきました。冒頭の写真はレセプション会場で出されていたSIGGRAPHロゴ入りカップケーキです。SIGGRAPH参加の目的はもちろんコンピューターグラフィクスの最新動向の収集ですが、甘いもの担当としてこれは外せません(^^

SIGGRAPHとは

SIGGRAPHはコンピューターグラフィクス(以下CG)に関する世界最大の学会で、毎年夏に(基本的には)アメリカで国際カンファレンスが開催されます。最新の研究成果の論文発表が行われるのはもちろんのこと、世界各地からCGに関わる人が集まるためお祭りのような側面もあり、期間中は様々な催しがあります。ここではその中から、Technical Papers、Electronic Theater、Real-Time Live!、Courses、Exhibitor Sessions、BOF、Emerging Technologies、Exhibitionについて幾つかかいつまんでレポートします。

Technical Papers

初日に到着してすぐに参加したのはTechnical Papers Fast Forwardというセッションです。会期中Geometry, Fabricating Structureなど38ものカテゴリに別れて論文発表が行われるのですが、このセッションではその全ての論文の概要を一度にまとめて見ることが出来るというもので、各自30秒という短い時間の中で自分の研究成果をアピールするために様々な趣向を凝らして発表します。
全ての論文のリストはこちらのサイトにありますが、3Dプリントに関することを生業としているカブクのエンジニアとして注目したのは下記の4つです。

COMPUTATIONAL DESIGN OF STRUCTURES, SHAPES, AND SOUND:
Non-Linear Shape Optimization Using Local Subspace Projections
3Dプリンタで何らかのオブジェクトを造形する場合、内部を中空にすることで重量を軽くしたり材料を減らしたりするのですが、そのような中空なモデルの構造を解析して、固有振動数、質量特性、固体の構造強度において局所最適化を行って部分的に厚みを加えることで壊れにくい形状にする方法。部分空間での局所勾配を元にした形状最適化をすることで、これまでの手法よりも高速化と信頼性の向上が図れるとのことです。

DEFORMABLE SURFACE DESIGN:
Beyond Developable: Computational Design and Fabrication with Auxetic Materials
縦横に伸びる構造を作成して、顔の形や靴など任意の形状にフィットするようにするための方法。

Computational Design of Reconfigurables
ベンチからテーブルに変形する家具や、折りたためる自転車などを実現できるように、可動部の衝突の検出とその修正を行うための手法とツール。

GEOMETRY:
Mesh Arrangements for Solid Geometry
winding number(回転数)による内外判定を発展させ、複数コンポーネントによるモデル、自己交差を含むモデル、マニフォールドではないモデルを、領域を分けて保持するMesh Arrangementsの中で解決し、ブーリアン操作を行ってソリッドなモデルとしての出力を保証する手法。非常に堅牢なアルゴリズムで、Thingiverseの10000のデータセットで検証してあるとのことです。
私の中で今回最も参考になった論文です。PWN (Piecewise-constant Winding Number)って何?というところから始まって、引用されているRobust Inside-Outside Segmentation using Generalized Winding Numbers(Winding NumberをMeshの内外判定に一般化)というSIGGRAPH 2013の時の論文に辿り着き...といったように、CGに関わっていながら知らなかったことに焦りを感じながらも論文を追いかけて知識を探求していく醍醐味を味わうことになりました。

その他に、個人的に最近VRに関する翻訳本を出した関係で気になったものとして、

CAMERA CONTROL and VR:
Mapping Virtual and Physical Reality
実際の部屋のサイズよりも広いバーチャルな空間を歩きまわることが出来るようにするために、バーチャル空間と実際の部屋の平面マップを作成し、バーチャル空間の外観を十分なクオリティと性能で歪めることで、限られた空間である実際の部屋のサイズにマッピングする手法。部屋の中の障害物も考慮し、VRのヘッドマウントディスプレイをかぶって歩いている間に壁や障害物にぶつからないように歩くことが出来るというものです。

USER INTERFACES:
Efficient and Precise Interactive Hand Tracking Through Joint, Continuous Optimization of Pose and Correspondences
Kinnect等の奥行き情報を持つカメラを使用して、VR空間での手指のトラッキングを高速に処理する方法。スムースサーフェスモデルを使用しながらもCPUだけでリアルタイムに実行可能で、タブレットでも使用できる軽いアルゴリズム。VR空間の中で思い通りに動かせる自分の手があると没入感が増すので、今後のコンシューマーレベルの製品への投入に期待が高まります。

Electronic Theater

SIGGRAPHは研究成果の発表の場ではありますが、コンピューターグラフィクスを扱うとあってハリウッドの映画産業やゲーム等のインタラクティブな作品にも絡むような様々な企画があります。その一つとして、厳選された映像作品を2時間程にまとめて上映するのがElectronic Theaterです。ハリウッドの大作映画のCGエフェクトのメイキング映像やオリジナルストーリーの作品があり、今回はスクエア・エニックスのTHE UNIVERSE OF FINAL FANTASY XV等、日本からの作品も入っていました。

※このElectronic Theaterの内容を含むシーグラフ東京主催のSIGGRAPH Traveling CAF 上映会が2016年11月18日に女子美術大学の杉並キャンパスにて行われるそうです。

Real-Time Live!

動画ではなく正真正銘、リアルタイムでその場で動かしてデモをすることにこだわったセッションです。ネットワークやマシンのトラブルなど、リアルタイムデモに事故はつきもので何が起こるかわからない...という感はありますが、そんな中で果敢に挑む登壇者の皆さんが勇者に見えてきます。
どのデモも見事なまでにリアルタイムでアニメーションが動くのですが、個人的に最も凄いと思ったのは Pixar のデモで5200万もの数のポリゴンのデータが3秒でロードされるところです。どれだけ高速にロードできるかはデータのフォーマットにもよるので一概には言えませんが、rinkakのバックエンドで動いているエンジンも3Dモデルデータの高速ロードを売りにしているので、目の前でこんな凄いものを見せられるとエンジニア魂に火がつきます。

YouTubeでこのセッションの動画を見ることができますが、Pixarのデモの該当部分に頭出しをしたリンクはこちらです。


Courses

Computational Tools for 3D Printing

3Dプリンティングに関する現時点のハードウェア、ソフトウェア全般を網羅して解説するセッション。3Dプリンタの各種方式および素材の特性など多岐に渡ってまとめられた講義資料も公開されており、3Dプリンティングに関わる人や興味がある技術者にとって必見の内容だと思います。

Exhibitor Sessions

NVIDIA

Vulkan and NVIDIA: A Deep Dive

このブログで前に書いた「Vulkanを試してみた」という記事の中で「teapotを描画するために如何にたくさんのコードを書く必要があるのか」ということを書いたように、低レベルなAPIでGPUを駆使して高い性能を絞り出すVulkanを使いこなすにはOpenGLと比較しても相当量のコードを実装する必要があるのですが、NVIDIAが用意したVkcpp(C++のラッパー)を使うと750行のコードを200行で済ませることができるという話がありました。資料と動画がこちらで公開されています。

Google

3D Reconstruction with Tango

Tangoで3D空間を認識する技術の説明。部屋の中に入り切らないほどの人が集まった盛況なセッションでした。このセッションの他にも、Real-Time Live!でのデモ、およびExhibitionでプレイアブルな展示もある等、今回GoogleはかなりTango推しでした。

Microsoft

Why you should be rendering in the cloud?

AzureのN-SeriesのVMインスタンスではNVIDIAのGPUを使うことができるという話で、WindowsだけでなくLinuxでも使用可能(AzureのVMの4つに1つはLinuxらしい)。GPUのパススルーセッティングでの性能はLinuxでもWindowsでもベアメタルに迫りつつあるようです。このセッションの他にExhibitionでもブースを構えてアピールしていました。


BOF (Birds Of a Feather)

Khronos OpenGL and Vulkan

Unreal EngineやDoomのVulkanポーティングの話を聞くことができました。その時の動画が公開されています。
新しいグラフィクスAPIであるVulkanを使って実装する際にパイプラインを作成する処理があるのですが、その部分の処理は "toooooooo slow" なので気をつけなければならない...といったようなノウハウが数多く披露されました。
他にも、macOSとiOSでもVulkanを使うことができるMoltenVKの展示があり、Appleが用意しているグラフィクスAPIであるmetalの上に実装されているため、高いパフォーマンスを出せるようです。

Emerging Technologies

Realiteer

CardboardやGear VR等のモバイルVRと組み合わせて、特殊な模様を印刷した紙を組み立ててスマートフォンのカメラで認識させることでVRのポジショントラッキング付きコントローラーにできる仕組み。デモのVR空間の中ではこの紙の仕組みがボウガンとして見えていて、簡易な仕組みながらなかなかよく動いていました。組み立ての過程とデモの動画がこちらにあります


名物 Walking Teapot

CGに関わる人にとってはおなじみのモデルであるTeapot。
SIGGRAPHでもElectronic Theaterのオープニング映像など様々なところに出てきます。Pixarでは毎回趣向を凝らしたぜんまい仕掛けのWalking Teapotを限定配布しているのですが、今年はそれがなんと、サメの形になっていました。大きく避けた口の絵と、ふたの持ち手はもはやTeapotの原型をとどめておらず背ビレの形になっているという凝り様です。


Exhibition

ExhibitionはCGに関わる各種メーカーや団体がブースを設けている、いわゆる展示会です。シーグラフ東京主催のSIGGRAPH 2016報告会ではこのExhibitionパートの報告を担当致しました。以下はその時のスライドです。

いずれは発表する側に...

筆者にとっては10年ぶり、4度目のSIGGRAPH参加でした。毎回まだまだ知らないことだらけだと大きな刺激を受けて帰ってくるのですが、いずれは何かしらの形で発表する側に回りたいという野望を持っております。

カブクではそんな野望を一緒に実現してくれるようなグラフィクスプログラミングに精通したエンジニアを募集しております。