Flipsticks

From WorldWideWorkshop-OLPC wiki

Jump to: navigation, search

Contents

Latest Development Updates

Oct 31, 2007 (Ed): (flipsticks-1.xo)

  • correctly built xo package

Oct 30, 2007 (Ed): Release Candidate (1.4)

  • new icon again

Oct 30, 2007 (Ed): Release Candidate (1.3)

  • new icon again

Oct 30, 2007 (Ed): Release Candidate (1.2)

  • added lesson plans
  • new icon again

Oct 26, 2007 (Ed): Release Candidate (1.1)

  • changed background color
  • fixed empty box in upper right corner (where file open/save used to be)

Oct 22, 2007 (Ed): Release Candidate (1.0)

  • mesh functionality (join another user and get their screen)
  • new icon

Oct 9, 2007 (Ed): Beta Version (1.0)

  • add svg icon for activity
  • export now puts a png file of the first frame in the journal

Oct 3, 2007 (Ed): Beta Version (0.9)

journal integration!

Sept 27, 2007 (Ed): Beta Version (0.8)

added translations for Spanish for the stick names

Sept 27, 2007 (Ed): Beta Version (0.7)

added yellow joint on torso for rotation of figure

Sept 25, 2007 (Ed): Beta Version (0.6)

made bigger play/pause buttons

Sept 24, 2007 (Ed): Beta Version (0.5)

fixed head and hand size interpolation

Sept 20, 2007 (Ed): Beta Version (0.4)

Things that don't work:

  • save
  • load
  • export

Things that partially work:

  • language dropdown (doesn't change stick names)

Things that are broken:

  • head and hands sizes don't get interpolated correctly

Sept 17, 2007 (Ed): Beta Version (0.3)

fixed system hanging while playing animation

Sept 12, 2007 (Ed): Beta Version (0.2)

Things that work:

  • posing character through sticks dialog on side
  • moving character by clicking on middle of character
  • saving,moving,clearing keyframes
  • forwards and backwards animation

Things that don't work:

  • posing character by clicking on joints and dragging them
  • language dropdown (isn't a dropdown yet)
  • save
  • load
  • export

Issues:

  • system hangs when playing animation!
  • end of animation doesn't put character in correct pose
  • angle and size isn't always updated correctly
  • head and hand sizes don't get interpolated correctly in animation

Design and Functionality

Version 1.0 - Basic Application recreated in PyGTK

The first part of the reprogramming process is to address the differences between Java and pygtk. The easiest way to do this is make a stripped-down version of the application in pygtk. It will not include any graphic interface elements and it may or may not run under Sugar.

Version 1.0 will have all the functionality of the web-based app except saving and sharing:

  • Stick Figure. Single stick figure that can be used to learn about keyframe animation.
  • Pose by “Click and Drag”. Sticks can be manipulated by clicking and dragging.
  • Pose by Numeric Input. The character’s sticks and joints can be manipulated by selecting a part on a provided text list and changing the angle and/or size numeral.
  • Adjustable Body Parts. To include: Head, Neck, Rt Shoulder, Upper Rt Arm, Lower Rt Arm, Rt Hand, Lft Shoulder, Upper Lft Arm, Lower Lft Arm, Lft Hand, Torso, Rt Hip, Upper Rt Leg, Lower Rt Leg, Rt Foot, Lft Hip, Upper Lft Leg, Lower Lft Leg, Lft Foot
  • Figure positioning. The whole character can moved around on the stage as a unit (dragged up, down, left right and rotated 360 degrees.)
  • Keyframes. When the user is happy with a pose, s/he can save it as a keyframe by clicking on one of the keyframe buttons that appear at the bottom of the application. When the animation plays, the application produces intermediate poses between the keyframes so the motion appears fluid.
  • Timeline. The Keyframe buttons can be dragged and rearranged on a provided timeline. User can complete change the order of the frames, and can control transition times by making the fames closer together or further apart.
  • Play/Pause. After saving at least one new keyframe pose (in addition to the default pose), user can click Play button to animate the character between the different positions.
  • Play Backwards. Animation can be played forwards and backwards.
  • Speed Control. Slider control allows user to adjust animation playback speed.
  • One functional change -- how a keyframe is saved. A new camera button will be included on the interface. Clicking on it saves the current pose as a keyframe.

Version 1.1 – Graphic interface added; Activity runs under Sugar on the XO laptop

In this step the graphic interface will be applied to the basic pygtk activity. The widget layout will be adjusted, the colors will be changed, etc. Any additional widgets (like save/load) that will be adding functionality will be placed in the interface at this point (not in a working state, just to have the widget location and styling worked out). All Sugar integration details will be worked out in this step also. The activity should run under Sugar and be playable on the XO laptop.

The new graphic interface is expected to differ from the original in several ways:

  • Rectangular stage for posing/moving/animating stick figure (instead of round)
  • List of Sticks receives more space and will not require scrolling (to aid in translatability)
  • Figure positioning will be achieved by clicking on the character, not through the use of arrow buttons on the interface.
  • Keyframes will be square, not round and will not feature an on/off toggle.
  • There may be some kind of “Save as Keyframe” button added to the interface (Maybe featuring a camera icon.) – However, this functionality might also be handled by having the user click on an empty keyframe on the timeline.
  • The overall look and layout will match the MaMaMedia Activity Center’s established graphic style. Sugar buttons and widgets will be used as much as possible.

Version 1.2 – Final OLPC Release version

This version focuses on completely integrating the application into the OLPC framework. Other features making the application integrate into the OLPC environment will be added at this point, as well as Save/Load animation.

  • Each saved animation will have a title and thumbnail
  • Thumbnail will show first keyframe pose of the animation. If possible thumbnail may even animate (Feasibility TBD by Programmer.)
  • Language Chooser implemented
  • Lesson Plans feature implemented
  • Launches through MaMaMedia Activity Center
  • Uses Sugar Presence Service (Telepathy) and Tubes for interacting with other XOs
  • Animations are Sharaeable via the mesh; when others join the shared Flipsticks session, your XO will update them with latest animation you have created
  • Storage of Animations in the Data Store to be accessible via the Journal.
  • Fixes to any issues that came to light in Versions 1.0 and 1.1
  • Should run under Trial 3 release version

Feedback

This activity has tremendous potential. You have to figure out how to make it more flexible without making the user interface too complicated. For example, it would be fun to add animals (e.g., elephant, dog, cow) in addition to the man. I'd like to run more than one animation on the screen at the same time. I'd love to put a painting in the background. A really big painting (or SVG image) could even scroll around as I walk around on it. Why not have 3 layers of background like in real cartoons? That would be amazing. Jpritikin 23:43, 16 November 2007 (EST)

Content examples

Lesson Plans

Research

XO Packages

Latest XO Package

Latest Release Candidate

BETA version

Assets

Personal tools