问题
地形内细节物的颜色没有更新,或者跟材质里色彩集的颜色不一样。
解决方法
细节物件颜色是以细节设定(detail settings)中的载入。要修改「Healthy」和「Dry」颜色来修改地形内细节的颜色。
读此文章,进一步了解颜色:改变细节对象的颜色。
材质的颜色因为呈现的原因并不会在运行时自动刷新的。如果您需要在运行时刷新颜色(例如季节改变)那您可以使用以下程式码:
Nature Renderer 1.1.8 和更高版本:
using VisualDesignCafe.Rendering.Nature;
GetComponent<NatureRenderer>().FlushMaterials();
较早版本:
using VisualDesignCafe.Rendering.Nature;
var camera = Camera.main;
var natureRenderer = GetComponent<NatureRenderer>();
var detailPrototypes = GetComponent<Terrain>().terrainData.detailPrototypes;
for( int i = 0; i < natureRenderer.TerrainData.DetailPrototypes.Length; i++ )
{
natureRenderer.TerrainData.DetailPrototypes[i].CopyFrom(
detailPrototypes[i],
camera != null ? camera.fieldOfView : 60f,
out bool flushEverything,
natureRenderer.BillboardGrassMaterial );
}