Question about controller environments

It all started when I wrote a small code to read input from the keyboard and display the events on screen, to see if I understood how to use this API. It did nothing at all. I put some print statements around my code and noticed that the devices were being recognized, but the event queue was always empty. I tried polling all my devices and pressing random keys and moving my mouse around, and nothing happened. Searching for a solution I stumbled upon this forum, and from what I read I assumed it could have something to do with focus (since I didn’t have a window for my proyect yet). To do some tests, I replaced the call to getDefaultEnvironment with new DirectInputEnvironmentPlugin, since you said that didn’t require the focus of a window, and it worked perfectly. Then I tried rendering a JFrame, and used the DirectAndRawEnvironmentPlugin, and it also worked, only when I had the focus on the JFrame, which is what you said in another post. Now, I kept the JFrame and changed my code to call getDefaultEnvironment again, but that didn’t work at all, even when my JFrame has the focus.

I don’t want to rely in a single environment, cause I want my game to be OS agnostic, but apparently I can’t trust the default one to work at all. What could it be? How can I see which environment is the default for my system? Lastly, in the case I have to give up and use the DirectAndRaw environment (for multi keyboard and mouse compatibility), will that recognize any other supported device the user plugs in, or will I be more limited with respect to DirectInput?

PS: I’m using the last JInput version, as of the date of this post.

On windows DirectxAndRaw is the default. You can set a system property to change which plugin is being used so you don’t have to change any code.

Endolf

But then, why doesn’t it work when I get it by default, but it does work when I explicitly use it?

It’s confusing, but I’m sure there is a reason.

What version of windows are you using?, 32 or 64 bit?, what jdk?

What is the output of controller text test?

Endolf

Let’s see…

Windows7 64 bits
JDK 1.7.0_07

As for the test:
http://pastebin.java-gaming.org/d23872e074c

I’m confused. I’m currently off sick and my mind isn’t working as well as even it normally does.

I’ll try and take a look tomorrow, if it comes to it, I’ll add some more debug and do a build for you.

Endolf

Ok, thank you.
I’ll just work in something else.