3DDeviceServer
Software
Activities
Version 0.51 (10. December 1994), Tomi Engel 3DDeviceServer
Introduction

This NeXTSTEP application is a general purpose device server. It is the central part of a collection of various device drivers for many different 3D hardware tools. With the help of NeXTs DO/PDO system it will allow an easy 'plug-in' into existing software that may run distributed accross a network.

The 3DDeviceServer tries to simplify shared access to one hardware device by multiple clients (or as I call them: device targets). In addition to that it allows switching between different devices while they are in use.

Feature Check

ScreenshotThis project is still some kind of beta although it runs very stable. From all the possible devices that this server offers access methods for (mouse, glove, display, scanner, motionTracker) only the mouse method will return a valid driver. Right now I only have a 3D mouse API. If you would like to help designing APIs for other equipment please let me know.

The connections to devices work via the servers PDO port named "<hostname>/3DDeviceServer". For more details read the Release Notes and some History.

The only 3D mouse the server knows about at the moment is the SpaceMouse (Driver release v0.8). It is the only mouse I own. In my opinion it is the best 3D mouse solution I have seen so far. More information about the hardware can be found in the online help.

The other 'mouse' is the Virtual 3D Mouse (Driver release v0.6). It is just a simple GUI (slider based) pseudo mouse. Good for testing your software and for setting exact rotation values.

If you own a different kind of 3D input device it should be straight forward to write a driver yourself and include it into the server.

Package Download

The application is available for download in the following packages:


NeXTSTEP
Version Release 0.51
Read Me
(7 kB)
CPUs
  • NeXT
  • Intel
  • HP-PA
  • Sparc
Binary
(670 kB)
Documentation included with the binary
Source
(97 kB)
Required
Libraries
MiscKit (1.2.8)

(needed for compilation only)
License ObjectFarm Public License

Since our server might not be the fastest, we encourage you to search for the files in some of the well known archives if necessary. We recommend: www.peanuts.org (Germany), ftp.beng.org (Germany) and next-ftp.peak.edu (USA). In addition to that we would like to point you to the stepwise softrak service which can direct you to other interesting applications.

Supporting Applications

Currently (as of 10.12.94) there is one publicly available application that is able to use this server. But others projects are underway.

  • BeakerBoy
    My privat chemistry program and the reason why I wrote this server. Version 0.3 will include 3D mouse support but is not ready yet because I need to include the IconKit before I put it on the net archives. The code used to handle to 3D mouse events can be found inside the tutorial.

  • solidThinking MODELER
    Guido Quaroni from Gestel was one of the early supporters of this server. He is trying to include 3D mouse control into the v2.2 release that might be be around sometime in mid '95.

  • HippoDraw
    The Reason Gang enhanced NeXTs original Draw demo application to allow displaying n-tuple data and the relations between certain columns of the tables. Mouse support should be around by Q1/95.

  • WavesWorld
    This free collection of objects and InterfaceBuilder palettes was created by Michael B. Johnson. It allows RenderMan objects to be controlled by TCL scripts or other control object. Mouse support should be around once the rotation handling of the WW3DWell class has cleaned up a little.

For details on the support I might give other programmers please read the tutorial. If you are a user and would like to use a 3D mouse in your vavorite application you should contact its developers. Maybe they haven't heard of this server or they think it is not worth 10-20 minutes of programming unless someone needs it.

Credits

  • The folks at DLR for building that special converter that was need to get the mouse working with a NeXT.
  • Matt Brandts for the MiscSerialPort which made my life a lot easier.
  • Guido Quaroni for trying to include SpaceMouse support into solidModeller
  • The guys at NeXT for providing Distributed objects ... they are really cool.
  • My brother Wolfy for all the nice images and chemistry background info I might not remember in detail anymore.

Future Development

There will not be any further development on this project. Under Mac OS X we have a central architecture for input device management and this means that SpaceMouse support will be implemented in a totally diffenert fashion.

ActivitiesPeopleAnimalsMachines