Carnegie Mellon University


Integrative Design, Arts, and Technology

Portal Courses for CFA, DC, TSB students

15-104 Introduction to Computing for Creative Practice
An introduction to fundamental computing principles and programming techniques for creative cultural practices, with special consideration to applications in music, design and the visual arts. Intended for students with little to no prior programming experience, the course develops skills and understanding of text-based programming in a procedural style, including idioms of sequencing, selection, iteration, and recursion. Topics include data organization (arrays, files, trees), interfaces and abstraction (modular software design, using sensor data and software libraries), basic algorithms (searching and sorting), and computational principles (randomness, concurrency, complexity). Intended for students following an IDeATe concentration or minor who have not taken 15-112.
60-212 Electronic Media Studio: Interactivity and Computation for Creative Practice

This is an intermediate level course in "creative coding," interactive new-media art, and computational design. Ideal as a second course for students who have already had one semester of elementary programming (in any language), this course is for you if you'd like to use code to make art, design, architecture, and/or games -- AND you're already familiar with the basics of programming, such as for() loops, if() statements, and arrays.

This course satisfies the EMS-2 (60-210: Interactivity) requirement for BFA and BXA-Art majors. As with EMS-2, students in this course will develop an understanding of the contexts, tools, and idioms of software programming in the arts. Unlike EMS-2, this course additionally satisfies the computing portal requirement for CFA students pursuing IDeATe minors. (Students with no prior programming experience should register instead for 15-104, 15-110, or 15-112.)

This is a "studio art course in computer science," in which the objective is art and design, but the medium is student-written software. The course develops skills and understanding of text-based, imperative programming techniques in a variety of popular open-source arts-engineering toolkits, including p5.js (JavaScript), Processing (Java), and openFrameworks (C++), with the aim of applying such skills to interactive art and design, information visualization, generative media, and other creative cultural practices.

Rigorous programming exercises will develop the basic vocabulary of constructs that govern static, dynamic, and interactive form. Topics include the computational manipulation of: point, line and shape; texture, value and color; time, change and motion; reactivity, connectivity and feedback; interactive graphics, sound, and simulation; and the incorporation of various modes of input (sensors, cameras) and multimedia output.

Portal courses for students in SCS, CIT, MCS:

62-150 Introduction to Media Synthesis and Analysis

New creative industries are empowering new modes of collaborative consumption, creation and reuse of media. This often relies on successful collaborations between cross-trained artists, designers and technologists as well as critical reflection on distribution, participation, interaction and audience. This course is designed to prepare engineers and scientists to work in these contexts. By the end of the course, students will be able to think critically across several media theory paradigms; formulate the intent of their creative work; articulate relationships to art/design practice and theory; and respond insightfully to creative outcomes. The goal is not just to make creative media rich outcomes but also to think critically about their production.

The class will introduce core concepts through foundational texts, in-class exercises, collaborative projects, and group critique. Students will ground concepts such as critical design, computational performance, embodiment, emergence, composition, participatory interfaces, and media editing through hands-on, applied exploration. Weekly lab sessions will also support the development of new skills and practical development of digitally mediated content.

Collaborative and Supportive Courses

15-365/60-422 Experimental Animation

This class will explore animation from the student’s perspective with a sense of investigation toward both form and content. Topics in the class will include non-linear narrative, visual music, puppet and non-traditional materials, manipulation of motion and performance capture data, immersive environments.

15-463 Computational Photography

Computational Photography is an emerging new field created by the convergence of computer graphics, computer vision and photography. Its role is to overcome the limitations of the traditional camera by using computational techniques to produce a richer, more vivid, perhaps more perceptually meaningful representation of our visual world. The aim of this advanced undergraduate course is to study ways in which samples from the real world (images and video) can be used to generate compelling computer graphics imagery. We will learn how to acquire, represent, and render scenes from digitized photographs. Several popular image-based algorithms will be presented, with an emphasis on using these techniques to build practical systems. This hands-on emphasis will be reflected in the programming assignments, in which students will have the opportunity to acquire their own images of indoor and outdoor scenes and develop the image analysis and synthesis tools needed to render and view the scenes on the computer.

15-465/60-414 Animation, Art, and Technology

Animation Art and Technology is an interdisciplinary course cross-listed between Art and Computer Science. Faculty and teaching assistants from computer science and art teach the class as a team. It is a project-based course in which four to five interdisciplinary teams of students produce animations. Most of the animations have a substantive technical component and the students are challenged to consider innovation with content to be equal with the technical. The class includes basic tutorials for work in Maya leading toward more advanced applications and extensions of the software such as motion capture and algorithms for animating cloth, hair, particles, and grouping behaviors. The first class will meet in CFA room 303.

16-374/60-428 Art of Robotic Special Effects

Inspired by the early "trick" films of George Melies, this project-oriented course brings together robotics and film production technique to infuse cinema with the wonder of live magic. Students will learn the basics of film production using animatronics, camera motion control, and compositing. The projects apply these techniques to create innovative physical effects for short films, all the way from concept to post-production. The course emphasizes real-time practical effects to explore the immediacy and interactivity of improvisation and rehearsal. The robotics topics include animatronic rapid prototyping and programming human-robot collaborative performance. The course includes a brief overview of the history of special effects and robotics to set the work in context.

60-125 Introduction to 3D Animation

