Computer Graphics Knowledge Base Report

by Tony Alley
Curriculum Knowledge Base Working Group Leader
Oklahoma Christian University

Computer Graphics Curriculum Knowledge Base Group members are Tony Alley, Gary Bertoline, Gitta Domik, Lew Hitchner, and Cary Laxer. Group activities include workshops and projects that focus on the definition of a knowledge base for the computer graphics discipline. The aim is to provide a curricular structure and supporting materials that will aid instructors and institutions working to develop or enhance academic programs in computer graphics. This year, work continued on development of a curricular framework principally for use in higher education. This effort builds on previous forums and workshops led by Gary Bertoline, Cary Laxer, and Tony Alley. The Curriculum Knowledge Base Group invites SIGGRAPH members to propose new projects that will benefit CG educators.


Until the mid-1950s, computers were considered by many as elaborate slide rules or calculators for use only by engineers and mathematicians. Consequently, academic content regarding computing was most often delivered as a part of a math or engineering course, or sometimes as a short course offered by a university's computing center. Over time, the number of course offerings grew until, in the early 1960s, separate departments of computer science were established. Today, we understand computer science to be a discipline in its own right. It wasn't an easy transition. Many saw computers simply as tools or artifacts supporting other disciplines and, therefore, not worthy of recognition as a dedicated field of study [Charmonman 2000].

In 2001, the SIGGRAPH Conference Educators' Program included an open forum hosted by Gary Bertoline to discuss the idea that computer graphics can be understood as an emerging discipline. The following year, a second forum was offered to address key concepts in a curriculum to support the emerging discipline. Thereafter, a small working group was established to consider the ideas presented during those forums; with consultation from industry and, this year, representatives of the international community of CG educators. Key to the efforts of this small working group is this idea that computer graphics is at a crossroads, similar to that of computer science in the late 1950s and early 1960s. New tools and applications have already spawned many new courses and new programs and possibly even departments are anticipated.

Three requirements need to be met for a body of knowledge and associated practices to be designated a discipline [Kristiansen 2000, Rumble 1998, Sheth & Parvatiyar 2002]. First, theoretical and conceptual specialization must be demonstrated, often through a well-established and fairly unique research agenda. Next, it must be shown that the discipline can be characterized by a unique cultural identity. Finally, a discipline must demonstrate relative autonomy, in that a distinctive knowledge base can be articulated.

That thousands attend the SIGGRAPH Conference each year to discuss common research interests suggests that computer graphics exists as a unique discipline. That such a "special interest" group even exists, also points to our autonomy. So, too, do the various CG journals, courses, applications, and societies. The missing requirement for discipline status has been the articulation of a distinctive knowledge base. That has been the task of the aforementioned small working group.

The knowledge base crafted by the working group is intended to serve as the scaffolding for curricular programs in CG, whether offered by art schools, liberal arts colleges, undergraduate or graduate, two-year or for-year, etc. As it attempts to frame the broader discipline of computer graphics, as opposed to specific applications or industries, it should also prove especially helpful in the design of introductory or survey courses. Just as "Curriculum 68," a report by the ACM Committee of Computer Science, helped establish early academic programs for, what was at the time, the emerging discipline of computer science [Charmonman 2000], our efforts here may prove helpful to the development of new and unique offerings for the CG community.

What follows is the knowledge base as defined during the working group's August 2006 meeting. Of interest, the two tracks defined during the July 2005 meeting were merged into a single knowledge base. The group's rationale was that its work ought to reflect a united knowledge base defining the discipline of computer graphics, and not tracks specific to isolated applications. That is, it is suggested that every computer graphics student will invest some amount of time, whether small or large, with every listed concept. For example, students with decidedly aesthetic interests may spend a great deal of time studying color theory, while students with a more technological orientation may spend far less. However, every computer graphics student needs to have some understanding of color theory. In 2006, details of this knowledge base were presented in an open forum in the Educators' Program. Feedback from that forum has helped shape this most recent revision.

There are seventeen broad headings, many with sub-headings and additional detail. Content isn't meant to be exhaustive but, instead, provide general guidance and examples of curricular experiences and concepts.

