2010-10-19 74 views
1

我試圖做這樣做:如何設置一個對象Ogre3D中的另一個對象的方向?

Ogre::Vector3 src = bone1->_getDerivedOrientation() * Ogre::Vector3::UNIT_X; 
Ogre::Quaternion quatt = src.getRotationTo(bone2->_getDerivedOrientation() * Ogre::Vector3::UNIT_X); 
bone1->rotate(quatt); 

src = bone1->_getDerivedOrientation() * Ogre::Vector3::UNIT_Y; 
quatt = src.getRotationTo(bone2->_getDerivedOrientation() * Ogre::Vector3::UNIT_Y); 
bone1->rotate(quatt); 

src = bone1->_getDerivedOrientation() * Ogre::Vector3::UNIT_Z; 
quatt = src.getRotationTo(bone2->_getDerivedOrientation() * Ogre::Vector3::UNIT_Z); 
bone1->rotate(quatt); 

,並沒有運氣可言。有沒有一種簡單的方法來設置一個骨頭旋轉到其他任何提示或想法將不勝感激。謝謝。

回答

1

有一次,它永遠不會失敗。只要我發佈這篇文章,我會繼續瀏覽API文檔並找到解決方案。 - 對不起。

很簡單:

bone1->setOrientation(bone2->_getDerivedOrientation().w,bone2->_getDerivedOrientation().x,bone2->_getDerivedOrientation().y,bone2->_getDerivedOrientation().z); 
相關問題