Doc:JA/2.6/Manual/Game Engine/Logic/Sensors/Types
Page status (reviewing guidelines)
Proposed split
|
センサの種類
Actuator sensor
Actuator欄に指定したアクチュエータが起動すると発信します。
Always sensor
決まったticksごとに発信する必要がある場合、またはスタートアップ時に発信させたい場合(Tapを有効にする)に使います。
このセンサには共通オプション以外の設定項目はありません。
Collision sensor
Touchセンサに似ていますが、プロパティによってフィルタリングできます。指定したプロパティを持つオブジェクトが衝突した場合のみ正パルスが送られます。どのオブジェクトに対しても動作させるには欄を空のままにします。
Pulseボタンは、直前のパルスの要因となったオブジェクトとまだ触れているときにも、他のオブジェクトとの衝突を検出します。
M/Pボタンはフィルタリングする要素をマテリアルとプロパティで切り替えます。
Delay sensor
指定したticksだけ反応を遅らせます。これは他のアクションが先に起こるべきである場合や、時間によって起こるイベントの場合に便利です。
3つのオプションがあります。
- Delay 正のパルスを送る前に待つticks数
- Duration 負のパルスを送る前に待つticks数。
- Repeat 遅延時間が終わった後、再始動します。
Joystick sensor
ジョイスティックイベントを検出します。
Indexで、使用するジョイスティックを指定します。
Event Typeメニューでイベントの種類を指定します。
- Button
- 使うボタンの番号を指定します。
- All Events
- 指定したタイプのイベントはすべてトリガに使われます。
- Axis
- Axis Number 軸を指定
- Axis Threshold 精密さを指定
- Axis Direction 使う方向を指定: Left, Right, Up, Down
- Hat
- 指定したHat numberを使います
- Hat Direction 使う方向を指定: up, down, left, right, up/right, up/left, down/right, down/left.
- Single Axis
- 一つの軸を使います。
Keyboard sensor
キーボード入力を検出します。入力をStringプロパティに保存することもできます。
Key欄はひとつのキーの押下を検出します。何も書かれていない欄をクリックして、検出したいキーを押します。これがアクティブキーになり、正パルスを発信します。この欄をクリックして続けて別の場所をクリックすると、キーの登録は消去されます。
All keysボタンを押すと、他のボタンは隠され、すべてのキー押下に対して正パルスが発信されます。これはPythonコントローラでカスタムキーマップを使う場合に便利です。
ModifierボタンはKeyと似ていますが、Keyで指定したボタンが押されたときにいっしょに押下されていた場合だけ検出されます。キーは2つ指定できます。ここにキーが登録されると、両方またはすべてのキーが押された場合だけ正パルスが発信されます。これはCtrlRや⇧ ShiftAltEscなどの操作で特定のアクションをさせるときに便利です。
LogToggle欄にはキーストロークがStringプロパティに保存されるかどうかをBool値で指定します。
Target欄にはキーストロークを保存するStringプロパティを指定します。Propertyセンサとともに使うと、たとえばパスワードの入力操作などに利用できます。
Message sensor
テキストまたはプロパティ値を送信するのに使います。ゲームエンジンのどこかでメッセージが送られると、Messageセンサは正パルスを発信します。Subjectで指定した件名の場合だけパルスを発信するようにもできます。
Mouse sensor
マウス入力を検出します。使えるのは以下のイベントのみです。
- Left button.
- Middle button.
- Right button
- Wheel Up, スクロールアップ
- Wheel Down, スクロールダウン
- Movement, マウスによるあらゆる動き
- Mouse over, オブジェクトにマウスが重なったことを検出
- Mouse over any, 何らかのオブジェクトにマウスが重なったことを検出
具体的なマウスの動きや反応に対するロジックブリックはありません(たとえばプレイヤー視点でカメラを動かしたりなど)。それはPythonで記述する必要があります。
Near sensor
指定した距離内に近づいているオブジェクトを検出します。Collisionと同様に、プロパティによってオブジェクトをフィルタリングすることもできます。
Property欄で指定したプロパティを持つオブジェクトのみに検出を制限できます。
Distance はオブジェクト同士の接近を検出する距離です(Blender単位)。
Resetはセンサがリセットされる(負パルスを発信する)距離です。
Property sensor
プロパティの変更を検出します。Property センサには4つのモードがあります。
- Equal はプロパティ値とセンサの値が等しい場合に正パルスを発信します。Propはプロパティ名、Valueに正パルスを発信する条件となる値を指定します。
- Not Equal はプロパティ値とセンサの値が異なる場合に正パルスを発信します。入力欄はEqualと同じですが、Valueにはプロパティ値と一致しないことが条件となる値を指定します。
- Interval は、プロパティ値がセンサのMinからMaxの価の範囲にある場合に正パルスを発信します。最低値のみを指定したい場合は、自身のプロパティ名をMax欄に、パルスを送る最低値をMin欄に入力します(訳注:最高値は自分自身の値なので、常に範囲内にある)。最高値のみを指定したい場合は、自身のプロパティ名をMin欄に、パルスを送る最高値をMax欄に入力します。値を比べるために他のプロパティ名を入力することもできます。
- Changed はプロパティの値が変わったときに正パルスを発信します。
Radar sensor
Nearセンサに似ていますが、軸から特定の角度の範囲(オブジェクトの中心を指す見えない円錐形)への進入を検出し、また接近は軸上での距離で測られます。
Property欄は、指定されたプロパティを持つオブジェクトのみに検出を限定します。
Axisメニューは、レーダーの方向を決めます。+および-の記号は軸上での正負の向きです。
Angleで円錐の広がりを指定します。
Distance で円錐の長さを指定します。
これはたとえば自動的に行動するキャラクターが正面方向しか見えないようにするのに便利です。ただし、他のオブジェクトの向こう側にあるオブジェクトも検出します。
Random sensor
Seed値をもとにして、ランダムなパルスを発信します。Seedが0だとランダムでないパルスになり、これはテストなどに使います。
Ray sensor
指定した軸方向にレイを発射して、何かに当たると正パルスを発信します。指定したプロパティまたはマテリアルを持つオブジェクトのみ検出することもできます。
ボタンなどはRadarと多くが共通しています。
X-Ray ModeはX線モードを有効にします。これは指定されたプロパティまたはマテリアルを持たないオブジェクトを通り抜けるようになります。
Touch sensor
他のオブジェクトとぶつかったときに正パルスを発信します。 MA欄でマテリアルによるフィルタリングができます。この欄に指定したオブジェクトとぶつかった場合だけパルスが発信されるようになります。すべてのオブジェクトを検出する場合は空にします。衝突が起こったときに正パルスが発信され、離れたときに負パルスが発信されます。“True Pulse triggering”を有効にすると、オブジェクトに触れている間はパルスが発信され続けます。