[第14回UE4ぷちコン]振り返り:その他

概要

個別にページ作るほどではないものまとめ。

    • 使いまわしで工数削減

    • Azure Boardsで進行管理

    • Blueprint Interfaceで構造単純化

    • 参考資料

使いまわしで工数削減

第11回第12回の続きの様な内容なので

アセットの使いまわしがかなり多かった。

    • フォントやタイトルロゴ使いまわし

        • 並べて「対」を超イカス装甲明朝で添えるだけ!楽!

        • キャラ配置検討に時間をかけることができた

        • 例えば、最初は以下のような感じだったが大きさのバランスが悪いし、左が悪者に見えるので没に

            • むしろゲーム始まる前に海に飛び込む演出をカットできて一石二鳥

    • BGM、SEも過去応募作の使いまわし

        • 探す手間が省けてかなり助かった

    • Particleも過去応募作の使いまわし

        • というかほぼParagonだが、探す手間が省けた

        • Niagara習得とは何だったのか

            • 一応、パンチヒットやUFOのビームなどは今回用にNiagaraで作成

                • 変身シーンで回転するリングから飛び散るParticleとか、Niagaraらしい何かはやれず仕舞い

    • カットシーンのキャラのポーズも第12回から使いまわし

    • 舞台となる島はModular Cliffのデモマップ拝借

        • ベッド置く為に若干整地したり、巨像のお立ち台の為に若干岩を盛った

こうやって一旦出来合いの物から流用しまくって仮アサインし、時間あったら直そう!

と思っていたらいつのまにか締切が来ていたんですねえ。怖いですね、恐ろしいですね(怪談)

進行管理

Azure DevOpsBoardsを使ってみた。

Azure DevOpsは無限Private Repository(Git)もついてくるのでおススメ。

これまでの経験から、今回もやりたい事が多すぎて時間配分が破綻しそうなので

タスクを一望できるツールが必要だと思ったので使った。

使ってみたと言っても、表層のかんばんボード部分だけで

スプリントやらバックログやらと連携できるような使い方をしていないので、

あまり参考にならないかもしれない。

この記事を書いている現在は以下のような状態になっている。

使い方の記事などを眺めつつ、

ざっくり以下のような使い方をした。

    • 作業粒度粗めにWork Item(かんばん)を置く

        • ロボ出す、音付ける、撮影する、振り返り書く、とか

    • 何をすればそれが終わったと言えるか分解、Task(箇条書き項目)に配分

        • Taskの粒度でけえなと思ったらWork Itemに昇格して再分類

使ってみると、以下のような良さを実感した。

    • 細かい目標が立つ

        • 「これはTaskレベルか?」という視点から作業を分析する思考となるので、分解が捗る

        • 捗りすぎてTaskに分解するだけで1日が終わる事もある

        • だが翌日以降は「書いてある事をやるだけ」なので、頭を使わずに済み精神的に楽

            • お気に入りの音楽を聴きながらやれるレベルに分解されているとなお良し。作業が楽しみになる

          • 「やる気を出すためにやり始める」のハードルが下がる

    • 目標が細かくなる事で、副次的に「これはやりすぎ」という判断がしやすくなる

        • Work Item内のTask量が増えすぎて気づける

        • 仮組の段階で作り込み過ぎるのを回避できる。個人的にこれがかなり効いた

    • 達成感がある

        • チェックがついていくのが気持ちいい

        • Done送りにするのが気持ちいい

        • ゲームの見た目上の進捗が出ない作業が続いても、やる気が維持される

    • 一覧性がある

        • Text箇条書きで同様に頑張ることはできなくもない

        • だが展開したり畳んだりDrag & Dropで移動したり、整理のしやすさが違う

今後も使っていきたい。

使い方おかしいとかあればご指摘頂ければと思います……

Blueprint構成

Blueprint InterfaceでGameModeに諸々を集約するパターンで作成した。

ざっくり以下のような形。

Player ControllerがPawnに刺さってない(そもそもPlayer Pawnが無い)とか

GameStateを使わずGameMode内で状態を持つ等、UE4の作法からは外れている部分がある点に注意。

    • 長所

        • Actor間で相互に関係しないので依存関係が単純になる

            • なんかあったらGameModeから必ず辿れる

            • Actor単体で動作確認しやすい

    • 短所

        • GameMode肥大化

            • ルール、状態、進行管理まで全部受け持っている

                • ルール部分はComponent内に分離

                • ゲーム的に複雑な状態が無い(HP、敵との距離、バリアon/off程度)のでギリセーフ

            • インタフェースまみれ

                • 詳細な処理はComponentに投げるとしても、入力自体はGameModeで受け付ける必要がある

                • 今回はEvent Graphを分割して対応

大きなゲーム向きではない。

小規模なら分けすぎるよりも丁度良いかもしれない。

図を書いてみて気が付いたが、

自機のパンチスイング時間はGameInstanceで事前に定義可能なので

GameMode内でパンチヒットを計算できる。

そうすると、自機も敵Actorと同様、ゲームの状態を再現するだけの存在になれる気がする。

余談だが、draw.ioを上図の作成で初めて使った。

直感的にザクザク描けて便利。

参考資料

    • Sequencer

以上