はじめてゲームプログラミング 「マッピング」の特徴と基本的な使い方
『つくってわかる はじめてゲームプログラミング』の、「マッピング」の基本的な使い方についてのメモです。
「マッピング」は、入力された値を、指定した範囲に割り当てる形式で変換するノードンです。
使い方を覚えればプログラムを簡略化できるので、色々な場面で役に立ちます。
「マッピング」の設定画面
「マッピングノードン」の設定画面では、入出力する数値の範囲を設定できます。
設定「入力はんい」
「入力はんい」では、入力される値の範囲を設定します。
「-1000 〜 1000」の範囲で指定可能で、初期状態では「0 〜 1」に設定されています。
設定「出力はんい」
「出力はんい」では、出力する値の範囲を設定します。
「-1000 〜 1000」の範囲で指定可能で、初期状態では「-1 〜 1」に設定されています。
「はんい制限」で制限をしない場合、「出力はんい」を超える値が出力されることがあります。
設定「←→」
「←→」は、「出力はんい」の右側に設置されているボタンです。
このボタンをオンにすると、出力範囲の下限と上限が反転します。
入力した値が上限に近づくほど、出力される値は下限に近くなります。
例えば、入力が「0 〜 10」で、出力が「0 〜 100」の場合、通常、「0」の入力で「0」が出力されますが、反転時は「100」が出力されます。
同様に、入力値が上限の時、出力値の下限に変換されます。
設定「はんい制限」
「はんい制限」は、「出力はんい」の右側に設置されているボタンです。
初期状態では、「はんい制限しない」に設定されています。
「はんい制限しない」では、入力範囲を超えた値でも変換が可能で、結果として、出力範囲を超える値も出力されます。
例えば、入力が「0 〜 10」で、出力が「0 〜 100」の時、「20」を入力すると「200」が出力されます。
「はんい制限する」では、入力値は入力範囲内に制限され、出力結果も、出力範囲に即した内容となります。
「マッピング」の基本的な使い方
「マッピングノードン」には、「入力ポート」と「出力ポート」が、一つずつ用意されています。
数値を入力すると、設定に即した形式で変換し、その結果を出力します。
使い所としては、「カウンター」から得た値を「モノ」の位置座標に使用したい…といった状況など、数値を特定の範囲内に割り当てて使う時に便利です。
特に計算が複雑になる時は、「定数」と「けいさんノードン」を組み合わせるよりも、「マッピング」で変換した方が、簡単に同じ結果を得られることがあります。
また、多くのノードンは、動作の結果として「0」か「1」を出力しますが、プログラム的に「-1」か「1」の値が欲しい、という時があります。
こういった場合も、「マッピング」の出力範囲を「-1 〜 1」に設定しておけば、「ロジックノードン」や「くらべるノードン」で判別してから計算を加える手間が省けます。
[ はじめてゲームプログラミング ]