Specialization complementary (Computer Graphics and Virtual Reality)
This subject has not requirements
This course will introduce the various techniques that enable the interactive visualization and handling of very complex objects and scenes. While there has been a leap in the power of graphics hardware, more complex datasets are generated through advances in 3D modeling, simulation and data capture. Thus, the need to deal with these massive models arises in fields such as scientific visualization, CAD, cultural heritage, videogame engines and others. The students will be exposed to hierarchical representation of scenes, model's simplification and visibility culling. As a result, they will gain a global view of the problem and a wide knowledge of the current solutions.
Person in charge
Antonio Chica Calaf (
Technical Competences of each Specialization
Computer graphics and virtual reality
CEE1.1 - Capability to understand and know how to apply current and future technologies for the design and evaluation of interactive graphic applications in three dimensions, either when priorizing image quality or when priorizing interactivity and speed, and to understand the associated commitments and the reasons that cause them.
Generic Technical Competences
CG3 - Capacity for mathematical modeling, calculation and experimental designing in technology and companies engineering centers, particularly in research and innovation in all areas of Computer Science.
Appropiate attitude towards work
CTR5 - Capability to be motivated by professional achievement and to face new challenges, to have a broad vision of the possibilities of a career in the field of informatics engineering. Capability to be motivated by quality and continuous improvement, and to act strictly on professional development. Capability to adapt to technological or organizational changes. Capacity for working in absence of information and/or with time and/or resources constraints.
CTR6 - Capacity for critical, logical and mathematical reasoning. Capability to solve problems in their area of study. Capacity for abstraction: the capability to create and use models that reflect real situations. Capability to design and implement simple experiments, and analyze and interpret their results. Capacity for analysis, synthesis and evaluation.
CB8 - Capability to communicate their conclusions, and the knowledge and rationale underpinning these, to both skilled and unskilled public in a clear and unambiguous way.
CB9 - Possession of the learning skills that enable the students to continue studying in a way that will be mainly self-directed or autonomous.
Using Hierarchical Geometric Models for the display of very large models.
Simplification algorithms for triangle meshes.
Hierarchical geometric models
Algorithms for space subdivision (regular grids, octrees, BSP trees, Kd-trees), scene subdivision (BVHs) and external memory-based data structures.
Mesh representation data structures
Triangle and polyognal mesh representation: Independent face set, Indexed face set, Adjacency lists, Winged edge, Half edge, Corner table.
Simplification of triangle meshes
Introduction to the basic concepts, operators and error metrics used in geometry and topology-based simplification. Its application to appearance-preserving simplification and out-of-core gigantic model simplification.
Level of detail
Introduction to object level of detail (LOD) and its application to complex scenes (time critical rendering). Strategies for LOD: Discrete, Continuous, or View-Dependent. Popping effect prevention.
Introduction to the basic concepts and algorithms for visibility computation, including visibility preprocessing, point and region visibility, and visibility computation using the GPU. PVS compression.
Interactive navigation in complex environments
How to estructure gigantic data for out-of-core visualization of huge scenes. Use of view dependent visualization. Algorithms for collision detection in gigantic models.
Set of exercises raised during the course to assess knowledge acquisition by students during the course.
This course is structured in three session types:
* T sessions (theory): presentation by the corresponding professor. The professor will ask the students to do some short exercises on the subjects covered in these sessions.
* D sessions (discussion): sessions conducted by the professor, in which some students will solve exercises or present previously distributed papers. Each student has to prepare the corresponding presentation and a supporting document, which have to sent to the course coordinator before his D session.
* L sessions (lab): in these sessions students will have to solve practical problems programmings some of the algorithms presented in the theory sessions. L sessions will start with a short lecture section.