Ron Howard reunites with Chris Hemsworth after Rush for a by-the-numbers period adventure on the incident that inspired Herman Melville to write his most celebrated novel, Moby-Dick, in 1851. The movie begins in 1820, but its concerns are contemporary – the damage to whaling habitats caused by hunting expeditions, humankind’s dependence on oil, and nature’s revenge at human intervention.

The environmental spin on a typically rugged and old-fashioned man-versus-nature yarn is the best thing about In the Heart of the Sea. The narrative opens with Melville (Ben Wishaw) persuading Thomas Nickerson (Tom Holland in the younger role, Brendan Gleeson as the older character) to share his experiences on the whaling ship Essex, which sank and left its crew floating on water for 90 days. A contest for authority and influence over the ship’s crew between the aristocratic captain Pollard (Benjamin Walker) and working-class first mate Chase (Hemsworth) proves to be a red herring. The real battle is between the men and a vengeful whale whose obsessive assaults on the ship provide the film with its most spectacular and powerful moments.

After some dubious-looking computer-generated backdrops in the opening scenes set in Nantucket, the special effects team kicks into gear once the Essex enters the water. The battle between the whale and the humans has the unfortunate effect of creating empathy for the mammal, which appears rightfully outraged at the repeated attacks on members of its pod. After the mammal has done its work, the story floats as aimlessly as the castaways, counting down to the inevitable return home. The cast performs efficiently, but they are dwarfed in every way possible by Moby Dick’s inspiration.