Ellen(自機)

確認済のバージョン: 2017.3

-

難易度: 初級

「Ellen」プレハブ は、本キットのプレイヤーキャラクターです。Ellen は、一般的なキャラクターの操作である移動とジャンプの他に、しゃがんだり、プラットフォーム(地面・足場)をすり抜けて下に落ちたり、近距離攻撃や射撃をすることもできます。

標準のアクション制御(PC)

移動 A, D
ジャンプ スペースキー
しゃがむ S
射撃 O
至近距離攻撃 K
インタラクトキー E
床をすり抜けて下に降りる S + スペースキー

Ellen は Sprite Renderer コンポーネントAnimator コンポーネントCapsule Collider 2D コンポーネントRigidbody 2D コンポーネント、および多数のカスタムスクリプトを使って作成されています。

Character Controller 2D

Character Controller 2D スクリプトは、シーン内で物理法則に従って Ellen を動かすために使用されています。

  • Grounded Layer Mask(初期設定:Platform) キャラクターが乗れるレイヤーです。「Platform」レイヤーに設定すると、Ellen が、このレイヤー上にある Ellen 以外のすべての物(地面など)の上を歩けるようになります。

  • Grounded Raycast Distance(初期設定:0.1) Ellen はコライダーの下を始点とするレイキャストを使って、地面の上に立っているかどうかを判定します。この数値を大きくすると Ellen は地面の位置を高めに認識し、足がずっと地面に着いた状態になります。数値を低くすると Ellen は地面の位置を低めに認識します。小さくしすぎると、Ellen はずっと落下のモーションを取るようになってしまいます。

Player Input(プレイヤー入力)

プレイヤー入力の割り当てを簡単に変更できます。Player Input スクリプトが、ゲームの使用する制御を Unity の Input Manager に指示します。キーボードとマウスによる制御でも、Xbox One コントローラーによる制御でも、ゲームに使用するキーやボタンはこのコンポーネントで変更できます。

このコンポーネントへの変更はすべて Ellen プレハブの(インスタンス)の複製に対して加えるため、シーン毎に行われる形になります。複数のステージがあるゲームで Ellen の Player Input を変更した場合、Ellen インスタンスの上部にある「Apply」(適用)ボタンを必ず押す必要があります。これにより元のプレハブの設定が変更され、他のステージにある他のすべての Ellen インスタンスにも同じ入力設定が適用されます。

インスタンスを見ている場合には、その旨をリマインドする警告メッセージも表示されるようになっています。Player Input コンポーネントでこの警告が表示された場合は「Select Prefab」をクリックすれば、プレハブの編集画面が表示されます。

Player Input の設定は以下のようになっています。

  • Input Type(初期設定:Mouse And Keyboard) 入力のタイプの設定です。「Mouse and Keyboard」と「Controller」の 2 つから選択できます。本キットのコントローラーは、デフォルトでは Xbox One タイプに設定されています。

  • Pause ― ゲームの一時停止(ポーズ)に使用するキーとボタンの設定です。

    • Key ― そのアクションに使用する、キーボードのキーの設定です。

    • Controller Button ― そのアクションに使用する、コントローラーのボタンの設定です。

    • Enabled ― そのアクションのオン(有効)・オフ(無効)の切り替えです。チェックマークを入れると有効になります。

  • Interact ― 環境とのインタラクションに使用するキーとボタンの設定です。

    • Key ― そのアクションに使用する、キーボードのキーの設定です。

    • Controller Button ― そのアクションに使用する、コントローラーのボタンの設定です。

    • Enabled ― そのアクションのオン(有効)・オフ(無効)の切り替えです。チェックマークを入れると有効になります。

  • Melee Attack ― こん棒を振るアクションに使用するキーとボタンの設定です。

    • Key ― そのアクションに使用する、キーボードのキーの設定です。

    • Controller Button ― そのアクションに使用する、コントローラーのボタンの設定です。

    • Enabled ― そのアクションのオン(有効)・オフ(無効)の切り替えです。チェックマークを入れると有効になります。

  • Ranged Attack ― 銃を撃つアクションに使用するキーとボタンの設定です。

    • Key ― そのアクションに使用する、キーボードのキーの設定です。

    • Controller Button ― そのアクションに使用する、コントローラーのボタンの設定です。

    • Enabled ― そのアクションのオン(有効)・オフ(無効)の切り替えです。チェックマークを入れると有効になります。

  • Jump ― ジャンプに使用するキーとボタンの設定です。

    • Key ― そのアクションに使用する、キーボードのキーの設定です。

    • Controller Button ― そのアクションに使用する、コントローラーのボタンの設定です。

    • Enabled ― そのアクションのオン(有効)・オフ(無効)の切り替えです。チェックマークを入れると有効になります。

  • Horizontal ― 左右の移動に使用するキーとアナログスティックの設定です。

    • Positive ― 右(X 軸の正方向《positive》)への移動に使用する、キーボードのキーの設定です。

    • Negative ― 左(X 軸の負方向《negative》)への移動に使用する、キーボードのキーの設定です。

    • Controller Axis ― 左右の移動に使用する、コントローラーのアナログスティックまたはボタンの設定です。

  • Vertical ― しゃがむアクションや上を見るアクションに使用する、コントローラーのアナログスティックとボタンの設定です。

    • Positive ― 上(Y 軸の正方向《positive》)を見る際にカメラを動かすために使用する、キーボードのキーの設定です。

    • Negative ― しゃがむ(Y 軸の負方向《negative》)アクションに使用する、キーボードのキーの設定です。

    • Controller Axis ― 上を見るアクションとしゃがむアクションに使用する、コントローラーのアナログスティックまたはボタンの設定です。

  • Persistence Type および Data Tag ― データ・パーシステンス(データの持続性)に関するシステムの詳細は、「データ・パーシステンス」の項をご覧ください。Melee Attack(近距離攻撃)と Ranged Attack(範囲攻撃)のどちらが有効になっている場合でも、このクラスによってデータが持続されます。

