Guest Speaker — XNA Game Development

XNA Logo

Download: 2 slides per page (PDF), 6 slides per page (PDF)
Speaker: Paul Oliver of Legendary Studios
Reading: N/A
Contents: why gaming, expense, game development, opportunities in game development, XNA game studio express, what is needed, XNA resources
Code: sample-xna-game-2.zip


Visualization Lecture

Volume Rendered Head

Download: 2 slides per page (PDF), 6 slides per page (PDF)
Reading: Chapter 26
Contents: what is visualization, why visualization, visualization tasks, visual vocabulary, visualization process, categories of visualization, application areas, volumetric data, volume ray casting, volume rendering pipeline, volume rendering algorithm, issues in volume rendering, NPR volume rendering, issues with visualization, sampling, shading and illumination, perception, interactive vs. non-interactive


Shader Examples

As promised, the source code (including C source, example shader sources, as well as working makefiles) for the shaders shown in the shading lecture are now available.

Game Developer's Club — Modeling Tutorial

The Game Developer's Club will be giving a crash course modeling tutorial which will touch upon several stages of modeling and even UV mapping this Friday at 1:00pm in ITE 227.

Topics covered include: basics of 3d modeling, Importance of form, edge loops, and basic unwrapping techniques. This is intended for anyone who is interested in computer graphics and is interested in trying to learn how to get going with making basic 3D content.

Assignment 6 — Procedural Shading

Due Date

Tuesday, December 11th 2007 — 11:59pm

Task

For this assignment, you will use Pixie to render an image using a repeating tile surface shader. Each tile in your shader should match as closely as you can to a physical tile you must find and submit for approval by December 4th. Possibilities include floor tiles, bathroom tiles, ceiling tiles, etc. You can either submit in one or more digital photos of your tile to your submission directory by December 4th or bring the tile with you to my office hours on December 4th where I can take a picture of your tile for you. While the final assignment can be turned in up to a week late using your free late, or for the usual 20% penalty, the tile photos must be submitted by the December 4th and are not eligible for late submission.

Please submit your photo(s) of a reasonable size (say <1MB) to the proj6-tile project...

linux1[1]% submit cs435 proj6-tile my-tile.jpg

The scene and shaders must be your own creation. You can use the scene from assignment 1, or a new scene you create for this assignment. In either case, the your shader must appear on a flat surface in the scene (table top, wall, floor, ceiling, ...), must be lit, and should show several repeating similar tiles. You should exhibit the following shading features:

  1. Use of mod to make a repeating pattern.
  2. Use of noise for some aspect of the tile appearance and tile-to-tile variation.
  3. Appropriate diffuse, specular or other lighting terms. You may use the built-in diffuse and specular functions.
  4. Differing material properties for the tile and inter-tile space (mortar, ceiling support strips, etc.)

A portion of the grade will be awarded for creativity, originality and effort.

Extra Credit

Add one or more additional shaders for other objects in your scene. Shaders should be creative, significant, unique, and your own work. A minor variation of one of the classic shaders will not count for extra credit. The best source of inspiration for shaders that meet the extra credit requirements is to start from other physical objects.

Using Pixie

Just a reminder that Pixie for Linux is currently installed on linux.gl.umbc.edu, rooted at /afs/umbc.edu/users/d/h/dhood2/pub/cs435/pixie/.

To setup Pixie for use, csh or tcsh users should...

source /afs/umbc.edu/users/d/h/dhood2/pub/cs435/pixie-csh

Bash users would use...

source /afs/umbc.edu/users/d/h/dhood2/pub/cs435/pixie-bash

Your development cycle will go something like this:

Rendering Pipeline

Note that you need not recompile your C/C++ source if you make a change to the shader (*.sl). You simply need to recompile the shader and re-render the RIB.

Helpful Information

The following resources may be of use for this assignment...

Other People's Code

Same rules as previous assignments - YOU MAY NOT USE ANY OUTSIDE CODE. All code that you use must be your own. Evidence of cheating will be dealt with accordingly. Please do not put yourself, your peers, or your instructor in the position to have to deal with cheating.

Submission

It is required that your program compile and execute, on linux.gl.umbc.edu. Electronic submission of the project is required. You will submit your files for this assignment under "proj6" as follows...

linux1[1]% submit cs435 proj6 <files>

Submit a README.TXT file telling me about your assignment. What help, if any, did you receive from books, any provided code, or people other than the instructor and TA? What are your items supposed to be? What did you do to make it look more realistic? If you did any of the extra credit, be sure to specify what additional features you implemented.

Lastly, submit all source files needed to build and run your submission. I should be able to run make in your submission directory on the linux.gl.umbc.edu systems to produce your executable. Submit your modified Makefile, shaders (*.sl), any C/C++ files, and any other auxiliary files we might need, but not the object (.o) files or executable. Be sure to comment your code! You will not be graded on the presence or quality of your comments, but we will look at your code. Anything that helps understand what you did (or were trying to do) can only help. In any case, your programs are expected to be robust and easy to understand.

Search

Categories

Archive

Theme