This mini on introductory animation is designed to explore the wonderful world of computer animation from initial concept to final production. In a mixture of class discussions, training workshops, and guest lectures from industry experts, students will become acquainted with the necessary skills needed to create their own characters and animations. Both artistic and technical elements within animation production will be covered, and workshops will help to delve into more specific elements within a topic. Some specific topics include modeling, rigging, character/object animation, texturing, and rendering. By completion of the course, students will understand how to use Maya - the software used by many industry professionals - and be capable of taking on more advanced courses related to animation, vfx, and video games in the future.

60-126 Introduction to Performance Capture and Rendering

This mini is designed for those interested in the growing world of performance capture and visual effects. Utilizing the advanced motion capture facilities at Carnegie Mellon and the Kinect, students will learn how to capture motion from performance and apply it to CG characters and objects. While this technique is found in many video games and vfx movies, it has the ability to create endless possibilities within the realm of computer graphics and experimental animation/art. Students will also become more familiar with the process of rendering to create the necessary polish for their animations/visualizations. CG Lighting, camera work, and material shading are just a few of the many topics covered in this course.

60-220 Technical Character Animation
With an emphasis on character animation, this course will explore the whole production pipeline of 3D Animation from initial concept to rendered result through the use of Maya. Through a series of technical assignments, in class demonstrations, and guest lectures from industry professionals, students will come to learn the basic principles of animation and work up to more advanced techniques. Some specific animation areas that will be covered include locomotion, pantomime/acting, dialogue, set driven keys, and blend shapes. Students will also learn more technical/advanced approaches to other production areas such as modeling, texturing, rigging, rendering/lighting, and layout. Please note that there may be usage/lab fees associated with this course.
60-333 Character Rigging for Production

In computer animation, rigging is the art of building a digital skeleton and control system to drive the animation of a character or object. This particular course will focus on the process needed to create fully articulated characters that are strong enough for film and/or video game production. We will start with rigging fundamentals to learn proper joint orientation for skeleton creation, focus on skinning techniques for attaching the skeleton to the character afterwards, and then work on building a system of controls to move the character in compelling ways. Certain topics will include kinematics, set driven keys, direct connections, space switching, corrective blendshapes, custom attributes, and deformation. Students interested in the artistic and technical sides of computer animation are encouraged to enroll. Previous experience with Autodesk Maya/3D animation is preferred.

60-398 Social History of Animation

Social History of Animation will investigate the history of animation from early experiments with trick film through the development of major studios, to independent and web based work. Animation will be analyzed and discussed in relation to the social movements and technological innovations that effected animators and their work. This class will read related texts and view examples from around the world to explore animation as a means for personal expression and as a reflection of the context in which they were made.

60-410 Advanced ETB: Moving Image Magic: Visual Effects and Motion Graphics

Fly like Harry Potter, fall into Alice's looking glass, create new worlds, or take a head-trip into the inner reaches of your subconscious. It's all possible in Moving Image Magic! This course serves as an introduction to the creation of extraordinary cinematic visions using a variety of analog and digital tools and techniques. These include: digital compositing, miniatures, motion tracking, rotoscoping, matte painting, puppets, and motion graphics. Primary software tools are After Effects and Photoshop with forays into, Motion, Resolve, Logic, and Smoke. Prerequisites: 60-110 Electronic Media Studio: Introduction to the Moving Image or instructor permission.

60-415 Advanced ETB: Animation

This studio will introduce students to a variety of 3-D computer and 2-D drawn animation techniques. The class will look at and discuss examples of historic and contemporary animation. The students will explore animation through a variety of short experiments and develop individual projects that use animation as a means of self expression.

60-426 Advanced ETB: 2D Animation

This course introduces students to digital 2D animation techniques and processes through hands-on lab projects. Emphasis is on creative content, experimentation, critical thinking and collaboration. Through a series of tutorial, screenings, and discussions, this class will explore contemporary trends in animation and character design, and expose students to tools such as Adobe After Effects and Flash.

60-417 Advanced ETB: Video: Experimental Science Fiction

This course explores the possibilities of experimental science fiction filmmaking to critique contemporary society and to imagine possible (or impossible) futures. Experimental Science Fiction combines screenings and discussions of experimental and independently produced science fiction films from all over the world, critical and literary readings and technical instruction in creative visual effects. Students will create their own short experimental science fiction films.

60-461 Experimental Capture

This is an interdisciplinary course in experimental media practices that arise from using devices to "capture" the world. We will survey state-of-the-art techniques and emerging ideas, in the industry and in academia, to capture, model, and render objects, people, places and events. The course evaluation will be project-based, in which students will capture a wide variety of things, and develop projects around the data they collect. We will cover capture techniques including motion capture, video-based capture, panoramic and hyperspectral imaging, depth sensors, 3D scanners, hand and eye-gaze trackers; classic and contemporary representations of face and body pose and motion; and recent progress in animation, synthesis, classification, and rehabilitation on new forms of displays.

76-285 Team Communication

This mini will introduce you to research and theory on how to create effective teams. In it, you will learn: - leadership strategies for managing projects and getting everyone to contribute to their best capacity - interpersonal skills for negotiating team conflict - communication strategies for working with individuals from very different professional and cultural backgrounds. - techniques for fostering trust and inspiring team innovation and creativity - how to use technology to manage teams that are geographically separated Professor Joanna Wolfe has been studying student and professional technical teams for fifteen years and is the author of multiple books and award-winning articles on team communication. This course will be hands-on with assigned readings and video cases that are discussed in class with plenty of opportunities to role-play different communication strategies and techniques.