skip to main content
Department of Computer Science University of Colorado Boulder
cu: home | engineering | mycuinfo | about | cu a-z | search cu | contact cu cs: about | calendar | directory | catalog | schedules | mobile | contact cs
home · undergraduate program · senior project · projects · 

Senior Project - Naga3D


Inflatable Icons as 3D Web App

Senior Project: 2009-2010
Victoria (Tori) Gilbertson, Isaac Guerrero, Thomas Huber, Kyle Madruga and Tyler Manser
Boulder, CO
Boulder, CO

AgentSheets, Inc. emerged from over a decade of intensive research in end-user programming, human-computer interaction and simulation environments. The AgentSheets software application is a revolutionary tool that lets users create their own agent-based games and simulations and publish them on the Web through a user-friendly drag-and-drop interface. Google's cutting-edge O3D API is an open-source web API for creating rich, interactive 3D applications in a browser.

While 3D content has certainly managed to become accessible in most households in the form of game consoles and personal computers, there are few tools that allow non-expert users to quickly create simple 3D shapes. Today end-user development is quickly advancing and end-users employ numerous authoring tools such as word processors and presentation systems to author their own content. 3D content is lagging behind, not due to hardware challenges -- on the contrary, even the cheapest PCs now feature amazing 3D rendering capabilities -- but rather because 3D authoring tools are mostly geared towards professional developers with proper training, time and motivation.

Inflatable Icons is a new technique that can interactively extrude 2D pixel-based images into polygon-based 3D models with surprisingly little input required by users. Inflatable Icons are useful for a number of end-user applications, including presentation software and 3D sketching. However, the immediate application domain is the use of Inflatable Icons in multi-agent simulation authoring tools employed in education such as AgentSheets. With these tools, end-users -- typically kids -- create complex simulations involving hundreds and even thousands of agents. These agents are visualized as icons drawn by kids. Inflatable Icons add new affordances to simulations.

For instance, simulation worlds no longer have to adopt a birds-eye, top-down perspective. Instead, a camera can be placed anywhere into a simulation world featuring arbitrary orientation including first and third person perspectives. 3D can disambiguate the spatial relationships between objects. For instance, in AgentSheets agents can be stacked on top of each other. A vase agent can be on top of a table agent, which, in turn, can be on top of a floor agent. In a 2D orthogonal top-down view this often becomes extremely confusing to users.

Naga3D transforms Inflatable Icons into a web-based application, written in JavaScript and HTML and using the Google O3D API, that allows for the rapid development of 3D models. Using this process, Naga3D allows users to load the program in a typical browser window and to produce quick and easy 3D objects for use. Models are produced by first drawing an "icon" which is then inflated by user settings to create a 3D representation of the 2D icon. This process is intuitive enough that most users can pick it up with little instruction, and is designed to be elegant and simple while still remaining powerful.

The application runs within the Firefox web browser and reproduces the basic functionality and spirit of the existing Inflatable Icons program.

Graphical User Interface
Graphical User Interface
See also:
Department of Computer Science
College of Engineering and Applied Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
Send email to

Engineering Center Office Tower
ECOT 717
FAX +1-303-492-2844
XHTML 1.0/CSS2 ©2012 Regents of the University of Colorado
Privacy · Legal · Trademarks
May 5, 2012 (14:07)