Why force feedback support has never been included?

hi,
every now and then someone asks for force feedback in sdl, and the common
answer seems to be: is not implemented.

nontheless, someone (now3d) already implemented something for forcefeed back
but it has been quite ignored.

you can find it here:
http://jguk.org/ps2linux-actuators-09.patch.gz
http://jguk.org/ps2actuator-announcement.txt

is there a particular reason for why it never made it in the official stuff?

cheers

ekt wrote:

hi,
every now and then someone asks for force feedback in sdl, and the common
answer seems to be: is not implemented.

From what I’ve gathered (me, goole, and the list archives had some
fun), there are a two reasons:
a) Lacking support from nearly all non-Win32 platforms.
b) Lacking tallented folks familiar with force feedback, in both the SDL
and Linux communities, willing to deticate time to making it work

nontheless, someone (now3d) already implemented something for forcefeed back
but it has been quite ignored.

you can find it here:
http://jguk.org/ps2linux-actuators-09.patch.gz
http://jguk.org/ps2actuator-announcement.txt

is there a particular reason for why it never made it in the official stuff?

It never made it into the official branch because it was (AFAIK) port
specific (PS2). IIRC, the X-Box Linux port also supports X-Box’s actuators.>

cheers


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

It never made it into the official branch because it was (AFAIK) port
specific (PS2). IIRC, the X-Box Linux port also supports X-Box’s actuators.

Port specific isn’t necessarily the problem in itself…it doesn’t help
that there isn’t a well-defined, abstract API in SDL that can be backed
by platform-specific code.

To my knowledge, no one ever discussed this beyond “SDL should support
force feedback”. Anyone on this list have a firm understanding of what a
robust, portable force feedback API should look like?

–ryan.

John Silicon <jsilicon earthlink.net> writes:

b) Lacking tallented folks familiar with force feedback, in both the SDL
and Linux communities, willing to deticate time to making it work

well the guy who wrote that initial implementation is talented i think.

is there a particular reason for why it never made it in the official stuff?

It never made it into the official branch because it was (AFAIK) port
specific (PS2). IIRC, the X-Box Linux port also supports X-Box’s actuators.

now3d wrote the API and implemented it for ps2. someone who is confident with
directinput could implement it for win32. if the API design itself is not ok,
it can be changed/extended.

don’t want to sound bad or start a crusade, i just saw some work done and i
think is better to have something rather than nothing at all. just my 2c

cheers

don’t want to sound bad or start a crusade, i just saw some work done and i
think is better to have something rather than nothing at all. just my 2c

Spoken like someone that doesn’t have to maintain an API.

–ryan.

I do not know what a ff API should look like but I do know how to control
the ff functions of my gamepad with Linux and Windows (DI).
Currently I am adding my linux code to the patch JG posted here 2 years ago.
When this is finished I (or someone else) can start on the DI functions.
If all of this works (Linux and Windows support) will the patch be submitted
to the officail branch?
Are there any other people on this list with ff experience who are willing
to spend time on SDL?

Joep Admiraal

“Ryan C. Gordon” schreef in bericht
news:4297FDA0.90802 at clutteredmind.org…>

It never made it into the official branch because it was (AFAIK) port
specific (PS2). IIRC, the X-Box Linux port also supports X-Box’s
actuators.

Port specific isn’t necessarily the problem in itself…it doesn’t help
that there isn’t a well-defined, abstract API in SDL that can be backed by
platform-specific code.

To my knowledge, no one ever discussed this beyond “SDL should support
force feedback”. Anyone on this list have a firm understanding of what a
robust, portable force feedback API should look like?

–ryan.

Port specific isn’t necessarily the problem in itself…it doesn’t help
that there isn’t a well-defined, abstract API in SDL that can be backed
by platform-specific code.

To my knowledge, no one ever discussed this beyond “SDL should support
force feedback”. Anyone on this list have a firm understanding of what a
robust, portable force feedback API should look like?

Yes, this is the problem… what is a useful model for a force feedback API?
I haven’t worked with them myself, so I’m very open to suggestions here…

See ya,
-Sam Lantinga, Software Engineer, Blizzard Entertainment

I have never defined a model for an API so there’s a good chance that the
things I say make no sense.

Is it not possible to take the force feedback api structure from DirectInput
and compare it to the structure of the linux API (and the API’s from other
platforms)?
It could be that there are a lot of similar function’s.
In that case we can determine which functions are needed and create the SDL
function’s.

Does this make any sense or is this totally not the way to do it?

Joep Admiraal

