60 lines
1.4 KiB
C#
60 lines
1.4 KiB
C#
|
using AwesomeTechnologies.VegetationSystem;
|
|||
|
using UnityEngine;
|
|||
|
|
|||
|
namespace AwesomeTechnologies.Shaders
|
|||
|
{
|
|||
|
|
|||
|
public class PolygonTreeController : IShaderController
|
|||
|
{
|
|||
|
private static readonly string[] FoliageShaderNames =
|
|||
|
{
|
|||
|
"SyntyStudios/Trees"
|
|||
|
};
|
|||
|
|
|||
|
public bool MatchShader(string shaderName)
|
|||
|
{
|
|||
|
if (string.IsNullOrEmpty(shaderName)) return false;
|
|||
|
|
|||
|
for (int i = 0; i <= FoliageShaderNames.Length - 1; i++)
|
|||
|
{
|
|||
|
if (FoliageShaderNames[i] == shaderName) return true;
|
|||
|
}
|
|||
|
|
|||
|
return false;
|
|||
|
}
|
|||
|
|
|||
|
public ShaderControllerSettings Settings { get; set; }
|
|||
|
public void CreateDefaultSettings(Material[] materials)
|
|||
|
{
|
|||
|
Settings = new ShaderControllerSettings
|
|||
|
{
|
|||
|
Heading = "Synty Studios Tree shader",
|
|||
|
Description = "",
|
|||
|
LODFadePercentage = false,
|
|||
|
LODFadeCrossfade = false,
|
|||
|
SampleWind = false,
|
|||
|
SupportsInstantIndirect = false,
|
|||
|
BillboardHDWind = false,
|
|||
|
OverrideBillboardAtlasNormalShader = "AwesomeTechnologies/Billboards/RenderNormalsAtlas",
|
|||
|
OverrideBillboardAtlasShader = "AwesomeTechnologies/Billboards/RenderDiffuseAtlasPolygonTree",
|
|||
|
BillboardRenderMode = BillboardRenderMode.Standard
|
|||
|
};
|
|||
|
}
|
|||
|
|
|||
|
public void UpdateMaterial(Material material, EnvironmentSettings environmentSettings)
|
|||
|
{
|
|||
|
if (Settings == null) return;
|
|||
|
}
|
|||
|
|
|||
|
public void UpdateWind(Material material, WindSettings windSettings)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
public bool MatchBillboardShader(Material[] materials)
|
|||
|
{
|
|||
|
return false;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|