Unity 씬 전환과 점수 유지: LoadSceneAsync·데이터 전달 방법
Unity에서 씬을 바꾸면서 점수를 유지하려면 화면 전환과 데이터 수명을 따로 설계해야 합니다. SceneManager.LoadSceneAsync로 다음 씬을 불러오고, 짧은 플레이 세션의 점수는 DontDestroyOnLoad 객체나 별도 게임 상태에 보관하며, 앱 재실행 뒤에도 남길 값은 저장 파일로 분리하세요. 기존 예제의 점수 변수입니다. 정적 변수만으로 장기 저장을 해결하지는 못합니다. 과거 OnGUI 점수 표시 코드입니다. 현재 프로젝트는 Unity UI 또는 UI Toolkit을 우선 검토하세요. 기존 씬 이동 버튼 예제입니다. 현재는 SceneManager API를 사용합니다. 씬을 빌드 목록에 넣는 기존 화면입니다. Unity 버전에 따라 메뉴 이름은 달라도 포함 여부는 필수입니다. 씬 전환 전 점수가 표시된 기존 결과 화면입니다. 다음 씬에서도 점수를 유지하려면 데이터 수명과 초기화 시점을 명확히 정해야 합니다. 먼저 확인할 답 Unity에서 씬을 바꾸면서 점수를 유지하려면 화면 전환과 데이터 수명을 따로 설계해야 합니다. SceneManager.LoadSceneAsync로 다음 씬을 불러오고, 짧은 플레이 세션의 점수는 DontDestroyOnLoad 객체나 별도 게임 상태에 보관하며, 앱 재실행 뒤에도 남길 값은 저장 파일로 분리하세요. 씬은 빌드 목록에 포함하고 이름이나 인덱스를 정확히 쓴다 SceneManager.LoadScene 또는 LoadSceneAsync가 대상을 찾으려면 씬이 빌드 설정 목록에 포함돼 있어야 합니다. 이름 문자열은 오타와 이름 변경에 취약하고, 인덱스는 순서 변경에 취약해요. 프로젝트 규모에 맞춰 상수나 중앙화된 전환 서비스를 사용하면 참조를 관리하기 쉽습니다. 작은 씬은 동기 LoadScene도 가능하지만 로딩이 길면 화면이 멈춘 것처럼 보일 수 있습니다. LoadSceneAsync의 AsyncOperation을 받아 진행 상태와 입력 차단을 관리하세요. 버튼을 여러 번 눌러 중복 전환이 시작되지 않...