We are developing a GIS based application which simulates the real word objects (i.e. Pipes, Roads, etc) in a virtual reality environment. Currently we use ArcScene from ESRI ArcGIS package for 3D rendering, and in future we intend to replace it with our own 3D environment.
Question: What is the best way to have realtime 3D rendering in above mentioned application? I do not have any experience in this field and i'm really confused. Should I use one of the available 3D rendering engine (some listed below)? if the answer is yes, then which parameters should be considered (regardless of its cost)? Does any one have any experience or suggestion in this field?
circumstance and necessities:
- We use C# .NET environment for developing the application
- There are huge amount of 3D objects to show
- 3D objects are grouped in different CAD files
- Interaction with final 3D scene is essential (e.g. Select one 3D object)
- Load, unload, on, off and set transparency of one layer and/or object(s) are required.
- High performance in realtime rendering of widespread models (More than 800 hectare area) with high details (from Roads to very fine objects like one screw)
- There is no need to advance shading issues (at this time)
- Texture must be applicable
Rendring Engines: After some search I found the following 3D rendering solutions:
CadFaster|Engine: "The CadFaster|Engine is a unique and the most scalable 3D rendering solution for technical applications. It is over ten times faster than usual CAD applications. The engine includes patented real-time synchronization mechanisms for 3D data sets and geometry which allows automatic integration to the master application. CadFaster|Engine also contains patented real-time polygon reduction which improves the 3D performance." cited from DevMaster
Quest3D: "Use Quest3D to create software, web and simulators. Quest3D is the perfect solution for architecture visualization, product visualization, digital entertainment, computer aided training and high-end VR applications." cited from Quest3D introduction
OpenSceneGraph: "The OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application developers in fields such as visual simulation, games, virtual reality, scientific visualization and modelling. Written entirely in Standard C++ and OpenGL ... . The OpenSceneGraph is now well established as the world leading scene graph technology, used widely in the vis-sim, space, scientific, oil-gas, games and virtual reality industries. The main language: C/C++ Language wrappers: C#, ... ." cited from OSG home page.
Also there is a list of nearly complete available engines at DevMaster and 3DLinks