, but this code // executes before the first paint, when

ƴɸ̳

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Video games go to the theater - News & Stories | ƴɸ̳

ƴɸ̳

Skip to main content

Spark

Video games go to the theater

Fri, Jun 01, 2012

Brenda Bakker Harger ’82 wants you to know that she is not technologically savvy. Not at all.

“To me, e-mail is a miracle,” she said. “People assume I know how it all works, but I don’t, and I have no interest in knowing.”

Surprising for a of Carnegie Mellon University’s Entertainment Technology Center (ETC), which offers the only master’s degree in entertainment technology in the country. It sends graduates out to work in everything from animation and video game design to robotics.

But Harger is an actor and theater director with a deep interest in improvisation. She creates experimental theater pieces that use video and computer technology to make audience members part of the play. Needless to say, she gets a lot of help from her tech-savvy students. 

“I’m dabbling in possibilities,” she said, “exploring whether there’s a new, interactive kind of theater that will attract people like my students.”

Her ETC students aren’t typically theatergoers. Nor are they actors. But the program has discovered that improvisational acting is a most helpful skill to prepare them for working in technology-based entertainment.

“Many of our students are accustomed to spending long hours alone, with technology,” Harger said, “and they’re accustomed to being the best at what they do. But our program is based entirely on interdisciplinary team projects. I teach them improv because improv is all about checking your ego at the door and learning to value another’s contribution to the team. It’s a change in their value systems that’s essential if they’re going to succeed here.

“And not only here,” she continued. “It’s their ability to work well in teams that gets our grads hired and promoted into leadership positions in the industry.”

Besides teamwork, improvisational acting teaches her technologically astute students basic storytelling skills, like character development and plot advancement, Harger said.

“I’ve consulted with video game companies, where they think a lot about programming the game, but not about whether characters are believable. I tell my students that no amount of technology can fix a bad idea, a bad story.”

How to generate good ideas for computer/video games—and actually build them—was the focus of an interim course called “Computer Games as Theatre” that Harger co-taught last January with Calvin computer science professor . A rare academic hybrid—his background is in both computing and theater—Nyhoff ensured that the course truly integrated both disciplines.

“We started in the Lab Theatre, where Jeff and I taught them basic improv and acting skills,” Harger explained, “then we moved to the computer lab and taught them basic programming skills. These were students with little or no experience in either theater or computer programming, and yet they worked in teams to create original, theatrical games that incorporated the Xbox Kinect camera, which tracks body motions instead of requiring a controller. It was amazing how quickly they caught on.”

“Including,” Nyhoff added, “how quickly they began to ask, ‘What if winning a game means more than amassing points? What if winning means forming thoughtful, meaningful connections with other characters?’”

That, for both Nyhoff and Harger, is the hopeful part.

“Video games right now are mostly about distraction,” Harger noted. “But they could be meaningful. They could give us the same kind of empathic response to others that we get from good theater or film. That will happen when we get people into the industry who ask the right questions, who want meaningful connections, who push the envelope. Who better to do that than Calvin students?”