// Exit if this buffer is already initialized if(mBuffer) { return false; } // Describe a buffer for holding shader constants D3D11_BUFFER_DESC bufferDesc; ZeroMemory(&bufferDesc, sizeof(bufferDesc)); bufferDesc.Usage = D3D11_USAGE_DEFAULT; bufferDesc.ByteWidth = size; bufferDesc.BindFlags = D3D11_BIND_CONSTANT_BUFFER; bufferDesc.CPUAccessFlags = 0; bufferDesc.MiscFlags = 0; bufferDesc.StructureByteStride = 0; // Create the buffer and return return !FAILED(Handle::Window->Device->CreateBuffer(&bufferDesc, NULL, &mBuffer));