﻿1
00:00:04,460 --> 00:00:08,180
‫このレクチャーでは､ BGMや紹介文､

2
00:00:10,970 --> 00:00:17,390
‫紹介音も少し入れて､ ちょっとだけ磨きをかけています｡

3
00:00:17,390 --> 00:00:25,880
‫そして､ このシュータープロジェクトで改善できること､ 積み重ねられることを､ 自分へのメガチャレンジとしてリストアップして見ていくのです｡

4
00:00:25,880 --> 00:00:26,750
‫潜入してみよう｡

5
00:00:27,590 --> 00:00:32,060
‫というわけで､ そろそろまとめとお別れの時間が近づいてきました｡

6
00:00:32,060 --> 00:00:37,910
‫しかし､ その前に､ このプロジェクトを発展させるための課題を残しておきたいと思います｡

7
00:00:37,910 --> 00:00:42,350
‫これらは､ 私のメガチャレンジであり､ 解決策をすべてお見せするわけではないという点で際立っています｡

8
00:00:42,350 --> 00:00:48,740
‫そのためには､ コミュニティに頼り､ お互いに話し合い､ 助け合いながら､ 本当にエンジンを探求していく必要があります｡

9
00:00:48,740 --> 00:00:52,310
‫これを読めば､ Unreal を本当に使いこなせるようになると思います｡

10
00:00:52,670 --> 00:00:58,490
‫そこで､ 最初のメガチャレンジはレベルレイアウトとし､ この講義でその一部を行う予定です｡

11
00:00:58,490 --> 00:01:03,920
‫つまり､ 基本的には､ レベルをレイアウトし､ 敵を配置し､ 本当にチャレンジングなものにし､ テストプレイをしてみて､

12
00:01:03,920 --> 00:01:06,380
‫プレイしてみるということです｡

13
00:01:06,410 --> 00:01:10,460
‫ご家族やお友達に､ そのレベルをプレイしてもらい､ 試してみてください｡

14
00:01:10,670 --> 00:01:12,200
‫次は､ BGMです｡

15
00:01:12,200 --> 00:01:17,000
‫この講義では､ BGMのアセットを追加する方法について説明します｡

16
00:01:17,240 --> 00:01:21,860
‫ですから､ この講義にチャレンジしたい方は､ ビデオを一時停止して､ 今すぐチャレンジしてください｡

17
00:01:21,860 --> 00:01:22,280
‫なるほど｡

18
00:01:22,280 --> 00:01:22,910
‫お帰りなさい｡

19
00:01:22,910 --> 00:01:26,150
‫だから､ これらの課題をちょっとだけやって行こうと思うんです｡

20
00:01:26,150 --> 00:01:29,690
‫しかし､ これらはあなたが取り組みたいものではなく､ 他のことをやってみたいという場合に備えて､

21
00:01:29,690 --> 00:01:31,700
‫ここに私の挑戦の残りを紹介します｡

22
00:01:31,820 --> 00:01:34,520
‫そのひとつが､ 武器切り替えの実装です｡

23
00:01:34,520 --> 00:01:41,060
‫現時点では､ 武器の切り替えに対応できるような柔軟な武器構成になっていますが､ 現時点ではそうなっていません｡

24
00:01:41,060 --> 00:01:44,510
‫そこで､ これからどのように実装していけばいいのか､ いくつかのポイントを紹介します｡

25
00:01:44,510 --> 00:01:47,420
‫しかし､ その全貌を一緒に見ていくつもりはありません｡

26
00:01:47,540 --> 00:01:49,880
‫もうひとつは､ 武器と一緒に弾薬を実装することです｡

27
00:01:49,880 --> 00:01:54,580
‫ここでも､ 実際のコードではなく､ プロセスに関するポイントをお伝えします｡

28
00:01:55,340 --> 00:01:56,930
‫その後､ より高度なAをいくつか｡  I..

29
00:01:56,960 --> 00:01:57,800
‫これはどういうことかというと

