The actor, who hadn't had a dog since he was young, offered to rescue a dog to play the part of his character's pet. His motive? McGregor wanted to keep the dog after the movie wrapped.
The role of Arthur the dog would eventually go to Cosmo, a Jack Russell terrier who made his movie debut in Hotel for Dogs, but McGregor didn't begrudge the casting decision. In fact, he fell in love.
"I rarely encounter actors that are so taken by their co-stars," Cosmo's trainer, Mathilde de Cagny, tells PEOPLE Pets. "A lot of actors like dogs, and they're happy to be in scenes with them, but they won't go out of their way to have this relationship with them. Ewan did right away."
To play his part in Beginners, Cosmo did not have to learn many new tricks or behaviors, as the role called for him to be a natural, spontaneous, pet-like dog. The 9-year-old rescue pup just had to bond with his human co-stars.
"[Ewan] fell in love with 'the wee man,' as he called him," de Cagny says. "They have their total osmosis together."
McGregor so took to Cosmo, who is "cuddly" for a Jack Russell, as well as loving and people-oriented, that he asked de Cagny if she would be willing to let Cosmo come home with him. De Cagny couldn't part with Cosmo, so the day after McGregor finished shooting the film, he went to a shelter and adopted a dog who could live with McGregor's wife, who is allergic. He ended up rescuing a hypoallergenic poodle-terrier mix he named Sid.
"He literally didn't go anywhere without a dog since the movie," de Cagny says. "It's extra fulfilling, the feeling, when you have an actor that takes onto an animal so much."
As for Cosmo, he's been busy promoting his movie, and charming people wherever he goes. "Everything he does is adorable. He has such a human soul. His round little black eyes certainly have something to say."