public void UpdateVolume()
{
Vector3 halfBoxSize = boxSize * 0.5f;
if (meshInstance)
{
ScaleMesh(meshInstance, boxSize);
// Set bounding volume so modified vertices don't get culled
Bounds bounds = new Bounds();
bounds.SetMinMax(-halfBoxSize, halfBoxSize);
meshInstance.bounds = bounds;
}
// Set material parameters (coneRadius and coneHeight)
if (materialInstance)
{
materialInstance.SetVector("_BoxMin", new Vector4(-halfBoxSize.x, -halfBoxSize.y, -halfBoxSize.z, (1f/fogTextureScale)));
materialInstance.SetVector("_BoxMax", new Vector4(halfBoxSize.x, halfBoxSize.y, halfBoxSize.z, fogTextureYMovement));
materialInstance.SetFloat("_Visibility", visibility);
materialInstance.SetColor("_Color", volumeColor);
materialInstance.SetTexture("_MainTex", fogTexture);
}
}