I used a 3d filesystem browser once and it just caused more trouble. All the data gets transformed to 2D anyway because we only have 2D screens. The fact that computers can simulate 3D is good for games and animations because it gives extra realism but it doesn’t give us any more space to put things. When objects are put into 3D, objects behind other solid objects are put out of view. This same thing happens with the 2D setup.
The thing is, it depends on what you mean by 3D. Essentially, I already have a 3D desktop because I can put windows behind others. I have x,y placement and a z-buffer. I also have expose, which zooms windows in the equivalent of the z-axis so that full windows are placed side by side. And it’s all done in OpenGL:
“In the next update (Mac OS X 10.2) Jaguar Quartz Extreme uses OpenGL just like any other application. Thus the Macintosh desktop is transformed into a 3D OpenGL scene, regardless if any elements are in 3D. Everything you see will be a textured polygon with compositing via blending and multitexture.”
That came from this link:
It may not look like a 3D scene but that’s because desktops work better when they act like 2D. It might look fancy rotating a movie player 45 degrees into the screen but what purpose would it serve? It’s the same with my Mac. The fast user switching places the current desktop onto a cube and rotates it. It looks cool but it still just switches user.
Also, the argument about the performance is difficult because systems as slow as a 233MHz imac can run Mac OS X. It depends on how you use the 3D system that’s important. In the traditional setup, 2D-style windows render pretty quickly on hardware. It’s when you do all sorts of fancy effects that slows it down and usually they are unnecessary, which is why Mac OS X uses them sparingly. I run Blender and when I play some games, they run up to 60fps and higher, while the desktop is rendered in hardware in the background.
I think that 3D desktops might be useful if we ever get 3D holographic projection where we will be able to lay out objects in a volume than on a 2D screen but for now, I’ll stick with the 2D layout and the fancy 3D special effects because it works.
Also, I think that to implement such a system in Java is a bit daft. Maybe not if they using the JavaGL binding but then it’s being rendered in OpenGL like Quartz, in which case it’s been done before. It would be madness to do 3D stuff in Java software. Desktop operations require speed and things like finding files would just take far too long. Imagine if you had a full 100 GB hard drive and it took 3 minutes to search the files. In Java, that would take half an hour. No thanks.