public IndexBuffer(IDisposableResource parent, BufferUsages usage, int[] indices) : base(parent, usage, indices) { try { var video = parent.FindParentOrSelfWithException<Video>(); com = new IndexBufferCom(video.com); var bufferUsage = (usage == BufferUsages.Write) ? REIGN_D3D11_USAGE.DYNAMIC : REIGN_D3D11_USAGE.DEFAULT; var cpuUsage = (usage == BufferUsages.Write) ? REIGN_D3D11_CPU_ACCESS_FLAG.WRITE : (REIGN_D3D11_CPU_ACCESS_FLAG)0; var error = com.Init(indices, indexCount, indexByteSize, bufferUsage, cpuUsage, _32BitIndices); if (error == IndexBufferErrors.Buffer) Debug.ThrowError("IndexBuffer", "Failed to create Buffer"); } catch (Exception e) { Dispose(); throw e; } }
public IndexBuffer(IDisposableResource parent, BufferUsages usage, int[] indices) : base(parent, usage, indices) { try { var video = parent.FindParentOrSelfWithException <Video>(); com = new IndexBufferCom(video.com); var error = com.Init(indices, indexCount, indexByteSize, REIGN_D3DUSAGE.WRITEONLY, _32BitIndices); if (error == IndexBufferErrors.IndexBuffer) { Debug.ThrowError("IndexBuffer", "Failed to create IndexBuffer"); } } catch (Exception e) { Dispose(); throw e; } }
public IndexBuffer(IDisposableResource parent, BufferUsages usage, int[] indices) : base(parent, usage, indices) { try { var video = parent.FindParentOrSelfWithException <Video>(); com = new IndexBufferCom(video.com); var bufferUsage = (usage == BufferUsages.Write) ? REIGN_D3D11_USAGE.DYNAMIC : REIGN_D3D11_USAGE.DEFAULT; var cpuUsage = (usage == BufferUsages.Write) ? REIGN_D3D11_CPU_ACCESS_FLAG.WRITE : (REIGN_D3D11_CPU_ACCESS_FLAG)0; var error = com.Init(indices, indexCount, indexByteSize, bufferUsage, cpuUsage, _32BitIndices); if (error == IndexBufferErrors.Buffer) { Debug.ThrowError("IndexBuffer", "Failed to create Buffer"); } } catch (Exception e) { Dispose(); throw e; } }