Heads up: This review contains minor spoilers.

One year ago, Star Wars returned to the big screen with The Force Awakens, a joyful and spectacular reminder of why this series is so special. Now, we have the first ever spinoff movie in the franchise with Rogue One; an enjoyable film in its own right that doesn’t quite hit the highs of The Force Awakens, but instead offers a distinct and visually stunning glimpse into the galaxy far, far away.

Set just before A New Hope, Rogue One follows Jyn Erso (Felicity Jones), a young woman recruited by the Rebellion to track down plans for the planet-destroying Imperial weapon, the Death Star. Erso is accompanied by Rebel Intelligence officer Cassian Andor (Diego Luna) and a repurposed Imperial droid K-2SO (Alan Tudyk), as well as warriors Chirrut Îmwe (Donnie Yen) and Baze Malbus (Jiang Wen) and former Imperial Pilot Bodhi Rook (Riz Ahmed). 

First and foremost, Rogue One is gorgeous. The film explores new corners of the Star Wars universe through interesting planets and creatures we haven’t seen before, and they’re all brought to life by the most seamless blend of practical and computer generated effects ever put on film. Each location Jyn and company travel to is a visual engaging feast that you just want to pause and gawk at for moments on end. In particular, the tropical Imperial planet Scarif is a cool blend of paradise and industrial facilities.

The visual highpoint of the film are the space battles. During the climax, we get an exquisite battle between Rebels and Imperials that is intense and captivating without being bombastic or distracting. As X-Wings dodge fire from TIE fighters, we get cuts into the Rebel cockpits, and it feels straight out of 1977 in the best way possible. 

Playing off of the stunning visuals is the impeccable cinematography. Greig Fraser has composed some really complex and immersive shots that capture a gritty sensation that the war between the Rebels and Imperials is even present in the far reaches of the galaxy. Battle sequences on land are clear and comprehensive while still creating a heightened sense of intensity that looms gracefully over the entire film. 

There’s only one element of Rogue One‘s visuals that doesn’t work, and that’s CGI Grand Moff Tarkin. Obviously, the great Peter Cushing can’t reprise his role from the Episode IV, so a body double spattered with CGI to emulated Cushing’s likeness is used. The technology is very impressive, and has come a long way since CGI Jeff Bridges in Tron: Legacy, but it still isn’t there yet. At best, Tarkin is distracting, at worst, he’s an uncanny creepy creation that should have been used more sparingly. 

The story of Rogue One isn’t overblown or needlessly complex. It moves along at a steady pace and offers just enough heart and humor. However, the characters, which move the story along, are the weakest and most omnipresent element of the film. Jyn is a fine protagonist, but she lacks subtle characterization to make her feel more personal. She needed a few scene where we spend time just learning about her, similar to how Rey was introduced in The Force Awakens. The film’s antagonist, Orson Krennic (Ben Mendelsohn) felt this way too, where we really could have benefited from more time focused on his ambitions and goals. 

Much of the film’s supporting cast is problematic as well, as they just don’t have much to do. I love Donnie Yen as much as the next guy, but outside of one awesome martial arts showcase, his character doesn’t contribute to the overall narrative at all, same for Jiang Wen. 

I didn’t even mention Forest Whitaker as Clone Wars veteran Saw Gerrera earlier because even though he is established as prominent figure early in the film, his character quickly fizzles out and is ultimately unnecessary. 

Not every character is a waste though, as Diego Luna’s Cassian is a tough and morally complex figure we usually don’t see in a saga focused on dark and light dualism. K-2SO is great too, serving as moody and sarcastic foil to Jyn. It’s just a bummer more time wasn’t spend expanding on Cassian or K-2, or refining characters that could have been stronger like Jyn.

Rogue One is a competent, exciting, and throughly enjoyable film. It feels like Star Wars in the best ways possible, while also expanding the franchise’s scope through extraordinary visuals. Moving forward, hopefully future films in the series give greater attention to developing characters, but when all is said and done, Rogue One is a Star Wars story worth telling.