Training camp report: Patrick Willis leaves early with an apparent right wrist injury

SANTA CLARA – Here’s what stood out to me at Wednesday’s padded practice.

THE GOOD

1. Marlon Moore – He was the starting split end and he caught five passes and a touchdown during team drills. He also made the catch of the day, as he’s done every day of training camp. He ran a fade route against Tarell Brown, Kaepernick threw a back shoulder pass but it was at least five feet too high. Moore adjusted for it and out-jumped Brown to make the catch. Unless Kyle Williams returns soon or the 49ers sign another receiver (like Laurent Robinson), I expect Moore to be the 49ers’ starting split end Week 1 against the Packers.

2. Garrett Celek – He was three-for-three in the blitz-pickup drill, blocking Parys Haralson, Cam Johnson and Dan Skuta. Right now, Celek is clearly the best blocker of the young tight ends. He even lined up in the backfield of the pistol formation a couple of run plays. During team drills, he caught three passes and two were touchdowns. On his second touchdown, he beat Tramaine Brock in the back of the end zone. I expect Celek to make the 49ers’ 53-man roster for the second season in a row.

3. Vance McDonald – He was two-for-three in the blitz pickup drill. He blocked Cam Johnson twice, but Johnson got the best of McDonald in their third matchup. So, McDonald is improving as a blocker. On one play, I saw him line up in the backfield with Celek in the Pistol formation.

4. Nnamdi Asomugha – He’s been the best cornerback in training camp. He’s been the most competitive and the most physical. At most, he’s given up one catch per practice. Today, he intercepted Kaepernick trying to force a pass to Chad Hall on a quick slant. Asomugha also covered Boldin extremely well. Asomugha broke up a pass from Kaepernick to Boldin in the back corner of the end zone.

5. Chris Culliver – Like Asomugha, Culliver gave up just one catch today. On the fifth play of team drills, he stepped in front of a short pass from Scott Tolzien to Marlon Moore and picked it off.

6. Anthony Dixon – He was the best blocker of the running backs today. He successfully blocked Ahmad Brooks, NaVorro Bowman and Parys Haralson. Not too shabby.

7. LaMichael James – During team drills, he caught three passes and two touchdowns. He’s been the best pass-catching running back all of training camp.

8. Chuck Jacobs – He caught two TDs in team drills. He was the second-team slot receiver today (Chad Hall was the first-team slot guy), and Jacobs outperformed Hall. Hall struggled separating from Carlos Rogers, but Jacobs did not struggle separating from the second-team slot corners, Perrish Cox and Michael Thomas.

THE NOT-SO-GOOD

1. Patrick Willis – He left practice early with an apparent right wrist injury. He watched the remainder of practice from the sideline, right wrist heavily wrapped. Michael Wilhoite took his place.

2. NaVorro Bowman – He missed practice yesterday with an apparent groin strain. He played the first half of practice today, but sat out the second half. Nate Stupar took his place.

3. Colin Kaepernick – He couldn’t miss on Tuesday, but today his passes were scattershot. He tended to sail the intermediate and long throws and under throw the short ones. As a result, he threw two picks. This probably was his worst practice of the offseason. Besides today, he’s played very well.

4. Kyle Williams – He missed his fifth-straight practice with an apparent hamstring injury.

5. A.J. Jenkins – He missed his second practice in a row with an apparent hamstring injury.

, , , , , , , , , , , , , , , , , ,