It had been a long time since Shelton Gibson saw a deep ball high in the air heading his way.
It had been even longer since he caught one.
Gibson came to the Eagles last year with a reputation as one of the best deep-ball receivers in college football.
Complete coverage of the Philadelphia Eagles and their NFL rivals from NBC Sports Philadelphia.
He ranked third in Division I with 22.1 yards per catch his last year at West Virginia and over the 2015 and 2016 seasons averaged 23.0 yards per catch - second-best in the country behind only Jalen Robinette of Air Force.
But we didn't see it last year. He caught one 14-yard pass all preseason and one 11-yard pass during the regular season.
Thursday night, we finally saw why the Eagles drafted Gibson in the fifth round last year.
In the second quarter of the Eagles' preseason opener, he separated from Steelers cornerback Dashaun Phillips, raced down the right sideline underneath a Nate Sudfeld bomb, caught it at the 20-yard line and ran into the end zone for a 63-yard touchdown.
That's what we've been waiting for.
"It reminded me of West Virginia a lot," Gibson said at his locker after the game. "Seeing the ball in the air.
"I haven't seen the ball in the air in a long time. Last preseason, we played the Dolphins I believe, thought I was going to have one in the air, thought I was going to get it. That was probably the last time I had a deep ball in the air."
Last time Gibson got into the end zone was Nov. 26, 2016, when he caught TD passes of 40 and 71 yards from Skylar Howard against Baylor.
We didn't see any of that speed or explosion last year. Honestly, Gibson looked defeated as a rookie, a characterization he doesn't disagree with.
But he's transformed. He's made that jump you want to see from Year 1 to Year 2. We've seen it at practice, and Thursday night we saw it in a game.
Whether it's enough to land him a roster spot remains to be seen.
But there's no question he's headed in the right direction.
"It's just confidence, man," Gibson said. "Going out there and just playing and having fun instead of being there and being like, ‘Oh, well, I'm just going out here and try to impress the coaches.' No, just go out there and have fun.
"Just gotta be consistent. Doug always said it last year, he always kept coming up to me and saying, ‘You've just got to keep stacking days, keep stacking days, keep stacking days,' so that was my biggest thing. Keep stacking days and having fun."
How did Gibson get from where he was last year to where he is now?
He barely played as a rookie. Four snaps against the Bears, 17 in the meaningless season-ender against the Cowboys. A few special teams snaps in three other games.
And that was the sum total of his rookie year.
But while he was off the radar he made productive use of his time. He watched. He learned. He gradually became an NFL receiver.
"Super Bowl-winning team," he said. "Just being on this team last year helped me out a lot. Seeing how they worked every single day.
"Seeing how Nelly (Nelson Agholor) worked. Seeing how Alshon (Jeffery) worked. Seeing how Torrey (Smith) was working.
"Having those vet guys talking to me every single day, it made me want to change in the offseason how I was taking it onto the practice field.
"It had to start in practice. I wasn't having good practices. So I said I've got to practice like it's a game and everything will carry over into the game."
This is an extraordinarily deep group of wide receivers.
Agholor, Jeffery and Mike Wallace have the team made. Mack Hollins likely does as well. Markus Wheaton and Kamar Aiken are proven veterans. DeAndre Carter, Greg Ward, Rashard Davis and Bryce Treggs have all had their moments.
Where does Gibson fit in?
Right now, he doesn't care.
"I'm not playing with cuts," he said. "If I limit myself to cuts, then I won't see the big picture.
"I'm just helping the team win a championship. If I look toward that goal, everything else will happen."