The Golden Globe-nominated star was nearly reduced to tears as he shot a scene with a young girl, who plays the daughter of female slave Patsey (Lupita Nyong'o).
"She was so sweet, that little girl, because we did the scene and I come running out, screaming and yelling, and she got really frightened and started crying," he told Empire.
"I was like, 'This is make-believe, we were playing pretend and everything's OK' and we took her out of the scene. After that I was getting ready to go back into the scene again and I was... getting into the headspace, pacing around a bit and she stood in the doorway.
"And she goes, 'Are you OK?' I almost started crying. I had a lump in my throat. I was like, 'I'm just getting ready' and she was like, 'OK'. And then she just sat down and watched me, like she was there to support me. It broke my heart," he added.
Despite the challenging conditions, Michael said he had no qualms about playing abusive plantation owner Edwin Epps in Steve McQueen's slavery drama, based on the real story of Solomon Northrup, a free man who was tricked and spent 12 years in slavery.
"It's 'Whatever, Steve, whatever you want'. Because he changed my life literally in 2007. I owe Steve everything," he said.
"He really is very demanding and he pushes, and he'll do that with each of the actors and each of the crew members. But then he's also very nurturing and supporting."
12 Years A Slave, also starring Chiwetel Ejiofor, Benedict Cumberbatch and Brad Pitt, opens on January 10, 2014.