As part of the veterans’ annual ritual for rookies, Bolles had his hair sheared on both sides, with a strip left on the top and a tail in the back.

“My wife,” Bolles said, “thought I was scary.”

His play has certainly been a cut above.

On the day he named Trevor Siemian his starting quarterback over 2016 first-rounder Paxton Lynch, coach Vance Joseph slipped in this little nugget: Bolles, this year’s first-round pick , had secured his starting job as Siemian’s blindside protector.

Garett Bolles of the Denver Broncos drops back to protect the quarterback against the San Francisco 49ers at Levi’s Stadium on August 19, 2017 in Santa Clara, California. (Photo by Ezra Shaw/Getty Images)

Bolles isn’t letting up, however. He’s expected to play the first half with the rest of the starters Saturday night against Green Bay, and he needs to clean up the penalties that have plagued him.

“I still have a lot of work” to do before the opener next month, Bolles said after a steamy practice Wednesday. “Got other things to worry about, like making sure I’m playing the best I can, and protect Trevor with all my heart and for him to know I have his back so he can step in the pocket and make plays.

“I’m not saying I’m where I need to be. But I’m on the right track to where I want to be.”

Bolles attributes his quick learning curve to going up against the likes of Von Miller each day in practice. The 25-year-old Bolles got an early indoctrination into just how fast life is for a tackle in the NFL.

“There are going to be some guys who may be a little bit faster, but I feel like I’m getting in my groove,” the 6-foot-5, 300-pound Bolles said. “I feel like everything is starting to click.”

He experienced some growing pains last weekend during a preseason game at San Francisco when he was called for three holding penalties and a false start in one half of play.

“Things happen, but I’m never going to change the way I play, and never going to change the way I bring my energy,” said Bolles, who was first-team All-Pac-12 last season at Utah. “If I change, then I’m not going to be who I am. I’m here for a reason. I’m the player I am. I finish people.”

Offensive coordinator Mike McCoy doesn’t want to harness any of Bolles’ fierceness. But he does want him to know there’s a fine line between aggression and going overboard. Asked what that line was, McCoy simply said: “Don’t hold.”

Bolles is out to eliminate the flags without crimping his aggressive nature.

“The minute I stop being who I am is the minute I’m not going to be where I need to be,” Bolles said. “I’m the person I am today because of the way I play, the way I hold myself, the way I do things. There are so many great people who continue to push me, and that brings me the fire and brings me the juice so I can get ready to roll.”

He certainly rolled with the punches when all the rookies got haircuts from the veterans. Safety T.J. Ward started Bolles’ haircut and receiver Demaryius Thomas finished it off.

“Just because you have a funky-looking haircut doesn’t mean you can’t come out here and compete and do what you need to get better,” Bolles said. “I’m going to continue to work, fix the little things I need to work on and be more consistent and get ready to play.”

NOTES: Joseph said Miller will make his preseason debut against the Packers but wasn’t sure how much he’d play. … WR Emmanuel Sanders was involved in a car accident on his way to practice Tuesday. “He was checked out. He was fine,” Joseph said. “He had a small headache and he practiced. He’s fine. He’s totally fine.” … Ward (hamstring) was limited at practice Wednesday, a day after returning to the field.