Project
Overview
For the 3D graphics project, you can use the framework from Assignment 1 or Assignment 2.
The final mark for the project is worth 30% of the final grade for the course. The other 70% is the final exam. The final mark is the MAX of exam and project and exam combined. i.e. MAX(exam, ((Project/10)×0.3 + (Exam/6)×0.7) ×6 ).
Guidelines and code
- LaTeX files for the written report (the guidelines were created using these LaTeX files, and it is recommended that you use these files for your report). You can try TexMaker for working with LaTeX.
- The assignment can be done individually, or in pairs (two people).
- Make a video of your project and submit with the report. Optionally you can post to YouTube. For example using OBS Studio.
Deadline
- A project proposal must be submitted by Monday Week 5, November 28, 2022-11-28 by email.
- The project source code is due at 13:00, the day before the presentation, 2022-12-14.
- Email your project (or a cloud link to it) to Michael Doggett (mike at cs.lth.se).
- Everyone should send a report, source code and video. The report and video can also be handed in 1 day after the competition.
3D Graphics project suggestions
- SSAO
- Fur rendering
- Fur Effects (DX), Ben Kenwright
- Terrain Rendering
- Terrain RayMarching, Inigo Quilez
- Marching Cubes Geometry Shader Terrain, GPU Gems 3, Ryan Geiss
- OpenGL 4 Terrain Tessellation, Florian Bösch
- DirectX 11 Terrain Tessellation, Iain Cantlay, Nvidia
- Fire
- Fire in the Vulcan demo, GPU Gems Chapter 6
- GLSL Fire Shader
- Fire can be based on fluid, Fast Fluid Dynamics Simulation on the GPU, GPU Gems Chapter 38
- POM
- NPR - Outlines, hatching
- Variance Shadow Maps
- Use Perlin Noise for various effects, like wood, marble. Another good page.
- Noise blog, Brian Sharpe
- Simulating Particle Effects using OpenGL
- Billboarding vertex shader
- Procedural Fabric Materials
- Ray Tracing in One Weekend, Peter Shirley
- Bounding Volume Hierarchy
- How to build a BVH, Jacco Bikker
- Distributed Ray Tracing, Cook et al., 1984
- Path Tracing (The Rendering Equation, Kajiya, 1986)
- EDAN30 Assignment 2
- Kevin Beason's small Path Tracer, PT in 99 lines
- Aras Pranckevičius's Daily Pathtracer
- Scratch-a-pixel Global Illumination and Path Tracing
- Daqi Lin's Introduction to GPU Path Tracing
- I3D is also a good source for papers. Papers from the conference can be found here.
- You might also find some ideas on Real-Time Rendering
Non-compulsory competition
If you want to you can enter a non-compulsory (and friendly) competition. For more information, see the Guidelines above. All students work will be presented at the competition. You will be asked to present your work in front of the class, but this is not compulsory. If you do not want your work shown in the competition, let the lecturer know.
3D Models
- Sketchfab
- Thingi10K, 10,000 real-world 3D printing models
- NASA 3D Resources