I have a little problem with this section of my code, I cant seem to figure out what goes wrong during compilation
vector3 is my custom vector implementation
Code: Select all
146 const vector3& org = desc.GetOrigin();
147 const vector3& angles = desc.GetAngles();
148
149 btVector3 origin(btScalar(org[0]),btScalar(org[1]),btScalar(org[2]));
150 btQuaternion rotation(btScalar(angles[0]),btScalar(angles[1]),btScalar(angles[2]));
151
152 btTransform transform;
153 transform.setIdentity();
154 transform.setOrigin(origin);
If I change the line 149 & 150 to this everything works ok, although the constructorsrc/physics/physicsengine.cpp:154: error: no matching function for call to 'btTransform::setOrigin(btVector3 (&)(btScalar*, btScalar*, btScalar*))'
/usr/local/include/bullet/LinearMath/btTransform.h:112: note: candidates are: void btTransform::setOrigin(const btVector3&)
SIMD_FORCE_INLINE btVector3 (const btScalar &x, const btScalar &y, const btScalar &z) is declared.
Code: Select all
149 const btVector3 origin = btVector3(btScalar(org[0]),btScalar(org[1]),btScalar(org[2]));
150 const btQuaternion rotation = btQuaternion(btScalar(angles[0]),btScalar(angles[1]),btScalar(angles[2]));
gcc -v:
Using built-in specs.
Target: x86_64-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,f95,java,ada --disable-checking --with-gxx-include-dir=/usr/include/c++/4.0.2 --enable-java-awt=gtk --disable-libjava-multilib --with-slibdir=/lib64 --with-system-zlib --enable-shared --enable-__cxa_atexit --without-system-libunwind --host=x86_64-suse-linux
Thread model: posix
gcc version 4.0.2 20050901 (prerelease) (SUSE Linux)