Настройки экрана PYGAME

#pygame

#pygame

Вопрос:

Я добавил класс настроек в свою игру. в настройках почти все работает нормально ( громкость ,частота кадров в секунду, цвета и т.д.).

я добавил панель для увеличения/уменьшения разрешения экрана, и она работает нормально, но есть некоторые проблемы. эта проблема связана с функцией display.set_mode. перед основным циклом я определил:

 screen = pygame.display.set_mode((screen_width,screen_height))   

если игрок нажмет на настройки и выберет воспроизведение с разрешением,на которое это повлияет (ширина экрана, высота экрана) , я снова вызову экран в главном цикле.

  1. первая проблема заключается в том , что разрешение экрана увеличивается/уменьшается с помощью черного bg (только когда я нажал на эту панель изменения разрешения, когда я перестал нажимать на нее, разрешение осталось прежним, и bg стал нормальным). почему это происходит? и как это исправить?
  2. я добавил еще одну кнопку для полноэкранного режима, и она работала нормально, но также я снова добавил переменную экрана в код
 screen = pygame.display.set_mode((0,0))   

и есть ошибка, когда я открываю игру — иногда ( я не могу понять, когда и почему) игра работает в течение 2,3 секунды, а затем окно закрывается без какой-либо ошибки, и иногда игра работает без этой ошибки.

что я сделал не так?

  1. когда я нахожусь на полном экране, я вручную изменяю размер и размещаю все изображения и кнопки в соответствии с новым разрешением. я почти уверен , что есть лучший способ, есть какие-нибудь предложения?

Комментарии:

1. «когда я нахожусь на полном экране, я вручную изменяю размер и размещаю все изображения и кнопки в соответствии с новым разрешением. я почти уверен, что есть лучший способ …» — Нет, это не так. При изменении разрешения экрана необходимо изменить размер всех объектов и элементов.