Arbor 3: FSM & BT Graph Editor  3.7.8
AgentController クラス

NavMeshAgentをラップしたAI用移動コンポーネント。
主に組み込みBehaviourのAgentを介して使用する。 [詳解]

MonoBehaviour, ISerializationCallbackReceiverを継承しています。

公開型

enum  MovementType { NotChange, Normalize, DivSpeed, DivValue }
 移動ベクトルのタイプ [詳解]
 
enum  TurnType { UseX, RadianAngle }
 Turnのタイプ [詳解]
 

公開メンバ関数

void Patrol (Vector3 center, float speed, float radius)
 指定半径内をうろつく [詳解]
 
void Patrol (float speed, float radius)
 開始位置から指定半径内をうろつく [詳解]
 
void Follow (float speed, float stoppingDistance, Vector3 targetPosition)
 指定した位置へ近づく [詳解]
 
void Follow (float speed, float stoppingDistance, Transform target)
 指定したTransformの位置へ近づく [詳解]
 
void Escape (float speed, float distance, Vector3 targetPosition)
 指定した位置から遠ざかる [詳解]
 
void Escape (float speed, float distance, Transform target)
 指定したTransformから遠ざかる [詳解]
 
void LookAt (float angularSpeed, Vector3 targetPosition)
 指定した位置の方向へ回転する。 [詳解]
 
void LookAt (float angularSpeed, Transform target)
 指定したTransformの方向へ回転する。 [詳解]
 
void Resume ()
 移動を再開する。 [詳解]
 
void Stop ()
 停止する。 [詳解]
 
bool Warp (Vector3 newPosition)
 指定された位置にエージェントをワープします。 [詳解]
 

プロパティ

NavMeshAgent agent [get, set]
 制御したいNavMeshAgent。 [詳解]
 
Animator animator [get, set]
 制御したいAnimator。 [詳解]
 
string movingParameter [get, set]
 Agentが移動中かどうかをAnimatorへ設定するためのboolパラメータを指定する。 [詳解]
 
float movingSpeedThreshold [get, set]
 移動中と判定する速度の閾値 [詳解]
 
string speedParameter [get, set]
 移動速度をAnimatorへ設定するためのfloatパラメータを指定する。 [詳解]
 
bool isDivAgentSpeed [get, set]
 Agentに設定しているspeedで割るかどうか。 [詳解]
 
float speedDampTime [get, set]
 移動速度のダンプ時間。 [詳解]
 
MovementType movementType [get, set]
 移動ベクトルのタイプ。 [詳解]
 
float movementDivValue [get, set]
 velocityに対して割る値。(_MovementTypeがMovementType.DivValueの時のみ使用) [詳解]
 
string movementXParameter [get, set]
 Agentのローカル空間での移動ベクトルのX値をAnimatorへ設定ためのfloatパラメータを指定する。 [詳解]
 
float movementXDampTime [get, set]
 移動方向ベクトルのX値のダンプ時間。 [詳解]
 
string movementYParameter [get, set]
 Agentのローカル空間での移動方向ベクトルのY値をAnimatorへ設定ためのfloatパラメータを指定する。 [詳解]
 
float movementYDampTime [get, set]
 移動方向ベクトルのY値のダンプ時間。 [詳解]
 
string movementZParameter [get, set]
 Agentのローカル空間での移動方向ベクトルのZ値をAnimatorへ設定ためのfloatパラメータを指定する。 [詳解]
 
float movementZDampTime [get, set]
 移動方向ベクトルのZ値のダンプ時間。 [詳解]
 
string turnParameter [get, set]
 ターン方向をAnimatorへ設定するためのfloatパラメータを指定する。 [詳解]
 
TurnType turnType [get, set]
 Turnのタイプ [詳解]
 
float turnDampTime [get, set]
 ターン方向のダンプ時間。 [詳解]
 
Transform agentTransform [get]
 AgentのTransform [詳解]
 
bool isDone [get]
 移動完了したかどうか。 [詳解]
 
bool isMoving [get]
 移動中かどうか [詳解]
 

詳解

NavMeshAgentをラップしたAI用移動コンポーネント。
主に組み込みBehaviourのAgentを介して使用する。

列挙型メンバ詳解

◆ MovementType

enum MovementType
strong

移動ベクトルのタイプ

列挙値
NotChange 

NavMeshAgent.velocityの値をそのまま使用する。

Normalize 

NavMeshAgent.velocityを正規化した値を使用する。

DivSpeed 

NavMeshAgent.velocityをNavMeshAgent.speedで割った値を使用する。

DivValue 

