dev problem with 64 bit version

Post questions, comments and feedback to our 3Dconnexion Windows Development Team.

Moderator: Moderators

Post Reply
ygalaup
Posts: 3
Joined: Fri Jul 20, 2007 7:26 am

dev problem with 64 bit version

Post by ygalaup »

Hi,

I've got a big problem with my 64 bit version (every thing works correctly on 32 bit version). first of all I've got an excessive sensibility of my space pilot even trying to configurate it with 3DxWare. secondly a rotation on Z axis run when I'm trying to do pan.

This is my code :

SiSpwEvent sievent;
SpwRetVal eventtype;

SiGetEventWinInit(&sieventdata, cmsg.message, cmsg.wParam, cmsg.lParam);

eventtype = SiGetEvent(SpaceballHandle, 0, &sieventdata, &sievent);

switch (sievent.type) {

case SI_MOTION_EVENT:

sbdata[0] = (C_FLOAT)sievent.u.spwData.mData[SI_TX] / 4000.f;
sbdata[1] = (C_FLOAT)sievent.u.spwData.mData[SI_TY] / 4000.f;
sbdata[2] = (C_FLOAT)sievent.u.spwData.mData[SI_TZ] / 4000.f;
sbdata[3] = (C_FLOAT)sievent.u.spwData.mData[SI_RX] / 2000.f;
sbdata[4] = (C_FLOAT)sievent.u.spwData.mData[SI_RY] / 2000.f;
sbdata[5] = (C_FLOAT)sievent.u.spwData.mData[SI_RZ] / 2000.f;
sbdata[6] = (C_FLOAT)sievent.u.spwData.period;

sbdata[0] *= Sensitivity * 1e5f;
sbdata[1] *= Sensitivity * 1e5f;
sbdata[2] *= Sensitivity * 1e5f;
sbdata[3] *= Sensitivity * 4e6f;
sbdata[4] *= Sensitivity * 1e6f;
sbdata[5] *= Sensitivity * 2e6f;

it seems that my problems cames from sievent, sievent.u.spwData.period and sievent.u.spwData.mData[SI_RZ] are curious for doing pan.

Have you already found this kind of problem ?

best regards
thanks

yan

PS: sorry my english is not really good.
jwick
Moderator
Moderator
Posts: 3350
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Hello ygalaup,

There shouldn't be any difference in your code between the 32- and 64-bit environments. The 64-bit machine may be significantly faster than the 32-bit machine. That will effect how fast the events are consumed, and thus how they are scaled inside the SDK API.

Do the demos that we ship work consistently on the 64-bit machine?
Are you linking with the 64-bit libraries? Running the 64-bit driver?
Make sure you calibrate the device and set all the sliders to midpoints in the GUI and use the default (any application) configuration.

In your code, it is quite unusual to have a different scale factor for two of the 3 rotations. You can probably feel this. Normally the rotations use the same scaling. Both pans (Tx, Ty) use the same but probably different from the Rotations. And zoom (Tz) may be different from all the above.

Jim
3Dx Software Development
ygalaup
Posts: 3
Joined: Fri Jul 20, 2007 7:26 am

Post by ygalaup »

Hi jwick,

I've already calibrate my device with 3Dxware but that seems to be the same. I'm trying to replace the sievent.u.spwData.period by the value 16 it's became correct for sensibility.

you asked me about the driver and the SDK 64-Bit, concerning the drivers it seems that it's the same driver for 32 or 64-bit of Windows XP or Vista (I only find one driver on your web site for the space pilot). I'm not sure for your SDK 64-bit perhaps i'm using wrong libraries, please let me know where can I find SDK 64-bit and 64-bit drivers.

thank's for your help.

Yan
jwick
Moderator
Moderator
Posts: 3350
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Hi Yan,

The 3DxSoftware installation should have installed the 64-bit driver on a 64-bit machine. It detects the architecture and installs the correct one.

Which SDK libraries did you link with? You would have pulled them out of a win32 or win64 subdirectory. I don't think the SDK ships with 64-bit libraries built, but you have the Visual Studio projects to build them.

Jim
3Dx Software Development
Post Reply