ogre和physx二sdk整合筆記

anyway, 寫3d實時程序從頭造輪子雖然high,但是巨麻煩,ogre和physx這兩年相當成熟了,快速開發再好不過.但是整合起來稍微有點麻煩,這裏記錄一下以備後查

ogre sdk vc8版本, (我曾經試過用vc7的sdk硬轉換成vc8的項目,結果編譯能過去,執行卻把機器整崩潰了,汗)

PhysX SDK v2.4.1再往上就乾硬件了...

試驗修改項目: sample project Demo_camera_track

項目屬性添加

c/c++(默認裝到這個目錄):

C:/Program Files/AGEIA Technologies/AGEIA PhysX SDK/v2.4.1/SDKs/Foundation/include
C:/Program Files/AGEIA Technologies/AGEIA PhysX SDK/v2.4.1/SDKs/Physics/include
C:/Program Files/AGEIA Technologies/AGEIA PhysX SDK/v2.4.1/SDKs/PhysXLoader/include

鏈接器:

附加庫目錄添加:C:/Program Files/AGEIA Technologies/AGEIA PhysX SDK/v2.4.1/SDKs/lib/Win32

附加依賴項添加:PhysXLoader.lib

CameraTrack.cpp中添加頭文件:

#include "NxPhysics.h" (必須放在開頭否則 幾百個error!!)

然後添加初始,退出physx函數,和在楨回調中調用physx that's it

這裏簡單的用了一個 box 我接納悶SceneNode* 爲什麼不能一個44矩陣做object to world轉換
兩個函數,這.....:

   //float glMat[16];
   //actor->getGlobalPose().getColumnMajor44(glMat);
   NxVec3 cubePos = actor->getGlobalPosition();
   cubeNode->setPosition(cubePos.x,cubePos.y,cubePos.z);
   NxQuat cubeQuat = actor->getGlobalOrientationQuat();
   cubeNode->setOrientation(cubeQuat.w,cubeQuat.x,cubeQuat.y,cubeQuat.z);

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章