Zebra0

Learn to Program Step-by-Step

Alice 3

Learn Alice 3 in FREE step-by-step lessons.

An Alice3 virtual world
In Alice3 you will create virtual 3D worlds. You will add characters, animate them, and interact with the user to create games and tell stories. You will create programs by dragging and dropping graphic tiles. By animating and manipulation the 3D characters in the virtual world, you will learn to use the same programming tools that are typically taught in a beginning programming course.

printable lesson
  1. INDEX (start here)
  2. Installing Alice 3: Install Alice in Windows or Mac

  3. A Brief Tour of Alice: Video Overview of the components in Alice

  4. A Gallery Tour: Video overview of the 3D models available

  5. Self Study Questions
  6. Discussion Questions
  7. Active Learning: Install Alice
printable lesson
  1. INDEX (start here)
  2. Select a starting template: There are many templates: grass, sea floor, snow, room, mars, and more.

  3. Code Editor vs. Scene Editor: Add 3D models in setup scene, add code in code view.

  4. Naming conventions: Follow these conventions for the names you give objects, variables and methods.

  5. About the first program: Important things to remember when you create the first program

  6. The first program: Hello World: This video demonstrates how to create your first program.

  7. Discussion Questions
  8. Active Learning: Create Hello World project
printable lesson
  1. INDEX (start here)
  2. Open an existing project: Instead of selecting a template choose other tabs: starters, my projects, recent, file.

  3. Look up, Say it slower: Make the witch look up, say the words slower.

  4. Editing the scene: Change the position of the camera, turn and resize objects, delete and undo.

  5. Adding comments: Comments let you make notes for yourself and other programmers

  6. Setting preferences for the code: Set the preferences to see Java style code

  7. Discussion Questions
  8. Active Learning: Edit the Hello World project
printable lesson
  1. INDEX (start here)
  2. Movement in Alice: Video demonstrates the basic principles of object motion and rotation

  3. How Objects see the Virtual World: Video demonstrates move, turn and roll

  4. Directions: Each object has a sense of direction:
    forward, backward, left, right, up, backward, and down.

  5. Dolphin tricks: Moves, Turn and Roll: A dolphin moves up, down, left and right

  6. A Dancing Chicken using move, turn and roll: How to add move, turn and roll procedures to the code

  7. Discussion Questions
  8. Active Learning: Create a dance routine.
printable lesson
  1. INDEX (start here)
  2. Using the Handles to position objects: Use the handles to turn, roll, and move any of the objects in your project.

  3. Camera views: View the scene from starting view, layout, top, side, or front

  4. Camera views: Stacking Boxes: Different views help to stack 3 boxes

  5. How to Change the ground: Change the ground, opacity, add fog, light from above and below

  6. Positioning with One Shots: Use one shots to move, turn and roll in design view

  7. Using Vehicles: A penguin and Egg: Position the egg on penguins feet, then make the penguin the vehicle for the egg

  8. Using Vehicles: Monkey holding Banana: The monkeys thumb is made the vehicle for the banana

  9. Discussion Questions
  10. Active Learning: Create a Castle
printable lesson
  1. INDEX (start here)
  2. What is a variable?: A variable is a named location in memory.

  3. View code as Java or Alice format: Set preference to Java to match the code in the lessons.

  4. Variable types: Variables can hold strings, integers, double, Boolean or any of the gallery classes.

  5. Drill on type: See if you can select the correct type.

  6. Name of variables: Variable names must follow rules, such as no spaces.

  7. Drill on names: See if you can select the valid names.

  8. A jumping chicken: Use a variable for the amount to jump, use it to move up and down.

  9. Assign: giving a new value to a variable: The assign statement is used to give a variable a new value.

  10. Using constants: A constant never changes. Its name is usually all uppercase.

  11. Discussion Questions
  12. Active Learning: Use variables
