「LinkRH」インディーゲーム制作・しくじり事例紹介&よきゲーム開発生活を続けるには?【UNREAL FEST 2023 TOKYO】

18.9K Views

June 03, 23

スライド概要

講演アーカイブ:
https://youtu.be/b9Nw0LEhSUo

講演内容:
インディー開発をしていくにあたって経験した「ゲーム開発を続けていく生活」と「UEでの開発事例」についてお話しします。
モチベーション論や日々の過ごし方などの「日常編」と、実際に一人で開発する際の、設計やプロジェクト進行に関する具体的な失敗経験を交えた「プロジェクト事例編」の二段構えでお届けします。

講演者:
Sig(インディーゲームクリエイター)

3Dアクションゲーム『Link: The Unleashed Nexus RH』についてはこちら:
https://www.reminiscedev.com/

UNREAL FEST 2023 TOKYO 公式サイト:
https://unrealengine.jp/unrealfest/2023/

profile-image

Unreal Engineを開発・提供しているエピック ゲームズ ジャパンによる公式アカウントです。 勉強会や配信などで行った講演資料を公開しています。 公式サイトはこちら https://www.unrealengine.com/ja/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

インディーゲーム制作・しくじり事例紹介 &よきゲーム開発生活を続けるには? インディーゲームクリエイター Sig 1

2.

インディーゲーム、開発してますか? 2

3.

自己紹介 Sig インディーゲームクリエイター +フリーランスでいろいろ 3

4.

自己紹介 ● UE+サウンドミドルウェアの活用例について電子書籍・記事を執筆 ● UEを使用したVtuberさんのモーションキャプチャ、シーン作成など 4

5.

Link: The Unleashed Nexus RH ▲今回はこのプロジェクトを例にして開発事例をご紹介します! 5

6.

Link: The Unleashed Nexus RH ● 開発体制 コアメンバー ゲストクリエイター キャラクターイラスト シロピーさん さま @L_shiro_p Sig 弦楽器演奏 磯村ショウノ さま 以上だ!! @shaunoisomura https://www.isomurabrothers.com 6

7.

今回の講演は…… UE5.0時点での情報です 開発中の個人的な体験 &所感に基づきます 7

8.

おしながき ● 第一章:インディーゲーム開発における精神論 ● 第二章:しくじり事例紹介(プロジェクト編) ● 第三章:しくじり事例紹介(技術編) 8

9.

インディー開発における最大の恐怖 9

10.

・ゲームデザインの破綻 ・チームの空中分解 ・致命的なバグ 10

11.

心が折れてしまうこと 11

12.

第一章: インディーゲーム開発における精神論 ● 開発、活動サイクルの話 ● モチベーションのお話 ● スケジュールのお話 ● 自己管理のお話 12

13.

モチベーション、ありますか? ● 開発するため、行動するために必要なモチベーション ● 開発のすべては「行動力」があることが前提 ● 時間的なコストとは別に、 「行動力」というコストを考えてタスクを組もう 13

14.

モチベーション、ありますか? 検証やバグ取りを ついつい後回しにしてしまう…… UEに追加された 新しい機能について勉強しなきゃ… と思いつつしてない ▲未リファクタリング状態のBP… 14

15.

モチベーションを見つめ直してみよう! ● 異常を感じたらメンテナンスに入ろう 15

16.

脳科学から見るモチベーション 作業は進むけど集中しきれず ケアレスミスするかも ドーパミン主体 注意力は向いているけど 気がのらない… ノルアドレナリン主体 集中力、注意力共に万全! 天才すぎるな… バランスが とれている状態 16

17.

つまり、精神論とは精神論ではない ● すべては脳内で起こっている現象に過ぎない ● 「エラー」なので、取り除くことが可能 ● 作業環境を整えて、快適な開発を! ● それでもダメなら食べて寝よう!(栄養的、健康的な問題の可能性があるため) 17

18.

デフォルトモードネットワーク! ● 休息中やぼーっとしている時の脳の状態 ● 脳内で情報整理が行われている ● これは脳の「問題解決能力」が高まっている状態 ● つまり、問題をDMNに持ち越せば勝手に脳が解決してくれる!!……はず! 18

19.

