protected virtual void InitializePropertiesIfNeeded() { if (Properties != null) { return; } Properties = new MaterialProperties(GetComponent <MeshRenderer>()); PrepareProperties(Properties); Properties.Apply(); }
internal ColorProperty(MaterialProperties properties, string name) : base(properties, name) { }
protected abstract void PrepareProperties(MaterialProperties materialProperties);
public static IProperty <float> GetFloatProperty(this MaterialProperties properties, string name) { return(new FloatProperty(properties, name)); }
public static IProperty <ComputeBuffer> GetComputeBufferProperty(this MaterialProperties properties, string name) { return(new ComputeBufferProperty(properties, name)); }
public static IProperty <Matrix4x4> GetMatrixProperty(this MaterialProperties properties, string name) { return(new MatrixProperty(properties, name)); }
public static IProperty <Vector4> GetVectorProperty(this MaterialProperties properties, string name) { return(new VectorProperty(properties, name)); }
internal ComputeBufferProperty(MaterialProperties properties, string name) : base(properties, name) { }