Alok Menghrajani

Previously: security engineer at Square, co-author of HackLang, put the 's' in https at Facebook. Maker of CTFs.

This blog does not use any tracking cookies and does not serve any ads. Enjoy your anonymity; I have no idea who you are, where you came from, and where you are headed to. Let's dream of an Internet from times past.

Home | Contact me | Github | RSS feed | Consulting services | Tools & games

Building Virtual Worlds is a course I took at Carnegie Mellon University in 2002. It’s a course where computer science students get to work with designers and build interactive 3D virtual worlds. Each world on this page was built in just two weeks.

Pioneered by ETC co-founder Randy Pausch, Building Virtual Worlds (BVW) challenges students to work quickly, creatively and collaboratively. Part of the immersion semester, BVW gives small teams of students two weeks to create a virtual world, with new groups and goals for each round. It all culminates in a public festival to hundreds of spectators — and an incredible sense of accomplishment. In fact, many BVW ideas go on to become full-time research projects, student spin-offs and commercial successes.

Course overview

The software we used were:

  • 3D Studio Max for modeling
  • Photoshop for painting
  • DeepPaint for wrapping the textures on the models
  • various sound processing tools
  • Alice for the authoring and scripting of the virtual worlds.

The virtual worlds are played in a headset (3D glasses with head tracking). We had 3 additional trackers which we could fix on gloves or on various parts of our body. The position and orientation of these trackers are available in the Alice scripting environment. The only limitations is that the user has to stay under the spacepad (a circular disc that is hung from the ceiling). We often taped the trackers to custom designed accessories (like swords or shields).

The course also gave us an opportunity to use motion capture to create realistic human animation. Motion capture is a technique where a person wears a suit and performs movements in a special room. The body motions are captured by cameras and the 3D data is calculated by a computer. This technique is often used in the film industry, and Carnegie Mellon students are very fortunate to be able to try out such technology.

The bedtime boogeyman

This world did not use the head mount, and was driven by a mouse. It is a mini adventure game / puzzle. The style of this world resembles the game “Alone in the Dark”. The camera is controlled by algorithms. We spent a lot of time recording the voices.


Upon the wind

Our assignment was “Consistency and Indirect Control”. The user is in a dreamworld and is flying in the nature and witnesses various events: the metamorphosis of a flower into a butterfly, the birth and first flight of a bird.


Not another breakout game

Breakout was the first game on the video consoles. We figured it would be fun to implement it in a 3D virtual reality world.


First flight

This is the story of a kid having to fly a plane in an emergency situation.



Aquatic robots are swimming in a futuristic world when a monster fish appears. The aquabots transform and rocket themselves away.

From a technology point of view, this world pushed the limits of the graphics capabilities of the software and hardware we were using (we animated thousands of tectures and objects at the same time).