3D Window Manager
xmda pointed us to a website for 3Dwm which, as the name implies, strives to be a 3d window manager for X. They talk about hardware that it might be useful with, and show some screenshots. It looks very rudimentary, but its a pretty interesting thing none the less. I'm just wondering how long with have a good 3d display and 3d input device that would make this really fly. And for that matter, will flatland be better for coding anyway?
This is a very interesting development for the CAVE environment, as it allows users to interact with X windows without leaving the room and going to a terminal. A CAVE user can start from 3Dwm in the CAVE and switch to other simulations while still in the environment. There is a CAVE at Virginia Tech where I go to school that might be interested in such an application....
I think 3D can be usefull for some things. Lot's of research goes into human interfaces and factors. One thing 3D could do, for instance, is to "push back" or "fold away", applications which were being used less. Say you have 5 windows open, but only are using 2 of time most of the time...the other 3 slowly move backwards on the z-axis so they cause less clutter. Instead of having "desktops" you could simply have "areas", regions of 3D space housing applications.
It's 10 PM. Do you know if you're un-American?
i think one of the things really holding back some of these 3d window managers is really good, fast, full screen antialiasing. People have spent a long time developing nice smooth fonts and pretty slick little icons to make window managers look nice.
When you translate that into a 3d window manager, you get all the aliasing effects associated. Now, once 3d cards get to the point where they can do high-res with fs-aa, we might be able to see 3d window managers be a reality.
I'd love to see my windows in 3D with full screen antialiasing at 1280x1024 (my monitor only goes that high)
3dfx's next part supposedly out in february-march, code named "napalm" will most likely have the fill-rate and full screen antialiasing capabilities to do some pretty good 3d window-managing.
also, with their t-buffer's depth of field and motion blur, you could get some pretty cool windowing effects... windows out of focus could literally be "out of focus" and windows could blur as you move them. neat!
i can't wait.
I have actually seen the Chalmers 3D cube at an open day. I have to say that compared to some other VR type projects I have seen before, it wasn't so impressive. However, the idea of building a window manager for such a space is quite interesting.
It's certainly not somewhere one would want to work normally - it's no desktop computer replacement. However, imagine working on a project with a group of people - let's say an architectural project.
Now can you see the use of being able to work in a 3D space which it feels as though you are immersed in? Sure, this is not something which would be possible with the current implementation, it would need some specific applications for working in such an environment, plus some sort of control mechanism for people to affect the environment.
Other possible uses could include product mock-ups, collaborative work on molecular modelling, educational presentations and more.
While the cube wasn't so interesting as a plain VR app, it is REALLY interesting as a new possibility for immersive computing.
A little planning goes a long way...
I can see the point of having a 3d windowmanager. I find that 2d windowmanagers get really messy when you open more than say 4 or 5 windows. Basically you have to resort to tricks like virtual desktops or minimizing the windows since the average screen is too small to put more than a few windows next to each other.
A 3d desktop together with some other features could solve this problem. It would for instance also be nice if you would never have to start an application explicitly. Many palm top computers already have this feature and I think it is time to introduce it to the desktop also.
Of course just a enormous plane with flat windows sticking out of it is not very usefull. People are bad at keeping track of more than say 7 or 8 things at the same time. That's why menus are tree like structures (i.e. you don't put your zillion options in one big menu but you use multiple menus and submenus to organize your menuoptions). The same should apply to windowmanagers. I want to be able to organize my windows in a hierarchy. I also want to be able to have one window in multiple places in that hierarchy. A 3d structure could help to organize this.
The screenshots are really cool, though I don't see the point of working in the gimp window while looking at it at an angle of 45 degrees. It is great for finding the window, though.
A 3d windowmanager would also allow for 3d widgets, I didn't see any of those in the screenshots. Now coming up with usefull 3d widgets would really be a smart thing. Implementing them is probably not so difficult.
Jilles
Sure is cool to look at though :) Maybe they'll turn it into a screensaver. Windows has that annoying "flying windows" screensaver. It would be cool to have it do that but with the actual windows that were open on your desktop...and in 3-D...
Uh...yeah...whatever.
Werd.
"However, the reason that most things are in 2D is simply because they were designed for 2D only systems."
The reason most things are 2D is because they are in fact 2D! I'm old enough to remember a world without computers so I can assure you that the reason most data is 2D only is because they are truly 2D, and not because someone hasn't invented a 3D interface.
Take another look at your home. Even though it is a 3D structure, by and large, everything is organized as 2D. Your family pictures are placed upon a 2D wall, your dinnerware is stacked in rows, your music CD's are stacked upright or along a shelf. Even drawers are merely 2D containers stacked atop each other. The reason for this is simple. If you have to reach around plates in your cupboard in order to get a glass, you'll end up breaking a lot of plates.
A Government Is a Body of People, Usually Notably Ungoverned
Having a standard bs'ing session with some of my old college buddies we talked about this sort of thing. However, I am of the firm belief that a 3 dimensional window manager is just a crutch to getting to the 4 dimensional window manager. Then the 4 dimensional window manager is a crutch to a 5 dimensional...
What we really need to do is determine what an 'n' dimensional window manager is, what it would be and how it would work. I just can't see a 3d wm doing anything for me that I couldn't do with a 2d wm. Ah well, just my two cents worth.
This space for sale
And if they complete it (which I hope they'll do... Hope these images are not just GIMPed up!), it means that the moment the holographic display monitor hits the market, Linux will run it first!
Quick, someone begin coding the drivers! :)
"Knowledge = Power = Energy = Mass"
Me, I hope if goes further than the desktop idea altogether. Roll on the Metaverse from SnowCrash! :)
Actually, I was wondering if CORBA was an appropriate vehicle to start implementing such a thing. A proper 3D environment (read: window manager level) might also be useful. Now for some networking and graphical *speed*!
~Tim
--
Rushing on down to the circle of the turn
I guess the point was to have window manager, ok a talking head would be cool, but that's not what a window manager is all about. I think it would be much cooler to know what benefits you could draw from a 3dwm. ie the windows that aren't in focus are moved 3 dm back so they aren't as large instead of using that little thingie with the different desktops and windows on it(I lost my mind and can't for the world figure out what it is called).
;)
If you have any other ideas about the benefits, please post them..at least they can't be patented by any evil company then.
--
If noone rtfa, then what's the slashdot effect?
AFAICT, that is -all- these people have done, in essence. Produced an OpenGL Window Manager, with some basic support for projections. That's it. So much for the "amazing new technology". But, there again, it's genuinely innovative. Yes, it's been done before with MAME, but not (AFAIK) with a window manager before.
If the Linux folks want to beat this to being the first working, open 3D environment, just add OpenGL support to Gnome and/or KDE, and you're there. It's nothing fancy, after all.
BTW, that's VIC they have in that third window, not RAT. VIC's the video tool, RAT's audio. Honestly! I'm not sure how far I trust people who can't tell the difference between a picture and a sound. (Well, other than for those folk who have cross-wired senses, and hear images, but that's different, and even then, they could tell the difference between RAT and VIC.)
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
Check out the screenshots :
l
http://www.oreality.com/synapse/screenshots.htm
to download the demo check out the following :
http://www.oreality.com/synapse/download.html
Erwann
Virtually all data that is represented by a GUI is one or two dimensional. Ascii is one dimensional. Formatted text on a page is 2D. Source code is 2D. Most images are 2D. Sound is 2D. File system hierarchies are 2D. Most CVS trees are 2D, but there are as many 4D as 3D ones.
Look at the objects in your home. What interfaces are 3D? None are in mine (push buttons are trivially and realistically represented in 2D, so they don't count). Your VCR and TV have 2D interfaces. It doesn't matter how wrapped it is over a 3D surface, your automobile still has a 2D interface.
Look at history for an example of what is natural for 2D versus 3D interfaces. Writing has always been 2D, so keep it 2D. Architecture is always 3D, so 3D CAD would be very useful. Art is either 2D or 3D, and should be displayed as appropriate.
Here's what would be bad in a 3D interface: those unreadable 2D windows in the 3Dwm screenshots, stuff that moves, in either 2D or 3D (don't give the user vertigo).
Here's what would be good in a 3D interface: 3D widgets (cool), representing z-order by depth (naturally), representing 3D data in 3D (of course).
What we still need for a decent 3D interface: a precise 3D input device.
A Government Is a Body of People, Usually Notably Ungoverned
But anyway, I can see where he's coming from. If you have points at, say, 1,1,1,1,1 and 1,1,1,1,2 (assume 1=red, 2=green, 3=blue) then it'd be visible as a yellow point at 1,1,1 (assume it's a holographic display or something).
---
"'Is not a quine' is not a quine" is a quine.
"'Is not a quine' is not a quine" is a quine.
Quine "quine?
-----------
"You can't shake the Devil's hand and say you're only kidding."
The other issue is that people visualize 2d space very easily. The degree to which people can internally represent 3 dimensions depends on the individual, of course, but typically it's a lot lower. 4d's even worse. :)
Trees can't go dancing
So do them a big favor
Pretend dancing stinks!
There was an article a few months ago on /. on a holographic LCD display which did that sort of thing. Probably easy enough to find with the search form, but I'm too lazy right now :)
---
"'Is not a quine' is not a quine" is a quine.
"'Is not a quine' is not a quine" is a quine.
Quine "quine?
God, I already see *enough* of Netscape wherever I turn... ;)
---
"'Is not a quine' is not a quine" is a quine.
"'Is not a quine' is not a quine" is a quine.
Quine "quine?
Actually my friend is working on a sun, a pretty old one too.
Jilles
Basically you have to resort to tricks like virtual desktops
I don't consider virtual desktops to be a 'trick'. I did as a windows user, but with linux (perhaps simply because I've gotten used to them), I find them indispensible and ridiculously easy to use.
I want to be able to organize my windows in a hierarchy
Hrm. I'm currently using four different desktops for four discrete tasks; there are multiple windows on some of these but most of them have only a single window. Any heiararchy I imposed on these would be entirely arbitrary, mostly unhelpful and probably a waste of time. Granted, your use may be different, but I don't see any advantage to 3d desktops. Of course, when one with a proper 3d interface (one that ignores all prevailing 2d paradigms) comes along, I may well change my mind.
Wow, someone has actually out-eyecandied Enlightenment. ;-P
I wonder if there would be any plans in the future for this to also support some of the rudimentary 3D glasses that are out there, and some sort of 'glove' interface. I would simply LOVE to be able to just 'grab' a netscape window and move it somewhere in VR space, grab another window, make it full screen, etc..etc..
-- I'm the root of all that's evil, but you can call me cookie..
Don't expect much out of this until we improve 3d interfaces, both input and output. Once motion tracking and holographic technology is improved enough to be usable, we'll be able to move our floting windows around on our literal desktop by physically grabbing them. Transparent computing at it's best - floating in midair :)
I think my favorite feature of this would be to push a window away from me for a minute ... making it smaller but still visible, etc. It would also be nice if there were clear definitions in window creation of peer windows vs. modal child windows because a child could cause the parent to be "pushed away" a little, making "stacking" obvious. Peer windows, OTOH could sit on top of another window normally.
- Michael T. Babcock <homepage>
- Michael T. Babcock (Yes, I blog)
As long as you're restricting CORBA to the relatively high-level stuff ("draw a button") rather than putting it in front of the equivalent of XLib ("draw a pixel here, paint it red"). The project to watch for this approach is probably Berlin; they already support the notion of CORBA communication between client and server, where the "toolkit" code is effectively on the server. It's a small step from there to writing a server that creates 3d objects, with no application rewriting necessary (unless your app wanted to manipulate things in 3d itself).
Nothing worth doing is worth doing today.
"I find them indispensible and ridiculously easy to use"
Sure its much better than without windowmanager. But nevertheless it's a solution to the problem that you can't keep track of 20 or so windows in one screen. Basically the solution consists of hiding the windows you don't need at the moment. I know one guy who routinely has 30 to 40 xterms spread all over his 16 or so virtual screens. Putting that in one 2d screen would be rediculous. Spreading them over 16 desktops only works if you can remember where to look for each window.
Most computer users also open and close applications. Suppose you wouldn't have to do that. A good linux pc doesn't need rebooting so the only reason to close an application is to save on memory resources. Suppose you could automate this. I.e. if memory is needed, apps that are not in use are swapped to your HD. When you need them again they are swapped in (of course this would be nonsense for commandline apps). If you take into account that one app may have several windows, the number of windows in a system increases quite a bit so you need a good way to organize them.
Of course you can argue that you don't want to see them all at the same time. But you still have the problem that from time to time you are looking for a particular window. 3d workspaces may help in finding your window faster.
Jilles
None of this is going to be too useful until we get some good input and output devices to use with it. Think about it, how well does a mouse that moves around in 2d work in a 3d environment?
It works just fine. I know, because I have done it, quite a lot. BTW, don't think of my remarks as criticism - I'm just addressing some common misconceptions about 3D interfaces.
Same with your monitor, it is very limiting in a 3d environment.
Think of your eyes. Close one eye. You can still function perfectly well in a 3D world, right? So, no, a 2D monitor is not limiting in a 3d environment. Your eyes present a 2D map of a 3D world to your brain, the same as a 2D montitor does. The actual limitation is good motion and viewpoint control - this is a software issue much more than a hardware issue.
What we need are gloves and goggles.
Bzzzt. No. Have you ever tried it? You look like a space alien for one thing, the goggles shift around on your head, your hands get sweaty, and your arms give out after a few minutes. To convince yourself of this, try holding your arm straight out in front of you for 5 minutes. Your fingers are also a lot less accurate as positioning devices then you might think, especially without kick-ass force feedback, which won't be out of the labs any time soon.
Then this will become somewhat usefull.
It's going to become useful even without those things. Again, I'm not speculating because I've been using this technology for a few years. Once you've used it you'll find good ol' 2D desktops as restrictive and uninteresting as a green 25x80 text mode display. Probably.
Think of all the desk space you could have. All you have to do is turn your head to a blank area. Don't like where an application is? Grab it with the glove and move it.
Yes, correct. These are reasons why 3D desktops are good. Also consider: no more scroll bars - you just move your point of view instead. For graphs of functions, no need to pick a scale or limits - you just move closer if you want to zoom in, and the graph goes off to infinity if it wants to. For 3D graphs, no need to pick the viewpoint - you pick your own viewpoint, and fly around if you have to, to see the details. No need for zoom in general, for anything, you just move closer and further away.
There aren't really any disadvantages to a 3D interface that won't be solved in time, and by this I mean not very much time, which you might suspect from the screenshots you're looking at. To prove this to yourself, consider that any 3D interface can be turned into a standard 2D interface, e.g., by pointing you directly at a 2D rectangle containing your screen view at a distance that maps texels one-to-one to pixels, and keeping you from moving or turning.
Life's a bitch but somebody's gotta do it.
"[The mouse] works just fine. I know, because I have done it, quite a lot."
:)
Could you give some more info on that? I use my mouse to play q3test a lot, but it doesn't have any depth to it. I just point it in a particular direction and I can hit whatever happens to be closest to me in the line of sight. How could I select a 'window' that sits behind another 'window" in my line of sight.
"Think of your eyes. Close one eye. You can still function perfectly well in a 3D world, right? So, no, a 2D monitor is not limiting in a 3d environment."
Function perfectly well? Um, no not really. Try doing that and judging how far away that football that is flying toward you is. And how fast it is coming. But that is not really that big of a problem. The problem with the monitor is the narrow field of view. Trying to view a 3d world through a monitor is like having your vision limited to a small square about a foot in front of your face.
I do agree, however, that these problems will be solved over time. And I certainly look forward to my gloves and goggles.
This sig is false.
It looks very cool, but before it moves from being cool to actually being useful, I think the whole GUI metaphor would need to change to something that makes intelligent use of 3 dimensions. Then we could produce apps which used that metaphor and the 3D window manager would be more than just eye-candy.
Sounds too much like the movie "Hackers". So, when we're bored, we can pull up a file manager, and spend 15 minutes trying to find X configuration files? Sounds... interesting.
Well, I suppose it would be fun to have. As long as I can make my X session look like something else. Like an old castle, with each room being an icon. Yeah yeah.
I remember reading about Synapse on Slashdot before, and it looks somewhat better. I haven't used either of these, though. Still, on the 3Dwm page, it looked like all of the screenshots were just 2-D screenshots horribly distorted to be viewed at an angle. These weren't 3-D applications. Personally, 3-D window managers won't be ready for prime time until there are plenty of decent 3-D applications that people can use.
For more information, click here.
This looks very cool. But I do agree, the current computer paradime is very hard to put into a '3d mode' for nearly all applications.
"Pinky, you've left the lens cap of your mind on again." - P&TB
"I can see my house from here!" - ST:
-----------
"You can't shake the Devil's hand and say you're only kidding."
Cool- this almost exactly duplicates some funky graphics I did long long ago on the Apple IIgs. There was some sort of program that let you 'perspective' and composite bitmaps. Using it to invent weird interfaces seemed like a glimpse of a weird future (don't think I'd read William Gibson by then, but that was the gist of it really) :) no way will I want to use it, but come on, just as an art project this rules. Let's see it with Enlightenment, with windows that are 'panes' with the window borders and widgets being actual 3d shapes. _that_ would be very cool. :) naturally, you can't read a thing, but who here _hasn't_ put a window with some laggy but active content like an idly IRC channel, into the background, and kept half an eye on it for signs of _movement_? Also, if you had some system log with colored text for messages, and it was in Flyspeck 1, you'd say 'Wait a sec, that's a red line! Better look at what that sentence says'. All this can be done _now_ with normal, existing X terms and WMs. My suggestion would be Window Maker with titlebar and resizebar turned off so the 'window' was just a simple rect- ideally you could have a WM that drew the titlebar to scale with the resizing xterm, perhaps fading it into the background by assigning lower contrast text and background colors to give a sense of distance. :) ;) so wish me luck. My goal is to make a totally, relentlessly CLI-esque environment that's pretty enough to compare with E (mostly through background pictures and having the actual text windows blend attractively), can contain orders of magnitude more information than your usual X desktop, and is commonsense enough to compare with a Mac regarding the moving and adjusting of windows. :)
Now somebody is making it actually happen. I say, cool
As for useful 3d, I'm with the person who observed that layering of windows was like 3d. I'd also note that all my favorite xterms have some feature for changing font size- and since they are terms and assume a fixed size, they scale all over and take up more or less of the screen, and THAT is where real useful 3d effects will come in, and THAT is something you can't usefully do on Windows or Mac or indeed with GUI-toolkit Linux, and the only thing it's really missing is the presence of fonts like Flyspeck 4 or whatever, to allow 'distant' xterms to be made to look really distant. I'd suggest Flyspeck 1. Each letter is one pixel
In this way you would have a fully 3Desque _CLI_ environment with vastly greater capability to display text on the screen, at anything from large readable letters to tiny semi-obscured letters to greeked text where the information is in the motion of the blocks of text, or in the color of the greeked text. And it's all available now and needs only a bit of integration to get together.
And now I've told you (almost) all of my secrets- for I'm plotting a window manager _too_
Wish me luck, and I hope to have concept pictures up pretty soon! The really rough part will be writing the window manager, though I am quite willing to restrict everything to _only_ color xtermland and not make any provisions for supporting GUI toolkits at all. Why not be radical? Somebody else (hah, everybody else) will look after the GUI toolkit users
Hah! I'd been wondering why no one had done this yet... Well, its good that this has been taken care of, now I don't have to make myself do it. ;-) Check out this screentshot, of Xggi running with 6 screens, each screen mmapped to the texture of a 3D cube which can be rotated : http://www.ggi-project.org/images/cube_withxggi.jp g
OK. First, to declare my bias, I work for a company called ReachIn and all we do is this sort of stuff.
3D is definitely worthwhile for modelling, visualisation and simulation. How worthwhile is a good question. But even these CAVES, at about ~$1 M have been bought by the oil and automotive industries and paid for in a few weeks.
3D window managers are interesting, but how usefull they are remains to be seen. Without computers, for most things people actually work in 2D. Books and paper are 2D. Whether this is because the technology is deficient or because this is the most efficient way is a really tough question.
I'm not yet convinced that you can get a whole lot more from a 3D UI, but, this is probably like some UNIX hacker in 1975 saying, what Windows? Nice gimmick, but what do you NEED them for, I can switch TTYs fast.
But you should try shaping something in 3D, it's really a new experience, anyone who has ever tried to use 3D Studio Max or Rhino or whatever will appreciate that there is some manipulation of 3D stuff that is painfull in 2D 'cause it's SOOOO counterintuitive. What we do is have a PHANTOM from SenSable and co-locate it so you can see what you can touch. It is really quite neat. We can then do medical training and shaping like you wouldn't believe. If you can, get to SIGGRAPH 2K in New Orleans and have a look around, they'll be stuff from us and hopefully some others that will show that 3D is really capable of being worked in.
Unfortunately, I was notified by this thread a bit too late, so I guess this entry is getting a bit stale, but I thought I should post my thoughts here nonetheless.
As many of you might have guessed by now, 3Dwm is a 3D-User-Interface research project at Chalmers Medialab. We're currently in crush-mode, as we're going to host a demonstration of the system on Friday (if you happen to be in the vicinity, be sure to drop by! Check out this page (Swedish only) for more information.), so we're currently putting a lot of time and effort into the system.
I see a lot of concern about 3Dwm just being a fancy way to display plain 2D applications in 3D. This is true. Yet 3Dwm is more of a prototype than a full project, and we will be addressing the questions of fully three-dimensional applications in our current core project, im3D, the Immersion3D User Environment. If you think 3Dwm is cool, then imagine having apps that are built for three dimensions. A modelling program might look like a workshop you may step into and use when designing your 3D-models. Your plain ole' debugger (gdb) might have a fancy 3D-dimensional interface to allow you to look at different threads of execution, stacks and heaps in an intuitive way. The plain 2D-VRML browser is now a gateway into the actual model which allows you to step into and actually explore the world from within.
Well, that's some of the hype, anyway. 3Dwm and im3D is still under heavy development, but we hope to be able to release the code under a fairly free license (as in GPL, but we don't know at this point) and post it for the rest of the community to enjoy. Yes, it helps if you have a CAVE or a HMD, but we'll support (and already do) normal desktop systems as well.
If you have any specific questions, comments, flames or criticism which you really want to make sure reaches us, then mail us at 3dwm@medialab.chalmers.se. Thanks for all your feedback!
Its just eyecandy.
None of this is going to be too useful until we get some good input and output devices to use with it. Think about it, how well does a mouse that moves around in 2d work in a 3d environment? Same with your monitor, it is very limiting in a 3d environment.
;)
What we need are gloves and goggles. Then this will become somewhat usefull. Think of all the desk space you could have. All you have to do is turn your head to a blank area. Don't like where an application is? Grab it with the glove and move it. With even more input devices, the implications for pr0n are unthinkable.
This sig is false.
It's a cool idea though, gotta admit :-)
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Could X be hacked in such a way that it was double-headed, but displayed nearly the same thing on each monitor?
Next all you would have to do is take apart 2 pair of crummy LCD glasses (where each eyepiece is the same screen) and reassemble them so each eyepiece goes into a different video card.
Therefore, IIRC, you could have a truly 3D Linux system, and change the depth by altering the relative positions of windows on each monitor.
What do you think sirs?
"Reactionaries must be deprived of the right to voice their opinions; only the people have that right." - Mao
Interesting idea. An enhancement would be to have applications present different views at different distances. Another idea would be to take a user on a tour along different windows to let him/her perform a task (also great for training since people are good at remembering routes).
Jilles
I once had an intense argument with a fellow CS dork friend of mine, and the conversation was about this point: UI development is all about *text*. Regardless of how fancy multimedia gets, and how good are computers are at actually speaking to us, when it comes down to straight hard work, text is the way to go.
Remember Snow Crash? What happened when the main character did real work? He brought up a straght 2D environment, did his coding, and then went back to 3d funland. From the screen shots, the tech looks cool, but it just makes everything harder to read.
3D is cool, and I could see some uses to "folding" or "pushing" away apps that you are not using, but when it comes to text, we all want it nice and flat right in front of our eyes.
Do you read books sideways? Why does everyone drool over trinitron flat screen monitors?
So I fail to see how a full 3D window manager actually makes X better for us. I understand the argument that 3Dwm is designed for this Cave thing, but the 3D aspects of the Cave have much to do with the structure of the Cave itself, and how a person interacts with it.
Regardless of how I feel about its uses, 3D UI's definitely need research. Only from total knowledge on a subject can you truly determine what will work, and what will not.
"You want to kiss the sky? Better learn how to kneel." - U2
"It was like trying to herd cats..." - Robert A. Heinlein
Sig:
Barbeque is a noun. Not a verb.
Actually, you can in fact write a sort of 4-dimensional window manager. Here's how:
Most regular window managers have the concept of multiple 2-dimensional "workspaces" (which, being 2-dimensional, might better be called workplanes). Now, and in fact Enlightenment actually does this, you can think of these workspaces as stacked on top of each other, with z = n for workspace n. Changing workspaces would then mean setting the viewport so you view the plane z = n.
I might add that this system can in fact be thought of as 3-dimensional because it takes 3 numbers to specify completely a window's position in the environment.
Now, if you have a 3-dimensional workspace, and you have multiple workspaces you can select, then it will in fact take _four_ numbers to completely specify the window's location (workspace, x, y, z). Therefore, this is a FOUR-dimensional window manager!
Depending on how you number the workspaces in the (Mo/Less)tif window manager, it could also be a four-dimensional window manager. Numbering them as:
1 2 3
4 5 6
7 8 9
makes it three-dimensional. If, however, you take advantage of the fact that the pager is itself two-dimensional, you can number them as:
(1,1) (1,2) (1,3)
(2,1) (2,2) (2,3)
(3,1) (3,2) (3,3)
Then you need 4 numbers to specify the position of a window again, making the workspace 4-dimensional.
One last thing: depending on the workspace structure, windows that are presistent over all workspaces could be thought of as 3 or 4 dimensional themselves...
As far as visualizing 4-dimensional objects... the standard procedure is to show many 3-dimensional slices of it over time.
Note by this definition, space is 4-dimensional because you need the time, as well as X, Y, and Z coordinates, to locate things.
Rudy Rucker is probably the best at writing books about dimensions greater than 3. The two I know of are "Geometry, Relativity and the Fourth Dimension: Toward a Geometry of Higher Reality", which is out of print, and "The Fourth Dimension: A Guided Tour of the Higher Universes" which you can still get from Fatbrain.com.
Glückwünsche, haben Sie Slashdot ermordet, indem Sie zum korporativen Druck beugten und Subskriptionen einlei
OK this really is kinda stuck as so many people are saying. I mean all of its apps are 2D, when it really is 3D. And what good is a 3D window manager if you don't have any apps for it. But how can you develop 3D apps if you don't have a window manager to run them in. Ohhh circle logic.
:). Well now you can have a real walk around kind of idea. And maybe there are chalkboards around that you can write notes on that are saved. Or even a calculator floating by you whenever you need it. But the 3D app really is the modeler of whatever. This would be great for graphic artists (imagine being in the world you are designing), engineers (seeing what you are building), doctors doing virtual surgery, etc.
But slightly different if you want to start getting into theoretical ideas about it let's see. Imagine you are an engineer and designing something (or even to make Hemos like the idea a nano-something
The ideas are there you really just have to stop thinking in terms of flat info. Which I'll admit is difficult as everything today is 2D. Newspapers, books, computers, tv, just about everything is 2D. Except the real world.
The biggest thing this 3Dwm needs is actually a good way of displaying it. You really do need a virtual environment to use it effectively. Which they have in the Cave(?) but not every home user will have, well untill they come out with holographic monitors.
-cpd
The whole window idea just doesn't seem to work for a 3d environment. I don't see any good way of porting it either.
Probably, the only way anyone is ever going to get a true 3d gui to be accepted is to write a ton of new "3d" apps for it. The 3d object idea is a good one.
Another problem is controllers. The mouse is a pretty poor 3d manipulation tool.
Another problem is the screen. The screen is a 2d window into your 3d gui? No, until some form of holographic display, you'll still have a hard time getting this accepted.
Here's what it all boils down to: Everything you currently have in terms of hardware and software is linked to that 2d window metaphor. None of it fits a 3d metaphor. Trying to link them together is trying to use the 3d metaphor with hardware that doesn't fit and with software not made for it. Just doesn't work.
---
- Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.