Computer Graphics
Project Overview
This series of computer graphics projects explores fundamental concepts in 3D rendering and visualization. Offline 1 focuses on camera control, enabling users to navigate a 3D space, manipulate a rolling ball, and interact with a magic cube. Offline 2 delves into rasterization, rendering 3D objects onto a 2D plane by transforming, projecting, and coloring pixels. Offline 3 introduces ray tracing, simulating realistic light behavior by tracing rays to create shadows, reflections, and refractions for highly detailed scenes.
Features
Offline 1: Camera Control and Interactions
- Camera Control: Navigate and manipulate the camera in a 3D environment to explore the scene.
- Rolling Ball: Interact with a rolling ball, demonstrating movement and collision in 3D space.
- Magic Cube: Manipulate a 3D magic cube to understand object transformations and rotations.
Offline 2: Rasterization
- 3D to 2D Projection: Transform and project 3D objects onto a 2D plane using rasterization techniques.
- Pixel Rendering: Render objects by coloring pixels based on vertex and fragment data.
- Object Lighting: Apply basic lighting and shading models to enhance visual realism.
Offline 3: Ray Tracing
- Realistic Light Simulation: Trace rays to simulate realistic lighting effects like shadows and reflections.
- Scene Rendering: Render complex scenes with refractions and accurate light interactions.
- Advanced Effects: Achieve high detail with techniques like anti-aliasing and global illumination.
Technologies Used
- C++