D3D 渲染X模型之后,发现模型会跟着视点的移动而移动,求解.
为了标记X模型的渲染位置和缩放比例,做了如下矩阵变换:
modelSite=XModelProScript->GetVariableAsVector("TreeSite"); //获取树的坐标 D3DXMatrixTranslation(&modelWorldMatrixSite,modelSite.x,modelSite.y,modelSite.z); modelSize=XModelProScript->GetVariableAsVector("TreeSize"); //獲取树的位置 D3DXMatrixScaling(&modelWorldMatrixSize,modelSize.x,modelSize.y,modelSize.z); modelWorldMatrix=modelWorldMatrixSize*modelWorldMatrixSite; g_D3DDevice->SetTransform(D3DTS_WORLD,&modelWorldMatrix); cxmodel[1]->Render(g_D3DDevice); //渲染
D3DXMATRIX V; ccamera->getViewMatrix(&V); g_D3DDevice->SetTransform(D3DTS_VIEW, &V);