5.59. Topics in Computer Graphics (Elective)

5.59. Topics in Computer Graphics (Elective)

Figure 5.59: Connection Map. CS351 Topics in Computer Graphics

5.59.1. Justification ↑ Back to top

Modern computer graphics go beyond simple image generation, encompassing real-time interaction, physical simulation, and immersive environments. This course explores advanced topics in the graphics pipeline, focusing on programmable shading, complex geometric modeling, and computer animation. Additionally, it addresses the intersection of graphics with physical computing and the ethical implications of synthetic content generation.

5.59.2. Generales Goals ↑ Back to top

  1. Master advanced shader programming and non-photorealistic rendering.
  2. Implement physically-based simulations and complex animations.
  3. Design immersive and interactive experiences using tangible computing.
  4. Evaluate the ethical and societal impact of computer-generated imagery.

5.59.3. Contribution to Outcomes ↑ Back to top

AG-C11) Use of Tools: Applies modern computing tools in problem solving. (Usage)
AG-C09) Design and Development of Solutions: Designs, implements, and evaluates solutions for complex computing problems. (Usage)

5.59.4. Content ↑ Back to top

5.59.4.1. Shading and Advanced Rendering (12 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (Marschner and Shirley, 2021a; Marschner and Shirley, 2021b)

Topics

  1. Advanced shading: physically based shading, subsurface scattering
  2. Global illumination: radiosity, photon mapping, path tracing
  3. Real-time rendering techniques: level of detail, culling, occlusion
  4. GPU programming and shaders

Learning Outcomes

  1. Implement advanced shading models for realistic materials [Implement]
  2. Compare global illumination algorithms and their trade-offs [Compare]
  3. Optimize real-time rendering using techniques like level of detail and culling [Create]
  4. Develop GPU shaders for custom rendering effects [Create]
5.59.4.2. Geometric Modeling (10 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (Marschner and Shirley, 2021a)

Topics

  1. Geometric representations: polygons, curves, surfaces, implicit forms
  2. Modeling techniques: splines, subdivision surfaces, constructive solid geometry
  3. Procedural modeling and generation
  4. Geometric algorithms: intersection, distance, decomposition

Learning Outcomes

  1. Describe different geometric representations and their trade-offs [Describe]
  2. Implement modeling techniques such as spline curves or subdivision surfaces [Implement]
  3. Create procedural models using algorithms or rules [Create]
  4. Apply geometric algorithms to solve problems like intersection testing or mesh processing [Apply]
5.59.4.3. Computer Animation (8 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (Parent, 2012)

Topics

  1. Animation principles: timing, spacing, anticipation, follow-through
  2. Keyframe animation and interpolation
  3. Procedural animation: particle systems, flocking, physics-based
  4. Character animation: skeletal animation, skinning, inverse kinematics
  5. Motion capture and retargeting

Learning Outcomes

  1. Apply animation principles to create believable motion [Apply]
  2. Implement keyframe animation with interpolation techniques [Implement]
  3. Create procedural animations such as particle systems or physics-based simulations [Create]
  4. Implement character animation using skeletal systems and skinning [Implement]
  5. Process motion capture data for animation retargeting [Implement]
5.59.4.4. Simulation (8 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (Parent, 2012)

Topics

  1. Physics-based simulation: rigid bodies, fluids, cloth
  2. Numerical methods for simulation: integration, collision detection
  3. Real-time simulation constraints and optimizations
  4. Applications in games, visual effects, and scientific visualization

Learning Outcomes

  1. Implement physics-based simulations for rigid bodies or fluids [Implement]
  2. Apply numerical integration methods for dynamic simulations [Apply]
  3. Optimize simulations for real-time performance [Create]
  4. Develop simulations for specific applications such as games or scientific visualization [Create]
5.59.4.5. Immersion (5 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (LaValle, 2023)

Topics

  1. Virtual reality (VR) and augmented reality (AR) concepts
  2. Immersive display technologies: head-mounted displays, CAVEs
  3. Tracking and input for immersive environments
  4. Presence and comfort in immersive systems

Learning Outcomes

  1. Explain the core concepts and differences between VR and AR [Explain]
  2. Evaluate immersive display technologies and their applications [Evaluate]
  3. Implement tracking and input solutions for immersive environments [Implement]
  4. Design immersive experiences that maximize presence and minimize discomfort [Design]
5.59.4.6. Interaction (5 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (LaValle, 2023)

Topics

  1. Interaction paradigms: direct manipulation, gesture-based, tangible
  2. User interface design for graphics applications
  3. Multimodal interaction: combining visual, auditory, haptic feedback
  4. Evaluation of interaction techniques: usability, user experience

Learning Outcomes

  1. Compare different interaction paradigms and their suitability for various tasks [Compare]
  2. Design user interfaces for graphics-intensive applications [Design]
  3. Implement multimodal interaction systems incorporating multiple feedback channels [Implement]
  4. Conduct usability evaluations of interaction techniques [Evaluate]
5.59.4.7. Tangible/Physical Computing (8 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (Noble, 2012)

Topics

  1. Tangible interfaces and physical computing
  2. Sensors and actuators for interactive systems
  3. Embedded systems for interactive art and design
  4. Interactive installations and environments

Learning Outcomes

  1. Design tangible interfaces that bridge physical and digital interactions [Design]
  2. Integrate sensors and actuators to create responsive systems [Integrate]
  3. Develop embedded systems for interactive art or design projects [Create]
  4. Create interactive installations that engage users in physical spaces [Create]
5.59.4.8. Society, Ethics, and the Profession (8 hours) [Skills AG-C09,AG-C11] ↑ Back to top

Bibliography: (Marschner and Shirley, 2021a)

Topics

  1. Ethical considerations in graphics and interaction: representation, accessibility, privacy
  2. Social impact of immersive technologies and visualization
  3. Professional practice in graphics and interactive industries

Learning Outcomes

  1. Analyze ethical issues related to representation, accessibility, and privacy in graphics and interaction [Analyze]
  2. Discuss the social implications of immersive technologies and data visualization [Debate]
  3. Describe professional practices and standards in graphics and interactive industries [Describe]

5.59.5. Bibliography ↑ Back to top

Marschner, S. and Shirley, P. (2021a). Fundamentals of Computer Graphics. A K Peters/CRC Press, 5th edition.

Marschner, S. and Shirley, P. (2021b). Fundamentals of Computer Graphics. CRC Press, 5th edition. Same book as Marschner2021; alternate citation key using lead author Shirley.

Parent, R. (2012). Computer Animation: Algorithms and Techniques. Morgan Kaufmann, 3rd edition.

LaValle, S. M. (2023). Virtual Reality. Cambridge University Press.

Noble, J. (2012). Programming Interactivity: A Designer's Guide to Processing, Arduino, and OpenFrameworks. O'Reilly Media, 2nd edition.

Spotted a typo, an outdated course, a broken link, or have a suggestion? Let us know.

Scan to open on your phone