お気に入りタイトル/ワード

タイトル/ワード名(記事数)

最近記事を読んだタイトル/ワード

タイトル/ワード名(記事数)

LINEで4Gamerアカウントを登録
[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2014/03/21 18:46

イベント

[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開

LiquidFunの解説を担当したWolf Dobson氏(Google Developer Program Engineer,Google)
画像集#002のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開
 「Game Developers Conference 2014」(以下,GDC 2014)2日めとなる北米時間2014年3月18日,Googleは,開発者向けサブイベント「Google Developer Day」の実施に合わせ,2Dゲームで粒子や流体を扱うためのオープンソース物理エンジン「LiquidFun 1.0」(以下,LiquidFun)をリリースした。
 Google Developer Dayでは,当然のようにそのLiquidFunに関するセッションが用意されていたので,今回はその内容を中心に,Google Developer Dayで明らかになった関連サービスのアップデートをまとめてみたいと思う。

 なお,解説セッションを担当したのは,oogleでデベロッパプログラムエンジニアを務めるWolf Dobson氏だ。


Box2Dをベースに粒子や流体を扱う物理エンジン

LiquidFun


 冒頭でLiquidFunは,2Dゲーム向け物理エンジンと述べたが,その正体は,Unityでも利用されているポピュラーな2D用物理エンジン「Box2D」をベースとした,一種の物理演算ライブラリとなっている。
 元がマルチプラットフォームで動作するBox2Dなので,LiquidFunも,WindowsやAndroid,iOSなど幅広いOS上で動作する。とはいえ,あくまでも2Dゲーム向けのエンジンなので,どちらかといえばモバイルOS向けやWebベースのゲームが主なターゲットとなるはずだ。

 そんなLiquidFunの特徴は,簡単に利用できることにある。Dobson氏は実際にプログラムコードを披露しながら,何をどう実現でき,それがどの程度簡単にできるのかを解説した。プログラミングの知識がない人には難しい話で恐縮だが,スライドをもとに順を追って説明しよう。
 下に示したのは,左が実際に粒子を作るプログラムで,右は設定できる属性の例だ。まず「b2ParticleDef」という変数で,粒子の属性を設定する。そして,粒子の色やサイズ,位置といった属性を指定したら,「CreateParticle」メソッドでオブジェクトを作成。基本はこれだけである。

左が粒子を作成するプログラムの例。変数「b2ParticleDef」に,右のスライドにある属性情報を格納して,CreateParticleメソッドで粒子を作成するという流れだ
画像集#004のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開 画像集#003のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開

 LiquidFunでは,複数の粒子をまとめて扱う「ParticleGroup」を設定できる。たとえば,粒子のグループに同じ振る舞いをさせたり,まとめて消したりといったことが,ParticleGroupで可能になるという。
 さらに,LiquidFunでは粒子のさまざまな振る舞いを設定できるようになっており,たとえば「弾力性があって弾む粒子」とか「細かなパウダー状の粒子」,あるいは「霧のように粘ついた粒子」といった表現が可能とされている。

画像集#005のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開
ParticleGroupは多数の粒子をまとめて扱う仕組み。多数の粒子に同じ設定を適用したり,同時に消したりといった操作が可能になる
画像集#006のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開
LiquidFunがサポートする粒子の振る舞いの例。パウダー状や粘性のある粒子,弾力があるものや跳ねるものなど,さまざまな振る舞いが可能だ

 またDobson氏は,「たとえば火山の爆発を表現するときに,LiquidFunにある『Particle System』が利用できる」として,火山の噴出物を粒子に見立てたデモとサンプルコードを披露した。Particle Systemというのは,炎の表現などでお馴染みの,微小なポリゴンを大量に使った表現のための機能だが,ここでは火山の噴出物を粒子に見立てているわけである。これを見ると,LiquidFunの応用範囲は広そうな印象だ。

画像集#007のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開 画像集#008のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開
左の写真は,Particle Systemを用いて作った粒子の噴出口を実行した例。画面中央から右に向かって粒子が噴出している。右の写真はそのサンプルコードだ。おおまかに説明すると,「pd」がParticle Systemの設定を行うPertileSystemDef型の変数で,そこに情報をセットしてCreateParticleメソッドを呼び出し,PertileSystemを作るという内容だ

 さて,LiquidFunを使えば,簡単に粒子のシミュレーションが行えることは分かった。それではどうやってゲームに応用すればいいのだろうか。
 Dobson氏が披露したアイデアの1つは,「粒子のジェットで物を動かす」というものだ。下に示したムービーは,氏がLiquidFunで実装したデモを撮影したものだが,円が弾む瞬間に粒子が飛び散っているのが分かる。


 Dobson氏が披露したもう1つのデモは,粒子を流体のように扱うものである。これも下に撮影したムービーを示しておくが,手法自体は昔からよくあるものだ。LiquidFunという名称自体が,流体のシミュレーションを意識したものだと思われるので,こういうのはお手のものといったところかもしれない。


 オープンソースプロジェクトであるLiquidFunは,GDC 2014に合わせてソースコードが公開されている。GitHubやGit リポジトリで入手できるので,興味がある人は試してみるといいだろう。

LiquidFun 1.0 Google Open Source Blog(英語)



多数のサービスと開発キットをGDC 2014に合わせてアップデート


 GoogleはLiquidFun以外にも,さまざまな開発キットのアップデートをGDC 2014に合わせて公開している。Google Developer Dayでは,それらが詳細に解説されたのだが,ここではゲーム開発にも関わる興味深いものを紹介してみたい。

 まず,「Google Play Game Service」は,ソーシャルゲームの機能をGoogleのクラウドで実現するものだ(公式Webサイト)。これを使うと,ランキングボード(リーダーボード)や実績,ユーザー情報といったゲームの情報を,Googleのクラウドに保存できる。
 従来はAndroid向けのサービスだったが,最新バージョンではiOSにも対応したのが大きな特徴だ。このサービスを使うことで,iOSとAndroidのゲームを,クラウド経由でつなげられるようになった。また,ゲームを友人に送る「Game Gift」にも対応しているという。

 Webページに埋め込むタグ情報を管理して,Googleのクラウドに保存するサービス「Google Tag Manager」も,GDC 2014に合わせてアップデートされている(公式Webサイト)。
 このサービスはWebページに埋め込むタグを管理するものだったが,現在ではモバイル端末向けアプリのユーザーインタフェースタグなどにも用途を広げている。Google Tag Managerの情報は,Googleの統計サービス「Google Analytics」とも連動可能だ。
 これがゲーム開発にどう役立つのかだが,最も分かりやすいのは,タグを使ってゲームのアクティビティを詳細に分析するといったことだろう。あるいは,ソーシャルゲームのマネタイジングツールとして使うこともできると思われる。
 Google Tag Managerもやはり,AndroidとiOS両対応。クロスプラットフォームでタグ情報を分析できるのは注目に値する。

Google Tag Managerがサポートするタグ。右側の列が,GDC 2014に合わせて追加されたものだ
画像集#011のサムネイル/[GDC 2014]ゲーム開発者へのアピールを狙うGoogle,2Dゲーム向け物理エンジン「LiquidFun」を公開

 Googleでは,「Googleの開発ツールはすべて無料」とアピールしており,クラウドリソースの利用料金を除けば,ほとんどが無料で利用できる。興味のある開発者は,試してみてはどうだろうか。

Google Developers 公式Webサイト(英語)


  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
スペシャルコンテンツ
注目記事ランキング
集計:12月25日〜12月26日