boostcamp-2020 / Project18-B-Web-Duxit

🎲 야찌⛵️ 팀의 웹 기반 스토리텔링 보드게임 <Duxit> 🐤
https://duxit.ga
66 stars 7 forks source link

애니메이션 때문에 일어나는 서버와 클라이언트 사이의 동기화 문제 #200

Closed Front-line-dev closed 3 years ago

Front-line-dev commented 3 years ago

💁 설명

해결 방법

  1. 탭이 최소화 되거나 다른 탭을 보고 있을 때도 애니메이션이 재생되도록 한다
  2. 서버에서 (애니메이션 시간을 계산해서) 보내주면 그대로 받는다
    • 코드에 따라 에러가 발생할 수 있다
  3. 플레이어들이 애니메이션이 끝났을 때 서버에게 알려준다
    • 누군가가 자리를 비우면 게임을 진행할 수 없다

시간 동기화에 치명적이기 때문에 해결하면 엄청 좋다

📑 체크리스트

구현해야 하는 이슈 체크리스트

🚧 주의 사항

이슈를 구현할 때 유의깊게 살펴볼 사항

ramram1048 commented 3 years ago

https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API

Front-line-dev commented 3 years ago

차선책으로 애니메이션 시작할 때 현재 씬인지 확인하고 실행하면?

Front-line-dev commented 3 years ago

해결 방법

  1. 탭이 최소화 되거나 다른 탭을 보고 있을 때도 애니메이션이 재생되도록 한다
  2. 서버에서 (애니메이션 시간을 계산해서) 보내주면 그대로 받는다
    • 코드에 따라 에러가 발생할 수 있다
  3. 플레이어들이 애니메이션이 끝났을 때 서버에게 알려준다
    • 누군가가 자리를 비우면 게임을 진행할 수 없다