Esempio n. 1
0
 public void AddVertexBuffer(string name, IBufferObject vbo)
 {
     if (nameToVbo.ContainsKey(name) && nameToVbo[name] == vbo)
     {
         return;
     }
     nameToVbo[name] = vbo;
     if (vbo.UsesLayoutIndex)
     {
         vbo.LayoutIndex = nextLayoutIndex;
         nextLayoutIndex++;
     }
     vboNamesToBind.Add(name);
     vbo.OnChanged += () => { OnChanged?.Invoke(); };
     OnChanged?.Invoke();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SynchronizedBufferObject{T}" /> class.
 /// </summary>
 /// <param name="bufferObject">The <see cref="IBufferObject{T}"/> to wrap.</param>
 public SynchronizedBufferObject(IVertexBufferObject <T> bufferObject)
 {
     this.bufferObject = bufferObject;
 }