g3dav logo

 

g3dav: GNU 3D Anaglyphic Viewer

3D for the people

G3dav is a Linux GTK+ application which will allow you to view and rotate 3 Dimensional objects using cheap anaglyphic (red-cyan) glasses. This application is currently in a usable alpha-state, and I intend to add many features soon. This is free software and covered by the GNU Public License.

picture of 3d glasses You may currently load wireframe images from a file in simple (v f and l entries only) Wavefront .obj format. There are also the beginnings of support for molecular PDB files and 3 value data set CSV files.

Anaglyphic glasses may be found in various places: museums, toy stores, the Sony Metreon here in San Francisco; You can order them from American Paper Optics, see their web site: http://www.3dglassesonline.com/anaglyphic.html ...they ship overseas too, it seems. American Paper Optics seems like quality company. You can also order two pairs for US$1 and a self-adressed stamped envelope from DIMENSION 3 in Woodland Hills, California. And this company in Hollywood will send you three pairs for $2 ($3 outside of USA).

[ Dav Home | GTK+ Home | GNOME Home ]

Availability

Has been compiled and tested in the following environments:

  • Linux 2.2.5 Redhat 5.2, GTK+ 1.2.1, GLIB 1.2.1, gcc 2.7.2.3
  • Solaris 2.6, GTK+ 1.2.2, GLIB 1.2, gcc 2.8.1

Download

60754 bytes. Currently on a USA low bandwidth server. I will update links when I can

Install

  1. Unpack the file with
     tar xzvf <filename> 
    and this will create a ./g3dav directory.
  2. Enter this directory and run the typical
    ./configure; make; make install
    This is my first attempt at using ./configure and Makefile.in. Please correct me if you see something I am doing wrong. For instance, I don't know how to make configure.in check for GLIB and GTK+.

Use

The basic concept is to don a pair of anaglyphic glasses, load a 3D object file and use your mouse to rotate the object (click and drag). The only object file with solid support at the moment is Wavfront .obj format. A couple of simple .obj files (example: cube) are included in the ./g3dav directory and it is trivial to create more (please send me any and I'll post them in my archive). There is preliminary support for .pdb (molecule) files and .csv (comma separated value) files, but this is still under development. The latter is intended for data visualization.

You may need to adjust the red/cyan colors to match your glasses' filters, or you may need to adjust the default anaglyphic parameters to get the best 3D effect. Menu/Toolbar option are provided for these tasks.

Support

Please join the mailing list for support. To join the list send email to

minordomo@danger-island.com 
with the subject of
subscribe g3dav

Screenshot

On a Solaris box:
screenshot 1

On a Linux box, with origin axes turned on:
screenshot 2

Future Directions

I have a number of planned enhancements for g3dav, and other ticklish urges. Here are a few:

  • Rewrite as a GNOME application and possibly KDE and possibly switch to C++. As this was my first GTK+ application, the code is a bit messy in any case and will definitely get a major rewrite soon.
  • Auto translate origin to center of screen (oops) done, v0.0.4
  • Finish and enhance CSV data visualization
  • Add an option to display an x,y,z axis done, v0.0.4
  • Fix some 3D tricks I've been ignoring in this incarnation (z-depth sorting and red+cyan=white pixel coloring)
  • Add ability to create and edit OBJ files
  • Add german language support and/or standard internationalization
  • Incorporate MDI (Multiple Document Interface)
  • Add drag and drop capability
  • Make use of g3dav->name member :)
  • Support for geographic data
  • Support loading via URL (both dialog entry and drag & drop)
  • Experiment with a 3D cursor (after creating edit functions of course)
  • Once features warrant it, I'll create a user manual and online help.
  • A Windows port (I promise to keep it less up to date than the Linux version though)

  • Create a 3D game. Something like battlezone or a 1st person asteroids would be cool. But I'll probably start with a 3D nightdriver.
  • Experiment with 3D input techniques (I saw a cool cheap one at CHI 98)

History

G3dav began almost a decade ago when I read a paper published in the academic journal "Computers in Physics" which outlined the algorithm for 3D anaglyphical transformation. This became a Turbo C++ DOS program which simply rendered the results of several chaos functions statically on the screen (no user interaction). I'll make this program available too, if I ever find the executable or source code again :).

Next, when Sun's JDK 1.0 came out, I took Sun's example model viewer applet and merged it with my anaglyphic code . Sun's applet allowed the user to rotate a 3D model as a projection onto the 2D screen, so now I had user interaction.

It languished in this manner for many years until recently (end of June 1999) when I decided I wanted to create a GNOME open source anaglyphic tool.

My girlfriend made the logo at the top of the page; be sure to tell her how groovy it is .

Contact: email dav@danger-island.com
D.I.E.
Visitor Count: 10715 since since Dec/16/2003 [View log]