30
00:01:57,800 --> 00:02:03,800
‫まあ､ 弾薬や武器の切り替えを導入するのであれば､ それぞれを使うタイミングを目で確認する必要があるのかもしれません｡

31
00:02:03,800 --> 00:02:07,610
‫ですから､ 武器の切り替えなどのビヘイビアを追加する必要があるかもしれません｡

32
00:02:07,610 --> 00:02:13,160
‫また､ 銃撃を受けているかどうかがわかると､ 身を隠そうとするかもしれませんので､

33
00:02:13,160 --> 00:02:19,460
‫そのような高度な動作も可能です｡

34
00:02:19,460 --> 00:02:23,960
‫そのすべてをビヘイビア､ ツリー､ サービス､ カスタムタスクで実装することができます｡

35
00:02:24,620 --> 00:02:30,920
‫複数のレベル､ そう､ 複数のレベルを選択するために､ メインメニューが欲しいかもしれません｡

36
00:02:30,920 --> 00:02:37,070
‫レベルのレイアウトを工夫する､ 目線を変える､ 難易度を上げる､ 進行方向を決める､

37
00:02:37,070 --> 00:02:41,960
‫成功したら次のレベルに進めるようにする､ などです｡

38
00:02:41,960 --> 00:02:46,670
‫さて､ 武器の切り替えや弾薬の詳細については､ ちょっとだけ説明します｡

39
00:02:46,670 --> 00:02:49,190
‫その前に､ レベルレイアウトを行います｡

40
00:02:49,490 --> 00:02:53,930
‫まず､ プレーヤーを移動させ､ より中立的な場所でスタートしたい｡

41
00:02:53,930 --> 00:02:59,420
‫そこで､ 今あるメインのプレイヤースタートを削除して､ 代わりにプレイヤースタートをここに貼り付けます｡

42
00:02:59,420 --> 00:03:05,870
‫そこで､ アクターズペインという場所を探して､ プレイヤーであるstartを探し､ ここに貼り付けます｡

43
00:03:06,870 --> 00:03:10,050
‫そして､ 再生ボタンを押すと､ この通路に行き着くということでいいのです｡

44
00:03:10,080 --> 00:03:10,830
‫それはいいことだ｡

45
00:03:11,250 --> 00:03:14,810
‫次に､ 敵を追加していきたいと思います｡

46
00:03:14,820 --> 00:03:16,740
‫ここに敵を一人入れる｡

47
00:03:16,740 --> 00:03:18,510
‫そこでBPは､ ここでキャラクターを撮影する｡

48
00:03:18,510 --> 00:03:19,530
‫敵は一人だ｡

49
00:03:19,680 --> 00:03:22,050
‫それなら､ こっちにはもう敵がいるんだ｡

50
00:03:22,050 --> 00:03:22,770
‫それが好きなんです｡

51
00:03:22,770 --> 00:03:26,940
‫敵を2人､ こっちと下に追加します｡

52
00:03:26,940 --> 00:03:32,820
‫だから､ なんというか､ わざわざ探しに行かないといけないし､ 向こうも撃ってくるし､ 早く見つけに来ないといけないんです｡

53
00:03:33,300 --> 00:03:35,190
‫それから､ あそこに敵が一人いる｡

54
00:03:35,190 --> 00:03:35,880
‫それはいいことだ｡

55
00:03:35,880 --> 00:03:38,160
‫敵がどこにでもいるような状態にしてしまうかもしれませんね｡

56
00:03:38,160 --> 00:03:40,560
‫この角を曲がったところに1つ､ この上に1つ｡

57
00:03:40,560 --> 00:03:41,610
‫それは素晴らしいことです｡

58
00:03:41,970 --> 00:03:42,900
‫もうひとつ｡

59
00:03:42,900 --> 00:03:44,100
‫たぶん､ ここです｡

60
00:03:44,160 --> 00:03:48,510
‫もしかしたら､ ここにも2人くらい撃ちに来るかもしれませんよ｡

