10

In DX12, a descriptor is a small record, basically a pointer, that tells the GPU where to find some data such as a constant buffer. Since each object is going to have its own constant buffer data with its own particular transforms, lighting/material properties, etc., each object also has to end up with a separate set of descriptors to point to its individual ...


4

The problem looks like it's in this line: d3dDevice->CreateConstantBufferView(cbvDesc, cbvHandle1); The first parameter should be &cbvDesc[1]. As it is now, you're setting up two copies of cbvDesc[0]. Also, it looks like you've reversed the second and third arguments to the cbvHandle1 constructor: the second argument should be the offset (1) and ...


4

I went looking for an answer, so I downloaded AMD's shader analyzer to view the assembly produced when compiled for GCN. In the assembly below vector registers are v# and scalar registers are s#. It would appear that the uniforms even vector uniforms are passed into the shader as separate scalars, so a vec3 would use 3 scalar registers. The bit I found ...


Only top voted, non community-wiki answers of a minimum length are eligible