Those most directly involved with developing the framework as it appears here include Tony Alley, Cary Laxer, Tereza Flaxman, Joe Geigel, Susan Gold, Lewis Hitchner, Genevieve Orr, Bary W. Pollack, and Candice Sanders; and from the international community, Frederico Figueiredo (Portugal), Frank Hanisch (Germany), Ayumi Miyai (Japan), and Rejane Spitz (Brazil).


Fundamentals

  • Overview of the field - foundational concepts; industry highlights; careers; roles and responsibilities; milestones in the chronology of CG; CG as a contributor to other fields and disciplines; CG as a discipline in its own right. CG production cycle: stages, tasks, and products. Overview of:
  • Vocabulary - meaningful terms and concepts; broadly-based theoretical frames and issues that are essential to an understanding of the field (art, design, computer graphics, and other sub-areas)
  • Hardware - computers; monitors and displays; networks; digital media; platform technologies; architectures
  • Software Systems - programs/applications; operating systems; structures; formats for data storage
  • Representations of Visual Systems - pixels and polygons; 2D and 3D display, color
  • Foundational/introductory art skills and concepts

 

Professional Issues

  • Team work
    • Project management
      • Planning: stages, time, resources
      • Evaluation
    • Collaboration issues and group dynamics
      • Roles of team members
      • Time management
  • Ethical Issues
    • Professional codes of ethics and good practice
    • Case studies in ethics
  • Intellectual Property
    • Meaning and examples of "intellectual property"
      • Including "stealing" versus buying
      • Copyright
      • Licensing
      • Fair use
  • Accessibility
    • Accommodating disabilities
      • Motor disabilities
      • Visual disabilities
      • Auditory disabilities
      • Color blindness
    • Availability and access to information
  • Business Issues
    • Business planning
      • Product research
      • Market analysis
      • Cost analysis
    • Compensation
  • Portfolio development/presentations

 

Physical Sciences

  • Mechanics
    • Collision detection
    • Movement in the real world
    • Newton's laws of motion; weight, mass, and inertia
  • Light - color, refraction, reflection, dispersion, fluorescence
  • Natural phenomena
    • Fluid dynamics - fire, smoke, water, clouds, turbulence
    • Biological systems - plant morphological

 

Math

  • Coordinate systems
    • Local coordinate systems vs. world coordinate systems
    • Cartesian, polar, spherical
    • 2D and 3D coordinate systems
    • Homogenous
  • Transformations
    • Viewing - perspective, orthographic
    • Rotation, translation, scaling
    • Deformations
  • Random Numbers
  • Geometry - plane and solid geometry; points, lines, planes, and space; angles
  • Matrix and vector algebra
  • Complex numbers and quaternions
  • Parametric/non-parametric representations
  • Numerical methods

 

Perception & Cognition

  • Visual
  • Spatial
  • Motion
  • Interactive environments
  • Psychology
  • Human factors

 

Human Computer Interaction (HCI)

 

Programming & Scripting

  • Concepts
    • Variables, arrays, loops, functions, recursion
    • Software design and debugging
    • Object-oriented programming;
  • Languages
    • High Level - Java, C++, Python
    • Scripting - MEL, JavaScript
  • Shading Languages - Renderman, Cg, OpenGL SL, HLSL
  • Graphics API - OpenGL, DirectX, Java3D
  • Data Structures - lists, stacks, queues, trees, graphs, libraries
  • Algorithms - sorting, searching

 

Animation

  • Basics
    • Time and motion
      • Interpolation
      • Morphing
    • Modeling
      • Rigging
        • Forward kinematics
        • Inverse kinematics
      • Texture
      • Lighting
      • Rendering
    • Character
    • Cinematography
  • Motion control and capture
  • Rigid body dynamics
  • Procedural animation
  • Particle dynamics

 

Rendering

  • Scanline rendering
  • Global illumination
    • Radiosity
    • Ray tracing
  • Algorithms
    • Primitives - lines, polygons
    • Hidden surface removal
    • Clipping
    • Culling
  • Shading
    • Lighting models
    • Material properties - reflection, refraction, and shading models
    • Texture mapping
    • Procedural shading
  • Anti-aliasing
  • Camera Models - depth of field, shutter, motion blur, resolution, safe areas, projection types
  • Tone Reproduction - color management, HDR, perceptual tone mapping

 