脳のモード切り替えを把握する デフォルトモード ネットワーク サリエンス ネットワーク セントラルエグゼクティブ ネットワーク 休息・整理 注意・感知 思考・集中 問題の自動整理 問題の顕在化を 行っておく 19

20.

行動記録の話 ● 行動したこと、学習したものの記録をつけておくとなにかと便利 ▲行動記録例 ● 仕事やタスクの記録は後々なにかと役立つ →開発ペースを把握して、マイルストーンを立ててみよう 20

21.

イベントに出そう ● イベントへの参加でお尻に火をつけよう ● 自分では動かせない締切を作ることで、否応無しに手が動く ● 「強制力」を存分に利用しよう!(つらいけど) 21

22.

第二章: しくじり事例紹介(プロジェクト編) 22

23.

● 開発中のプロジェクト紹介 23

24.

しくじりA-1: 思い描く作品に恋をしすぎた 24

25.

思い描く作品に恋をしすぎた ● 「せっかく気合を入れて作るんだから、妥協のない作品にしよう!」 「ぼくのかんがえたさいきょうのゲーム」は完成するのか……? 25

26.

思い描く作品に恋をしすぎた ● 理想は無限に高まる一方なので、妥協点を作ってあげる必要がある 26

27.

思い描く作品に恋をしすぎた ● スクラップ&ビルドを繰り返しすぎて、プロジェクトが進まなくなる (画像) ▲ボツになったステージの数々 27

28.

思い描く作品に恋をしすぎた ● 開発が進み技術力がついてくると、開発初期の要素が見劣りしてくる 結局アセットを作り直すことに…… (もちろん、クオリティは向上するので悪いことばかりではない) 28

29.

思い描く作品に恋をしすぎた ● 開発が進み技術力がついてくると、開発初期の要素が見劣りしてくる アセットを製作する ゲームへ実装し、 他のアセットを製作 技術力が上がり、 以前作ったアセットに 違和感を覚える このループから抜け出せない……! 29

30.

しくじりA-2: アセットをほぼすべて自家製で まかなおうとした 30

31.

アセット、どこまで自分で用意する? ● アセットに対する「自分の哲学の余地」を考えよう 地面のテクスチャ 空の表現 亀裂表現のデカール 哲学度:低 →マーケットプレイスのアセットを 利用することも考える 31

32.

アセット、どこまで自分で用意する? ● アセットに対する「自分の哲学の余地」を考えよう 瓦礫のモデル スキルのエフェクト ポストプロセス エフェクト 哲学度:中 →マーケットプレイスのアセットを改変して利用しよう 一部自作テクスチャを使ってオリジナリティも上げてみよう 32

33.

アセット、どこまで自分で用意する? ● アセットに対する「自分の哲学の余地」を考えよう キャラクターモデル &アニメーション 立ち絵イラスト ステージBGM 哲学度:高! →1からフルスクラッチで自作しよう! もしくは発注して唯一無二のものを作ってもらおう! 33

34.

第三章: しくじり事例紹介(技術編) 34

35.

開発経緯 ● 開発初期動画~現在までのゲームプレイ動画、お見せします 35

36.

しくじりB-1: 手当たり次第にレベルを作ってしまう 36

37.

手当たり次第にレベルを作ってしまう ● モックは大事 ▲仮組み状態のステージ 37

38.

手当たり次第にレベルを作ってしまう ● キャラクターの移動範囲をはかる「ルーラー」BPを作成 38

39.

手当たり次第にレベルを作ってしまう Construction Scriptでステージ作成の補助! 敵キャラが地面に埋まっている…… このままでは不具合の元になる 「浮遊キャラである」というチェックボックスを 入れることで、 自動的に不具合の起きない高さを確保する 39

40.

手当たり次第にレベルを作ってしまう Construction Scriptでステージ作成の補助! 40

41.

手当たり次第にレベルを作ってしまう ● Editor Utility Widgetもとても便利! オリジナルのレベルデザインツールを作ってみよう 「Editor Utility Widget」の公式ドキュメントはこちら https://docs.unrealengine.com/4.26/ja/InteractiveExperiences/UMG/UserGuide/EditorUtilityWidgets/ 41

42.

