/// <summary>Add a operation, always at the end of the current list of renders. Operation is added in the shader slot.</summary> public void Add(GLOperationsBase operation) { string n = "OP " + operation.GetType().Name + " # " + (unnamed++).ToStringInvariant(); AddItem(operation, n, null, true, false); // must be at end, and must not join }
/// <summary>Add an operation at the end of the list of a particular shader. </summary> /// <param name="shader">Shader to associate the operation with</param> /// <param name="operation">Operation</param> /// <param name="atend">Force the operation to be the last in the current queue. If false, and a shader already is in the queue, then its placed at the end of that shader list.</param> public void Add(IGLProgramShader shader, GLOperationsBase operation, bool atend = false) { string n = "OP-RI " + operation.GetType().Name + " # " + (unnamed++).ToStringInvariant(); AddItem(shader, n, operation, atend, true); // must be at end, and can join at end }
private new void Add(GLOperationsBase nprog) { System.Diagnostics.Debug.Assert(false, "Cannot add an operation to a compute shader list"); }