The difference between a well-made movie and a good one is both narrow and immense.

Sadly, that difference is standing in the way of “The Zookeeper’s Wife,” a well-acted WWII drama about a Polish couple who use their now-empty zoo to help smuggle Jews out of Warsaw. The acting is good, particularly from the leads, but the script gives the lead couple barely any time to explore the nuances hinted at in their characters. The movie is affecting, and probably quite timely given some of the things going on in the world today, but it could have been so much more.

The story follows Antonina and Jan Zabinski, who operate the Warsaw Zoo and enjoy a close relationship with the animals. Antonia is particularly attached to them, feeding many of them by hand and helping the elephant through a difficult pregnancy. When the coming of WWII takes or kills all their animals, however, the couple makes a decision to use the space to either house Jews or smuggle them out of the city. With a Nazi soldier using the property as well, it’s a risk that could cost them their lives.

As with any decently written movie about what the Jews went through during WWII, “The Zookeeper’s Wife” has some powerfully emotional moments. Any scene with children in it is particularly heartbreaking, and animal lovers will have to be warned about several scenes where animals are killed as well. It’s hard not to cheer along with the movie’s narrow escapes, heroic deeds, or the rare, quiet moments when things seem to be working out for our protagonists.

The performances are good, with Jessica Chastain doing what she can to give us a complicated, well-rounded view of Antonina. Johan Heldenbergh is perhaps even more fantastic in the wildly underwritten role of Jan Zabinski, communicating his character’s despair, hope, love, anger and jealousy with almost no help from the script at all. Daniel Bruhl is good as Lutz Heck, bringing some nuance to the character while never stepping back from the fact that the character is a full-on Nazi and therefore monstrous.

Both of the Zabinskis, however, are completely hampered by the movie’s writing. Antonina’s naivety is as much a part of her as her bravery, but the script doesn’t do a terribly good job of showing how the two traits are facets of the same person. It also doesn’t give enough attention to the arc of her losing her naivety or the revelation we briefly get of Antonina’s childhood. Chastain does what she can to communicate both of the first two issues on her own, and nails the scene in which the third is discussed, but it’s not enough.

Heldenbergh suffers even more. His Jan looks to be a fascinating character from what we’re allowed to see, but it’s so little that it’s done mostly through suggestion. He goes through a great deal in the movie – some of the most wrenching scenes are of him smuggling Jews out of the ghetto, and despairing over the ones he can’t smuggle free – but the script devotes almost no time to his internal response to any of this. That’s a story in and of itself, one the filmmakers denied us.

A movie where both of these characters’ thoughts and motivations were given their due would have undoubtedly been a good one, perhaps even a great one. Sadly, “The Zookeeper’s Wife” isn’t that movie.