Graphics Town Advanced Things 2021

Graphics Town 2021: Instructions Rubric Hints Advanced

This is a list of “advanced things” that you can do to earn points in graphics town. See the Graphics Town Rubric 2021 (Advanced Things) for explanations.

These are suggestions - if there is something that you want to try, it might fall into the “none of the things below” category (#1), but if you’d like to check, feel free to ask on Piazza.

In your assignment, you should use the short name and number when describing what you’ve done. Remember, to get points for something you must do it and describe it.

Generally, things that you do fall into one of the categories below - pick the best match. In a rare circumstance, a single object might be two advanced things. Usually, this is when there are distinct parts - for example, something that has procedural geometry and some complex behavior, or complex geometry with an animated shader effect.

Also note: some of the terms (morphing, skinning, …) we may not have discussed in class (yet). Some things we might not get to (this is an opportunity for you to learn an advanced thing on your own!).

  1. None of the Below - Something else that we didn’t think of. If you’re in doubt, ask. This is your opportunity to try some technique that we might not get to in class (within reason).

  2. Complex Behavior: you will get points for making “complex” behaviors - see the definition in Graphics Town Rubric 2021 (Some Definitions). The amount of points depends on how complicated. You can explain in the textbox why you think it is complicated enough to be worth points.

  3. Complex Object: if an object is “complicated”, you can get points for it. (see Graphics Town Rubric 2021 (Some Definitions)). Explain why you think it is complex enough to be worth points.

  4. Particle System: There is some “particle” effect - fireworks, rain/snow, flocking, smoke … Note that adapting a 2D particle system from an early workbook is OK - but be sure to give it attribution!

  5. Animated Shader Effect: Something that uses a shader to make something cool. For example, you add a flowing river texture to your scene. See “complex adaptation” in the rubric.

  6. Morphing: Shapes that morph into different shapes, probably using THREE’s shape interpolation. There is an example of this in the example code. You should make a better use of it.

  7. Key-Framing: Key-Framed movements of an articulated figure. For example, people or animals that walk or run.

  8. Skinning: A skinned articulated figure (which has to move enough that we can see that it is skinned).

  9. Water or cloth: Simulated water or cloth. Don’t try to do real simulation, but you can try to make procedural movements to have the ripples of water in a pond or a flag waving in the wind.

  10. Curved Surface: Curved Surface beyond a basic primitive. Use a subdivision surface or a generalized cylinder in a useful way. If you just use a THREE generalized cylinder, it won’t be worth a full 5 points, but you can get 1-2

  11. Procedurally generated geometry: You could algorithmically generate trees or fractal shapes for mountains. Or make something that procedurally generates some other pattern or arrangement.

  12. Use Noise" You probably want to find a source of noise functions

  13. Large Diversity of objects or behaviors: If you make a very large set of object types or behavior types, this might count as an advanced thing, especially if it works well.

  14. Frankenstein (or, bringing something inanimate to life): If you find a static model (a mesh) on the web and “bring it to life” you can count it as an advanced thing. This means finding a way to make it move by breaking it into pieces or rigging it. Just treating a mesh as a rigid object doesn’t count. A free-form deformation or skinning (above) can be a method - as is breaking the object into a bunch of rigid pieces. Be sure to describe what you’ve done.

  15. Free-Form-Deformation: (also known as a lattice deformer): this isn’t so hard to implement in a vertex shader, if you understand splines. You could even do it with linear elements. There is a demo you can play with that uses three, but it is unclear if you can use anything from this implementation other than inspiration.

  16. Dynamic Texture Map: You can put a “camera” in the scene and show it on a “screen” somewhere. Like a surveillance camera, or a jumbotron showing something else going on. The dynamic environment map example in the example objects would give you a start. Past students have done some really interesting things with this.

  17. Dynamic Environment Map: This hardly counts as a technical challenge, since I have already given you an example. But you could figure out how to apply it in an interesting way and/or to use it to get better lighting effects.

Graphics Town 2021: Instructions Rubric Hints Advanced