运行DirectX11项目时,每次调用带有此警告的ID3D10Device::DrawIndexed时,输出窗口中都会出现垃圾信息。
D3D11:警告: ID3D11DeviceContext::DrawIndexed:输入顶点槽0的跨距为48,这比从当前输入布局中逻辑上期望的最小步长(56字节)小。这是可以的,因为硬件完全能够读取重叠的数据。但是,开发人员可能不打算使用这种行为。执行警告#355: DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL
我现在就是这样调用这个函数的
pImmediateContext->DrawIndexed( this->vertexBuffer.infes.size()* 3,0,0 );
我不知道我做错了什么导致了这个警告。如果有人能对这个问题有所了解,我会很感激的。
发布于 2013-02-25 05:53:07
错误告诉您,输入布局的总字节大小与设置顶点缓冲区时设置的步长不同。
要解决这个问题,需要确保通过IASetInputLayout()设置的输入层与调用IASetVertexBuffers()时的输入层具有相同的步长。
https://stackoverflow.com/questions/15059333
复制相似问题