示例#1
0
    public void requestMesh(HeightMap heightMap, MeshSettings meshSettings, HeightMapSettings heightMapSettings)
    {
        hasRequestedMesh = true;

        if (heightMapSettings.useFalloff)
        {
            float[,] falloff = FalloffGenerator.generateFalloffMap(meshSettings.numVerticesPerLine);
            for (int i = 0; i < heightMap.values.GetLength(0); i++)
            {
                for (int j = 0; j < heightMap.values.GetLength(1); j++)
                {
                    heightMap.values[i, j] = heightMap.values[i, j] * (1 - falloff[i, j]);
                }
            }
        }

        ThreadedDataRequester.requestData(() => MeshGenerator.generateTerrainMesh(heightMap.values, meshSettings, lod), onMeshDataReceived);
    }
示例#2
0
 void onBiomDataReceived(object biomeDataObject)
 {
     biomeData             = biomeDataObject as BiomeData;
     meshRenderer.material = worldGenerator.getMaterialForBiome(biomeData);
     ThreadedDataRequester.requestData(() => HeightMapGenerator.generateHeightmap(meshSettings.numVerticesPerLine, meshSettings.numVerticesPerLine, heightMapSettings, sampleCenter), onHeightMapReceived);
 }
示例#3
0
 public void load()
 {
     ThreadedDataRequester.requestData(() => worldGenerator.queryBiom((int)coord.x, (int)coord.y, 16), onBiomDataReceived);
 }