こうした動きにあわせるように、同社は3月11日に同社は秋葉原UDXで「Road to Stingrayイベント第1弾~Stingrayエンジン、ゲーム開発のファーストステップ~」を開催し、ユーザー視点での使い勝手について解説。あわせて映像制作で高い実績を持つGUNCY'Sより、新作ゲーム『ミヤ~ドフルデイズ~ぱぴこのネコすぎる日々~』が発表されました。
新作3Dランゲームは6/1にSteamで無料配信
本ゲームは「ぱぴこ」というキャラクターを操作して障害物を避けながら走り続けていく3Dランゲーム。現在はフィールド上をぱぴこが走り、障害物をジャンプして避けるといった、ゲームの基本的なメカニクスが実装されています。6月1日にSteamで無料配信が予定されており、今後は完成に向けて敵キャラクターやアイテムの追加、UIの実装、サウンド演出などが加えられていく予定です。
イベントではGUNCY'Sで代表取締役社長をつとめる野澤徹也氏以下、▽家庭用ゲームのディレクターなどを経て独立し、ロボットアプリ開発なども手がける谷口直嗣氏▽テクニカルアーティストの上原達也氏▽システム・アドバイザー/テクノロジストのハヤシヒカル氏という3名のフリーランスクリエイターが登壇。使ってみてわかったStingrayの特性について語りました。
なお、本プロジェクトはオートデスクが運営する技術ブログ「AREA JAPAN」でも、ハヤシ氏が中心になって連載されています(http://area.autodesk.jp/column/tutorial/road_to_stingray/)。野澤氏は「タイトルの発表ができて、いよいよ本プロジェクトも折り返し地点。講演内容とともに、記事の方もあわせて注目して欲しい」と呼びかけました。

FlowとLuaという二つのプログラム方法
イベントで強調されたのは、Stingrayの「Flow」を用いたロジック開発の特性です。Unityに代表される近代ゲームエンジンと同じく、Stingrayでも3D空間上にオブジェクト(Stingrayではユニットと呼称)を配置し、それらをロジックで結ぶことで(=プログラムすることで)ゲームを制作していきます。このときUnityではC#かJavaScript、アンリアルエンジンではブループリントかC++が用いられます。
Stingrayに搭載されている「Flow」もまた、ブループリントに似たビジュアルプログラミング言語です。Flowにはカメラ設定やシーンの初期化といった、ゲーム全体に影響をおよぼす「Level Flow」と、個々のユニットにひもづき、動きや判定などをつかさどる「Unit Flow」が存在します。Flowはブループリントと同じくコピー&ペーストが可能で、汎用的なFlowを作って使い回すことも可能です。

一方、Luaはその名の通りスクリプト言語であり、プログラマが直接命令を記述するものです。FlowはすべてLuaで置き換えられ、Luaで組んだコード群をFlowに変換することもできます(他にStingrayではC++を直接いじれる特別契約も存在します)。また「Luaではブレークポイントをセットして、ステップ実行ができるが、Flowではステップ実行ができない」という違いが存在します。
つまり「Flowはとっつきやすく、ゲームデザイナー向きだが、デバッグがしにくい」「Luaはその反対」という特性があります。同じ処理を行う場合でも、Flowはノード構成が複雑になりがちな特性もあります。谷口氏は公式ドキュメントの「ゲームデザイナーがFlowでプロトタイプを作り、その後にプログラマーがLuaで実装して洗練させるのがお勧め」という一節を引用し、使い分けが重要だと語りました。
リモート開発で進む今時のゲーム開発
また、本作の特徴として、フリーランスを中心とした複数のクリエイターがネット上で開発している点があります。そのため開発体制もユニークで、プログラマーはGitHub、アーティストはPerforceでリビジョン管理を行っており、それらを包括してShotgunを用いたアセット管理が行われています。特にPerforceは動作が軽快で、20ワークスペースまで無料で使用できるため、インディゲーム開発向きとのこと。
野澤氏は「ソースコードはGitHubで公開中(https://github.com/RoadToStingray/rtsproto/branches)で、これからも随時更新されていきます。ぜひ連載を見ながら、実際にStingrayの無料体験版(30日間使用可能)と共にソースコードをダウンロードして、試してみてください。また本プロジェクトに関心のある人は、ぜひチームに加わってください」と呼びかけていました。
リモート開発の特性上、ワークフローも「(1)アーティストがアセットを制作」「(2)プロジェクト管理者(ハヤシ氏)がアセットをユニット化」「(3)プログラマーがUnit Flowを制作」「(4)テストマップ上でテスト」という形になります。一方でレベルデザインもゲームデザイナーが直接Stingray上でユニットを配置するのではなく、いったん仮決めをしたうえで、CSVファイルを介した受け渡し方法がとられています。
具体的には「(1)ゲームデザイナーがGoogle SpreadSheet上でユニットの位置を指定」「(2)CSVファイルでダウンロードしてStingrayに読み込み」「(3)レベル開始時にスクリプトでステージ上に配置してテスト」「(4)Unit Flow内の変数を調整してパラメータ設定」という形です。谷口氏は「プログラマーとゲームデザイナーの思考回路や担当分野の違いを考慮した結果、このようなフローになった」と説明しました。
少ないモーションで多彩なアニメーションを実現
講演の後半では上原氏から補助骨や、Stingrayに内蔵されているNVIDIA PhysX、HumanIKを用いたキャラクターのアニメーション方法が解説されました。上原氏は当初、ぱぴこのポニーテールをPhysXを使ってゆらすことを検討していたと語りました。しかし激しいアニメーションを行うと挙動が破綻しがちであること。また挙動の調整が思ったより難しかったといいます。
そこで、ぱぴこの頭部とポニーテールの根本のボーンの角度をLuaによる計算で求めて、両者の開き具合に合わせてポニーテールの先のボーンを、自動的に動かすやり方に切り替えられました。根本以外のボーンを補助骨として扱う手法です。しかしMaya上で動作確認を行い、Stingrayで実装するやり方では二度手間になってしまうため、両者を効率化するための仕組みが必用になることがわかりました。

これらに比べてHumanIKは比較的トラブルが少なく実装できたとのこと。デモではぱぴこの上半身を左右に傾けたり、左右にねじったり、後ろにスウェーしたりといったアクションが披露されました。ゲーム中でも前方から飛んでくる障害物を避けるようなアクションに応用できそうだといいます。こうしたテクニックを活用して、少ないモーションでも豊かなアニメーションをさせたいと語られました。

シェーダーのワークフローについて
最後にハヤシヒカル氏からStingrayでのShaderワークフローに関する説明が行われました。Mayaや3ds Maxにはリアルタイムシェーダー専用のエディタであるShaderFXが存在し、アーティストがノードベースでシェーダーを作成できます。しかしShaderFXとStingrayは現在のところ、完全に互換性がとられているわけではなく、注意が必要だといいます。

むしろハヤシ氏はStingrayのリアルタイムレンダリングが思った以上に強力で、ブルームやディストーションなどのポストエフェクトを素早く、綺麗にできる点に驚いたといいます。そのためDCCツールで作成したデータをStingrayにインポートし、リアルタイムビューワとして活用するなども可能ではないかとのこと。特にライトの数が少なくて済む、建築業界などでの活用に有効ではとされました。
無料化路線が進むツール&ミドルウェアの中で、Stingrayには無料の商用版が存在しません(30日間の体験版あり、教育用途では無料)。そのため、ユーザーコミュニティが広がりにくい点がアキレス腱となっています。今回のイベントはそうした現状に対する、興味深い一手だったといえるでしょう。ロビーには実機デモもおかれ、多くの開発者の注目を集めていました。