public void Initialize(UnityEngine.Mesh mesh, UnityEngine.Material material)
{
this.Mesh = mesh;
this.Material = material;
this.DeferredPass = material.FindPass("DEFERRED");
this.ShadowPass = material.FindPass("SHADOWCASTER");
this.Positions = Pool.Get <SimpleList <Vector4> >();
this.Positions.Clear();
this.ArgsBuffer = this.SafeRelease(this.ArgsBuffer);
this.ArgsBuffer = new ComputeBuffer(1, (int)this.args.Length * 4, ComputeBufferType.DrawIndirect);
this.args[0] = this.Mesh.GetIndexCount(0);
this.args[2] = this.Mesh.GetIndexStart(0);
this.args[3] = this.Mesh.GetBaseVertex(0);
}