* Brief introduction to Blender Explain Blender as a fully featured 3d suite: modeling, animation, compositing, etc. ** Show a couple of render stills ** Possibly show a couple seconds of a python-generated animation Probably will demonstrate the brief telephone-operator-scene from Elephants Dream, which was python scripted, as an example of an animated scene * Brief demo of UI ** Open a new file ** Add a cube ** Show the cube being animated from point A to point B This should be pretty quick to demonstrate. Will be necessary for explaining the Blender's datastructure next. * Introduction to bpy ** What is it? - bpy is Blender's new Python API - Pretty much a complete overhaul of the Python API in 2.5X from the 2.4X and previous API - A lot of it is "automatic" thanks to the RNA and operator designs of Blender 2.5X ** bpy.data: Exploring Blender's datastructure ** bpy.ops: Operators *** Discovering operators for your scripts: Blender 2.5 is self-documenting - Grab and move a cube, look at the logging - All key commands are bound to operators, all buttons are operators. - We can find a python equivalent by doing an action and checking the logging or *** bpy.types.Operator.execute(): operators as actions Demonstrate some hello-world type examples *** bpy.types.Operator.draw(): operators as UI elements - Demonstrate some hello-world type examples - Also demonstrate properties-as-ui-elements ** Panels in the UI Scripting the UI is pretty much the same as scripting the operator, but it goes to a separate location.. * Some real-world examples ** The simple "library loader" panel we're using in Tube ** Making tools for the wargames-esque animation from Patent Absurdity ** The Gilga rig panels from Tube http://tube.freefac.org/post/gilgamesh-rig-preview-video