Skip to main content

Scalable Rendering for Graphics and Game Engines

Credits
6
Types
Specialisation complementary (Computer Graphics and Virtual Reality)
Requirements
This subject has not requirements , but it has got previous capacities
Department
CS
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.

Teachers

Person in charge

  • Antonio Chica Calaf (achica@cs.upc.edu)

Others

  • Marta Fairen Gonzalez (mfairen@cs.upc.edu)
  • Oscar Argudo Medrano (oargudo@cs.upc.edu)

Weekly hours

Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
7.54

Competences

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

  • 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.
  • Reasoning

  • 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.
  • Basic

  • 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.
  • Objectives

    1. Using Hierarchical Geometric Models for the display of very large models.
      Related competences: CTR6, CEE1.1, CTR5, CG3,
    2. Simplification algorithms for triangle meshes.
      Related competences: CTR6, CTR5, CEE1.1, CG3,
    3. Visibility computation algorithms
      Related competences: CTR5, CTR6, CEE1.1, CG3,
    4. Interactive navigation in complex environments
      Related competences: CB8, CB9, CTR5, CTR6, CEE1.1, CG3,

    Contents

    1. Hierarchical geometric models
      Algorithms for space subdivision (regular grids, octrees, BSP trees, Kd-trees), scene subdivision (BVHs) and external memory-based data structures.
    2. Mesh representation data structures
      Triangle and polyognal mesh representation: Independent face set, Indexed face set, Adjacency lists, Winged edge, Half edge, Corner table.
    3. 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.
    4. 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.
    5. Visibility computation
      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.
    6. 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.

    Activities

    Activity Evaluation act


    Hierarchical Geometric Models


    Objectives: 1
    Contents:
    Theory
    12h
    Problems
    0h
    Laboratory
    6h
    Guided learning
    0h
    Autonomous learning
    27h

    Simplification algorithms for triangle meshes


    Objectives: 2
    Theory
    8h
    Problems
    0h
    Laboratory
    4h
    Guided learning
    0h
    Autonomous learning
    18h

    Visibility computation algorithms


    Objectives: 3
    Contents:
    Theory
    8h
    Problems
    0h
    Laboratory
    4h
    Guided learning
    0h
    Autonomous learning
    18h

    Interactive navigation in complex environments


    Objectives: 4
    Contents:
    Theory
    8h
    Problems
    0h
    Laboratory
    4h
    Guided learning
    0h
    Autonomous learning
    18h

    Paper presentation

    Each student has to prepare the corresponding presentation and a supporting document, which have to sent to the course coordinator before the session.
    Objectives: 1 3 4 2
    Week: 15
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    0h

    Exercises

    Set of exercises raised during the course to assess knowledge acquisition by students during the course.

    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    9h

    Teaching methodology

    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.

    Evaluation methodology

    The final qualification is computed as:

    FinalQualification = 0.25 * ShortExercises + 0.25 * DPresentation + 0.5 * LabQualification

    where:

    * ShortExercises represents the short problems the instructor will ask during T sessions.

    * DPresentation is the presentation the students will do on a paper selected from a list.

    * LabQualification will be the qualification obtained by the students in the L sessions.

    Bibliography

    Basic

    Complementary

    • SIGGRAPH '08: ACM SIGGRAPH 2008 classes - David Kasik, Andreas Dietrich, Enrico Gobbetti, Fabio Marton, Dinesh Manocha, Philipp Slusallek, Abe Stephens, and Sung-Eui Yoon, Association for Computer Machinery, 2008.

    Previous capacities

    Students that take this course need to know OpenGL and have taken some computer graphics course previously.