Есть ли способ повернуть объект по другой плоскости? Я делаю трехмерную модель солнечной системы, и я бы хотел, чтобы Плутон вращался вокруг Солнца на плоскости, отличной от плоскости других планет. В настоящее время у меня есть первые восемь планет, вращающихся вокруг Солнца в плоскости XZ (вращение вокруг оси Y). Есть ли простой способ сделать это, не вдаваясь в сложную математику? Вот как я реализовал мои другие планеты,
D3DXMATRIX marsMat;
D3DXMATRIX marsScale;
D3DXMATRIX marsTrans;
D3DXMATRIX marsAxisRot;
D3DXMATRIX marsRot;
D3DXMatrixScaling(&marsScale,0.45,0.45,0.45);
D3DXMatrixRotationY(&marsAxisRot,D3DXToRadian((GetTickCount()-start)*0.07));
D3DXMatrixTranslation(&marsTrans,-17,0,0);
D3DXMatrixRotationY(&marsRot,D3DXToRadian((GetTickCount()-start)*0.007));
marsMat = marsScale * marsAxisRot * marsTrans * marsRot;
matrixStack->Push();
{
matrixStack->MultMatrixLocal(&marsMat);
d3ddev->SetTransform(D3DTS_WORLD,matrixStack->GetTop());
marsMesh->DrawSubset(0);
}
matrixStack->Pop();