Modeling

  • 3D modeling
    • Polygonal modeling
    • Parametric primitives
    • NURBS
    • Lathed and extruded objects
    • Subdivision surfaces
    • Level of detail
    • Normals
    • Hierarchical
  • Character design
    • Physical attributes
    • Designing for animation
  • Architectural design

 

Graphics Hardware

  • Output devices
  • Input devices
  • Special purpose chip sets/graphics cards
  • Comparison of graphics card features
  • Storage solutions
  • Networking
  • Virtual/augmented reality

 

Digital Images

  • Image Processing
    • Filtering - Fourier analysis, wavelets, convolution
    • Sampling/quantization issues
    • Noise
    • Enhancement - edge detection, sharpening
  • Image compression
    • encoding, decoding
    • color reduction techniques
  • Graphics/Image file formats
    • Vector vs. raster representations
    • Standard formats - e.g., JPEG, CGM, TIFF, PNG, GIF, RAW
  • Digital Cameras - sensors
  • HDRI
  • Computer vision
    • image acquisition
    • image segmentation
    • image understanding

 

Communications

  • Writing
    • Technical
    • Creative
      • Storyboarding
      • Character development
      • Scriptwriting
    • Professional
  • Oral
    • Improvisation
    • Speech & presentations

 

Cultural Perspectives

  • Genres
  • Socioeconomic effects
  • Global aspects
  • Age and gender

 

Art and Design Foundation

  • Theory
    • Fundamentals of art and design,
    • Aesthetics, visual language
    • Color theory
    • Composition, layout, symmetry and asymmetry, chaos theory and fractals
  • History of art and design, computer graphics, special effects, and new media
  • Two dimensional expression - painting and drawing
  • Three dimensional expression - handmade and computer aided sculpture and three-dimensional modeling; three-dimensional structures, both symmetrical and asymmetrical.
  • Overview of theoretical, practical, and historical aspects of:
    • Animation
    • Film and video
    • Game design
    • Graphic design and scientific illustration
    • Haptics
    • Sound and audio
    • Web design
  • Creativity and Ideation
  • Impact - Media as a social, cultural, and political force.

 

Real-time Graphics

  • Requirements
    • Visual realism for RTS (real-time systems)
    • HCI for RTS
    • Optimization of performance and visual realism
  • Hardware
    • CPU and GPU (graphics processing unit)
    • Networking for RTS
    • Algorithms
      • Rendering pipeline (hardware)
    • Data structures
      • Buffers: color, depth, texture, accumulation, stencil
  • Software
    • Algorithms
      • Rendering pipeline (software)
      • Level-of-detail: discrete and continuous model definition, runtime management
      • Collision detection
    • Data structures
      • Texture maps, mipmaps
      • Light maps
      • Space partitioning: binary space partition (BSP), quadtree and octtree
  • Applications
    • Gaming and simulation
    • VR and AR

 

Advanced Topics

  • Data/scientific visualization
  • Artificial intelligence
  • Calculus and differential equations
  • Dynamical systems

 


References

 

CHARMONMAN, S. 2000. Education in Computer Science. In Encyclopedia of Computer Science (4th ed). Ralston, A., Reilly, E., and Hemmendinger, D. editors, pp. 616-626. Nature Publishing Group.

KRISTIANSEN, M. 2000. Emerging Disciplines in the Behavioural Sciences: Assessment of Disciplinary Autonomy by Terminological Conceptual Analysis. In Unesco Alsed-LSP Newsletter 23, no.2, 50. Copenhagen: Copenhagen Business School.

RUMBLE, G. 1988. Animadversions Upon the Concept of Distance Education as a Discipline, Journal of Distance Education, 3, 1.

SHETH, J. & PARTVATIYAR, A. 2002. Evolving Relationship Marketing into a Discipline. Journal of Relationship Marketing, 1, 1, 3-36.