Your SlideShare is downloading. ×
UniteJapan2013「プレイアブルプランニングのススメ」
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

UniteJapan2013「プレイアブルプランニングのススメ」

911

Published on

UniteJapan2013「プレイアブルプランニングのススメ」

UniteJapan2013「プレイアブルプランニングのススメ」

Published in: Software
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
911
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. プレイアブルプランニングのススメ/ 非プログラマ向けのUnity開発入門 Unity Technologies Japan 合同会社 コミュニティエバンジェリスト 小林 信行
  • 2. このセッションについて Unityの名前は知っているけど使ったことのない/ インストールはしたけれどHDDの肥やしになっている 非プログラマ向けのセッションです。 結構多いんじゃないでしょうか? かくいう僕もそういう時期が長い間ありました
  • 3. このセッションの対象者は? プロデューサー/デザイナー/プランナー・ディレクター の皆さんです。 最近あちこちで、新規企画を求められている方たちが対象です。 なんで新規企画を求められるのか→「人月が高い」と会社から思われているから→その分のコストパフォーマンスを会社に求められる 要するに、面白い企画をビシッと会社にたたきつけて、存在感が示せればいいだけの話なのですが… せっかく企画書を出しても「何が面白いのかわかんない」とか、言われたことありませんか?
  • 4. このセッションの目的は? Unityで遊べる企画書「ラピッドプロトタイプ」を 作りませんかという提案です。 会社の業務に役立つばかりでなく、自分自身のスキル向上にもなります!(まさに一石二鳥ですね) ついでに業務の合間に(一環として)Unityへチャレンジをする対外的(社内的)理由にもなります! 見事、企画が通った暁には、本制作へと進めますし、 最悪、企画が自社で採用されなかった場合でも、「これは間違いなく面白くなる!」という確信さえあれば、 自分個人の力だけで実現するという方法もあります。 これ以降の話は、明日のグリーンセッションの「僕らが Unity で個人開発を始めた理由」が参考になるかと思います。
  • 5. ラピッドプロトタイプって? •ものすごく簡単に言ってしまえば、Unity上で実際に 触って、遊べるプロトタイプのゲームのことです •なるべく時間をかけずに、少人数で作ります •見た目よりも、そのゲームの「一番面白い」と思う 中核の部分を、実際に遊べるように作ります •作り上げたら実際に遊んでみて、 本当に「面白いか」どうかみんなで確かめます ポイントは4つ 想定としては、企画者が一人で、2週間程度で作り上げることを目標にしてます。
  • 6. ラピッドプロトタイプを作るメリット •企画書の多くは紙メディア それだけだとゲームプレイの面白さがわからない場合が多い •作りたいゲームのプレイ感が、プロジェクトの初期段階 でスタッフ全員と共有できる •本当にコストをかけるべき部分がどこか、 実際にプレイをしてみることでわかりやすくなる •本制作に移るはるか以前に、企画の問題点の洗い出し ができる ポイントは4つ 一番最後が重要です。 『GRAVITY DAZE』の場合などは、最初にゲームプレイをイメージしたムービーを作成し、それをプログラマと共有したそうです。 これがプレイアブルなデモだったら、イメージだけでなくプレイ感も共有できますので、言うことなしです。
  • 7. それでは今日からはじめましょう! いいことばかりですね!
  • 8.
  • 9. ではありません!
  • 10. 何からはじめたらよいか わかりませんよね? だいたい 「ラピッドプロトタイプを作ろう!」 と言われても… 大体、プログラマじゃないからコードも打てないし…と内心思ってるんじゃないでしょうか
  • 11. そのための Unite Japan です 大丈夫! 本日は非プログラマの皆さんに 必勝法をご用意しました
  • 12. STEP1:誰でも最初は初心者です! •初心者に一番必要なのは、「締め切り」と「目標」 •前半の2週間で、Unity関連書籍を最低1冊みっちりやる •「目標」は「一人でラピッドプロトタイプを完成する」こと •「締め切り」は「1ヶ月後」。しかも前半と後半に分ける •後半の2週間で、自分の考えているゲームを一人で作り上げる →STEP2 へ ポイントは5つ これ、結構作戦としましてはオススメです。 経験談として、実際にいけます。 そのあたりのノウハウを説明していこうと思いますが、 その前に改めて、自分の略歴を説明します…
  • 13. STEP1の実例:自分の場合 •コンシューマゲームのディレクター •3Dシステムに基づく、2.5D的キャラ表現を特長とする企画 •原作付きアニメのゲーム化を中心に、オリジナルシナリオ で、複雑な分岐を扱うADVゲームを企画&監督
  • 14. モーションポートレート : 『涼宮ハルヒの約束』 4つ
  • 15. モーションポートレート : 『とらドラ ポータブル!』
  • 16. モーショングラフィックス : 独自手法による2.5Dキャラ表現
  • 17. モーショングラフィックス : 『涼宮ハルヒの追想』
  • 18. STEP1の実例:自分の場合 •コンシューマゲームのディレクター。学生時代にFORTRAN プログラミングの経験はあるが、ゲーム業界でプログラマを したことはない •元々Unityは「知っていた」が、次のライン検討に自分で導入 テストをする決心をした •同じ頃、『ハワイ応募企画』を知り、1ヶ月を期限に切って 一人ブートキャンプを開始。応募用ゲームを完成する •応募用ゲームを作っているうちに、さらにUnityのファンに。 同時にプランナーの多くにUnityを薦めても、何故か使おうと しない、その理由を考えるようになった。 4つ
  • 19. STEP1の実例:一人ブートキャンプメニュー •前半2週間 : 「Unityのワークフローとスクリプトの書き方を理解する」 •後半2週間 : 「自分だけで、テーマに合ったゲームを完成する」 最初にUnity本をしっかりとやることで、その本で紹介されているワークフロー、テクニック、スクリプトが手元に残るのがとても大きい。 Unityの場合、それらのスクリプトはすぐ別のゲームに流用できる可能性が高いですので、ワンセット道具が うのは後の開発の見通しが良くなります。 最近はさらに書籍が増えてます。 上の2冊はJavaScriptでの開発レッスンですが、C#を使った開発レッスンもあります。 この他にもDigitalTutorsとかでオンラインレッスンも受けられます。 もちろんUnityオフィシャルHPのほうにも様々なレッスン資料があります
  • 20. STEP1の実例:一人BC前半2週間の成果 「Unityの良いところ」が理解できた •すぐにさっくりと画面に何かを表示することができる •「計画→設計→実装→テスト→分析」のサイクルを短時間で 繰り返すイタレーションが簡単 •インターネットの情報が豊富。 自由に使えるサンプルコードが多数公開されている •AssetStoreが強力。標準機能に足りないものがあったら、 まずここに探しにいける •採用されている技術の筋がものすごく良い 5つ
  • 21. STEP1の実例:一人BC前半2週間の成果 「Unityの難しいところ」が理解できた •英語による文献や情報に積極的に当たっていく気力が必要 •3Dツール特有の概念がある。 特に2Dゲームをメインで作りたい場合、一手間必要になる •必ず最初にUnity独自のワークフローを学ぶ必要がある。 特にオブジェクト指向バリバリのエディタの使い方に関して は、とにかく飲み込んでしまうしかない ←最近、日本語ドキュメントが公開された! ←AssetStoreに便利ツールが各種あり ←一度、理解すれば超簡単 3つ この数か月でなくなってしまったハードルもあります。日本語ドキュメントなどがそれです。 またfacebookのほうに、Unityユーザーの皆さんで運営している『Unityユーザー助け合い所』みたいな素晴らしいコミュニティもあります。 一方英語情報の利用に関しては、「調べたい項目(関数でもなんでも英語名) unity」でぐぐると、大抵の答えが得られます。 ここは共通言語のある強さとも言えます。(プラス思考的に考える!) 2DゲームをUnityで作るのには、ちょっとしたコツがありますので、まずはそれを調べてみたほうがよいでしょう。 またAssetStoreには2Dゲームを作りやすくするための便利ツールが各種ありますので、そちらを利用してしまうのもよい方法です。
  • 22. STEP1の実例:一人BC前半2週間の結論 •どんな分野であろうと「デザイナー」的作業ができる人は すぐに順応できる •既存の3Dツールに慣れている人は、特に有利 •最近のPCの上で、CPUパワーとメモリを考慮しなければ、 ハイレベルなことが短時間でできるのは本当 •ただしハイレベルなことをしたければ、それ相応の地の知識 も同時に求められる。地の知識が豊富な人ほど有利 •一本プレイアブルなゲームに落とし込んでみることで、Unity でのゲーム開発のメリット/デメリットが理解できるように なる 結論として5つ Unityでのゲーム開発のメリット/デメリットを知っておくことは、 今後プロデューサーやディレクターの人には必須になるのではないでしょうか? 自分自身でゲームを1本作ってみることで、 ・Unityの特長的な開発スタイルが理解できる ・開発現場、特にプログラマと同じ言葉や概念を使って会話ができるようになる ・エディタでゲームを早いうちからプレイできるようになるので、スケジュール見通しが正確になる ・「思いつき」を自分でも仮実装してみて、開発現場に提案できるようになる
  • 23. STEP2:一人BC後半2週間 「自分の考えているゲームを一人で作り上げる」 でも、たった一人でどんなゲームを 作れるっていうのさ? では、実例を見てみましょう 大体、俺プログラマじゃねーし…って思っているんじゃないでしょうか?
  • 24. STEP2の実例:実際に作ったゲーム
  • 25. STEP2の実例:実際に作ったゲーム 水着姿の少女と共に島の中を歩き回りながらターゲットを探し、 輪投げをするゲームです。成功するとチキ神が解放されます
  • 26. STEP2の実例:実際に作ったゲーム 島中のあちこちに、様々なレベルが配置されています。 少女(プレイヤー)は工夫を凝らして、ターゲットに挑みます。
  • 27. STEP2の実例:実際に作ったゲーム 全てのターゲットを制限時間内にクリアすると、 島が美しい花で包まれます
  • 28. STEP2の実例:どう考えて作ったか? テーマは、ただひとつ。 レギュレーションで大きなものは3つ。 •AssetStore等の利用は可 •応募者一人のみでの開発 •コードの引用は可 どうする? 「Unityでハワイに関するゲームを作る」 ではここで、先のようなゲームをどのように考えて、作り上げたか、ポストモーテムしてみましょう
  • 29. STEP2の実例:どう考えて作ったか? 大体、ハワイゲーってなによ ...? (グァムは行ったことあるんだけどね…ハワイは知らん) ビーチと椰子の木? ハワイアンダンスとか?なまこか? 触手が可愛いんだよな… 当時のメモはこんな感じ 「砂浜を走り回って、なまこを探し出すゲーム なまこをつぶすと、キュビエ器官をはき出す 得点 ウミウシとかアメフラシとかをつぶすとエラー 減点 ココナッツは拾える 重くなって移動が遅くなる 浜辺に潜んでいるヤシガニに切られるとアウト ヤシガニはココナッツで防ぐことができる ハワイと言えば、「火山」→怒る火の神様を宥めるためのフラダンス 海中で珊瑚を荒らすオニヒトデをショットする レイを飛ばす輪投げ 真珠湾攻撃
  • 30. STEP2の実例:どう考えて作ったか? ビーチと椰子の木? なまこか? ハワイアンダンスとか? 触手が可愛いんだよな… 大体、ハワイゲーってなによ ...? (グァムは行ったことあるんだけどね…ハワイは知らん) なまこを落としたのが正解だったということですね。 触手をそれっぽく表現するのはかなり難しいということもありますしね
  • 31. STEP2の実例:どう考えて作ったか? ×「ハワイ」 × 輪投げゲーム これらの要素をUnityを中心にまとめてみましょう
  • 32. STEP2の実例:どう考えて作ったか? ×「ハワイ」 × ビーチはTerrain その他小物はAssetStore 輪投げゲームは Physics レイは自作 輪投げゲーム Unityのエコシステムに割り当ててみると…
  • 33. DAY 作成スクリプト(日付は完成日) 作業内容 1 基礎調査(フック形状による物理挙動変化の実験、ターゲットポールや花輪 の試作、AssetStoreで利用できそうなアセットの調査など) 2 AssetStoreより、プレイヤー用キャラ3Dモデル&モーション購入 Unity本より、キャラクターコントローラ移植。UIをTPS方式に決定 3 ゲームメカニクスの基礎部分作成開始 4 AimingCamera.js/GameController.js Hook.js/RigidbodyAwake.js Ring.js/Target.js/ThrowController.js ゲームメカニクスの基礎部分完成 TurboSquidより、チキ3Dモデルを購入 5 Terrainで島を試作&テスト歩行 (この日に応募) 6 Terrainで島を本制作&水面の配置 パーティクルエフェクトの作成開始 7 AutoDestructParticles.js DestroyFloatLightEffect.js パーティクルエフェクトと点光源演出の実装 レベルデザイン開始、ご褒美感をあげる演出を考慮し始める 8 ColllisionBox.js/HookEnablerSwitch.js ReturnZone.js/SwitchController.js キャラクターがスイッチに載るとフックがアクティブになるシステムを実装 (キャラが所定位置に入ってから、目標となるフックが登場するように変更) 9 SE素材の作成 10 PlaySE.js Timekeeper.js SE&音楽実装、SEを3D音源としてスイッチ付近に演出的に配置 タイムキーパー実装(時間制限をルールとして導入することに決定) 11 StopMouseLook.js 調整と細かい不具合修正 12 Dance.js/GameStarter.js ResultScreen.js ゲームスターター&点数計算表示実装 13 難易度調整 14 TitleScreen.js タイトルデモ画面、インストラクション画面を実装 最終調整⇒提出 STEP2の実例:実際の開発スケジュール 実際の開発スケジュールはこの表の通り。最初の1日に基礎調査を終えた後で、ゲームの基本部分を4日で作っています。 残りの9日はテストプレイによるゲームプレイの調整と、ディティールアップに費やされています。 オレンジ色に塗られている部分は、後で思い返してみて重要なきっかけとなった項目です。 この工程で一番大変だったのは、8日目のスイッチシステムです。 キャラクターコントローラと物理エンジンスイッチの組み合わせなので、 キャラがコリジョンボックスに出たり入ったりするのを、スイッチに正確に反映させるためにかなり調査とテストを行いました。
  • 34. STEP2:アイディアをゲームにするには? •おおまかな「テーマ」(自分の中の縛り)を決め、 どうすればそれが「ゲームになるか」考えながら作る •見た目よりも最初にゲームの「面白さ」の中核部分を しっかりと作り上げる •自分が持っている最強の武器(スキル)は何かを確認し、 そのスキル内で実現可能な「面白さ」を作り上げる •普段、会社で作っているゲームジャンルにこだわらない •失敗しても落ち込まず、さっさと次のアイディアに移る ポイントは5つ アイディアを、実際にプレイできるゲームにまとめ上げるためには、このような事を考えるとよいです。 さらにここから重要なポイントを3つ詳しく説明します
  • 35. POINT2-1:どうすれば「ゲームになるか」? •ルールを作り、勝ち負け/目標を決める •音は重要。SEや音楽は絶対につけよう •エフェクトを上手に利用しよう 勝ち/負けをわかりやすくする プレイヤーの入力に対するリアクション をわかりやすくする プレイヤーの関心を注目させたい ポイントに誘導する ポイントは3つ
  • 36. 早めにキャラをシーン内に置く  →自分の気に入ったキャラを置くだけで、 俄然、やる気が出てきます(重要) 特にデザイナーやプランナー向け の必勝法 Go AssetStore ! POINT2-1:どうすれば「ゲームになるか」? あとキャラをシーン内に置くことで、自然「キャラをどう見せるか?」を意識するようになりますので、 ゲーム内でどのようなカメラを主に使用するかが早いうちに決まります。3D系のゲームですとこれは重要です。 AssetStoreでは、モデルだけでなく、モーションなども手に入ります
  • 37. POINT2-2:自分が持っているスキルを生かす    会社で作っているジャンルにこだわらない •逆に自分一人でできないものは、AssetStoreを利用するなど 割り切ってしまう •自分一人でできることは何か、はじめに見極めよう •コードを書かなくてもできることは、Unityなら沢山ある 自分のスキルが活かせるものを、魅せるようにする 「面白い!」と思うものを表現する手段や手法  をいつもと変えてみる 「面白い!」ものは意外と身の回りにある 3つ 「自分一人でできること」を考えると、デザイナーの方が有利なことがおわかりかと思います。 ビジュアルで表現できる素材を自分自身で作り出せるということは、非常に有利なことなんです。 「テーマ」や「アイディア」が固まりはじめたところで、AssetStoreを総ざらいしてみるのもよいですね。 ただ漠然と眺めているのと、目的をもって調査するのでは、当然見え方も変わってきます。
  • 38. POINT2-3:最初にゲームの「面白さ」の中核部分           をしっかりと作りあげる •例で言うならば、「輪投げゲーム」の部分。 ここの操作感や遊び心地を真っ先に検証する •簡単なプリミティブを使って、どのようなゲームメカニクス を用意すれば面白く遊べるか、徹底的に検証する ここが、Unity上でのプランニングの 最大のキモ 何よりもここにこだわるべき! •この段階のスクラップ&ビルドは、とにかく速く! アイディアに確信が持てたら、それをプレハブにしてしまう 3つ
  • 39. ラピッドプロトタイプが完成し、 みんな「面白い!」と言ってくれました。 次は、いよいよ本制作です! おめでとう!! と、その前に…
  • 40. STEP4:ラピッドプロトタイプが完成したら •後にプログラマに引き渡せるように、わかりやすいシーン& プロジェクト構成に整理しておこう •非プログラマの皆さんは、最適化よりも「わかりやすさ」を 優先しましょう スクリプト内にコメントを入れる オブジェクト間の連携(データ受け渡し等も含む)  にはメッセージングをうまく使う プロジェクトファイル内のフォルダ名をルール化する 2つ ここからは、個人作業からチーム作業へと移し替える時の注意です。 非プログラマの方は、しっかりとUnityの仕様を理解している場所以外には、あまりスクリプト間で変数の直接参照とか はしないほうがいいんじゃないかなと個人的には思います。 重要なのは、何がしたいのかがきちんとわかることで、その点では処理は遅くなるかもしれませんが、 メッセージングやタグ参照などを利用して、やりたいことが他の人にもわかりやすい実装をするほうがオススメです。 (そのほうが簡単ということもあります)
  • 41. STEP5:本制作に移行するにあたって •本制作に移行する際に、ラピッドプロトタイプにリソースを 付け足す方式ではうまく行かないことも多いです。 •ラピッドプロトタイプの意義は、本制作に当たって問題にな りそうなところを検証しつつ、ゲーム自体の面白さを確認す るためにあります。 •ですので、ラピッドプロトタイプを参考に本制作用プロジェ クトをゼロから作り直すようにすると、最終的にはうまくい くことでしょう。 最後に3つ
  • 42. STEP6:最後に あなたが創りたいゲームを「創れる」のは あなただけです。 あとは最後まで創り上げる覚悟さえあれば、 Unityはきっとその役に立ってくれることでしょう!
  • 43. それでは、非プログラマの皆さんも 楽しいUnityライフを 今日からはじめましょう!
  • 44. ご静聴ありがとう ございました!

×