DirectX::XMMATRIX worldM;
DirectX::XMMATRIX TransformM;
DirectX::XMFLOAT3 PointLightpos;
float pointLightIntensity;
DirectX::XMFLOAT3 PointLightcolor;
float ambientIntensity;
DirectX::XMFLOAT3 AmbientLightColor;
Вот как я сделал структуру моего постоянного буфера, я также сделал это то же самое в моих vs и ps. Проблема в том, что я получаю странные результаты, поэтому я предполагаю, что не могу сгруппировать float3 и float, которые не принадлежат друг другу, как будто он думает, что pointlightintensity является частью pointlightpos или чем-то.
Я попытался добавитьотступы плавают, но я все еще получаю странные результаты, например, цвет должен быть синим, но он становится белым.
Это проблема заполнения, и если да, то как вы должны правильно объявлять 16 байтов?