‫こんにちは､ ようこそ｡
‫この講義では､ このレベルに磨きをかけていきます｡
‫ガーゴイル像を落とせるところまで持っていくんです｡
‫新しいエリアに入り､ 霊廟に入ったときに､ あそこにゲートがあり､ ここに銅像がある､ というようにすればいいのです｡
‫像を台から取ると､ 門が閉まってしまい､ 間に合わない｡
‫そして､ 表彰台に乗せるための他の何かを見つけなければなりません｡
‫それでは､ この最後のパズルを実装するために､ どのように実現するのかを見ていきましょう｡
‫そこで､ 中央に演壇を置き､ その上に銅像を置き､ その銅像を外せば降りてくるような手すりやゲートを上に設置することにしました｡
‫そこで､ 中世のダンジョンのメッシュや小道具を見ると､ フードをかぶった金属製の黄金の像と像の台があり､
‫これを両方使うことにしているんです｡
‫では､ さっそくスタチュースタンドを持ち込んでみましょう｡
‫まず､ フルバイフォーのビューに入って､ 私がやる中央におおよそ位置することを確認します｡
‫そして､ フードをかぶった金属製の像を持ってきましょう､ お気づきでしょうか｡
‫絶対的に極小のいいわけだ｡
‫だから､ これからやらなければならないことは､ その規模を大きくすることです｡
‫目盛りの横にあるロックボタンを押せば､ 全部揃うようになっているんです｡
‫10倍は大きくしよう｡
‫ちょっと大きいですね｡
‫この像の場合､ 6倍くらいがいいのかもしれませんね｡
‫そして､ 銅像の台座に乗せて回転させよう｡
‫これで､ シーンがどんどん暗くなっていくのがわかると思います｡
‫さて､ これはそのシーンで使われている露出補正の方法が原因です｡
‫これを変更するためには､ 素早くアクターの追加に行く必要があります｡
‫基本的にボリュームに追加して､ 私たちは探すことにしています｡
‫後処理量です｡
‫それをシーンに置いて､ 右クリックして､ グローバルフォルダに移動して､ アクターを選択するんです｡
‫詳細ペインで露出設定に進み､ ここで測光モードを確認し､ 測光モードを自動露出ヒストグラムから自動露出ベーシックに変更します｡
‫そして､ このボリュームが実はかなり小さいブロックであることがおわかりいただけると思います｡
‫私たちにできることは､ このボリュームを大きくして､ 全エリアに適用することです｡
‫では､ 位置を変えてみましょう｡
‫下部のブラシ設定までスクロールすると､ X､ Y､ Zの各サイズがあります｡
‫これらを増やし､ 少し余裕を持たせることができます｡
‫そこで､ プレイヤーが移動可能な場所を､ このようにレベル内に含めることにしました｡
‫また､ 照明から目を離すと､ すべてが本当に真っ暗になってしまうという問題もありません｡
‫それでは､ ダンジョンの建築フォルダから何か持ってきたいので､ もう一度コンテンツドローを開いてみましょう｡
‫セル側メッシュが欲しい｡
‫そこで､ それをレベルアップして､ ドアの近くに配置してみます｡
‫そして､ 邪魔にならないような高さにするために､ 注意することがあるんだ｡
‫つまり､ 現時点ではZの位置が-440で､ ゼロゼロに位置させれば､ それは邪魔にならない｡
‫というのも､ この像はトリガーゾーンにある､
‫あるいはあるはずだからです｡
‫そして､ トリガーゾーンに入ったときに､ 440円分持ち上げてほしいのです｡
‫像を撤去すると､ 4～40人分下がって､ その辺りを封鎖することになります｡
‫そのため､ スタチューにはコリジョン特性の設定が必要です｡
‫それでは､ コリジョンのプリセットまで行ってみましょう｡
‫カスタムで､ この特定のオブジェクトをつかむことができるようにしたいので､ グラバーがブロックするようにします｡
‫そして､ ポーンに降りると､ ポーンに衝突しないように､ この特定のオブジェクトを無視するようにしたいのです｡
‫また､ トリガーと重なるようにオーバーラップイベントを生成する必要があるため､ オーバーラップイベントも必要です｡
‫トリガーといえば､ まだないんですよね｡
‫それでは､ 彫像の台を選択し､ トリガーコンポーネントを追加してみましょう｡
‫そして､ そのトリガーが像を包むように位置を変えて､
‫許容できるタグを追加してみましょう｡
‫そして､ 次に必要なのは､ トリガーとムーバーの間のリンクを作ることです｡
‫そして､ これはレベルのブループリントで設定したので､ これを行うことにします｡
‫この役者たちは､ 他に何のつながりもないんです｡
‫そこで､ ブループリント・ボタンでレベル・ブループリントを開き､ スタチュー・スタンドが選択されていることを確認します｡
‫Begin Play から引き抜くというか､ シーン内をクリックして､ スタチューに作成参照を追加していきます｡
‫ここから立ち上がる｡
‫そのトリガーとなる部品が必要なのです｡
‫そこで､ クラスごとにコンポーネントを取得する方法をとります｡
‫そして､ トリガー・コンポーネントとなるクラスを選択することにします｡
‫ここでは､ トリガー・コンポーネント・クラスを作成しました｡
‫そしてもうひとつは､ 「私たちのものを選んできてください」ということです｡
‫アクターを売り､ それを選択した状態で､ ダンジョンレベルに突入します｡
‫右クリックして､ セルアクターへの参照を作成することにします｡
‫そして､ そのセルを使って､ 再びクラスごとにコンポーネントを取得するのです｡
‫今回募集するのはムーバーというクラスです｡
‫そして､ トリガーコンポーネントからの戻り値を利用して､ セットムーバーを呼び出し､ ムーバーピンを接続して､ 実行ピンを接続して再生を開始することができます｡
‫そしてもうひとつは､ セルを選択して､ それを移動可能にする必要があります｡
‫そこで､ 「一般」に移動して､ その中で「可動」を選択します｡
‫おそらく､ 可動が必要なフードの像も同じようにする必要があるでしょう｡
‫すでにそうなっています｡
‫再生ボタンを押すと､ スタチューがトリガー・コンポーネントにあるため､ セル側が邪魔にならず､
‫天井まで伸びていることがわかります｡
‫しかし､ その像を手に取ることができない｡
‫そしてその理由は､ 現在トリガーコンポーネントによって保持されているため､ 物理シミュレーションを行わないように設定されているからです｡
‫そこで､ グラボにそれを追加する必要があります｡
‫CP では､ この像がそのトリガー部品から移動できるように活性化させることに挑戦してみましょう｡
‫そのためには､ ヒット部品に物理シミュレーションを設定する必要があります｡ 物理シミュレーションをtrueに設定します｡
‫俳優を切り離すことも必要になってきますね｡
‫だから､ アクターを切り離し､ アクターから切り離す｡
‫そして､ アタッチメントを変換する役割と同じように､ デタッチメントを変換する役割もあることがおわかりいただけると思います｡
‫そして､ 今回も「Keep World Transform」を使用します｡
‫さらに､ この像をトリガーコンポーネントから取り除くと､
‫ゲートが自動的に上昇しないことに気づくでしょう｡
‫だから､ オマケに両方使えるようにしてくれ｡
‫トリガーボリュームに何かを入れるとゴールに移動し､ 取り出すとスタートに戻るという仕組みです｡
‫だから､ ビデオを一時停止して､ 試してみてください｡
‫なるほど｡
‫お帰りなさい｡
‫まず､ モノをつかむグラブCPでは､ ヒットコンポーネントからリジッドボディという方法を取っています｡
‫そのヒット・コンポーネントを取り出して､ 物理シミュレーションをtrueに設定しましょう｡
‫そして､ この俳優を手に入れることができました｡
‫それを独自の変数に入れる｡
‫つまり､ 俳優､ スターヒットアクターは､ ヒットリザルトゲットアクターと同じで､ それを置き換えればいいわけです｡
‫だから､ アクタータグを打つ｡
‫そして､ さらにその下にあるアクターも切り離すことにします｡
‫アクター矢印を押してアクターから切り離し､ F切り離し､ ルールを変換､ コロン､ コロン､ 世界を維持､ 行末にセミコロンを変換して､
‫再コンパイルして､ うまくいくかどうか見てみましょう｡
‫さっそく再生ボタンを押して､ 私たちの像を拾ってみましょう｡
‫そして今回は､ まさに完璧なまでに仕上がっています｡
‫しかし､ うちのゲートは思うように閉まらない｡
‫では､ これからどうやってゲートを閉めるようにするのか｡
‫像をスタンドに戻すことができるかどうか､ 見てみましょう｡
‫だから､ ここに貼り付けて､ ほらね｡
‫トリガー・コンポーネントに自動的に添付されるため､ それだけでそこに留まります｡
‫そこで､ チャレンジの要素である「移動」､ つまりボーナスについてですが､ 「移動」をオープンにして､
‫コントロールPで「移動」を検索し､ CPの「移動」をオープンにして､ 「移動すべきもの」を持っているところまで降りていくことができるのです｡
‫そして､ altステートメントで､ ターゲットの場所を元の場所に設定することができます｡
‫そして､ 基本的に残りのコードは､ その場所に移動するために常に実行する必要があります｡
‫そこで､ このようにif文からすべて取り出し､ インデントの問題を解決してみましょう｡
‫そして､ 本来欲しいのは目標地点です｡
‫if文の前にデフォルト値で設定することにします｡
‫つまり､ デフォルト値は元の場所になるわけです｡
‫そのムーブオフセットだけ切り取ろうと思っています｡
‫つまり､ 元の場所とターゲットの場所を設定したわけです｡
‫だから､ デフォルトでは､ 元の場所に戻したいと思っているはずです｡
‫しかし､ もしshould moveがtrueであれば､ ターゲット位置を更新して､ 基本的に元の位置に移動オフセットを加えたものにする必要があります｡
‫これで､ 実質的にゴール地点にたどり着いたわけです｡
‫そうすれば､ 後で現在地を計算することができます｡
‫距離と速度の計算をするんです｡
‫Vの解釈定数を行い､ 新しいアクティブな場所を設定するのです｡
‫もうひとつ､ 速度の計算方法を変更する必要があります｡ ここでは､
‫元の位置と目標位置の差を求めていますが､ 目標位置を元の位置と同じに設定すると､
‫ゼロになります｡
‫そうすると､ 速度がゼロになるんです｡
‫その代わり､ まあ､ 元の場所での目標位置の差は､ 実は移動オフセットの長さであることが分かっているわけです｡
‫そこで､ この方法で距離を計算する代わりに､ いつも少し無駄になってしまうのですが､
‫移動オフセットのドット長を計算して､ それを移動時間で割ればいいのです｡
‫つまり､ 関数移動オフセットドット長括弧を移動時間で割ったものなので､ 括弧が必要なのです｡
‫再コンパイルして試してみましょう｡
‫再生ボタンを押して､ 私たちの像を手に取ると､ ゲートが閉じていくのがわかります｡
‫なかなか開かなかったので､ 最後まで行くということがわからなかったのかもしれません｡
‫でも､ その場にある像を落とすと､ 上まで持ち上がってしまうんです｡
‫像をはずすと､ 下まで戻ってしまう｡
‫素晴らしい内容です｡
‫だから､ あとはちょっとした筋書きというか､ パズルに持っていけるようなものを入れていくだけです｡
‫そこで､ 小道具の下のメッシュに入り､ 小さな完全なポットを見つけて､ 反対側のドアのそばに置いてみます｡
‫そのため､ 銅像の代わりになるものを探すのに少し苦労しています｡
‫スタチューと同じようにオーバーラップイベントを発生させるように設定します｡ コリジョンのプリセットはカスタムに設定する必要があります｡
‫グラブで掴めるように､ ブロックに置いて､ ポーンに重ならないように変更するんです｡
‫そして､ アクタータグで､ アンロック2用のタグを追加します｡
‫そして､ 最後にボールを動かすように設定してきます｡
‫さっそくプレイを押して､ このポットをつかめるかどうか試してみましょう｡
‫うん｡
‫できるようだ｡
‫この霊廟のエリアまで通してみましょう｡
‫像を外して､ ポットを取って､ その場所に貼り付ければいいんです｡
‫そして､ それが開くと､ 銅像を奪って逃げられることがわかる｡
‫危機に瀕している｡
‫そこで､ この講義では､ レベルの残りを整理し､ ムーバーを後ろに移動させ､ グラバーが拾ったものを切り離して物理シミュレーションに設定できるようにするなど､
‫いくつかのコード変更を伴うゲームを完成させました｡
‫素晴らしい内容です｡
‫それでは､ 次回の講義でお会いしましょう｡