Version: 2017.1
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); }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961