61
00:03:49,770 --> 00:03:52,650
‫この階段を上ったところにあるかもしれませんね｡

62
00:03:53,510 --> 00:03:57,560
‫雨の中､ 上から血まみれになって撃ち落とすこと｡

63
00:03:57,620 --> 00:04:05,990
‫そして､ この司令室のような部屋にかなりの人数を配置し､ この角を曲がったところで待ち伏せする数人と､

64
00:04:05,990 --> 00:04:11,240
‫この小さな穴の中に1人か2人を配置するつもりです｡

65
00:04:11,750 --> 00:04:12,500
‫これでよしとしよう｡

66
00:04:12,770 --> 00:04:14,540
‫さて､ この部屋は本当に大変なことになりそうです｡

67
00:04:14,540 --> 00:04:17,000
‫ここに来ても､ ただ撃たれるだけだ｡

68
00:04:17,000 --> 00:04:20,960
‫では､ 再生してきたら､ これを試しに行ってみましょう｡

69
00:04:20,960 --> 00:04:25,850
‫現時点ではかなり厳しいと思いますので､ もっともっと手を加えてもいいかもしれません｡

70
00:04:25,850 --> 00:04:27,350
‫ここでミュートにします｡

71
00:04:28,280 --> 00:04:33,350
‫さらに微調整して､ 体力の量を調整してちょうどいい難易度にしたいとか､

72
00:04:33,350 --> 00:04:44,210
‫レベル内にある目の数を調整したいとか､ そういうことはすべて､ プレイしてこのゲームをとことんテストしてみればいいんです｡

73
00:04:44,210 --> 00:04:48,440
‫そして､ 最後にもうひとつ､ BGMとアンビエンスを加えたいと思います｡

74
00:04:48,440 --> 00:04:54,770
‫そこで､ プレースアクターで音を探してみると､ アンビエントサウンドアクターがあることがわかります｡

75
00:04:54,770 --> 00:04:57,170
‫これを世の中に引きずっていけばいいんです｡

76
00:04:57,170 --> 00:05:00,740
‫どこでもある程度の音は出るので､ どこでもいいんです｡

77
00:05:00,920 --> 00:05:06,620
‫ここでは音楽を探しますが､ 基本的にシューティングゲームの音楽が欲しいので､

78
00:05:06,620 --> 00:05:11,930
‫そのままにしておいてください｡

79
00:05:11,930 --> 00:05:18,410
‫そして､ 再生ボタンを押すと､ BGMが流れ､ より素敵な雰囲気になるのがわかると思います｡

80
00:05:18,410 --> 00:05:28,100
‫そしてもう1つ､ イントロテキストを少し追加します｡

81
00:05:28,100 --> 00:05:41,720
‫これはプレイヤーのシューターキャラクターから行うことにします｡

82
00:05:41,720 --> 00:05:47,390
‫これは自分で録音したもので､ 「さあ､ レベルに合わせてこいつらをやっつけよう」とか､

83
00:05:47,390 --> 00:05:54,050
‫そんな感じのものです｡

84
00:05:54,050 --> 00:06:02,240
‫そこで､ 再生ボタンを押すと､ 「この基地をクリアしてください」というイントロが少し流れます｡

85
00:06:02,240 --> 00:06:03,710
‫すべての敵の中で｡

86
00:06:03,710 --> 00:06:07,940
‫さて､ 約束通り､ 武器の切り替えや弾薬といったものをどうするのか｡

87
00:06:07,940 --> 00:06:10,100
‫まあ､ 大雑把に言えば武器の切り替えですね｡

88
00:06:10,100 --> 00:06:12,470
‫流れとしては､ こんな感じになります｡

89
00:06:12,740 --> 00:06:18,410
‫まず､ キャラクターがどの武器を使えるかを知るために､ 武器や武器クラスの配列を追加し､

90
00:06:18,410 --> 00:06:28,280
‫それらの武器をすべて別の配列に格納して､ キャラクターが持つさまざまな武器を追跡できるようにします｡

