Ken Silverman's Kube Page

Welcome to the future of screenshot technology :)

Imagine taking a snapshot of everything around you and then projecting the mosaic of images onto the inside faces of a cube. Then put yourself in the center of this cube. You could look around in any direction, and as long as you didn't change your position, you would never know that you were inside a cube. It's like you're in an advanced 3D engine - just without the ability to move.

I have 2 viewer programs. They both do exactly the same thing: KUBE.EXE requires DirectX to be installed, while KUBEGL requires an OpenGL driver. They can load the 6 images (or faces of the cube) from PNG, JPEG, or MOV (QuickTime cubic panoramas) files. As a bonus, I wrote special code that automatically detects the layout! (see the diagrams below).

KUBE.ZIP (44,260 bytes, 07/05/2009) A cubic panorama viewer for DirectX. Does texture-mapping in software (so it's more likely to work on your system than KUBEGL) Texture-mapper isn't optimized to its full potential. (I was playing around with some crazy new algorithm.)

KUBEGL.EXE (32,768 bytes, 07/05/2009) A cubic panorama viewer for OpenGL (running under Windows) NOTE: this is my first OpenGL program, and also my default settings are pretty high (1024*768 32-bit color, full screen mode, bi-linear filtering. It works great on my Nvidia GeForce 256 w/ 64 MB Video RAM). Many computers have problems with full screen mode and with 32-bit color mode. If it doesn't work (and your OpenGL drivers are installed properly), then try changing your windows color depth to 16-bit if it isn't already (Right Click on background...Properties... Settings) then run Kube with these command line parameters: kube /win /near /640x480x16 [picture filename]. Also, if the decompressed picture doesn't fit into video memory, the frame rate will be MUCH slower. This isn't so rare, so keep it in mind. If you still can't get it working, then use KUBE.EXE instead.

MERC2KUB.EXE (24,064 bytes, 07/05/2009) A utility program I wrote to convert images in standard Mercator projection to KUBE/KUBEGL cubic-panorama format. I made NASAGLOB.ZIP using this program. It's also useful for converting those Martian panoramas at: http://www.jpl.nasa.gov

(type "kube /?", "kubegl /?", or "merc2kub" for a list of command line options and other information)

KUBESRC.ZIP (108,540 bytes, 07/05/2009) Source code to the above programs. Compile at the Visual C/C++ 6.0 command prompt by typing "nmake kube.c", "nmake kubegl.c", or "nmake merc2kub.c". Please note: The code is not meant to be pretty. So good luck!
A close-up example A close-up example A close-up example
Kube supports all these layouts (above and below). It's smart enough to automatically detect which one you give it, so all you have to do is provide it with the filename!
All the supported layouts

Here are my own sample images for use with Kube. To use them with Kube, save them to a directory on your computer along with the Kube program.
thumbnail of VXL53S75.JPG VXL53S75.JPG
2560*1024
93,209 bytes
A panoramic view from my VOXLAP5 engine, taken on 11/04/2000. This is my lovely hand-drawn computer room. I have 2 large speakers on opposite sides of it and a piano (with dust cover closed).
thumbnail of VXL54S75.JPG VXL54S75.JPG
2560*1024
97,537 bytes
Another panoramic view from my VOXLAP5 engine, taken on 11/04/2000. On one side is a bathroom, on the other is a bookcase under the back of a stairway.
thumbnail of SOLD0_75.JPG SOLD0_75.JPG
2560*1024
31,254 bytes
This image makes a lot more sense inside the Kube viewer. It's a plot of the performance of my solar panels. The yellow patch is a graph of how bright the sun was when it was at that position in the sky. Kind of cool, eh? The borders in the ground mark the North/East/South/West directions.
thumbnail of GLOBE.MOV NASAGLOB.ZIP
638*638*6
245,813 bytes
Here's a cool NASA satellite image of the earth. I originally found it on this site:http://www.wholeo.net/Access/path/immerse/axQubic.htm Un-zip it to a directory before running it.

QMOV2JPG.BAS (925 bytes) Just for fun, I wrote a little Qbasic program to extract JPEG files from a .MOV file. (NOTE: Images MUST be stored as JPEG files for it to work correctly) Before you run it, make sure the filename at the top of the program is valid.

QMOV2JPG.C (1,958 bytes) (07/05/2004) I've had some requests for this program and it seems not too many people are comfortable using Qbasic. For your pleasure, I have ported this wonderful program to ANSI-compatible C.

QMOV2JPG.EXE (4,096 bytes) A Win32 executable of the above C program, compiled with VC6: "cl /O1 qmov2jpg.c /MD /link /opt:nowin98".


Want more? Try these links...

http://astronomy.swin.edu.au/~pbourke/projection/cuberender/ This is a page from Paul Bourke's site with some computer generated cubic panoramas. He has tons of other great stuff on his site as well - I highly recommend it!

Apple's latest quicktime movie player supports cubic panoramas. Apple used to have its own page of panoramas at this URL: (http://www.apple.com/quicktime/preview/gallery/) but it's gone now. :( You can always try plugging "quicktime panoramas" into your favorite internet search engine. Happy surfing!


Back to Ken Silverman's Official Home Page