Get Mouse-Events without creating a display?

Started by max2, March 11, 2004, 13:37:20

Previous topic - Next topic

max2

Is it possible to poll the mouse in "silent mode" without creating a Window? Can I get all mouse events outside my own window?

Best regards.
Max

princec

Not at this stage although we might be able to do this in the future. Currently all our mouse code is tied up with the Window.

Cas :)

Matzon

the main problem is whether or not it can be done in a crossplatform manner. It is quite possible on win32 platforms. However, I fail to see why LWJGL should support this? There are certainly reasons for doing it, I just don't see it in the context of LWJGL.

princec

Well, Elias and I have talked briefly about providing several different builds in the next release:

1. lwjgl-full, the full-fat, everything API
2. lwjgl-lite, where we just build with ARB and EXT extensions for max portability
3. lwjgl-opengl, just the GL binding

and then logically these two, although we never discussed it:
4. lwjgl-openal, just the AL binding
5. lwjgl-input, just the input binding

So people can use very small bits of the API if that's all they want to use. I don't think there's technically any cross platform reason why not to make input work independently of the Window class. It works for JInput after all. They just use an invisible message pumping window or something.

Cas :)

Matzon

well, input needs a window for exclusive access - you can't do exclusive | background - you need a foreground window.

fwiw, I think that splitting lwjgl up into 4223 different parts/combinations is defeating the purpose. If people *neeeeeed* a reason for using mouse only, then by all means let them use JInput. LWJLG is great because you get *everything* in a small neat dll, not 5, 7 or 9 depending on which download. LWJGL is a library, not libraries... just my â,¬0.02 - but I'd like to hear what others have to say

UlfJack

If you split it up, you agree to go to compatibility hell:

"i got lwjgl installed, but this game doesn't work"
"did you install the openal part, too?"
"openal?"

This is exactly something you don't want. It's fine if you can use the OpenAL bindings without creating a window (which you can) and the other way round, use the OpenGL bindings without accessing /dev/dsp (or whatever the windows equivalent may be).

-- UlfJack

cfmdobbie

How much bigger will the silver-top version be?

If we're talking about less than one-and-a-half times the size of the lite version, I'd prefer to just put up with the bloat.  You don't need the support hassle, and your users don't deserve the confusion it'll cause.

Certainly allow people to compile your cut-down versions from source, and maybe even provide pre-compiled binaries - but don't list them anywhere near the "official" release.  The only people I feel who "should" be using a cut-down library are people writing their own context management routines, or people trying to cut as much as possible from a professional game release - make sure there's no chance for a casual user to get confused.
ellomynameis Charlie Dobbie.

princec

Well - the only thing we have to do is to make the C++ code less interdependent, and then people can compile just the bits that they want. But this is an expert feature, and no mistake. We haven't agreed to do it yet - it might prove to be a headache.

Cas :)