Download
3d visualisation of simulation data n.
Skip this Video
Loading SlideShow in 5 Seconds..
3D Visualisation of Simulation Data. PowerPoint Presentation
Download Presentation
3D Visualisation of Simulation Data.

3D Visualisation of Simulation Data.

110 Vues Download Presentation
Télécharger la présentation

3D Visualisation of Simulation Data.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Informal Seminar 08/03/2004. By Chris Sweet. 3D Visualisation of Simulation Data.

  2. Why Visualise? • More meaningful than lists of numbers. • People have good visual intuition of dynamics. • Visual check that simulation is correct. • Easier to communicate interesting features of the simulation to others.

  3. Methods for 3D Output. • Projection of 3D image onto 2D plane. • 3D libraries such as OpenGL or DirectX.

  4. Projection of 3D onto 2D • This can be accomplished by using a matrix to project the 3D data onto a 2D plane, which can be varied to change the viewpoint. • For a viewing plane defined as follows we get a transformation matrix:

  5. Projection of 3D onto 2D • Example of 2D rendering of objects in 3D.

  6. Projection of 3D onto 2D • Example of 3D surface rendering.

  7. Advantages/Disadvantages of 3D Projection • +Easy to implement on any platform with raster graphics. • -Objects drawn as 2D. • -Hard to determine depth from viewer, (front objects do not obscure rear objects). • -Hard to implement perspective. • -Hard to apply textures. • -Slow as pixel driven.

  8. Advantages/Disadvantages of 3D Libraries • -Hard initial implementation. • +All methods of depth/ perspective/ texturing looked after. • +Hardware support for drawing so fast. • +Libraries exist for many different platforms. • Comparison: 3D projection of Solar System. • 3D library rendering of Solar System.

  9. Advantages/Disadvantages of 3D Libraries • Comparison: 3D projection of Solar System.

  10. Advantages/Disadvantages of 3D Libraries • 3D library rendering of Solar System.

  11. OpenGL • OpenGL is a cross-platform 3D graphics and modelling library with extremely good hardware support. • OpenGL is a procedural graphics API containing over 200 commands and functions. • OpenGL works in conjunction with other libraries, such as GLUT, for easier implementation.

  12. OpenGL basics, Vertex Transformation • Vertices are transformed according to the following pipeline:

  13. OpenGL basics, Initialisation. • Typical C++ initialisation commands: • Typical C++ re-draw commands:

  14. OpenGL View/Perspective • The viewing Frustum parameters are set using the command: • According to the diagram:

  15. OpenGL Drawing Objects • All OpenGL objects are constructed from polygons by defining the vertices: • or by using GLUT more complex shapes:

  16. OpenGL Lighting • Both ambient and point source lighting can be defined:

  17. OpenGL Textures • Textures can be mapped onto objects according to their vertex positions:

  18. OpenGL Translate/Rotate Object • OpenGL objects can and rotated:be translated:

  19. OpenGL Solar System Model • The Solar System model is a 10 body model designed to test the long term stability of different integrators and uses the previous OpenGL techniques to generate the graphics.

  20. References/Acknowledgments • The following book provides a good reference to OpenGL with examples in C/C++: OpenGL SuperBible by R.S.Wright, M.Sweet (No relation!). • The following online tutorial covers most aspects of OpenGL programming: http://nehe.gamedev.net/