CS320n Elements of Visual Programming - PowerPoint PPT Presentation

cs320n elements of visual programming l.
Skip this Video
Loading SlideShow in 5 Seconds..
CS320n Elements of Visual Programming PowerPoint Presentation
CS320n Elements of Visual Programming

play fullscreen
1 / 25
Download Presentation
rogan-richards
Views
Download Presentation

CS320n Elements of Visual Programming

Presentation Transcript

  1. CS320n – Elements of Visual Programming Introduction to Alice Mike Scott (Slides 1-1)

  2. What We Will Do Today • look at the Alice programming environment • create some simple programs in Alice Introduction to Alice

  3. What is Alice? • Named in honor of Lewis Carroll’s (pen name) Alice in Wonderland • Charles Lutwidge Dodgson was also a mathematician and logician • A modern programming tool • purpose of tool, learn how to program, write algorithms • 3-D graphics • 3-D models of objects • Animation • Objects can be made to move around virtual world (a simulation or a video game. Simple Pixar.) Introduction to Alice

  4. Computer Programs • General purpose programming languages can be used for almost any task • Alice is not a general purpose programming language. • It is an application specific language • designed for a specific task, creating 3D animations • lots of application specific languages. Example: language for working with DNA data Introduction to Alice

  5. Fundamental Tools • All languages contain these elements • list of instructions – “Pack lunch, pack snack, put homework in backpack.” • decision making – “If I didn’t shave yesterday, shave today.” • repetition of behavior – “Do a load of laundry until there is no more dirty laundry.” • modularization. Big rocks into little rocks. “To do a load of laundry: gather clothes, get clothes right-side out, put clothes of similar color into washing machine…” • Generalization: Solve many different problems with one set of instructions • Compute a result – “How much is it going to cost to fill up my car with gas?” Introduction to Alice

  6. What does Alice run on? • Alice is free. • Alice is written in Java • only working versions are for PCs and Macs with OSX 10.3 or higher (relatively new, may still have bugs) • Sorry, no Linux, yet • the book comes with a copy of Alice for Windows machines • www.alice.org • also on the computers in the CS Elements lab Introduction to Alice

  7. Fast Start Up • Can quickly learn to create • a simple animation in a matter of minutes • a non-trivial animation in a few class periods • Can learn to use the Alice interface in a few class periods if you do a couple of exercises at home Introduction to Alice

  8. Installing Alice • If you want to install Alice on you computer at home • use the CD that comes with the textbook • CD installation is straightforward • download Alice from the web • http://www.alice.org/downloads/authoringtool/ • file format is .zip • must “unzip” file using a program such as winzip • problems? post to newsgroup Introduction to Alice

  9. Memory Management • Alice automatically manages memory • But, writing and testing an animation is an intense load on the computing system • a crash can occur. • Best solution: • Alice (the program) reminds you every so often so save your work • save your programs often! • if working in lab when you logout the computer is wiped -> save to your account or to a backup system such as a memory stick Introduction to Alice

  10. The Power of Alice • Automatically keeps track of 3-D objects • what objects are in the virtual world • types of objects • positions of objects in the world Introduction to Alice

  11. Demo • Starting Alice • Loading a World • Running A World • Saving a World • How to Exit Introduction to Alice

  12. The World • Alice Programs / Movies take place in a virtual world • When you start a new world in Alice you select the background • The world consistsof a sky and the ground • Can’t be changed aftercreating the world • the world is not infiniteDEMO(I don’t like roller coasters any more) Introduction to Alice

  13. Objects in Alice • Objects already exist. Hundreds of them Introduction to Alice

  14. Program an Object Introduction to Alice

  15. Where Do Objects Come From? • They are pre built • creating 3D objects is another area of computing and graphic design • Sources of 3D objects • the local gallery that comes with the software • Alice web gallery • How are objects added to the world? Introduction to Alice

  16. Adding Objects • Click on the green “Add Objects” button • World expands and local gallery displayed Introduction to Alice

  17. Adding Objects • Local gallery divided into a directory based on subject • add instances of objects to world by • dragging and dropping or • click on object and select add instance option Introduction to Alice

  18. Objects in the World • Can have multiple instances of objects from the same class in the World • class: like a cookie cutter • objects: like the cookies star cookie cutterstar cookie class star cookiesstar cookie objects Introduction to Alice

  19. Objects in the World penguin class penguin objects in a virtual world Introduction to Alice

  20. Objects in the World • The Objects that are present in the current world are listed in the Object Tree • The top left panel in the Alice programming environment • Every world comes with a light, a camera (point of view for the movie whenplayed), and the ground Introduction to Alice

  21. Object Dimensions • Objects in Alice worlds are 3 dimensional height width depth Introduction to Alice

  22. Object Position • Objects • are positioned in 3-D space • Have six degrees of freedom (directions of movement) Introduction to Alice

  23. Objects “Know” Relative Directions • Yellow box aroundpenguin is itsbounding box • light blue line isup/down • pink line is left/right • dark blue line isforward backward • DEMO Introduction to Alice

  24. Exercises • if you want to work at home, install Alice on your computer • Complete Appendix A, Part 1, using Alice • a walkthrough of using Alice • Complete the tutorials that come with Alice Introduction to Alice

  25. Starting Tutorials Introduction to Alice