노래 만들기 수정 — NAS 업로드 완성, Easy 제거 및 ExpertPlus 추가, 다운로드 버그 수정
- NasPublisher: DSM 7.2 multipart body 수동 구성으로 업로드 401 오류 해결 - NasPublisher: 비밀번호 StreamingAssets/nas_config.json 분리, .gitignore 등록 - NasPublisher: staticBaseUrl 포트 8180 → 80 수정 - BeatSageUploader: Easy 난이도 제거, ExpertPlus(.dat) 추가 - NoteData: DifficultyMap에서 easy 제거, expertplus 추가 - SongCreatorManager: toggleEasy → toggleExpertPlus 교체 - SongDetailPanel: btnEasy → btnExpertPlus 교체 - DownloadManager: DownloadHandlerFile 경로 정규화(Path.GetFullPath), mapFile 빈 값 방어 처리 - PersistentXRRig: FindObjectsOfType obsolete 경고 수정 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
/// <summary>
|
||||
/// Intro 씬의 XR Origin (Hands)에 추가하세요.
|
||||
/// DontDestroyOnLoad로 모든 씬에 XR Rig를 유지하고,
|
||||
/// 씬 전환 시 중복 카메라를 자동으로 비활성화합니다.
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public class PersistentXRRig : MonoBehaviour
|
||||
{
|
||||
private void Awake()
|
||||
{
|
||||
// 이미 다른 PersistentXRRig가 살아있으면 자기 자신을 제거 (싱글턴)
|
||||
var existing = FindObjectsByType<PersistentXRRig>(FindObjectsSortMode.None);
|
||||
if (existing.Length > 1)
|
||||
{
|
||||
Destroy(gameObject);
|
||||
return;
|
||||
}
|
||||
|
||||
DontDestroyOnLoad(gameObject);
|
||||
SceneManager.sceneLoaded += OnSceneLoaded;
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
SceneManager.sceneLoaded -= OnSceneLoaded;
|
||||
}
|
||||
|
||||
private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
|
||||
{
|
||||
// SceneBuilder가 만든 일반 카메라(Main Camera)를 비활성화
|
||||
// - XR Rig 자식 카메라는 유지
|
||||
foreach (var cam in FindObjectsByType<Camera>(FindObjectsSortMode.None))
|
||||
{
|
||||
if (!cam.transform.IsChildOf(transform))
|
||||
cam.gameObject.SetActive(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user