Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

TerrainData.SetAlphamaps

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public function SetAlphamaps(x: int, y: int, map: float[,,]): void;
public void SetAlphamaps(int x, int y, float[,,] map);

パラメーター

説明

指定されたマップ領域のすべての splat 値を割り当てます。

この関数で指定された配列は 置き換える位置の width と height を決定し、配列の 3 番目の次元は splatmap のテクスチャの数に対応しています。

	// Blend the two terrain textures according to the steepness of
	// the slope at each point.
	function Start () {
		var map: float[,,] = new float[t.terrainData.alphamapWidth, t.terrainData.alphamapHeight, 2];
		
		// For each point on the alphamap...
		for (var y = 0; y < t.terrainData.alphamapHeight; y++) {
			for (var x = 0; x < t.terrainData.alphamapWidth; x++) {
				// Get the normalized terrain coordinate that
				// corresponds to the the point.
				var normX = x * 1.0 / (t.terrainData.alphamapWidth - 1);
				var normY = y * 1.0 / (t.terrainData.alphamapHeight - 1);
				
				// Get the steepness value at the normalized coordinate.
				var angle = t.terrainData.GetSteepness(normX, normY);
				
				// Steepness is given as an angle, 0..90 degrees. Divide
				// by 90 to get an alpha blending value in the range 0..1.
				var frac = angle / 90.0;
				map[x, y, 0] = frac;
				map[x, y, 1] = 1 - frac;
			}
		}
		
		t.terrainData.SetAlphamaps(0, 0, map);
	}