PS。抱歉..我不太会说英语。
我想问一些关于Bullet Physics SDK的问题。 //我使用Vistual Studio 2015 / Bullet 2.88
当前我的解决方案文件夹中有lib文件,头文件
用于调试模式的lib文件: BulletCollision_vs2010_debug.lib / BulletDynamics_vs2010_debug.lib / LinearMath_vs2010_debug.lib
对于发布模式的lib文件: BulletCollision_vs2010.lib / BulletDynamics_vs2010.lib / LinearMath_vs2010.lib
我做了所有这样的设置
set inc Dir : Properties->C/C++->General->Additional Include Directories
set lib Dir : Properties->Linker->General->Additional Library Directories
set additional Dependencies : Properties->Linker->Input->Additional>Dependencies
set appropriate runtime library : Properties->C/C++->Code Generate->runtime ilbrary
但是我的项目中仍然有错误
외부 기호를 확인할 수 없습니다. = unresolved external symbol
main.obj:错误LNK2001:“公共:虚拟浮点__thiscall btCollisionShape :: getContactBreakingThreshold(float)const“ (?getContactBreakingThreshold @ btCollisionShape @@ UBEMM @ Z)호를호를확인할수 없습니다。
main.obj:错误LNK2001:“公共:虚拟浮点__thiscall btCollisionShape :: getAngularMotionDisc(void)const“ (?getAngularMotionDisc @ btCollisionShape @@ UBEMXZ)호를기호를다없습니。
main.obj:错误LNK2001:“ public:虚拟void __thiscall btCollisionShape :: getBoundingSphere(btVector3&,float&)const“ (?getBoundingSphere @ btCollisionShape @@ UBEXAAVbtVector3 @@ AAM @ Z)호를기호를 없습니다。
main.obj:错误LNK2001:“ public:虚拟void __thiscall btConvexShape :: project(btTransform类const&,btVector3类const &,float&,float&,class btVector3&,btVector3&)const“ (?project @ btConvexShape @@ UBEXABVbtTransform @@ ABVbtVector3 @@ AAM2AAV3 @ 3 @ Z) 외부기호를없습니다。
main.obj:错误LNK2001:“ public:虚拟void __thiscall btSphereShape :: calculateLocalInertia(float,class btVector3&)const“ (?calculateLocalInertia @ btSphereShape @@ UBEXMAAVbtVector3 @@@@ Z)호를기호를 없습니다。
如何解决这些错误? 谢谢您的收听!
答案 0 :(得分:0)
错误btCollisionShape::getBoundingSphere(class btVector3 &,float &)
在我看来就像您已将 btScalar 定义为单精度,但是默认情况下,项目符号库通过将 btScalar 定义为双精度,将< strong> BT_USE_DOUBLE_PRECISION =1。您需要在应用程序中执行相同的操作,以确保类型对齐。