/// <summary> /// Specifies that the built VAO should be explicitly synchronized, with any pending changes flushed on each draw call. /// <para/> /// Specifically, means that the created VAO will be a <see cref="SynchronizedVertexArrayObject{T1}"/> instance. /// </summary> /// <typeparam name="T1">The type of data to be stored in the 1st buffer.</typeparam> /// <param name="builder">The builder to act on.</param> /// <returns>The updated builder.</returns> public static SynchronizedVertexArrayObjectBuilder <T1> Synchronized <T1>(this VertexArrayObjectBuilder <T1> builder) where T1 : struct { return(new SynchronizedVertexArrayObjectBuilder <T1>(builder)); }
/// <summary> /// Initializes a new instance of the <see cref="SynchronizedVertexArrayObjectBuilder{T1}"/> class. /// </summary> /// <param name="innerBuilder">The builder wrapped by this builder.</param> public SynchronizedVertexArrayObjectBuilder(VertexArrayObjectBuilder <T1> innerBuilder) { this.innerBuilder = innerBuilder; }