“Sam Lantinga” schreef in bericht
news:E1E6XWT-0007c0-Os at twomix.devolution.com…>> Port specific isn’t necessarily the problem in itself…it doesn’t help

that there isn’t a well-defined, abstract API in SDL that can be backed
by platform-specific code.

To my knowledge, no one ever discussed this beyond “SDL should support
force feedback”. Anyone on this list have a firm understanding of what a
robust, portable force feedback API should look like?

Yes, this is the problem… what is a useful model for a force feedback
API?
I haven’t worked with them myself, so I’m very open to suggestions here…

See ya,
-Sam Lantinga, Software Engineer, Blizzard Entertainment

Is it not possible to take the force feedback api structure from DirectInput
and compare it to the structure of the linux API (and the API’s from other
platforms)?
It could be that there are a lot of similar function’s.
In that case we can determine which functions are needed and create the SDL
function’s.

Does this make any sense or is this totally not the way to do it?

This is totally the way to do it, but I’ve never used a force feedback API
myself, so I’m hoping someone with some force feedback experience can add
their thoughts. :slight_smile:

See ya,
-Sam Lantinga, Software Engineer, Blizzard Entertainment

I do not know what a ff API should look like but I do know how to control
the ff functions of my gamepad with Linux and Windows (DI).
Currently I am adding my linux code to the patch JG posted here 2 years ago.
When this is finished I (or someone else) can start on the DI functions.
If all of this works (Linux and Windows support) will the patch be submitted
to the officail branch?
Are there any other people on this list with ff experience who are willing
to spend time on SDL?

Joep Admiraal

“Ryan C. Gordon” schreef in bericht
news:4297FDA0.90802 at clutteredmind.org…

It never made it into the official branch because it was (AFAIK) port
specific (PS2). IIRC, the X-Box Linux port also supports X-Box’s
actuators.

Port specific isn’t necessarily the problem in itself…it doesn’t help
that there isn’t a well-defined, abstract API in SDL that can be backed by
platform-specific code.

To my knowledge, no one ever discussed this beyond “SDL should support
force feedback”. Anyone on this list have a firm understanding of what a
robust, portable force feedback API should look like?

–ryan.

I’d like to help with a win32 port if at all possible. Seeing the new
DirectInput stuff for joystick support in the 1.3 branch opens the door.

I have to get up to speed in SDL as I’m a newbie (not to C)… Please be
easy on me :)On Tue, 28 Jun 2005 12:24:24 +0200, “admiraal” wrote:

I do not know what a ff API should look like but I do know how to control
the ff functions of my gamepad with Linux and Windows (DI).
Currently I am adding my linux code to the patch JG posted here 2 years ago.
When this is finished I (or someone else) can start on the DI functions.
If all of this works (Linux and Windows support) will the patch be submitted
to the officail branch?
Are there any other people on this list with ff experience who are willing
to spend time on SDL?

Joep Admiraal

“Ryan C. Gordon” schreef in bericht
news:4297FDA0.90802 at clutteredmind.org…

It never made it into the official branch because it was (AFAIK) port
specific (PS2). IIRC, the X-Box Linux port also supports X-Box’s
actuators.

Port specific isn’t necessarily the problem in itself…it doesn’t help
that there isn’t a well-defined, abstract API in SDL that can be backed by
platform-specific code.

To my knowledge, no one ever discussed this beyond “SDL should support
force feedback”. Anyone on this list have a firm understanding of what a
robust, portable force feedback API should look like?

–ryan.

I’d like to help with a win32 port if at all possible. Seeing the new
DirectInput stuff for joystick support in the 1.3 branch opens the door.

I have to get up to speed in SDL as I’m a newbie (not to C)… Please be
easy on me :)On Tue, 28 Jun 2005 12:24:24 +0200, “admiraal” wrote:

Hey, I’m now3d who wrote it. Thanks for your kind words. My implementation was platform neutral. Win32 could have been added, or any other platform.

The problem was Sam Lantinga never even replied to my emails or acknowledged my patch. Bit of a let down by Open Source eh

Fwiw, SDL has had a force feedback API since 2.0.0 shipped, about 5 years ago. I can’t speak to what happened with your patches, but that time period was busy for both Sam and I outside of SDL and a lot of stuff got dropped on the floor as we dealt with careers and families.

Thank you. Worth acknowledge patches and emails at the time. They’re probably still in your mailbox/archive? Ignoring a contributor, all it did was ensure that an engineer never contributed to SDL again as the project had no direction. Had a quick look at the new API, looks quirky.

1 Like

Patches are back online