A new 3D vi clone

by Dan Lynch and Barry Martin

Vim3D is a viewer/graphical interpreter for 3D scene descriptions using C++ and OpenGL. (Visit

screenshot.jpg -

Vim3D originated from Dan Lynch, while coding a Bezier curves assignment for Ravi Ramamoorthi's CS 184 course at UC Berkeley, Spring of 2010. Dan had started the first prototype based off of the popular vi clone known as Vim, which is a bare-bones developer text editor. In this assignment, he coded a framework to allow a vi-style user interaction with 3D objects and commands. Barry Martin and Dan took this codebase as the foundation for a more advanced 3D Modeling application that they built as a project for the succeeding assignment.

Many basic building tools are available through commands much like the ones used in unix which are accessed through the vi-style command line in the lower portion of the screen. The target users for this software are developers and engineers, in particular, people with an interest in computer science, creativity, visualization, and a love of the vi editor.

term.jpg -

The nature of Vim3D's scene-building capabilities allow a developer to have a flexible work environment, through commands and scripts. Animations and object properties can be controlled through channel files, which can can be generated or imported from a MatLab or GNUPlot dat file. Relative references allow objects to reference each other's parameters, such as one object changing color to the position of another object, or perhaps in step with information emanating from an audio waveform.