Player Character

Player Character スクリプトには、ゲーム中の Ellen の挙動に関する情報がすべて含まれています。ここに含まれる設定は、動きとオーディオとカメラを制御するものです。

ここで加えた変更はすべて、そのシーンのプレハブのインスタンスにのみ適用されます。すべてのステージに変更を適用したい場合は、インスタンスの上部にある「Apply」をクリックすれば、Ellen プレハブ自体に変更が適用されます。

  • References ― 通常はこれを調整する必要はありません。スクリプトが機能するために必要な参照がすべて含まれています。

    • Sprite Renderer ― キャラクターの向く方向の設定に使用されます。

    • Damageable ― キャラクターがダメージを受けた時のモーションの方向設定に使用されます。

    • Melee Damager ― 特定のアニメーション中におけるダメージの有効・無効の設定に使用されます。

    • Facing Left/Right Bullet Spawn Point ― 射撃時の弾丸の発生位置として使用されます。

    • Bullet Pool ― 弾丸を発生させる際に使用されます。

    • Camera Follow Target ― キャラクターから見たカメラの位置を制御するために使用されます。例えば、高速移動時にキャラクターからの距離を維持するなどの挙動に使用されます。

  • Movement Settings ― Ellen の地上における移動速度の設定です。

    • Max Speed(初期設定:7) Ellen の走る速度の最大値です。

    • Ground Acceleration(初期設定:100) 地上において Ellen が Max Speed(最大速度)に達する速さです。

    • Ground Deceleration(初期設定:100) 無入力時に Ellen の移動の動きが停止する速さです。

    • Pushing Speed Proportion(初期設定:0.5) Ellen がボックスを押す時の移動速度で、Max Speed に対する割合を設定します。

  • Airborne Settings ― Ellen の空中移動の速度の設定です。

    • Airborne Accel Proportion(初期設定:1) 空中において Ellen が最大速度に達する速さです。Ground Acceleration に対する割合を設定します。

    • Airborne Decel Proportion(初期設定:0.5) 空中において Ellen の移動の動きが停止する速さです。Ground Deceleration に対する割合を設定します。

    • Gravity(初期設定:38) Ellen に働く重力の大きさで、地面に向かって落ちる速さを決める値です。ジャンプの高さにも影響します。

    • Jump Speed(初期設定:16.5) Ellen がジャンプした時の上方向への推進力です。ジャンプの高さにも影響します。

    • Jump Abort Speed Reduction ― *(初期設定:100) *ジャンプボタンが離された時にジャンプ値が減少する速さです。ジャンプの高さにも影響します。

  • Hurt Settings ― Ellen がダメージを受けた時の動きや見た目の設定です。ダメージに対する Ellen の反応に関するこの他の設定については、本リファレンスガイド内の「ダメージシステム」の項をご覧ください。

    • Hurt Jump Angle(初期設定:45) Ellen はダメージを受けると、その反動で(ダメージ源と反対の方向へ)空中に跳ね返ります。その跳ね返りの、水平方向に対する角度です。

    • Hurt Jump Speed (初期設定:8) Ellen がダメージを受けた時の、跳ね返りの推進力です。

    • Flickering Duration (初期設定:0.05) ダメージを受けると、Ellen のスプライトが素早く点滅し、ちらつく演出になっています。この点滅時の、スプライトの表示・非表示の切り替わり時間の長さを設定します。

  • Melee Settings ― Ellen のこん棒を振る動きの速さです。ダメージを与える Ellen のアクションに関するその他の設定については、「ダメージシステム」の項をご覧ください。

    • Melee Attack Dash Speed (初期設定:15) Ellen がこん棒で近距離攻撃を行う際に水平方向にダッシュする距離です。

    • Dash While Airborne(初期設定:有効) 空中攻撃時のダッシュを有効にできます。水平方向の動きが設定されますが、値の増加は行われません。空中で Ellen が既に水平移動中の時は、この設定による目に見える効果は表れないかもしれません。

  • Ranged Settings ― Ellen が銃を撃った時に生成される弾丸に関連する設定です。

    • Shots Per Second(初期設定:2) 1 秒間に生成可能な弾丸の最大数です。

    • Bullet Speed(初期設定:30) 生成された弾丸の移動速度です。

    • Holding Gun Timeout Duration(初期設定:1.5) Ellen が銃撃後に銃を構え続ける時間の長さです。

    • Right Bullet Spawn Point Animated(初期設定:有効) 弾丸の生成位置のアニメーションは銃の位置に合わせて表示されるようになっています。デフォルトでは Ellen アセットの弾丸の生成位置は右側に設定されています。Ellen が左を向いている時には生成位置のアニメーションがミラーリングされます。左向きのアニメーションスプライトを独自に追加したい場合は、このボックスのチェックマークを外してください。

  • Audio Settings ― 通常はこれを調整する必要はありません。Ellen の各種アクションのオーディオは、ワンパターンな印象を与えないようにランダムに再生されます。オーディオを再生する RandomAudioPlayers への参照は以下の通りです。

    • Footstep Audio Player ― Ellen の足音に使用される RandomAudioPlayer です。

    • Landing Audio Player ― Ellen が空中から着地した時に使用される RandomAudioPlayer です。

    • Hurt Audio Player ― Ellen がダメージを受けた時に使用される RandomAudioPlayer です。

    • Melee Audio Player ― Ellen の近距離攻撃時に使用される RandomAudioPlayer です。

    • Ranged Attack Audio Player ― Ellen の射撃時に使用される RandomAudioPlayer です。

  • Camera Follow Settings ― カメラは、Ellen を追うのではなく、Ellen の位置を基準にオフセット設定された位置をターゲットとして追うようになっています。このオフセットを制御する設定です。

    • Camera Horizontal Facing Offset(初期設定:2) カメラターゲットの、Ellen の前方水平方向へのオフセット値です。

    • Camera Horizontal Speed Offset(初期設定:0.2) Ellen の水平方向の速度に応じてターゲットが動く量です。

    • Camera Vertical Input Offset(初期設定:2) プレイヤーの入力に基づいてターゲットが垂直方向にオフセットされる量です。

    • Max Horizontal Delta Damp Time(初期設定:0.4) ターゲットが基準点からオフセット指定位置まで水平方向にずれるのにかかる時間の長さです。

    • Max Vertical Delta Damp Time(初期設定:0.6) ターゲットが基準点からオフセット指定位置まで垂直方向にずれるのにかかる時間の長さです。

    • Vertical Camera Offset Delay(初期設定:1) 「上を見る」や「下を見る」時に、ターゲットが垂直方向に動き始めるまでに上下の入力キーを押し続けなければならない時間の長さです。

  • Misc Settings ― その他の設定のためのフォルダーです。

    • Sprite Originally Faces Left(初期設定:無効) フリップされていないスプライトアセット自体の設定です。弾丸がどの生成位置から生成されるかなどの設定に使用されます。