teaching machines

CS 488: Lecture 19 – Value Noise

Dear students: Algorithms produce visual content that is too perfect. We humans see the artifice and find it distasteful. When we explore the physical world, we see surfaces full of splotches and cracks. To achieve similar imperfections in algorithmic content, we introduce randomness. But pure randomness will take us to the opposite extreme of chaos. […]

CS 488: Lab 10 – 3D Modeling

Welcome to lab, which is usually a place where you and your peers complete exercises designed to help you learn the ideas discussed in the preceding lectures—but not this week. Your task in this lab is to work individually through some tutorials on 3D modeling. You pick the tutorials and the amount of them according […]

CS 488: Lecture 18 – Modeling in Blender

Dear students: In game studios, roles are usually divided. There are engineers, artists, UX people, sound people, game designers, managers, and other roles. Each role has their expertise, but they should be familiar with the activities of others. Today, we engineers will explore what its like to be a 3D artist. We will interactive work […]

CS 488: Lab 9 – Water

Welcome to lab, which is a place where you and your peers complete exercises designed to help you learn the ideas discussed in the preceding lectures. It is intended to be a time where you encounter holes in your understanding and talk out loud with your peers and instructor. Your instructor will bounce around between […]

CS 488: Lecture 17 – Heightmaps

Dear students: We’ve been applying images to existing surfaces. Today, let’s turn things around a bit. Let’s generate a surface using an image. We’ll consider the image to be a grayscale map of elevations, which is sometimes called a heightmap. From this raster, we’ll generate geometry that we can traverse interactively with a camera. Convert […]

CS 488: Lecture 16 – Skyboxes and Environment Mapping

Dear students: Today we pull another treasure out of the bag of tricks that is computer graphics. We add a surrounding environment to our scenes that gives an illusion of immersion. The surrounding scene is made entirely of textures pasted on a simple cube, so it’s cheap to implement. We can also make highly reflective […]

CS 488: Lab 8 – Moon

Welcome to lab, which is a place where you and your peers complete exercises designed to help you learn the ideas discussed in the preceding lectures. It is intended to be a time where you encounter holes in your understanding and talk out loud with your peers and instructor. Your instructor will bounce around between […]

CS 488: Lecture 15 – Extra Extra Texturing

Dear students: Today we visit just a few more miscellaneous topics related to texturing. We’ll examine texturing a cube, dealing with constraints on a texture’s dimensions, and apply textures to produce more discrete shading. Texture Atlas Texturing a quadrilateral is like biking down hill. You don’t have to exert much effort to paste a rectangular […]

CS 488: Lecture 14 – Extra Texturing

Dear students: Last time we introduced texturing as a way of adding surface details without adding extra geometry. Textures are effectively our way of defining attributes at the fragment level. Today we extend our discussion of textures with a hodge podge of miscellaneous topics surrounding their use. Interpolation Suppose I have 3 cats at the […]

CS 488: Lecture 13 – Texture Mapping

Dear students: The temptation in computer graphics is to add more realism. We want the light to behave like real light, water to move like real water, and bodies to bend like real bodies. To make 3D shapes look more real, we might consider adding more triangles to give more geometric detail. More triangles mean […]

1 2 3 4 5 6