code: func updateGroundImage(ground *ebiten.Image) {
  	ground.Clear()
  
  	x16, y16 := thePlayer.Position()
  	a := thePlayer.Angle()
  	gw, gh := ground.Size()
  	w, h := gophersImage.Size()
  	op := &ebiten.DrawImageOptions{}
  	op.GeoM.Translate(float64(-x16)/16, float64(-y16)/16)
  	op.GeoM.Translate(float64(-w*2), float64(-h*2))
  	op.GeoM.Rotate(float64(-a)*2*math.Pi/maxAngle + math.Pi*3.0/2.0)
  	op.GeoM.Translate(float64(gw)/2, float64(gh)-32)
  	ground.DrawImage(repeatedGophersImage, op)
  }
docs: // updateGroundImage updates the ground image according to the current player's position.