Code 3

DayStart LectureWhoContentsNotes
Mon, 01 Jun14:00CHello ArrayMeshMorning: free half day
Tue, 02 Jun09:45UHello WebGL
Wed, 03 Jun09:45CA Disc made of triangles
Fri, 05 Jun09:45U3D Rendering
Mon, 08 Jun10:45CA Cylinder
Tue, 09 Jun09:45UInteraction and textures
Wed, 10 Jun09:45UGuest lecture
Wed, 10 Jun11:30CShaders in Godot
Thu, 11 Jun14:00CShaders in Godot (continued)Morning: free half day
Fri, 12 Jun09:45ULighting
Mon, 15 Jun10:45CAdvanced Shading Techniques in Game Engines
Tue, 16 Jun09:45*UWork on final project
Wed, 17 Jun09:45*CWork on final project
Thu, 18 Jun14:00*UWork on final projectMorning: free half day
Fri, 19 Jun09:45U&CExams
Mon, 22 Jun09:45UPost-exam follow-up

(*) At the “Work on final project” days, the starting times mark the start of the lecturers’ presence. Lecturers will be there for providing individual support with the projects. There won’t be any new contents during these days.

Final Project

For the final project, you can choose between WebGL and Godot.

WebGL

Create a WebGL project implementing a scene with either several objects (hierarchical) or a single complex object. Implement your own .obj loader if necessary. Implement one or more set(s) of shaders (vertex and fragment shader) that demonstrate a visual effect of your choice suiting the contents of your scene.

It is also possible to implement something completely different, like a raytracer or raymarcher in Vulkan or WebGPU, but please check with the lecturers before starting such a project.

Godot

Create a Godot implementing

  • A procedurally generated mesh with the ability to adjust at least the meshes tesselation (number of triangles)
  • One or more set(s) shaders implementing additional visual effect performing animation (either using animated uniforms or the TIME built-in variable)

Submission

The project will be presented in the last week of the course in groups of four. The entire project (including the source code) needs to be submitted by the end of the course block. Please upload your project to GitHub using this GitHub Classroom link: GitHub Classroom. Add a readme.md file so that we can understand your project. The readme should include:

  • A short description of your project
  • How to run it (e.g., which files to open, how to start the server, Godot Version, etc.)
  • A list of features you implemented
  • A list of features you wanted to implement but didn’t have time for
  • Your name and email address

Exam

The exams will take places in parties of four (four students are examined simultaneously). Prepare to demonstrate your project and to explain how it works. Prepare for questions such as “what would you do to add a feature like xxx to your project?”!

hfu.li/COD-III

QR-Code QR-Code