[Updated at 1:30 p.m. EDT]
Moviegoer Jennifer Seeger was watching the new Batman movie from the second row when the gunman, wearing what appeared to be a gas mask and body armor, burst into theater 9.
"He came in and he threw in the gas can and then I knew it was real," Seeger told NBC News. "Then he shot the ceiling. Right after he shot the ceiling he pointed the gun right at me. At that point I drove into the aisle and I got lucky because he didn't shoot me.
"Then he started to shoot people behind me and the bullets were falling on my head. It was burning my head it was so fresh. I could smell gunpowder. At that point he went up the stairs.
"He started at the very corner of the screen. And then he worked his way all the way through the back and back down. Like all the way to the top of the stairs and back down."
Police say the gunman's rampage killed a dozen and wounded at least 50 at the Century 16 theater in Aurora, Colo., about 10 miles east of downtown Denver.
Reports identify the shooter as James Holmes, a 24-year-old white male.
[Related: Pictures from the shooting scene in Colorado]
"People were running, screaming, scrambling, popcorn was flying in the air ... people were falling to the ground," witness Robert Jones told The Denver Post.
A 15-year-old, also in theater 9, told Denver's KCNC that he saw an opportunity to escape as the gunman reloaded his rifle.
"We kind of crawled down the stairs and ran," he said.
Moviegoer Quentin Caldwell said they were about 15 minutes into the film when he heard a very distinct "pop, pop, pop, pop."
"My wife jumped, and I just kind of sat there like, 'Oh, it was probably just really good special sound effects,'" he told CNN.
The Caldwells were in an adjacent theater when bullets from theater 9 pierced the walls.
"Everybody thought at first that it was part of the movie, like it was just something that was going on like a promotional stunt or something," Caldwell told CNN. "So at first everybody was kind of dumbfounded."
The gunman reportedly deployed tear gas in theater 9 before beginning his shooting spree. When Caldwell's wife, a former EMT, said she smelled tear gas, the couple started telling patrons they needed to escape.
"There were people still sitting there waiting for the movie to continue," he said. "I looked at them like, 'This is real, there's something wrong, we need to leave now.'"
Caldwell, a Marine, said the theater parking lot was chaos. Officers put the wounded into patrol cars and rushed them to nearby hospitals.
"There were wounded everywhere," he said.
Hours later, the 15-year-old boy who escaped questioned how a staple of summer fun could go so wrong.
"When something like this happens at a theater, you wonder if it is safe or not," he said.