case, the glass case can take advantage of the geom-
etry’s bounding-boxes to check for the intersection
of a geometry’s local bounding-box edge with an-
other. The bounding-boxes provided by the geome-
tries can allow the glass case to implement the ori-
ented bounding-box concept (He, 1999).
In the future, video recording functionality will be
added. This will allow a user to record and display
unique character model animations without running
the Runaway application or having access to the in-
ternet.
To gauge Runaway’s helpfulness, it is the current
intention to design and perform usage tests on object
oriented programming beginners to determine if pro-
gramming visually (in Runaway) provides a smoother
transition to text-based programming languages than
other available systems.
10 CONCLUSIONS
Runaway introduces the glass case which reduces the
number of joint manipulation calculations and the use
of forward-kinematics reduces the number of calcula-
tions that the developer has to be involved with. Char-
acter models provide visual objects that can be ma-
nipulated by the application of user controlled com-
mands. Inserting these character models into a Adobe
Flash-based, web-accessible visual programming sys-
tem allows any user to perform 3D manipulations on-
line. The implementation approach of Runaway has
led to a compact codebase of less than 5,000 lines of
code.
Runaway is an advanced prototype because it has
the ability to do general animations based around the
prototypical spider and humanoid character models.
ACKNOWLEDGEMENTS
The author would like to thank Huw Evans for his as-
tute guidance (without which the project would have
been largely unfocussed) and for his assistance in the
writing of this paper.
REFERENCES
Bergin, J. (2006). Karel universe drag & drop editor.
ITICSE ’06: Proceedings of the 11th annual SIGCSE
conference on Innovation and technology in computer
science education, pages 307–307.
Borning, A. H. (1995). The Programming Language As-
pects of Thinglab, a Constraint-oriented Simulation
Laboratory. ACM Trans. Programming Languages
and Systems, 3(4):353–387. ACM.
Conway, M., Audia, S., Burnette, T., Cosgrove, D., Chris-
tiansen, K., Deline, R., Durbin, J., Gossweiler, R.,
Koga, S., Long, C., Mallory, B., Miale, S., Monkaitis,
K., Patten, J., Pierce, J., Shochet, J., Staack, D.,
Stearns, B., Stoakley, R., Sturgill, C., Viega, J., White,
J., Williams, G., and Pausch, R. (2000). Alice:
Lessons Learned from Building a 3D System For
Novices. CHI 99.
Girgensohn, A. and Boreczky, J. (2000). Time-Constrained
Keyframe Selection Technique. Multimedia Tools
Appl., 11(3):347–358.
Gold, S., Liang, H., Gusev, V., and Baker, D. (2010). Point-
Dragon. http://www.pointdragon.com.
He, T. (1999). Fast collision detection using QuOSPO trees.
I3D ’99: Proceedings of the 1999 symposium on In-
teractive 3D graphics, pages 55–62.
House, B., Malkin, J., and Bilmes, J. (2009). The VoiceBot:
a voice controlled robot arm. CHI ’09: Proceedings
of the 27th international conference on Human factors
in computing systems, pages 183–192.
Kamat, V. R. and Martinez, J. C. (2004). Practical 3D
animation of multiply articulated construction equip-
ment. WSC ’04: Proceedings of the 36th conference
on Winter simulation, pages 1229–1237.
Karam, M. R., Smedley, T. J., and Dascalu, S. M. (2008).
Unit-level test adequacy criteria for visual dataflow
languages and a testing methodology. ACM Trans.
Softw. Eng. Methodol., 18(1):1–40.
Lieberman, H. (2001). Your Wish is My Command: Pro-
gramming by Example. Morgan Kaufmann Publishers
Inc., San Francisco, CA, USA.
Malan, D. J. and Leitner, H. H. (2007). Scratch for budding
computer scientists. SIGCSE ’07: Proceedings of the
38th SIGCSE technical symposium on Computer sci-
ence education, pages 223–227.
Serenyi, B., Kovari, B., Hernesz, G., Spitzer, D., Langh,
D., and Kelemen, V. (2010). SourceBinder: A node
based visual development environment for Flash 10.
http://sourcebinder.org.
Smith, D. C., Cypher, A., and Tesler, L. (2000). Program-
ming by Example: Novice Programming Comes of
Age. Commun. ACM, 43(3):75–81. ACM.
The Aviary Team (2010). Aviary Peacock.
http://www.aviary.com/userwiki/peacock.
RUNAWAY - A Web-based, Visual Programming System and Extensible Framework for 3D Animation
45