CS 330 Lecture 24 – Memory, Polymorphism, and Higher-order Functions
Agenda what ?s program this polymorphism in C function pointers callbacks with GLUT TODO 1/4 sheet: read A Malloc Tutorial. Program This Write a preprocessor macro named EZMALLOC that shortens the code needed to allocate a block of memory. Programmers will invoke it with something like: Code multireturn.c poly.c torus.c Haiku
CS 455 Lecture 16 – Specular Lighting
Agenda what ?s diffuse lighting in eye space positional lighting vs. directional lighting specular reflection TODO As a lab exercise, implement specular lighting in the specular project. Send me a screenshot of your scene with highlights. Haiku
CS 330 Lecture 23 – Cisms Cont’d
Agenda what ?s enums and type safety the C preprocessor macro danger dynamic memory allocation memory allocation When do I dynamically allocate memory? When you don’t know how much memory you’ll need at compile time. You don’t know if the size depends on a function parameter. When you allocate memory within a function but need the […]
CS 455 Lecture 15 – Camera
Agenda what ?s where we are adding another space a Camera class the lookat function the view matrix advancing rolling pitching TODO Start Seen Scene homework. The specification’s not written yet, but it can be summarized as follows: construct a scene comprised of at least five lit and textured objects. As a lab exercise, add […]
CS 330 Lecture 22 – Cisms
Agenda what ?s exams Cisms types sizeof headers dynamic memory allocation addressable memory polymorphism Code sizes.cpp blackjack.c Haiku
CS 330 Lecture 21 – Languages Working Together
Agenda what ?s calling C++ from Java strings arrays TODO Start the Timbre homework. Code Main.java Logger.java native.cpp makefile Note to copy and pasters: makefile rules need to be indented with real tabs, not spaces. Main.java Imogene.java native.cpp native.cpp.ours makefile Note to copy and pasters: makefile rules need to be indented with real tabs, not […]
CS 455 Lecture 14 – Perspective
Agenda what ?s the limits of orthographic perspective matrix derivation TODO As a lab exercise, alter one of your renderers to use a perspective projection. (Add a GetPerspective method to Matrix4). In orthographic projections, which don’t really have a physically realistic concept of an eye, we can put the image plane wherever we want, even […]
CS 330 Lecture 20 – Static vs. Dynamic
Agenda what ?s static vs. dynamic polymorphism in C enums in C enums in Java TODO Exam on Wednesday. Roughly, we’ve talked about the shell, regex, grammars, modeling programs with abstract syntax trees, assembly, and types. On Friday, we’ll be discussing JNI, which will be used in the next homework. Code charAt.html Haiku
CS 330 Lecture 19 – A Type Dichotomy
Agenda what ?s system vs. programmer-defined strong vs. weak static vs. dynamic TODO For a 1/4 sheet participation point, compose a midterm question about some topic we’ve discussed so far this semester. Follow these guidelines in forming your question: The question should require cognitive processes to answer. Merely recalling trivia does not. You can look […]
CS 455 Lecture 13 – UV Mapping in Blender
Agenda what ?s uv mapping non-algorithmically controlling with seams TODO As a lab exercise, uv map at least two models: the moon and something else. For the moon, use an existing texture, like the one at http://planetpixelemporium.com/earth.html. For the other, either create your own texture in an image editor, download one, or paint the texture directly on to […]