PORTLAND, Ore. -- Greg Oden had just one word to describe how he felt after arguably his best game of the season.
It was Oden's team-high 12th double-double of the season. The 7-foot center, the top pick in the 2007 draft, is playing as a rookie after missing all of last season because of microfracture surgery on his knee.
Oden's season got off to a bumpy start because of a foot injury in Portland's opener. Later, rookie growing pains clearly got inside his head and he turned serious, a departure from the jokester who named his puppy Charles Barkley McLovin' and sang karaoke -- badly -- to the delight of YouTube viewers.
But on Monday night, the grim expression he had recently worn vanished. He nodded in acknowledgement when he left the game and was rewarded with a standing ovation, and he wore a toothy smile when he high-fived fans on the way to the locker room.
"The attitude he had tonight was better. Some nights he's a little down or has a little foul trouble," Blazers guard Brandon Roy said. "Tonight he was vocal and stayed with it, so hopefully he can have some carryover from this game."
LaMarcus Aldridge added 22 points and nine rebounds for the Blazers.
Milwaukee had alternated wins and losses in its previous 13 games -- the franchise's longest streak without consecutive wins or losses. The Bucks were coming off a 101-92 loss to the Los Angeles Clippers on Saturday.
The Bucks were without top rebounder Andrew Bogut, who missed his third straight game because of back spasms. Bogut is averaging 10.4 rebounds a game.
Bogut's absence helped Oden, and the Bucks were forced to go with a smaller lineup when Dan Gadzuric got into foul trouble. It also helped that Oden finished with just two fouls in just over 35 minutes of play.
"Everyone seems to have their coming out party on us, and tonight it was Greg Oden," Bucks coach Scott Skiles said. "He just dominated us. We didn't have any answers for him. We tried to front him, we tried to play behind him, and he hurt us."
Oden said he felt comfortable with his shooting, and his teammates encouraged him.
"This feels good," he said. "It gets my confidence up."
Portland led by 11 points in the first quarter but the Bucks narrowed it to 31-30 midway through the second on Michael Redd's layup. Milwaukee could not pull closer, and the Blazers led 45-40 at the break.
Portland extended the lead to 68-53 on rookie Jerryd Bayless' 3-pointer in the third quarter.
Milwaukee made a move in the fourth, closing to within 76-71 on Villanueva's 3-pointer. Travis Outlaw answered for the Blazers with a dunk and a free throw, and Portland kept the Bucks at bay the rest of the way.
The Blazers were playing the first of a three-game homestand after going 2-2 on an eastern trip.
The Trail Blazers have won their last four against the Bucks. ... The NBA announced earlier Monday that Blazers forward Rudy Fernandez will participate in the slam dunk competition during the All-Star Game festivities. Fernandez, a rookie from Spain, was voted into the competition by fans who voted online. He was up against fellow rookies Russell Westbrook of the Thunder and Joe Alexander of the Bucks.
Atlanta Hawks sign Bogdan Bogdanovic as Sacramento Kings decline to match offer
The Atlanta Hawks announced they signed Bogdan Bogdanovic on Tuesday night after the Sacramento Kings declined to match a four-year, $72 million offer sheet.
Ex-Knicks guard Wayne Ellington agrees with Pistons on one-year deal, agent says
Free-agent guard Wayne Ellington has agreed to a one-year, $2.6 million deal with the Detroit Pistons, agent Mark Bartelstein told ESPN's Adrian Wojnarowski.
Tracking every new uniform release for the 2020-21 NBA season
Teams all across the league will be sporting new looks this season.