Frequently Asked Questions about the Dynamic Scene Generator

Q: Where can I find the code for the DSG?
A: Code for the DSG server and for the DSG interfaces is in the lab's CVS repository, which can be browsed with CVSweb:

Q: How do I install the DSG?
A: See the DSG's installation instructions.

Q: How do I add models to the DSG?
A: Adding models to the model database requires some modifications to the lisp code in Skandha's xdada module.

  1. Put all of your models in one directory that will be accessible to the DSG server.
  2. Create a new correspondences file in the xdada module that associates each model with its concept name in the Foundational Model. See corr-thorax.txt for an example.
  3. Add a new entry in model-db.lsp:modeldb-connect for your new model set. This tells skandha what your model set is called and where to find the models.
  4. Add a set of camera parameters to xdada-server.lsp (if needed).
  5. Set *xdada-models* in xdada-server.lsp to point to your new model set.
  6. Restart the DSG server.

If we ever get a real database to manage the 3D models, this process should get much simpler!

Q: How do I talk to the DSG server from another program?
A: When the DSG server runs, it listens for socket connections that come in on a given port. At the moment, there are two DSG servers running on uvula. Thorax models are available on port 63070, and skull models are available on port 63071.

The messages sent to the DSG server are basically Lisp commands wrapped with a special Skandha4 communications protocol that Jim designed. Although arbitrary Skandha4 code can be evaluated, you'll mostly be using the DSG's API functions.

For a sample implementation of the communications protocol, see skandha_module.pl. This is the Perl code that the DSG web interfaces use to talk to the DSG server. To see examples of the DSG API in use, check the web interface scripts, particularly builder_viewer.cgi

Return to the DSG project page.


Last modified: Mon Nov 25 13:20:23 PST 2002 by Kevin Hinshaw (khinshaw@u.washington.edu)