printable lesson
  1. INDEX (start here)
  2. Ask the users name and say hello: Use the function getStringFromUser to ask the user his name,
    then say hello using the name entered.

  3. Ask the user how old they are: Use the function getIntegerFromUser to ask the user's age.

  4. Ask the users their favorite food: Wolf asks "What's your favorite food, then says that is his favorite too.

  5. Panda asks how much to turn: We ask the user for a double and the panda spins around that amount.

  6. Discussion Questions
  7. Active Learning: Ask the user some questions
printable lesson
  1. INDEX (start here)
  2. Posing in Scene Editor: Learn to pose subparts in scene editor using handle tools.

  3. Posing using One Shots: Learn to pose subparts in scene editor using One Shots

  4. Opening and shutting a car door: Open the car door in scene view using one shots

  5. Moving the arms: A biped's two arms are mirror images of each other.

  6. Moving the legs: Legs both descend down from the body
    but are mirror images of each other from left to right.

  7. Self Study Questions
  8. Discussion Questions
  9. Active Learning: Create a comical pose
printable lesson
  1. INDEX (start here)
  2. Ask if it is nighttime: The function getBooleanFromUser gives a choice of true or false.

  3. Pass or Fail: Compare a score to 65 and say "Pass" or "Fail"

  4. Child or Adult? Comparing values: Compare age to determine if child or adult

  5. Teenager? Using AND: &&: You are a teenager if age >=13 AND age <= 19

  6. Panda says "Whee!" if turning fast: Panda says "Whee" if amountToTurn > 2.0

  7. Who is taller? Finding larger of 2: Use the function getHeight to find the taller of two animals

  8. A Quiz Game: This video shows how to create a quiz and keep track of number right.

  9. A True/False Question: Using if to tell the user the answer is right.

  10. A drill on Boolean values: See if you can do these comparisons

  11. Self Study Questions
  12. Discussion Questions
  13. Active Learning: Create a guessing game or quiz.
printable lesson
  1. INDEX (start here)
  2. Control Structures: Control structures control the order in which statements are executed.

  3. Using a count loop to wave: Use count control structure to wave 3 times

  4. Counting with a while loop: A toddler says 1, 2, 3 using a while loop

  5. Count down and blast off!: Counting down with a while loop: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 blast off!

  6. Yeti circles around baby penguin: Uses an endless while loop to circle continuously.

  7. Fish swims back and forth: It's important to start and end in the same position.

  8. Pixie moves between marked locations: Markers let you move to a set position.

  9. Editing markers: Edit object markers: add, delete, re-rename, and change the color

  10. A Walking algorithm: Get into position, take three steps, return to starting position.

  11. Self Study Questions
  12. Discussion Questions
  13. Active Learning: Create animation.
printable lesson
  1. INDEX (start here)
  2. Pseudocode: Step by step instructions written in human language.

  3. A game: Rock, Paper, Scissors: Explanation and Pseudocode for the game

  4. Flowcharts: A flowchart is a drawing that shows the steps in an algorithm.

  5. Drawing Flowcharts: Video shows how to draw flowchart using draw.io

  6. Flowchart for Rock, Paper, Scissors game: The top level flowchart for the rock paper scissors game is shown.

  7. Truth table for Rock, Paper, Scissors game: Video creates a truth table in Excel.

  8. Discussion Questions
  9. Active Learning: Design a final project.
printable lesson
  1. INDEX (start here)
  2. Procedures for top down design: Video shows how to use procedure for top down design.

  3. Loki Waves: Video shows statements for making Loki wave.

  4. A Biped Waving Procedure: Copy the code for Loki waving to create procedure for any biped to wave.

  5. Adding Parameters to a Procedure: Parameters are added so that we can vary the amount to wave and times to wave.

  6. Anyone can walk: Video on making the code for Freya walking into a procedure for any biped to walk.

  7. Self Study Questions
  8. Discussion Questions
  9. Active Learning: Use procedures to create an exercise class.
