Agenda & Assignment 18, April 21
CSC 101/IMM 120
Spring 2009
Summary of Class Activities:
1) Pitch your final project idea: write your proposal based on the template.
2) Exploring 3D.
Rather than lull you all to sleep with a powerpoint lecture that overwhelms your cognitive load, I decided we would explore the remaining topics by encouraging to you to use your emerging computational thinking skills to research these environments yourselves. In class.
The purpose of this exercise is give you an opportunity to explore "3D" in Processing. The basics of 3D rendering are the same in all environments. You have to consider the "z" direction. The primitive "line" can be represented, but rectangles becomes "boxes" and elispes become "spheres." You also need to consider how to "translate" and "rotate" the space, and how "light" impacts the environment. Finally 3D requires mapping a "texture" onto a surface. Note that the surface does not need to be planar.
With a partner:
Open up the Processing example "Primitives 3D" and "comment the code." That is, explain what each method call contributes to the rendering. Change some of the arguments to the methods to see what impact it has.
THEN: go to the references and look up the following functions, cut and past the sample code to get a better understanding of what they do.
box
sphere
translate
rotateX, rotateY, rotateZ
lights
texture
THEN: Between you, your partner and anyone else in the class who can help, answer the second journal question below. You might want to include your own "sketch" that illustrates these concepts.
THEN: pick one of the other 3D examples and try to figure out how it works. You may have to explore additional methods.
If you have time, explore: textureMode, beginShape, endShape, vertex.
If you STILL have time poke around to see what other processing methods support 3D.
HOMEWORK
Programming Assignment: (Ongoing)
Continue working on your portfolio in HTML.
Begin your final project.
Journal Assignment: (Due TUESDAY April 28)
1) What characteristics make up a programming language and how is that different from scripting language? Give an example of each (don't use Processing for one of them) and explain how it is like or not like Processing.
2) All semester we have been working in two dimensions. What additional functionality is required to create images in 3 dimensions?