Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Software

Virtual Reality/CAVE Software? 42

WorthlessManatee asks: "I work for a company that is in the beginning stages of constructing our own CAVE and I would like some advice on a few topics. Which hardware vendors should I go through? I know of Fakespace, but are there other vendors I should be looking at? What software solution works best for a CAVE? So far I know of: VR Juggler, DIVERSE, and CAVELib? What are the pros and cons of each of them? Answers to these questions and any other hints or experiences you would care to share would be most appreciated. Thank you very much."
This discussion has been archived. No new comments can be posted.

Virtual Reality/CAVE Software?

Comments Filter:
  • by djcapelis ( 587616 ) on Saturday June 26, 2004 @07:50PM (#9539859) Homepage
    This btw... is a small explaination of a CAVE [uic.edu].
  • by drfrog ( 145882 ) on Saturday June 26, 2004 @07:58PM (#9539892) Homepage
    fishing in my weblinks....

    unreal cave [pitt.edu]
    projection links and type breakdowns [stereo3d.com]
    uaeu cave [uaeu.ac.ae]
    elumens products are droool [elumens.com]
    fakespace [fakespace.com]
    vrml 3d projection [noaa.gov]
    not quite cave.... this is 3d projection
    this one is further leading.....

    io2tech [io2technology.com]
    • unreal cave [pitt.edu]

      Worth noting is that CaveUT is freeware and open source. Speaking from personal experience as a user during a demo, it does an excellent job with low cost hardware. The cited link has a parts/price breakdown and well written instructions. The code is not abandoned and is frequently used for human subjects experiments.

      As an aside, I've met Jeff. He's cool.
  • Cave Software (Score:5, Informative)

    by Weyland Yutani ( 776205 ) on Saturday June 26, 2004 @08:59PM (#9540108)
    If you think Performer is not exactly the best API for what you want, look at what a friend of mine has been doing here in Amsterdam ...

    http://www.nat.vu.nl/~desmond/VIRPI/

    http://www.nat.vu.nl/~desmond/Aura/

    http://www.cs.vu.nl/~renambot/vr/html/intro.htm

  • by Yerase ( 636636 ) <randall...hand@@@gmail...com> on Saturday June 26, 2004 @09:46PM (#9540251) Homepage
    CAVELib's is a very simple, glut-like API that lets you take existing opengl apps and make them "CAVE-Compatible" very quickly.. Unfortunately, it's difficult to do multithreading or view-dependent rendering the way it's setup. I prefer VRJuggler. It's Object oriented, and pThreads based. IMHO, it's much more "mature" than CAVELibs, and allows alot more flexibility. Unfortunatly, it's a bit harder to learn. Also, VRJuggler is developed by Carolina Vera-Cruz, the same person that designed the original CAVELibs. In her words, VRJuggler was designed to fix alot of the shortcomings and design mistakes she made in CAVELibs.
    • Just a side note, her name is Dr. Carolina Cruz-Neira...trust me I know, I work for her. If you want some more stuff on CAVEs, take a look at our website at ISU, we have C4 and C6. C6 is the first 6 sided fully immersive synthetic environment in the US. http://www.vrac.iastate.edu
  • My favorites... (Score:5, Informative)

    by icemax ( 565022 ) <matthew_d_stone.hotmail@com> on Saturday June 26, 2004 @10:13PM (#9540354) Homepage
    I work for the Penn State University visualization group and we use Chromium [sf.net] (which supports cave-like deformed viewpoints and stereoscopic rendering over them, as well as low-cost linux clustering and high-end myrinet and infiniband clustering) and OpenSG [opensg.org] (A general purpose toolkit for writing scenegraph-based applications). Good luck! Visit our website for information on how we've used it: PSU Vis. Group [psu.edu]
  • some good info at:
    http://cyberedge.com/3.html

    • Your link is valid and on topic, but a suggestion: Add more commentary. As you likely well know, some on Slashdot get their jollies by posting poorly commented or seemingly compelling links which ultimately lead to shock sites [wikipedia.org]. Your post looks a tad like one of those sort of evil posts. Also, you failed to hotlink (http://cyberedge.com/3.html [cyberedge.com]) which is very important for those of us who are quite lazy.

      Cheers.

  • Hi, What do you mean by "constructing our own CAVE"? Really constructing your own CAVE as we did at the department of Architecture, UAEU? or have a company construct it for you? In our case I selected to construct it myself using of-the-shelf components. We have a cluster of 3xP4s + windows 2000. more info found at: http://www.engg.uaeu.ac.ae/a.okeil/uaeu-cave/inde x .htm Answers to your questions depend on several determining factors such as: 1- What type of applications will you display? 2- Do yo
  • by aokeil ( 791972 ) on Sunday June 27, 2004 @07:03AM (#9541529)
    What do you mean by "constructing our own CAVE"? Really constructing your own CAVE as we did at the department of Architecture, UAEU? or have a company construct it for you?

    In our case I selected to construct it myself using of-the-shelf components. We have a cluster of 3xP4s + windows 2000. more info found at: http://www.engg.uaeu.ac.ae/a.okeil/uaeu-cave/

    A nswers to your questions depend on several determining factors such as:
    1- What type of applications will you display?
    2- Do you need navigation+interaction or only navigation? What type of interaction.
    3- Do yoiu plan to integrate other input devices? tracking systems?
    4- How do you plan to create your applications (on the long run might cost more than the initial cave investment).
    5- Is the cave ment to be a showcase for your company or is it for internal use?.

    In our case simplicity of creating the application came before anything else. We selected to start with programs students of architecture already use such as AUTOCAD, 3DS MAX and FormZ. The models are exported to the VRML format. The model is then displayed using a web browser + the cortona plug-in. A small application was developed to synchronize events on all screens. That is all you need to navigate through a virtual world in our cave. I think it can never get simpler. If you need some interaction then you have to start working on the VRML level using VRMLPAD for example.

    This approach has saved us and our students the hasle of going into programming in languages none of us know. In 5 minutes you can have your 3D model out of Autocad running in the cave. I hope this reply answers some of your questions. Let me know if you have other questions.
  • On a slightly related subject, is there an inexpensive (10,000 USD or so) way to get decent VR on a linux desktop?

    I'd like to have stereo motion-tracked goggles at least, and one or two gloves would be nice also.

    Since it's easy enough to run two or more graphics cards at the same time, I'd like to find a headset that takes two DVI inputs.
    • by cr0sh ( 43134 ) on Sunday June 27, 2004 @10:48PM (#9547584) Homepage
      Your graphics hardware isn't the problem - we all know that a very decent rendering engine PC can be had for almost nothing. Let's say dual-head, high-end process, ram out the door, etc - probably do it for $2000-3000 (and that is a very liberal guesstimate - likely the final PC will be a lot cheaper).

      The software is cheap/free, too - plenty of options there, from modded UT and Quake offerrings (among others), to Python/PyGame/OpenGL combos.

      Where you will be hit is the HMD/output end. If you are willing to go with a lower resolution (640x480 - 800x600), there are plenty of offerrings on Ebay and elsewhere - you have to know whether your app will need immersion (60 degree H x 45 degree V FOV minimum), or if you need resolution (always a tradeoff). If you are looking for immersion (personally, I always prefer to be immersed - its VR, not looking down a tube!), look into a Visette 2 or Visette Pro HMD. These HMDs could be termed "arcade" or "prosumer", or low-end research HMDs - the Visette 2 HMD was used on the Virtuality 2000 series pods, and can be found used. One caveat though, it needs PAL (composite) video inputs. The Pro version takes SVGA.

      Try to "try-before-you-buy", if you can (very difficult, I know). For the Visette 2, go to Vegas or a theme park and look for the Virtuality "VR Arcade" or whatever they call it, and try it out (stay away from the older Virtuality 1000 pods, the HMDs are heavy, and low res - but great FOV).

      At any rate, you should be able to pick up an HMD for under $1000 if it is used (I have bought both a Visette Pro and a CyberEye CE-200M HMD for under $300 each off ebay). A new HMD like that will run from $1500-2500.00. A final option would be to build the HMD yourself - easily doable, people did it all the time back in the early 90's using handheld casio TVs.

      The nice thing about the Visette 2 HMDs (off an actual Virtuality pod), is that they have Polhemus receiver coils built-in - meaning that you can easily interface them with Polhemus 6DOF tracking systems. Same with the Virtuality 2000 pod's joystick.

      Tracking is where you will also run into money issues - expect to pay around $2000 for a good tracking system. If you just need head movement, though - and can live without "roll" of the head (only yaw and pitch), look into modding a GyroPoint GyroMouse for the application - simple, and cheap 2DOF head tracking. There are also a lot of simple tracking possibilities that can be homebrewed, as well - but if you want a commercial system, expect to pay some money.

      Now, as far as gloves are concerned, you would probably do best to get a commercial 6DOF tracking system (put the sensor on the back of your hand or wrist), then buy some lycra gloves, sew some brass button "snaps" onto the fingertips and palm, and make a "pinch" circuit recognition system (rather than tracking finger bend - unless your app requires it). Gloves will run you an arm-and-a-leg - they are so niche (and still locked up in patent issues from the VPL patent set - it was a very broad and large patent suite that VPL had). You can spend a lot here. Roll your own, if you can (and if you aren't selling a product - most any glove that you homebrew will stomp on a number of patents). Another possibility is to hack up/apart a powerglove for the flex sensors, then sew them into/on a lighter lycra glove...

      If you aren't going to want to "look around" your world, then simple shutter glasses, like they sell for game systems, can be had for cheap - and you don't even need dual monitors for it. If you want something more professional, a CrystalEyes system would be best, but be prepared to spend some cash.

      Even if you go completely professional (and stick with a regular PC and free/open source VR software solutions), you can easily do this for under $10,000. If you really take your time, you can easily do it for much less (remember, homebrew VR on PCs used 386's back in the early 90's - cost for a VR setup really hasn't changed much if you homebrew all or most of it - its only when you bri

  • by VoidEngineer ( 633446 ) on Sunday June 27, 2004 @02:59PM (#9544776)
    Check out the following links:

    Barco [barco.com] for your projection monitors, mirrors, and rigging equipment. Be prepared to pay $100,000 for a powerwall, and upwards of $1M for a full out CAVE. You may balk at the pricetag, although that's the market value... If you want to try designing and installing one yourself, by all means try... Just don't fool yourself regarding the cost of rigging, purchasing high-quality mirrors, architectural design costs, and purchasing high refresh rate projection monitors (e.g. 100+ Hz projectors). You're talking about industry solutions, so expect to pay industry prices.

    Stereographics [stereographics.com] for your active shutter stereogoggle systems. $3,000 per pair of goggles (they are the best on the market, by the way). So, for a theatre setup, be prepared to spend $30,000 to $60,000 on goggles, or more.

    Immersion [immersion.com] for your haptics (gloves and such). They start at $20,000 per glove, and range up to $250,000 for a complete two-handed 6-degrees-of-freedom force-feedback system (e.g. telerobotics, telesurgery, and so forth).

    After that, look towards OpenGL applications. Java3D can wrap around OpenGL, so Java3D is good too. VRML pretty much died, so don't worry too much about Cosmo Player or derivatives. You might want to check out Sense8 [sense8.com], which is a pretty good all-purpose CAVE and VR appication programing environment. It has a number of modules, including WorldUp (for getting your hardware up and running), WorldToolKit (for designing your CAVE applications), and World2World (for connection your CAVE to others). I think licenses run around $50K per module, although I might be wrong... I know that Sense8 has had some internal restructuring within the past few years, so they might have restructured their licensing program.

    After that, it's mostly a matter of somebody on your team learning how to program OpenGL or Java3D really, really well.
    • "VRML pretty much died, so don't worry too much about Cosmo Player or derivatives."

      Linking VRML to the old cosmo player is not fair. More powerful VRML viewers are being used today.

      I would say that VRML is reborn after cosmo died. Have a look at:
      http://www.parallelgraphics.com/products/cor t ona/best
      for example to see how many companies are doing excellent work in VRML.

      Have a look at:
      http://www.engg.uaeu.ac.ae/a.okeil/uaeu-cave/
      to see a CAVE running nothing but pure VRML models.

      VRML has one great adv
    • Don't forget Visbox [visbox.com]. They build high end displays using commodity projectors and PCs. You can get all the performance of a Fakespace or Barco system at a fraction of the price.
  • At work I roll my own using a Beowulf cluster running VTK (vtk.org) controlled by python scripting and pygame, very handy.
  • CAVE issues... (Score:3, Interesting)

    by cr0sh ( 43134 ) on Sunday June 27, 2004 @10:58PM (#9547638) Homepage
    Something that rarely thought about until it is encountered in the actual system, is projector registration.

    There are basically two kinds of CAVE projector setups

    1. A single, high-frequency (read that as big $$$$) projectors (120 Hz+), which use "flicker goggles" (though at these high frequencies this is rarely an issue) - like CrystalEyes glasses or something similar.

    2. Dual projector systems (lower frequency projectors are cheaper) which use polarizing filters and similar glasses, each projector getting a different view from the rendering engine PC for the 3D effect.

    The problem with the second system, while it can be cheaper (plus you don't have to deal with issues of wires or batteries in the glasses, just use cheaper polarized glasses - nearly throwaway), is the problem of registration - how do you get both projectors to overlay the image the same on the screen without undue distortion (keystoning) - if you place them side-by-side, you have an issue, same with on top of each other (plus there are ventilation issues, but that is another topic).

    Ideally, you would want to use a prism or something to combine the sources - but this opens up other expenses (as well as light-loss issues, which will already be an issue with the polarizing filters).

    Just keep it in mind as you build or consult on this system. The registration issue may not seem like much, but it can easily cause eye-strain and other issues when in use, and you will already be fighting physiological symptoms (ie, simulator sickness) just because it is a full or near-full immersion system...

    • Actually, a little bit of disparity between the images isn't that big of a deal as long as it's horizontal. It will only cause a small change in the perceived depth of the objects. If projectors with lens shift are used, the aligment issue goes away for the most part.
    • Your best bet is fully adjustable projectors that can manage their own keystoning and whatnot...

      Of course the coolest thing would be to take two of the projectors with auto-keystone adjustment, and modify their auto-adjustment circuits to do auto image registration :D

      Oh and keep in mind that most LCDs output polarized light; you need sources that do unpolarized light so you can pass it through a polarizing filter (or an LCD manufacturer willing to build two different versions of the same LCD with two diff
  • I would advise the use of Syzygy [uiuc.edu].
    We use it here at the U of I, it's GPL, and it really excellent as far as power and stability go.
    More importantly, it can run on a off-the-shelf PC. It can also run on windows or linux.

    I strongly advise looking into it.
  • How about Coin [coin3d.org] version of OpenInventor (or the TGS version i fyou have to). It's free if you don't make a commercial app out of it. The support is great. The basic API has been stable for > 10 years. It's now got pthread support or you can use MPI or some other networking solution to coordinate multiple boxes.

    You could have a 4 headed G5 drive this thing... I set one up a few months ago. That plus a space mouse and you are in business. Now with 8 GB of ram and dual 2.5 GHz G5's. Very fun till yo

  • Its very interesting all these mentions of coin and Cave. It hit right on my search for games by CAVE. They've made some great games like DoDonPachi, which you can find here [cave.co.jp].
  • Hi, I work at EVL/UIC [uic.edu] where the CAVE was originally developed. I've helped install many CAVEs and am currently co-developing a new type of auto-stereoscopic VR device called the Varrier(tm) System [uic.edu]. We have also developed several other active and passive stereo VR systems as well. To give you the inside scoop, EVL is no longer primarily interested in developing CAVEs. There are many other high-quality and affordable displays to be discovered.

    I am a co-founder of a 501(c)3 non-profit, Applied Interactives [appliedinteractives.com],

One man's constant is another man's variable. -- A.J. Perlis

Working...