Пример
Чтобы рассмотреть пример использования дополнительных поверхностей, можно вернуться к предыдущему проекту:

В этом примере нужно создать две поверхности:
	- Объект screen(окно приложения)
- И объект car_surface = pygame.Surface((300, 120))
 
После создания дополнительной поверхности (car_surface), все графические примитивы, с помощью которых отображается рисунок, нужно отображать на ней, а не на объекте screen (координаты примитивов нужно изменить, т.к. размеры поверхностей разные).
 
Теперь можно перемещать саму поверхность по объекту screen, а не каждый отдельный графический примитив, что делает анимацию более удобной и простой.
 
Алгоритм рисования следующий:
	- Залить экран (screen.fill((255, 255, 255)))
- Сдвинуть дополнительную поверхность (x_car_surface += 1)
- Нарисовать на дополнительной поверхности рисунок (функция car())
- Отобразить дополнительную поверхность на экране (screen.blit(car_surface, (x_car_surface, 440)))
- Обновить экран (pygame.display.update())
Пример:
subsurface = surf.subsurface((0, 100, 100, 50)) # создается подповерхность для рисования
subsurface.fill(RED)