The 49ers’ 35-3 routing of the San Diego Chargers Thursday night marked the end of another too long, always meaningless exhibition season for the red and gold. Maybe it’s because last year left my appetite for football more wanting than usual, but that game was more entertaining than your average preseason finale. Here are a few game highlights:

- If you got up from the couch to pay the pizza delivery guy, you probably missed Alex Smith’s performance. It was about five plays long – all handoffs – and then Jim Harbaugh sat him in favor of Colin Kaepernick.

- The same can be said for Kendall Hunter’s night. Hunter doesn’t have much left to prove after the preseason he’s had, and last night’s small sample size (4 Car, 23 yds, 5.8 avg) was impressive yet again.

- The only place you could have looked to see the 49ers’ starting defense is the western sideline of Bill Walsh Field. The defensive twos and threes were in the game from the very first defensive snap.

- That didn’t stop Philip Rivers from making anyone who owns him in their fantasy league pull their hair out. He played a couple of series and went 8-for-10 for 89 yards, but after some offensive snafu’s landed the Chargers with a second and goal from the 49ers 21-yard line, he threw a pass in traffic that was intercepted by Darcel McBath.

- Anybody who went out for a windy night at the Stick got their money’s worth; if they left at halftime, that is. Thursday night was Colin Kaepernick’s coming out party. He finished out his two quarters of play 12-for-18 for 158 yards and 2 touchdowns. His quarterback rating was 131.2.

- Kaepernick looked much more comfortable last night – both in the pocket and throwing on the run. On his first touchdown pass he rolled left and found a wide open Delanie Walker inside the 10, who barreled his way through tacklers into the end zone.  The next touchdown was a 32-yard dart to AJ Jenkins, who was open in the end zone for his first touchdown in a 49ers uniform.

- Kaepernick’s success came against the back ups, so obviously everything we see should be taken with a grain of salt. But the primary criticism’s about the former Reno-Nevada star – accuracy, touch, pocket awareness – seem to be improving drastically.

- Kyle Williams was inactive for the game, which meant that LaMichael James was the guy in punt returns last night. He muffed three punts (misjudging his route to the ball in a way that would make Angel Pagan swoon), and though he miraculously recovered all three, he probably won’t be seeing time as a punt return specialist anytime soon.

The big bubble battles – RB and QB

Anthony Dixon vs. Rock Cartwright: After Dixon’s performance in the first two exhibition games there weren’t many people out there who believed he would find his way onto the 49ers’ roster this season. He’s seen considerable playing time since, and he’s made the most of it. Last night, Dixon had 12 carries for 55 yards (4.6 avg) and a touchdown. Rock Cartwright only had 2 carries for 5 yards, and at this point you have to wonder if there’s room left for him on this roster, especially after Greg Roman’s comments on KNBR earlier this week.

Scott Tolzien vs. Josh Johnson: Deciding on a 3rd string quarterback is supposed to be easy, right? That’s probably why Harbaugh & Co. are kicking themselves this morning, as Josh Johnson made a strong case for a spot on the 53-man roster. Johnson finished the game 9-for-14 for 125 yards and 2 touchdowns. His quarterback rating was 132.4 (higher than Kaepernick’s) and he showed a lot of versatility both with his arm and running the ball. Tolzien, on the other hand, took a major step back. He went 3-for-8 for 42 yards and 1 interception, with his only highlight coming on his first pass, a dart to AJ Jenkins on a crossing route. The 49ers’ hand may have been forced to choose Johnson, especially since Tolzien is the only quarterback on the team with a practice squad option.