Stephen H. Lane

Computer Graphics and Game Technology


Courses Taught


CIS462/562 Computer Animation

Years: 2001 – present

Description: This course covers core subject matter common to the fields of robotics, character animation and embodied intelligent agents.  The intent of the course is to provide the student with a solid technical foundation for developing, animating and controlling articulated systems used in interactive computer games, virtual reality simulations and high-end animation applications.  The course balances theory with practice by "looking under the hood" of current animation systems and authoring tools and examines the technologies and techniques used from both a computer science and engineering perspective. Topics covered include: geometric coordinate systems and transformations; quaternions; parametric curves and surfaces; forward and inverse kinematics; dynamic systems and control; computer simulation; keyframe, motion capture and procedural animation; behavior-based animation and control; facial animation; smart characters and intelligent agents.


CIS660 Advanced Topics in Graphics and Animation

Years: 2002 – present

Description: The goal of the course is to review state-of-the art research in the fields of computer graphics and animation as well as provide students with working knowledge of how to convert theory to practice by developing an associated graphics/animation authoring tool. Working in teams of two, students will design and develop an authoring tool that that facilitates the creation of a new type of user interaction, animation/simulation capability or 3D graphics special effect.   Research papers published in the SigGraph Conference proceedings over the period 2005-2009 will provide the basis for the features/functionality/special effects that can be selected for implementation in the authoring tool. Each group will analyze the need and user requirements for the tool they plan to develop, prepare a formal software design document, construct a project work plan, develop the authoring tool functionality and user interface, test the design and demonstrate the authoring of associated content.  A plug-in to standard authoring tools such as Maya or 3DSMax must also be developed to enable importing of appropriate assets and/or exporting of results.


CIS564 Game Design and Development

Years: 2004 – present

Description: The intent of the course is to provide students with a solid theoretical understanding of the core creative principles, concepts, and game play structures/schemas underlying most game designs.  The course also will examine game development from an engineering point of view, including: game play mechanics, game engine software and hardware architectures, user interfaces, design documents, play-testing and production methods.  


CIS568 Game Design Practicum

Years: 2004 – present

Description: The objective of the game design practicum is to provide students with hands on experience designing and developing 3D computer games. Working in teams of three or four, students will brainstorm an original game concept, write a formal game design document then develop a fully functional prototype consisting of a playable level of the game.  In addition to creation of original art and animation assets for the game, technical features to be designed and implemented include a novel game mechanic and/or user interaction model, game physics (i.e. particle systems and rigid body dynamics), character animation,  game AI (i.e. movement control, path planning, decision making, etc.), sound effects and background music, 2D graphical user interface (GUI) design and optional multiplayer networking capabilities.  Consistent with standard industry practices, game code and logic will be written using C++ and popular scripting languages such as Python and Lua.  State-of-the-art game and physics engine middleware also will be used to expose student to commercial-grade software, production methodologies and art asset pipelines.  As a result of their game development efforts, students will learn first hand about the creative process, design documentation, object-oriented software design and engineering, project management (including effective team collaboration and communication techniques),  design iteration through user feedback and play-testing, and most importantly, what makes a game fun to play.  


CSE377  Virtual World Design – With Norm Badler

Years: 2001 – 2004

Description: The goals of this course are three-fold: 1) to become familiar with concepts for thinking about and speaking about the design, construction, and social ramifications of innovative, interactive, virtual environments and scenarios, 2) to be exposed to the challenges of combining programming, imagery, and sounds to make a functional game that others can learn and play and/or spaces that others can explore and discover meaningful relationships through a carefully well-coordinated or artificially intelligent juxtaposition of sensorial elements, and 3) to practice and experience real-world scenarios by working in groups with deadlines. Learning about how project management can make it happen more successfully is key.