public ParameterConstantBuffer(GraphicsDevice device, string constantBufferName, ShaderConstantBufferDescription constantBufferDesc) { ConstantBufferDesc = constantBufferDesc; constantBufferDatas = new ConstantBufferData[GraphicsDevice.ThreadCount]; dataStreams = new DataPointer[GraphicsDevice.ThreadCount]; for (uint i = 0; i < GraphicsDevice.ThreadCount; ++i) { constantBufferDatas[i] = new ConstantBufferData(constantBufferDesc); dataStreams[i] = new DataPointer(constantBufferDatas[i].Data, constantBufferDesc.Size); } Buffer = SiliconStudio.Paradox.Graphics.Buffer.New(device, constantBufferDatas[0].Desc.Size, BufferFlags.ConstantBuffer, UsingMap ? GraphicsResourceUsage.Dynamic : GraphicsResourceUsage.Default); // We want to clear flags // TODO: Should be later replaced with either an internal field on GraphicsResourceBase, or a reset counter somewhere? Buffer.Reload = Reload; }