CS 4554 - Computer Graphics I: Assignment2: 3D Transform and Navigation
Lab Project Files
Windows Users
Download Lab2_Win.zip
Mac Users
Download Lab2_Mac.zip
Upload to Blackboard
- A description of your project structure (short documentation);
- Source code with enough comments to make it clear what you are doing;
- Video/Gif/Images of your result (upload to the discussion board as well);
Requirements
- In this lab, you are required to finish 3D space Model, Viewing, Projection transformations.
- You are required to finish:
- Create a camera by calculating the viewing matrix.
- Use keyboard, mouse or UI dragging to move the camera around a specific focus point or move the camera freely in the world.
- Load and display objects and place them in the world.
- Use keyboard, mouse or UI dragging to translate, rotate and scale objects.
- Draw each face with a filled polygon rather than wireframe.
- Extensions (Bonus):
- Build up the world by cubes (like Minecraft)
- Calculate and display normal for each vertex (will be important for lighting and shading in the future)
Additional Help Information
- To calculate the camera coordinates, you can read this article: Intro to Camera
- You learn about the usage of ImGui, you can read its official Examples and Gallery