Как кэшировать и предварительно загружать изображения для полноценного игрового процесса? - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть приложение для веб-сокетов Spring Boot, состоящее из многопользовательской карточной игры.

Все мои ресурсы загружаются на главную веб-страницу с помощью свойства CSS 'background-image' и когда клиенты получают конкретные сообщенияс сервера я выполняю анимацию с использованием JavaScript и, в конечном итоге, скрываю / отображаю или изменяю фон некоторых элементов.

Проблема, с которой я сталкиваюсь, заключается в том, что ресурсы загружаются медленно, и анимации недостаточно плавные, если они содержат фонизменение изображения.

  • Я добавил CacheControl в свой файл application.yml
spring:
  resources:
    cache:
      cachecontrol:
        max-age: 14400
  • Я также добавил скрытые изображения в свой HTML-файл вЧтобы предварительно загрузить их, но все же, когда я переключаю свойство отображения CSS других изображений с «none» на «block», изображения все равно загружаются медленно

  • Я использовал следующий код JavaScriptдля предварительной загрузки изображений в document.ready ()

function preloadImage(url) {
    (new Image()).src = url;
}

$(function() {
    preloadImage('/img/table/table.jpg/')
    ...
});

Изображения отображаются слишком долго или мигают wкогда бы ни происходило изменение фонового изображения.

Есть ли способ показать пользователю страницу ожидания при загрузке всех ресурсов при его входе в систему, а затем перенаправить его на главную страницу после загрузки всех изображений

...