Force Feedback in Java?

For some time now, I’ve been toying with the idea of writing an Open Source racing sim in Java. Of course it will eventually have brilliant physics and stunning graphics :smiley: but I’m running into a wall when it comes to Force Feedback.

I’ve noted that several Java gaming libraries (jinput, lwjgl and jME are the ones I checked) have support for “rumblers” on their controllers, but those don’t seem to do what I want. Turns out rumblers do just that: rumble. And while you may be able to create some nifty effects by using several rumblers at the same time in the right way, this won’t give the “true” feedback needed for a racing sim: the grip of the front tires. Unless I’m missing something with regards to these rumblers?

I’ve looked around some more and I’ve come to the conclusion FF pretty much means Immersion. Is that right? Does anyone have any experience with their Java SDK? Does anyone know of any other way to do Force Feedback from Java?

The SDK whilst written in Java, is a JNI binding, with only Windows natives.

However, without a large update to jinput, I don’t see you have many options atm.

Endolf

Thanks for the response. Yeah, I noticed it’s Windows-only, which sucks, but it’s still 80+% of the target audience I guess ::slight_smile: Do you have actual experience with that SDK?

I’ve come across some information on other forums that Immersion may indeed be the only way to do force feedback, Java or otherwise (hurray for patents, I guess :-X) It won’t be possible to include this stuff in JInput (or anywhere else for that matter) without paying a license fee to Immersion (with all kinds of strings attached, apparently)…

Oh well…

Rollox to that.

There is directx under windows, and linux has the interfaces (I don’t have a FF device with anything other than rumblers, so I have no idea if it works). I have seen that app before, and I think it’s just a gui to design effects, but the effects can be created with raw direct input and in linux anyway. I don’t believe it’s actually needed. I’ve not used the SDK so I can’t say what it’s like to use.

Endolf