Cormac McCarthy's almost unbearably disturbing 2006 novel about the post-apocalyptic journey of a father and son across a desolate America has now been adapted for the screen and, for this eminently respectful version, director John Hillcoat has effected a guarded change of emphasis. Like an orchestra conductor dampening down the ominous blasts of timpani and brass, while urging more from his emotion-twisting string section, Hillcoat has intensified the heartrending poignancy, while deflecting our attention from the horror.

Readers of McCarthy's book know that it is the depictions of cannibalism in this lawless future-world which provide its deepest shocks. The man and his boy chance upon a secluded country home containing a locked basement horrifically packed with naked prisoners being "farmed" as food for their captors. Later, we find the remains of an infant's corpse, apparently once ready to be eaten by its desperate parents. The second of these events is tactfully omitted from the film, and the first, I felt, had its impact marginally reduced. Hillcoat uses voiceover, which has a calming, distancing function, no matter what revulsions are being described. This is undoubtedly a serious, powerful, well-acted movie, but I can't fully share the critical enthusiasm it has widely gained elsewhere because of what seemed to me its fractional reluctance to confront the nightmare fully, though what Joe Penhall's adaptation arguably does is import into the body of the movie a premonition of the unexpectedly redemptive and gentle tone in McCarthy's final pages.

Viggo Mortensen plays the nameless "Man" struggling across this blasted, hellish landscape with his son. The America they knew has been destroyed by an unexplained environmental catastrophe. The mother of his child (Charlize Theron) has deserted them, although the question of blame has been rendered all but meaningless by this overwhelming calamity, smashing the concepts of moral behaviour. The boy, played by Kodi Smit-McPhee, is about 10 years old; his father could almost be any age from 45 to 60. He is bearded, dirty, careworn, and his features and body made gaunt and hard with hunger, sleeplessness and fear. They stumble into the wrecked, deserted supermarkets that are a staple of this kind of story, and even trudge through piles of banknotes: now just useless trash, of course. (Hillcoat actually makes them $100 bills, which I think is overegging it a little.) The two of them are cold all of the time, though the father is capable of almost superhuman efforts to conquer their hardship: at one point he swims into an icy sea in an attempt to scavenge supplies from a wrecked ship.

They are on continuous alert against the marauding gangs of predators who want to kill, imprison or eat them. The father and son can trust no one and Mortensen has relentlessly drilled into the boy the need to guard against the "bad guys", although this has triggered in his son a converse fear that they are becoming the bad guys themselves. He is becoming what passes for a moral conscience in this shattered world, and is perhaps evolving into a sacrificial infant-god. Yet they do have encounters with people who are not obvious enemies: a near-blind old man, played by Robert Duvall, and an unhappy thief, played by Michael K Williams (The Wire's Omar Little).

The two push their tattered possessions and what scraps of food they have in a shopping trolley, emphasising a weird, subliminal resemblance to De Sica's Bicycle Thieves. By far their most precious possession is their gun, which has just two bullets left. When the time comes, the father knows he must steel himself to kill his boy and then himself. If they have to fire the gun in self-defence, it seriously limits their ultimate double-exit strategy.

Apocalyptic movies come into three categories: "This isn't really going to happen", "What if this really happened?" and "This is really going to happen". Roland Emmerich's 2012 comes into the first group, Alfonso Cuarón's Children of Men into the second, and Michael Haneke's Time of the Wolf the third. The Road straddles the last two categories, although even Haneke had nothing to compare with the chilling horror of that gun-dilemma in The Road. On the screen, just as on the page, it grips and horrifies because it is so stunningly real. If the end came, and we had to struggle on into a nightmarish world, fearing the living and envying the dead, then suicide would be the only thing on anyone's mind, an option assessed and deferred hour by hour, moment by moment.

It doesn't bear thinking about, and to do Hillcoat's film justice, it does think about it, although the greater emphasis is elsewhere – on the heartrending loneliness of father and son, an unholy trinity of loneliness. The father can't confide in his son; the boy cannot explain his terrors to his father, and the pair of them are utterly alone in this abysmal cosmic wasteland. It is an inexpressibly painful subject and Hillcoat has brought it to the screen with great intelligence.