﻿1
00:00:04,500 --> 00:00:05,670
‫こんにちは､ ようこそ｡

2
00:00:05,670 --> 00:00:14,310
‫この講義では､ カメラの回転を取得し､ それをスポーンされた投射物に適用する方法について見ていきます｡

3
00:00:14,310 --> 00:00:20,700
‫だから､ カメラを回転させると､ 投射物が同じ方向に回転しているのがわかるんです｡

4
00:00:21,330 --> 00:00:28,290
‫そこで､ 投射物に入れることができる回転があることに気づくでしょう｡

5
00:00:28,470 --> 00:00:36,210
‫さて､ これがきっかけで､ その弾丸の進行方向を回転させることができるようになるかもしれません｡

6
00:00:36,210 --> 00:00:43,590
‫このように､ 投射物から得られる情報を使って､ 実際に正しい方向にインパルスを設定することができるのです｡

7
00:00:44,220 --> 00:00:51,540
‫しかし､ 現状では球体であるため､ どの方向に回転しているのかが非常にわかりにくい｡

8
00:00:51,540 --> 00:01:00,090
‫BP projectile クラスを開き､ 静的な計測コンポーネントに移動して､ 一番上にある transform

9
00:01:00,090 --> 00:01:03,870
‫scale プロパティに移動します｡

10
00:01:03,870 --> 00:01:08,910
‫そして､ X方向に沿ってスケールを大きくしてみましょう｡

11
00:01:08,940 --> 00:01:11,310
‫2程度の値であれば問題ないでしょう｡

12
00:01:11,310 --> 00:01:15,540
‫代わりにこのような変形した球体になっているのがわかると思います｡

13
00:01:15,540 --> 00:01:26,310
‫この球体を撮影してみると､ 球体の進行方向がほぼ同じであることがわかります｡

14
00:01:26,580 --> 00:01:31,440
‫そして､ 回転が効果を発揮しているかどうかを､ スポーン時に確認することができます｡

15
00:01:31,440 --> 00:01:34,770
‫それでは､ レベル設計図に移動してみましょう｡

16
00:01:34,770 --> 00:01:40,470
‫そして､ 最も論理的なのは､ よし､ プレイヤーポーンの回転を求めよう､ ということでしょう｡

17
00:01:40,470 --> 00:01:49,590
‫それでは､ get play a pawn から出てくる player pawn reference ノードをドラッグオフして､ 回転を調べてみましょう｡

18
00:01:49,920 --> 00:01:57,810
‫そして案の定､ get active rotationを使うとget active locationと一致するようで､ rotatorが返されました｡

19
00:01:57,810 --> 00:02:05,580
‫このアクターノードのスポーントランスフォームの回転ピンにドラッグすることができます｡

20
00:02:05,640 --> 00:02:14,790
‫しかし､ このままプレイして､ いろいろな方向に発射してみると､ 実は､ 基本的に弾はまったく回転していないことに気づかれると思います｡

21
00:02:15,120 --> 00:02:23,880
‫ポーンをクリックして詳細ペインに移動し､ Transform

22
00:02:24,630 --> 00:02:30,930
‫Rotation プロパティを見ると､ Z 軸を中心に

23
00:02:30,930 --> 00:02:35,580
‫180 度回転していることがわかりますが､

24
00:02:35,580 --> 00:02:42,270
‫これが唯一の回転です｡

25
00:02:42,720 --> 00:02:49,230
‫ポーンを取り戻したらどうなるかというと､ ツールバーの右上にある小さなコントローラーボタンか､

26
00:02:49,230 --> 00:02:53,520
‫F8キーを押してポーンシューズに戻ることができます｡

27
00:02:53,520 --> 00:02:56,520
‫180度丸く回転させるとどうなりますか？

28
00:02:56,520 --> 00:03:00,150
‫私のローテーションに反映されることを期待します｡

29
00:03:00,150 --> 00:03:01,710
‫そこで､ もう一度F8を押してみた｡

30
00:03:01,950 --> 00:03:08,340
‫飛び出して､ デフォルトのポーンを選択し､ その詳細ペインを見てみると､

31
00:03:08,340 --> 00:03:18,660
‫回転が更新されていないことがわかります｡

32
00:03:18,660 --> 00:03:20,400
‫この2つは別物です｡

33
00:03:20,400 --> 00:03:23,190
‫理由はともかく､ 特に問題はない｡

34
00:03:23,460 --> 00:03:32,430
‫しかし､ 重要なのは､ その回転を反映するものがあることで､ それを制御回転と呼びます｡

35
00:03:32,430 --> 00:03:39,460
‫そのため､ get player pawnノードからドラッグして､ 代わりにcontrol rotationを検索することができます｡

36
00:03:39,460 --> 00:03:42,780
‫そして､ get control rotationノードがあるのがわかると思います｡

37
00:03:42,960 --> 00:03:49,140
‫そこで､ そのノードを試し､ コントロールローテーションを試し､ ゲットアクティブローテーションノードを置き換えて､

38
00:03:49,140 --> 00:03:54,240
‫スポーンノードにプラグインして､ 効果があるかどうかチャレンジしてみたいと思います｡

39
00:03:54,480 --> 00:03:59,220
‫ゲームで遊ぶと､ その弾は違う方向を向いているのでしょうか？

40
00:03:59,220 --> 00:04:00,720
‫動画を一時停止して再生させる？

41
00:04:04,070 --> 00:04:04,760
‫なるほど｡

42
00:04:04,760 --> 00:04:05,700
‫お帰りなさい｡

43
00:04:05,720 --> 00:04:13,820
‫そこで､ get active rotationを削除し､ get player --ノードを引き抜いて､ get control rotationを検索して､

44
00:04:13,820 --> 00:04:16,520
‫そのノードを取り込みましょう｡

45
00:04:16,520 --> 00:04:18,980
‫そして､ 出力は再びローテーターであることがおわかりいただけると思います｡

46
00:04:18,980 --> 00:04:21,620
‫しかし､ 今回は正しい値であることを期待したい｡

47
00:04:21,620 --> 00:04:26,180
‫それでは､ ローテーターを用意して､ スポーンアクタの入力に接続してみましょう｡

48
00:04:26,240 --> 00:04:35,750
‫次に再生ボタンを押すと､ この弾丸が少し横に飛んでいくのがわかります｡

49
00:04:35,750 --> 00:04:42,350
‫今度の講義で整理する自転の方向に移動していないのです｡

50
00:04:42,350 --> 00:04:44,180
‫しかし､ これは最初の一歩です｡

51
00:04:44,180 --> 00:04:47,780
‫その方向性が見えてきたのです｡

52
00:04:47,780 --> 00:04:49,400
‫それでは､ 次回の講義でお会いしましょう｡

