Hi !

> > suggest that you have a look at LibGIC. It enforces descent-style

>       I couldn't find any document about libgic, I have a december cvs
> snapshot and I could only see the includes, which didn't gave me much
> information. Where can I find docs? 

The demos should pretty much explain what you need to know from the user 
perspective. But you are right - I should write some docs.

> I there aren't, could you give to me a
> little explanation on what this extension is, please?

It is basically a trainable event mapper. You register the "program events"
(like turn left, activate menu, shoot) with it, and it will establish a 
mapping between the program events and GII events.

It contains a generic training system that allows to have Descent style 
"trainable input" with almost no effort.

>       Anyway, the GGL input system is really easy, we have only four kind
> of events, the axis event, the button event, the collision event and the
> finish event. 

Yes. The idea of LibGIC is to abstract the application events from the IO 
events. This allows to take care for unforeseen situations in the intermediate
LibGIC layer. For example, some Joysticks send hatswitch events by moving the
4th axis to 5 distinct points. Many trainable games cannot cope with that,
as they expect the hatswitch to work as multi-button-press.

Using LibGIC this problem can easily be solved by inserting an additional 
recognizer library into the LibGIC config files.

Same goes for say voice-recognition.

> event, maybe we should add an intermediate layer that processes ggi events
> and allows other ways of filtering :(

You probably know, that LibGII features filters - do you ? The mouse filter 
is an example, that can accelerate and remap mouse actions.

>       Can we take advantage from LibGIC without losing the concepts of
> Device and Observer?

Not really. LibGIC abstracts the "Device" aspect entirely.

>       I like very much to have different device objects because it allows
> to add GGL new interesting capabilities by only adding more code (more
> classes), or extending existent one (sub-classes) without touching existent
> one at all. For example, I can add a joystick emulator that uses the
> keyboard for those games that only need the axis sense, and not the integer
> value. It would be a subclass of GglJoyDev.

Using LibGII, this can already be done using filters, or with LibGIC, it is
just a matter of training the game function.

CU, ANdy

Andreas Beck              |  Email :  <[EMAIL PROTECTED]>

Reply via email to