コードはすべてブループリント製 プレイヤーキャラ BP製! ステージギミック BP製! 敵キャラとその挙動 BP製! 42

43.

しくじりB-2: BPクラスの設計が明瞭ではない 43

44.

BPクラスの設計が明瞭ではない 継承イメージ BP_Enemy_Gazer BP_Enemy BP_Enemy_Gazer (強化タイプ) BP_Enemy_Angel 44

45.

BPクラスの設計が明瞭ではない ● 機能をほどほどに分割するのが良い (多機能で肥大化した神クラスを作らない) ● 各クラスの機能を把握し、類似クラスを作らない (機能をドキュメント化しておくと良い) 45

46.

BPクラスの設計が明瞭ではない ● サウンドマネージャークラスが別にサウンドマネージャーではなかった事例1 なんかここのBGM、 再生開始のタイミングがおかしいな…… BP_SoundManagerくん たしかBGM管理は「SoundManager」だったはず。 BGM流れるタイミング変えてくれる? 46

47.

BPクラスの設計が明瞭ではない ● サウンドマネージャークラスが別にサウンドマネージャーではなかった事例1 そこ担当してるの私じゃないです… 私はステージ後半のBGMだけ流してます… BP_SoundManagerくん BP_BGMManagerくん なんで同じようなクラスが ふたつあるの?? 私がステージ前半のBGM 流してます! 47

48.

BPクラスの設計が明瞭ではない ● サウンドマネージャークラスが別にサウンドマネージャーではなかった事例1 ここもBGMが鳴るタイミング 変えたいな……! …… BP_BGMManagerくん じゃあ「BGMManager」くん、 BGM流れるタイミング変えてくれる? 48

49.

BPクラスの設計が明瞭ではない ● サウンドマネージャークラスが別にサウンドマネージャーではなかった事例1 えっ、特に仕事してないんですけど…… BP_BGMManagerくん BP_LevelManagerくん このステージでは 私がBGM担当です! じゃあなんで「BGMManager」 配置したの? じゃあ全部LevelManagerが 担当すればよくない? 49

50.

BPクラスの設計が明瞭ではない ● 機能に対する主権を明らかにしておこう! BGMは私が管理します ステージ進行の 管理だけやります 音響エフェクトの ON/OFFだけやります BP_BGMManagerくん BP_LevelManagerくん BP_SoundManagerくん 50

51.

しくじりB-3: アニメーションブループリントの設計 51

52.

アニメーションブループリントの設計 ● 構造(スロット、ステートマシン) 52

53.

アニメーションブループリントの設計 53

54.

アニメーションブループリントの設計 ● キャラクターのボーン構造の変化 54

55.

アニメーションブループリントの設計 ● キャラクターのボーン構造の変化 55

56.

アニメーションブループリントの設計 ● キャラクターのボーン構造の変化 56

57.

アニメーションブループリントの設計 57

58.

アニメーションブループリントの設計 ● ABPは自分で触ってみないと全体の設計が難しい ● プロジェクトごとに最適な設計が異なる ● 何度か作り直すのもやむを得ないかも! ● とりあえず組んでみよう! 58

59.

しくじりB-4: バージョンをまたぐ際に壁にぶつかる 59

60.

壁に当たったらどうするべきか? ● 動画、ドキュメント、フォーラム総当り ● バージョン移行事例 60

61.

まとめ ● しくじり上等! でも心は折れないように ● 上手な転び方をして次につなげよう 61

62.

Steamストアページ公開! 62

63.

Steam NextFestに出展! 63

64.

開発頑張ろう! ご清聴ありがとうございました! 64

65.

https://docs.google.com/forms/d/e/1FAIpQLSeDV82fexeTl9jgXWBFBjCzn8vseBMWpKgUxYzWhmEhFQT8aQ/viewform https://docs.google.com/forms/d/e/1FAIpQLSeDV82fexeTl9jgXWBFBjCzn8vseBMWpKgUxYzWhmEhFQT8aQ/viewform アンケートへのご協力をよろしくお願いします https://docs.google.com/forms/d/e/1FAIpQLSeDV82fexeTl9jgXWBFBjCzn8vseBMWpKgUxYzWhmEhFQT8aQ/viewform 65