Preview. Book. Fast fantasy action crosses continents, yet slow flat people faces. Hard to explain. Extras show indecisive director procrastination, maybe why I failed to connect with motherless teen hero David (Hayden Christensen), cheer for him and his hometown girl Millie (Rachel Bilson), and wasn't even sure if I had guessed the ending. I like British sidekick Griffin (Jamie Bell), apparently the only actor constant from the start. Villain Roland (Samuel L. Jackson) and, suprise mother, Mary Rice (Diane Lane) provide counterpoint to the youths.