Planet
navi homeaboutscreenshotsdownloaddevelopmentforum

Object Oriented Input System

TracNav(TracNav/TOC_Development)?

The open source library is aimed to be as C++ friendly as possible. The rest is pretty much like any other input library.

Capturing

Input can be captured by inheriting from OIS::KeyListener?, OIS::MouseListener? or OIS::JoyStickListener? and by registering that derived object as receiver. OIS only distributes input from one sort of device to one listener, which inevitable explains the need for an InputManager of our own.
Whenever the user changes something about the input (key press, mouse moved, etc.), OIS distributes these events when the 'capture' function of the corresponding input device is called. That is called 'buffered mode' and allows for multiple things to happen during one tick.
OIS can be destroyed and loaded again to install new joysticks at runtime. The InputManager incorporates that feature.

Additional Features

Apart from the support for almost any kind of joystick with an arbitrary number of axis, OIS also supports the Wiimote and Force Feedback. However we haven't yet implemented this in Orxonox. Especially the Wiimote only works under Windows and we try to support any feature under all platforms.

The Project

More information about the OIS project can be found under: http://sourceforge.net/projects/wgois

Last modified 9 years ago Last modified on Sep 18, 2008, 11:54:27 PM