91
00:06:28,280 --> 00:06:34,850
‫つまり､ 基本的に1つの武器クラスと1つの武器インスタンスを使用していたのを､ その両方に対応する配列に変更したのです｡

92
00:06:35,030 --> 00:06:41,720
‫そして､ どの武器が現在アクティブなのかを記録するアクティブインデックス整数のようなものを持ちたいと思います｡

93
00:06:42,020 --> 00:06:49,310
‫すべての武器を非表示にします｡ 基本的には､ アクティブなインデックスにある武器以外をすべて非アクティブにして隠します｡

94
00:06:49,460 --> 00:06:55,040
‫そして､ スクロールホイールや数字をバインドして､ アクティブインデックスを変更し､

95
00:06:55,040 --> 00:07:03,410
‫アクティブインデックスを変更したら､ 現在表示されている武器を更新できるようにします｡

96
00:07:03,410 --> 00:07:10,010
‫さらに､ 現在アクティブな武器のファイアメソッド､ トリガーメソッドを使用するように､ ファイアをバインドして､

97
00:07:10,010 --> 00:07:14,870
‫現在アクティブな武器を選択するようにする必要があります｡

98
00:07:14,870 --> 00:07:20,270
‫このように､ どのように実装し､ どのように試していくのか､ 簡単なアウトラインを武器に切り替えていくのです｡

99
00:07:20,300 --> 00:07:23,720
‫もうひとつは弾薬ですが､ これもかなりわかりやすいですね｡

100
00:07:23,720 --> 00:07:32,480
‫このステップに従うと､ 武器にある種の弾薬変数が必要になります｡ 基本的には､ 「残りの弾薬はどれくらいか」という整数が必要です｡

101
00:07:32,510 --> 00:07:36,320
‫ゼロになるまで一発一発引き算していくわけです｡

102
00:07:36,320 --> 00:07:37,670
‫まさに健康そのものですね｡

103
00:07:37,670 --> 00:07:40,880
‫そう考えると､ そこでの撮影を防止することになる｡

104
00:07:41,090 --> 00:07:42,140
‫撮影ができなくなる｡

105
00:07:42,140 --> 00:07:49,460
‫アミーゴが0より小さい場合は､ 何らかの空音を流してプレイヤーに合図を送り､ ピックアップアクターのようなものを作るとよいでしょう｡

106
00:07:49,460 --> 00:07:56,030
‫アクターから派生した新しいアクターを作成し､ コライダーを追加し､ メッシュを追加して､

107
00:07:56,030 --> 00:08:02,930
‫アクターやキャラクターがそれに重なったときに､ そのキャラクターの現在アクティブな武器を取得し､

108
00:08:02,930 --> 00:08:08,480
‫それに弾薬を追加することができるようにします｡

109
00:08:08,480 --> 00:08:14,540
‫そして最後に､ 少なくとも短時間であれば､ コリジョンを無効にしてメッシュを隠したいのではないでしょうか｡

110
00:08:14,540 --> 00:08:19,430
‫タイマーで再有効化するのもいいかもしれませんが､ そのピックアップを超えたら最初は無効にして､

111
00:08:19,430 --> 00:08:24,710
‫その上に立っている間に弾薬を補給し続けることがないようにしたいものです｡

112
00:08:24,710 --> 00:08:25,850
‫というわけで､ 今回の講義はここまで｡

113
00:08:25,850 --> 00:08:31,520
‫すでにあるものを発展させるためにできることをチャレンジスライドとして残しておきます｡

114
00:08:31,520 --> 00:08:44,300
‫Q&Aやディスカッション､ Discordチャンネルをチェックして､ 意見やフィードバックを得たり､ このシューティングゲームの旅を続けるために何をしたかを共有している他の人たちを探してみてください｡

115
00:08:44,310 --> 00:08:46,280
‫何を作るか楽しみです｡

116
00:08:46,400 --> 00:08:48,860
‫ディスカッションでお会いしましょう｡

