/// <summary> /// Sets the uniform value. /// </summary> /// <param name="name">The uniform name.</param> /// <param name="value">The uniform value.</param> /// <returns>Reference to self for method call chaining.</returns> IShaderUniform IShaderUniform.SetUniform(string name, TextureCube value) { int location; if (this.uniformLocations.TryGetValue(name, out location) && value != null) { if (value.IsInitialized()) { gl.Uniform1(location, value.Use()); } else { gl.Uniform1(location, TextureCube.Default.Use()); } } return this; }