printable lesson
  1. INDEX (start here)
  2. Counters: Using a while loop to count using counter=counter+1

  3. Cost of 3 Soccer Balls: How much does one soccer ball cost? total=cost * 3

  4. Cost of 3 different items: Finds the total of 3 different values: total=total+cost

  5. Calculate Distance to Move: Distance to move to be next to something

  6. Writing functions: Create a function to get distance to move next to something

  7. Loop to add numbers: A loop to add numbers uses a running total: total=total + number

  8. Loop to add numbers and find smallest and largest: The first value is the smallest and largest so far.

  9. Self Study Questions
  10. Discussion Questions
  11. Active Learning: Move to and Jump on top
printable lesson
  1. INDEX (start here)
  2. Displaying some random values: Uses textModel to display a random double value between 0 and 1.

  3. Displaying values from 1 to 6: A random integer from 1 to 6 inclusive

  4. A Counting Quiz: How many fish do you see? (Some of the fish are invisible.)

  5. Addition Quiz: Bears ask you to add numbers, then tells how many you got right.

  6. Guess the Aliens number: Loops until the user guesses the number: give hints "too high" and "too low"

  7. A Penguin Jumps Up and Down: Use a random value each time he jumps to make it look more realistic.

  8. A Fish swims back and forth: Random numbers for the distance to swhim makes it more realistic.

  9. Self Study Questions
  10. Discussion Questions
  11. Active Learning: Create a soccer match
printable lesson
  1. INDEX (start here)
  2. Arrays: Ready, Set, Go!: Tortoise says "Ready", "Set", "Go" using array

  3. An array of animals: An array of SJointedModel contains, yeti, tortoise and stuffedTiger

  4. The animals talk: Parallel Arrays: One array contains animals, the other the things they say

  5. Who's the tallest?: People are in an array, a loop is used to find the tallest.

  6. Animals counting: An array of animals take turns to count

  7. Segments of an elephant's trunk as an array: The segments of an elephants trunk, tail and a few other things are an array.

  8. Self Study Questions
  9. Discussion Questions
  10. Active Learning: Create a project using arrays
printable lesson
  1. INDEX (start here)
  2. As Seen By: A different point of view: The argument asSeenBy shows a movement through the eyes of another object.

  3. A UFO as the vehicle for the camera: Video show how to assign a vehicle to the camera.

  4. Playing Sounds: Video shows how to import and play any mp3 file.

  5. Using billboards to display images: A UFO lands in Paris using a billboard with a picture of Paris.

  6. A Simple way to change scenes: Create scene procedures and change the ground and visibility of objects.

  7. Adding transitions to scene changes: Transitions are created by fading a billboard in and out.

  8. Cinderella scenes with camera markers: The camera uses camera markers to switch from scene on the left and one on the right.
    Uses two different Cinderellas.

  9. Adding properties to a class: Video shows how to add properties to a class.

  10. Self Study Questions
  11. Discussion Questions
  12. Active Learning: Create a project using advanced techniques
printable lesson
  1. INDEX (start here)
  2. A dog wags his tail continuously: The addSceneActivationListener makes a dog wag his tail continuously while other actions take place.

  3. Playing a background sound: To play background music use initializeEventListeners
    to play sound together with myFirstMethod.

  4. Click on the bear event: The bear says something when the user clicks on him.

  5. Click on several different objects: Each animal says something when clicked

  6. Drag and Drop: Using default model manipulation in event listeners lets the user drag and drop objects at run time.

  7. Collisions: Making something happen when objects collide.

  8. The keypress event: typing a letter to make a selection

  9. Object Mover and Key press events: Add object mover for the shark so that the user can move it with the arrow keys.

  10. A Timer Event: Using the timer event, the penguin says "Help!" at random intervals.

  11. Self Study Questions
  12. Discussion Questions
  13. Active Learning: What events can you add?, Animate a fairy tale using all you have learned
Like us on Facebook:


OER: Open Educational Resource
Creative Commons License Author: Janet E. Joy; Publisher: Zebra0.com
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
Creative Commons Attribution-NonCommercial 4.0 International License
Last modified: July 14 2017 16:37:39.