最新の
Google Play Games サービスの最新バージョンから
NearbyConnections API を使って、スマートフォンを Android TV に簡単に接続できます。これで Pie Noon party ゲームがターンベースの戦略ゲームに様変わりしました。Google Play から
Pie Noon 最新バージョンをダウンロードしてお試しいただけます。または、公開されている
ソースコードを確認し、今回
FlatBuffers をどのように使って、早く、ポータブルに、帯域幅効率の良い方法でネットワークからデータをエンコードしているかをご確認ください。
Pindrop: オープンソースのゲーム オーディオ ライブラリ
Pindrop はゲーム内の音を管理する、クロス プラットフォームの C++ ライブラリです。Android、Linux、iOS、OSX のさまざまな組み合わせをサポートしています。このコードの初期バージョンは最初の Pie Noon リリースに含まれていましたが、現在は別のライブラリとして使用できますので、自身のゲームに適用できます。Pindrop では、サウンドの読み込みと解放、サウンドやリスナーの場所の確認、オーディオ チャンネルの優先順位付けなどが処理されます。
Pindrop は、複数のオープンソース テクノロジーを組み合わせ、その上に構築されています。
- SDL Mixer は実際にオーディオを再生するバックエンドとして使用します。
- データの読み込みとファイルの構成は、シリアライゼーション用のライブラリ FlatBuffers で処理されます。
- 固有の演算ライブラリには MathFu を使用し、数多くの計算が内部的に処理されます。
GitHub ページから最新のオープンソース リリースをダウンロードできます。ドキュメント類は
こちらで入手できます。ソースツリーにサンプル プロジェクトも含まれます。
こちらのディスカッションで質問を投稿していただけます。
Motive: オープンソースのアニメーション システム
Motive アニメーション システムを使うと、静的なシーンに色合いを加え、息づかせることができます。シンプルな変数にモーションを適用することで実現します。たとえば動き続ける対象に光をあてたような効果を加える場合、Motive を使えば滑らかに、かつ動きに応じた効果で光を表現できます。
Motive では、
スプライン ベースのモーションと
プロシージャルなモーション、どちらもサポートしています。これらのモーションは技術的に難しいものではありませんが、とても繊細です。計算の間違いが起こりやすく、指示通りに動いてはいるものの、何かが違う、ということが起こりがちです。Motive は計算を自身で行うため、そこに時間をとられることなく、どうしたら感覚的にフィットする表現を行えるかに集中することが可能になります。
Motive には拡張性があり、非常に高速です。従来のアニメーション システムよりメモリ使用も控えめで、一定しています。
Dual Cubic Splines をベースにしています。Motive を、既存のフル機能アニメーション システムに対するパフォーマンスの高いバックエンド システムとして使用していただければ幸いです。
初期の段階では簡単なものを迅速に行うことに集中するため、Motive のこの初期リリースではあえて機能を限定しています。プロシージャルとスプライン ベースのアニメーションをサポートしていますが、
Blender や
Maya などのアニメーション パッケージからのデータ エクスポートはまだサポートしていません。Motive 1.0 はツリー、カメラ、エクストレミティなど、入門用として最適ですが、フル装備モデルではありません。 すべての FPL テクノロジーと同様、Motive は
オープンソースでクロス プラットフォーム対応です。こちらも
ディスカッションをご確認ください。
Google の Fun Propulsion Labs とは?
Pie Noon、
LiquidFun Paint、
VoltAir などの Android ゲームや、
MathFu、
LiquidFun、
FlatBuffers といったクロス プラットフォーム ライブラリで思い出していただける方もいるかもしれません。
このチームについてさらに知りたい方は、Game ON! の新しいエピソードをご覧ください。Todd Kerpelman も出演しています。
* Fun Propulsion Labs とは、Android やその他のプラットフォームにおけるゲームの進化に特化した Google のチームです。
Posted by
Yuichi Araki - Developer Relations Team