/// <summary> /// Creates a new index buffer implementation. /// </summary> /// <param name="format">Index format, 16 or 32 bits.</param> /// <param name="indexCount">Number of indices</param> /// <param name="usage">Resource usage</param> /// <returns> /// Index buffer implementation /// </returns> public IndexBufferImplementation CreateIndexBufferImplementation(IndexFormat format, int indexCount, ResourceUsage usage) { D3D10IndexBufferImplementation impl = new D3D10IndexBufferImplementation(_renderer, format, indexCount, usage); SetGraphicsID(impl); return(impl); }
/// <summary> /// Creates a new index buffer implementation popualted with the specified Int16 data. /// </summary> /// <param name="data">DataBuffer to copy from</param> /// <param name="usage">Resource usage</param> /// <returns> /// Index buffer implementation /// </returns> public IndexBufferImplementation CreateIndexBufferImplementation(DataBuffer <short> data, ResourceUsage usage) { D3D10IndexBufferImplementation impl = new D3D10IndexBufferImplementation(_renderer, data, usage); SetGraphicsID(impl); return(impl); }
/// <summary> /// Sets the index buffer. /// </summary> /// <param name="ib">The ib.</param> public override void SetIndexBuffer(IndexBuffer ib) { _currentIndexBuffer = ib; if (ib != null) { D3D10Helper.CheckDisposed(ib); D3D10IndexBufferImplementation impl = (D3D10IndexBufferImplementation)ib.Implementation; _graphicsDevice.InputAssembler.SetIndexBuffer(impl.D3DIndexBuffer, impl.D3DIndexFormat, 0); } }