NavMeshAgent.velocityをMovementDivValueで割った値を使用する。

◆ TurnType

enum TurnType
strong

Turnのタイプ

列挙値
UseX 

向きベクトルのX値を使う。

RadianAngle 

向きベクトルのXZ値からラジアン角を計算する。

メソッド詳解

◆ Escape() [1/2]

void Escape ( float  speed,
float  distance,
Transform  target 
)

指定したTransformから遠ざかる

引数
speed移動速度
distance遠ざかる距離
target対象

◆ Escape() [2/2]

void Escape ( float  speed,
float  distance,
Vector3  targetPosition 
)

指定した位置から遠ざかる

引数
speed移動速度
distance遠ざかる距離
targetPosition対象

◆ Follow() [1/2]

void Follow ( float  speed,
float  stoppingDistance,
Transform  target 
)

指定したTransformの位置へ近づく

引数
speed移動速度
stoppingDistance停止距離
target目標地点

◆ Follow() [2/2]

void Follow ( float  speed,
float  stoppingDistance,
Vector3  targetPosition 
)

指定した位置へ近づく

引数
speed移動速度
stoppingDistance停止距離
targetPosition目標地点

◆ LookAt() [1/2]

void LookAt ( float  angularSpeed,
Transform  target 
)

指定したTransformの方向へ回転する。

引数
angularSpeed角速度
target対象

◆ LookAt() [2/2]

void LookAt ( float  angularSpeed,
Vector3  targetPosition 
)

指定した位置の方向へ回転する。

引数
angularSpeed角速度
targetPosition対象

◆ Patrol() [1/2]

void Patrol ( float  speed,
float  radius 
)

開始位置から指定半径内をうろつく

引数
speed移動速度
radius開始位置からの半径

◆ Patrol() [2/2]

void Patrol ( Vector3  center,
float  speed,
float  radius 
)

指定半径内をうろつく

引数
center中心
speed移動速度
radius開始位置からの半径

◆ Resume()

void Resume ( )

移動を再開する。

◆ Stop()

void Stop ( )

停止する。

◆ Warp()

bool Warp ( Vector3  newPosition)

指定された位置にエージェントをワープします。

引数
newPositionエージェントをワープさせる位置
戻り値
経路の割り当てに成功した場合 true

プロパティ詳解

◆ agent

NavMeshAgent agent
getset

制御したいNavMeshAgent。

◆ agentTransform

Transform agentTransform
get

AgentのTransform

◆ animator

Animator animator
getset

制御したいAnimator。

◆ isDivAgentSpeed

bool isDivAgentSpeed
getset

Agentに設定しているspeedで割るかどうか。

◆ isDone

bool isDone
get

移動完了したかどうか。

◆ isMoving

bool isMoving
get

移動中かどうか

◆ movementDivValue

float movementDivValue
getset

velocityに対して割る値。(_MovementTypeがMovementType.DivValueの時のみ使用)

0を指定した場合は無効。

◆ movementType

MovementType movementType
getset

移動ベクトルのタイプ。

◆ movementXDampTime

float movementXDampTime
getset

移動方向ベクトルのX値のダンプ時間。

◆ movementXParameter

string movementXParameter
getset

Agentのローカル空間での移動ベクトルのX値をAnimatorへ設定ためのfloatパラメータを指定する。

◆ movementYDampTime

float movementYDampTime
getset

移動方向ベクトルのY値のダンプ時間。

◆ movementYParameter

string movementYParameter
getset

Agentのローカル空間での移動方向ベクトルのY値をAnimatorへ設定ためのfloatパラメータを指定する。

◆ movementZDampTime

float movementZDampTime
getset

移動方向ベクトルのZ値のダンプ時間。

◆ movementZParameter

string movementZParameter
getset

Agentのローカル空間での移動方向ベクトルのZ値をAnimatorへ設定ためのfloatパラメータを指定する。

◆ movingParameter

string movingParameter
getset

Agentが移動中かどうかをAnimatorへ設定するためのboolパラメータを指定する。

◆ movingSpeedThreshold

float movingSpeedThreshold
getset

移動中と判定する速度の閾値

◆ speedDampTime

float speedDampTime
getset

移動速度のダンプ時間。

◆ speedParameter

string speedParameter
getset

移動速度をAnimatorへ設定するためのfloatパラメータを指定する。

◆ turnDampTime

float turnDampTime
getset

ターン方向のダンプ時間。

◆ turnParameter

string turnParameter
getset

ターン方向をAnimatorへ設定するためのfloatパラメータを指定する。

◆ turnType

TurnType turnType
getset

Turnのタイプ