Description:

This is a visualization of four dimensional objects, implemented in Java and Javascript, which lets you manipulate four dimensional shapes within a Web browser. It lets you play with hyper-cubes, hyper-simplices, hyper-octahedra, 4D knots, ribbons, tori, and other cool shapes. It's got an "open" API - you can use it to define your own 4D shapes directly within a Web document, without needing to do any Java programming.

The applet lets you manipulate the 4D objects, rotate them around, apply various rendering styles and stereoscopic viewing options, and in general have a grand old time. If you can completely understand what you are seeing, then you may be a mutant, and you will go far in the field of computer graphics.

I've designed this four dimensional viewer to make it as easy as possible for you to create your own 4D shapes. The actual objects are all described by simple JavaScript programs in this document. Feel free to grab this html file from your browser and hack on it to create your own shapes.

This work is part of a long-term research agenda of mine to figure out how the brain works. I have three conflicting hypotheses:

People just can't visualize in four dimensions. Oh well. Sure they can, with the right practice and training. They can all right, but only up to the age of (say) five. Then they lose those language acquisition skills, and the brain goes all hard and useless.

By implementing this work as a Web-based applet, I will be able to do widely dispersed user testing to answer these questions. I'm also planning over the next year to add haptic feedback (via the PHANToM) and head-tracked stereoscopic display, to give the greatest possible sense of hand-eye coordinated immersion in a 4D play-world.

- Ken Perlin