ADVERTISEMENT

How sweet the wait: A review of 'Top Gun Maverick'

Published May 22, 2022 08:42 am
Jennifer Connelly and Tom Cruise in 'Top Gun: Maverick'

Thirty-six years may be something of a record in terms of waiting for a film sequel. But for the Top Gun faithful - the ones who watched the film in droves when it first came out in 1986, and the countless who’ve become fans since, whether in video form or as streaming content - the great news to make the wait much sweeter, is that it was all worth every second of waiting. If not one of the best of sequels, this one comes close to being one of the best examples of blending fan service, while providing a fresh and edge of your seat new narrative.


Top Gun Maverick was shot without any use of CGI, something of a rarity in this day and age. Director Joseph Kosinski opted to make the film a homage of sorts to original director Tony Scott (brother of Ridley), and stuck to pretty much the same way that the first film was shot. And it helps give an immediacy to the film-making, making the aerial sequences feel that much more real, and edge of your seat. Tom Cruise and his support cast had hours of training to make these sequences look genuine, and it pays off. 

I’m not going to give any spoilers here, so I’ll leave it at saying that beyond the stunning aerial photography, the screenplay writers get credit for making the on-ground narratives just as compelling. Jennifer Connelly as Penny, and Miles Teller as Rooster Bradshaw - son of Goose; are the two emotional centers driving two narrative strands that contribute immensely to the success of the film. With a very brief screen time, the presence of Ice (Val Kilmer), comes in a strong third for tugging our heartstrings in the course of this film.

 
And of course there’s Tom Cruise, still magnificent after all these years in giving us his winning grin and smile, and turning us into Maverick believers. Around his neck area and around his eyes, there are the telltale signs of aging, and he doesn’t do anything for motorcycle-riding road safety by never once donning a crash helmet - but what can I say, it’s Tom Cruise, and it seems that nothing is going to get in the way of how cool he looks with his shades and wind-blown hair, while riding a bike.

Miles Teller as Rooster


If I had to level a criticism at the film, it would be that at roughly two hours and seventeen minutes, some brisker editing could have taken place. There are portions in the middle of the film when it feels like we’re stretching for what we know will be a hellacious last act, when action will reign supreme. And to be fair, we aren’t disappointed, as the last forty odd minutes of the film is as close to action perfection as you’ll get.


It’s literally clenched fist and knuckle inducing moments, and while the deus ex machina element may be used once too often, at that point, we’re more than ready to be taken on the Kosinski ride. Thirty six years may have been a long wait, but on the strength of this film, I’m sure a third installment won’t take as long a wait. If you can, watch this on an IMAX screen, as this is the kind of movie meant for such a big screen, and to be watched with an audience. 

ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.