Skip to content

Commit 9d2f222

Browse files
committed
style: 명칭 변경 Game -> App or System
Game보다는 App이나 System에 가깝다
1 parent d580e48 commit 9d2f222

File tree

8 files changed

+87
-87
lines changed

8 files changed

+87
-87
lines changed

Assets/App/Scenes/MainSence.unity

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -692,7 +692,7 @@ GameObject:
692692
- component: {fileID: 1104447313}
693693
- component: {fileID: 1104447314}
694694
m_Layer: 0
695-
m_Name: GameManager
695+
m_Name: SystemManager
696696
m_TagString: Untagged
697697
m_Icon: {fileID: 0}
698698
m_NavMeshLayer: 0

Assets/Core/DebugConsole/README_DebugConsole.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# 인게임 디버그 콘솔 사용 가이드
1+
# 인앱 디버그 콘솔 사용 가이드
22

33
## 개요
4-
인게임에서 Debug.Log 메시지를 실시간으로 확인할 수 있는 관리자 콘솔입니다.
4+
앱 실행 중 Debug.Log 메시지를 실시간으로 확인할 수 있는 관리자 콘솔입니다.
55

66
## 주요 기능
77
- **실시간 로그 표시**: 모든 Debug.Log 메시지를 실시간으로 확인
@@ -41,7 +41,7 @@ LogEntryPrefab (GameObject)
4141
```
4242

4343
### 3. 컴포넌트 설정
44-
1. **InGameDebugConsole** 스크립트를 ConsolePanel에 추가
44+
1. **InAppDebugConsole** 스크립트를 ConsolePanel에 추가
4545
2. **LogEntryPrefab** 스크립트를 로그 엔트리 프리팹에 추가
4646
3. **DebugConsoleSettings** ScriptableObject 생성:
4747
- Project 창에서 우클릭 → Create → ProjectVG → Debug Console Settings
@@ -103,7 +103,7 @@ LogEntryPrefab (GameObject)
103103

104104
```csharp
105105
// 디버그 콘솔 참조
106-
InGameDebugConsole debugConsole = FindObjectOfType<InGameDebugConsole>();
106+
InAppDebugConsole debugConsole = FindObjectOfType<InAppDebugConsole>();
107107

108108
// 특정 키워드로 필터링
109109
debugConsole.SetFilter("ChatManager");
@@ -151,5 +151,5 @@ debugConsole.ToggleConsole();
151151
2. 민감한 정보가 로그에 포함되지 않도록 주의
152152
3. 모바일에서는 3개 손가락 동시 터치로 콘솔 제어 (설정에서 변경 가능)
153153
4. 오브젝트 풀링 사용 시 Pool Size를 적절히 설정하여 메모리 사용량 조절
154-
5. 백그라운드 로깅 사용 시 게임 성능에 미치는 영향을 모니터링
154+
5. 백그라운드 로깅 사용 시 성능에 미치는 영향을 모니터링
155155
6. 성능이 중요한 경우 `InitializePoolOnStart`를 false로 설정하여 지연 초기화 사용

Assets/Core/Loading/LoadingManager.cs

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,15 @@ public TaskInfo(string name, string description, float progressValue)
2626

2727
/// <summary>
2828
/// 로딩 과정을 전담 관리하는 싱글톤 매니저
29-
/// 실제 초기화는 GameManager가 담당하고, 이 클래스는 UI와 사용자 피드백에 집중
29+
/// 실제 초기화는 SystemManager가 담당하고, 이 클래스는 UI와 사용자 피드백에 집중
3030
/// </summary>
3131
public class LoadingManager : Singleton<LoadingManager>
3232
{
3333
[Header("UI Reference")]
3434
[SerializeField] private LoadingUI _loadingUI;
3535

3636
private TaskInfo _currentTask;
37-
private bool _gameStarted;
37+
private bool _appStarted;
3838
[SerializeField] private float _autoProgressMax = 0.9f;
3939
[SerializeField] private float _autoProgressSpeed = 0.25f;
4040
private Coroutine _autoProgressCoroutine;
@@ -72,11 +72,11 @@ public void StartInitialization()
7272
{
7373
UpdateTask("INITIALIZATION", "시스템 초기화 중...", 0.05f);
7474
StartAutoProgress();
75-
SystemManager.Instance.InitializeGame();
75+
SystemManager.Instance.Initialize();
7676
}
7777
else
7878
{
79-
Debug.LogError("[LoadingManager] GameManager가 없습니다.");
79+
Debug.LogError("[LoadingManager] SystemManager가 없습니다.");
8080
}
8181
}
8282

@@ -91,17 +91,17 @@ public void UpdateTask(string taskName, string description, float progress)
9191
_loadingUI.UpdateTask(_currentTask);
9292
}
9393

94-
if (!_gameStarted && _currentTask.progress >= 1f)
94+
if (!_appStarted && _currentTask.progress >= 1f)
9595
{
96-
StartGame();
96+
StartApp();
9797
}
9898
}
9999

100-
public async void StartGame()
100+
public async void StartApp()
101101
{
102-
if (_gameStarted)
102+
if (_appStarted)
103103
return;
104-
_gameStarted = true;
104+
_appStarted = true;
105105
if (_loadingUI != null)
106106
{
107107
await _loadingUI.FadeOut();
@@ -120,7 +120,7 @@ private void SetupEventListeners()
120120
{
121121
if (SystemManager.Instance != null)
122122
{
123-
SystemManager.Instance.OnGameInitialized += OnGameInitialized;
123+
SystemManager.Instance.OnAppInitialized += OnAppInitialized;
124124
SystemManager.Instance.OnInitializationError += OnInitializationError;
125125
}
126126
}
@@ -129,18 +129,18 @@ private void RemoveEventListeners()
129129
{
130130
if (SystemManager.Instance != null)
131131
{
132-
SystemManager.Instance.OnGameInitialized -= OnGameInitialized;
132+
SystemManager.Instance.OnAppInitialized -= OnAppInitialized;
133133
SystemManager.Instance.OnInitializationError -= OnInitializationError;
134134
}
135135
}
136136

137-
private void OnGameInitialized()
137+
private void OnAppInitialized()
138138
{
139-
if (!_gameStarted)
139+
if (!_appStarted)
140140
{
141141
StopAutoProgress();
142142
UpdateTask("INITIALIZATION", "완료", 1f);
143-
StartGame();
143+
StartApp();
144144
}
145145
}
146146

@@ -172,7 +172,7 @@ private void StopAutoProgress()
172172
private System.Collections.IEnumerator AutoProgressRoutine()
173173
{
174174
float p = Mathf.Clamp01(_currentTask.progress);
175-
while (p < _autoProgressMax && !_gameStarted)
175+
while (p < _autoProgressMax && !_appStarted)
176176
{
177177
p += Time.deltaTime * _autoProgressSpeed;
178178
UpdateTask("INITIALIZATION", "시스템 초기화 중...", Mathf.Min(p, _autoProgressMax));

Assets/Core/Loading/LoadingUI.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ private void InitializeUI()
111111
}
112112

113113
// 초기 상태 메시지
114-
UpdateStatus("게임 시작 준비 중...");
114+
UpdateStatus(" 시작 준비 중...");
115115
}
116116

117117
/// <summary>

Assets/Core/Managers/SystemManager.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public class SystemManager : Singleton<SystemManager>
3434
public AudioManager AudioManager => _audioManager;
3535
public LoadingManager LoadingManager => _loadingManager;
3636

37-
public event Action OnGameInitialized;
37+
public event Action OnAppInitialized;
3838
public event Action<string> OnInitializationError;
3939

4040
protected override void Awake()
@@ -49,7 +49,7 @@ protected override void Awake()
4949
if (_autoInitializeOnStart && !_initializationKickoffDone && !IsInitialized)
5050
{
5151
_initializationKickoffDone = true;
52-
InitializeGame();
52+
Initialize();
5353
}
5454
}
5555

@@ -123,7 +123,7 @@ public void SetCamera(Camera camera)
123123
}
124124
}
125125

126-
public async void InitializeGame()
126+
public async void Initialize()
127127
{
128128
if (_initializationKickoffDone && IsInitialized)
129129
{
@@ -138,17 +138,17 @@ public async void InitializeGame()
138138
ScreenTapManager.Instance.Initialize(_camera);
139139
}
140140

141-
await InitializeGameAsync();
141+
await InitializeAppAsync();
142142
}
143143

144-
public async UniTask InitializeGameAsync()
144+
public async UniTask InitializeAppAsync()
145145
{
146146
try
147147
{
148148
await InitializeManagersAsync();
149149
IsInitialized = true;
150-
Debug.Log("[SystemManager] 게임 시스템 준비 완료");
151-
OnGameInitialized?.Invoke();
150+
Debug.Log("[SystemManager] 시스템 준비 완료");
151+
OnAppInitialized?.Invoke();
152152
}
153153
catch (Exception ex)
154154
{

Assets/Docs/Design/Component_Analysis_Document.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,8 +265,8 @@ smoothing: 1
265265

266266
## 6. 연관 클래스들
267267

268-
### 6.1 GameManager
269-
- 게임 전체의 초기화와 관리
268+
### 6.1 SystemManager
269+
- 전체의 초기화와 관리
270270
- WebSocket, Session, HTTP API 클라이언트 관리
271271
- 시스템 간 의존성 설정
272272

Assets/Docs/Design/Initial_Loading_System_Design.md

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -26,29 +26,29 @@
2626

2727
- 로딩 중 상태 표시
2828
- 각 단계별 진행률 표시
29-
- 준비 완료 시 "게임 시작" 버튼 활성화
29+
- 준비 완료 시 " 시작" 버튼 활성화
3030
- 페이드 인/아웃 효과로 씬 전환
3131

3232
## 아키텍처 설계
3333

34-
### 선택된 접근 방식: 이벤트 기반 시스템 (GameManager 중심)
34+
### 선택된 접근 방식: 이벤트 기반 시스템 (SystemManager 중심)
3535

3636
**선택 이유:**
37-
- GameManager가 모든 씬에서 지속되는 싱글톤
37+
- SystemManager가 모든 씬에서 지속되는 싱글톤
3838
- StartupManager는 Start 씬에서만 존재
3939
- 이벤트 구독을 통한 효율적인 상태 관리
40-
- 기존 GameManager 시스템과의 완벽한 통합
40+
- 기존 SystemManager 시스템과의 완벽한 통합
4141

4242
### 시스템 구성요소
4343

4444
```
45-
GameManager (DontDestroyOnLoad)
45+
SystemManager (DontDestroyOnLoad)
4646
├── InitializationPhase 이벤트 발생
4747
├── Progress 이벤트 발생
4848
└── 완료/에러 이벤트 발생
4949
↓ (이벤트 구독)
5050
LoadingManager (Start 씬 전용)
51-
├── GameManager 이벤트 구독
51+
├── SystemManager 이벤트 구독
5252
├── LoadingUI 제어
5353
└── SceneTransitionManager 호출
5454
@@ -58,14 +58,14 @@ SceneTransitionManager (싱글톤)
5858

5959
### 이벤트 기반 동작 흐름
6060

61-
1. **GameManager**: 초기화 진행하며 이벤트 발생
62-
2. **LoadingManager**: GameManager 이벤트 구독하여 UI 업데이트
61+
1. **SystemManager**: 초기화 진행하며 이벤트 발생
62+
2. **LoadingManager**: SystemManager 이벤트 구독하여 UI 업데이트
6363
3. **LoadingUI**: 진행 상황 표시 및 사용자 상호작용
6464
4. **SceneTransitionManager**: 씬 전환 관리
6565

6666
## 구현된 클래스
6767

68-
### 1. GameManager (확장됨)
68+
### 1. SystemManager (확장됨)
6969

7070
```csharp
7171
public enum InitializationPhase
@@ -77,16 +77,16 @@ public enum InitializationPhase
7777
Completed
7878
}
7979

80-
public class GameManager : Singleton<GameManager>
80+
public class SystemManager : Singleton<SystemManager>
8181
{
8282
// 이벤트
8383
public event Action<InitializationPhase> OnPhaseChanged;
8484
public event Action<float> OnProgressChanged;
85-
public event Action OnGameInitialized;
85+
public event Action OnAppInitialized;
8686
public event Action<string> OnInitializationError;
8787

8888
// 비동기 초기화
89-
public async UniTask InitializeGameAsync();
89+
public async UniTask InitializeAppAsync();
9090

9191
// 상태 조회
9292
public InitializationStatus GetInitializationStatus();
@@ -104,24 +104,24 @@ public class GameManager : Singleton<GameManager>
104104
```csharp
105105
public class LoadingManager : MonoBehaviour
106106
{
107-
// GameManager 이벤트 구독
108-
private void SubscribeToGameManager();
107+
// SystemManager 이벤트 구독
108+
private void SubscribeToSystemManager();
109109

110110
// 초기화 시작
111111
public async void StartInitialization();
112112

113-
// 게임 시작 (씬 전환)
114-
public async void StartGame();
113+
// 시작 (씬 전환)
114+
public async void StartApp();
115115

116116
// 이벤트 핸들러
117117
private void OnPhaseChanged(InitializationPhase phase);
118118
private void OnProgressChanged(float progress);
119-
private void OnGameInitialized();
119+
private void OnAppInitialized();
120120
}
121121
```
122122

123123
**주요 기능:**
124-
- GameManager 이벤트 구독 관리
124+
- SystemManager 이벤트 구독 관리
125125
- LoadingUI와 연동
126126
- 초기화 완료 시 씬 전환 처리
127127

@@ -176,9 +176,9 @@ public class SceneTransitionManager : Singleton<SceneTransitionManager>
176176

177177
```
178178
1. StartScene 로드
179-
2. LoadingManager 생성 및 GameManager 이벤트 구독
179+
2. LoadingManager 생성 및 SystemManager 이벤트 구독
180180
3. LoadingManager.StartInitialization() 호출
181-
4. GameManager.InitializeGameAsync() 실행
181+
4. SystemManager.InitializeAppAsync() 실행
182182
├── Phase: InitializingManagers (0% → 40%)
183183
├── Phase: ConnectingToServer (40% → 80%)
184184
└── Phase: LoadingResources (80% → 100%)
@@ -189,22 +189,22 @@ public class SceneTransitionManager : Singleton<SceneTransitionManager>
189189
### 2. 이벤트 흐름
190190

191191
```
192-
GameManager LoadingManager LoadingUI
192+
SystemManager LoadingManager LoadingUI
193193
| | |
194194
|──OnPhaseChanged──────────────▶| |
195195
| |──UpdatePhase──────────▶|
196196
| | |
197197
|──OnProgressChanged───────────▶| |
198198
| |──UpdateProgress───────▶|
199199
| | |
200-
|──OnGameInitialized───────────▶| |
200+
|──OnAppInitialized────────────▶| |
201201
| |──ShowStartButton──────▶|
202202
```
203203

204204
## 주요 개선사항
205205

206206
### 1. 이벤트 기반 아키텍처
207-
- **분리된 관심사**: GameManager는 초기화, LoadingManager는 UI 관리
207+
- **분리된 관심사**: SystemManager는 초기화, LoadingManager는 UI 관리
208208
- **유연한 확장**: 새로운 구독자 추가 용이
209209
- **생명주기 독립성**: Start 씬 전용 컴포넌트와 전역 싱글톤 분리
210210

@@ -224,7 +224,7 @@ GameManager LoadingManager LoadingUI
224224
Assets/
225225
├── Core/
226226
│ ├── Managers/
227-
│ │ └── GameManager.cs (확장됨)
227+
│ │ └── SystemManager.cs (확장됨)
228228
│ └── Loading/
229229
│ ├── LoadingManager.cs
230230
│ ├── LoadingUI.cs
@@ -245,9 +245,9 @@ Assets/
245245
3. UI 요소들 (ProgressBar, StatusText, StartButton 등) 연결
246246
4. 다음 씬 이름 설정
247247

248-
### 2. GameManager 설정
248+
### 2. SystemManager 설정
249249

250-
- 기존 GameManager 설정 그대로 사용
250+
- 기존 SystemManager 설정 그대로 사용
251251
- 자동 초기화 옵션 유지 또는 LoadingManager에서 수동 호출
252252

253253
### 3. 씬 전환 설정
@@ -258,7 +258,7 @@ Assets/
258258
## 고려사항
259259

260260
### 1. 성능 최적화
261-
- GameManager 이벤트는 Start 씬에서만 구독
261+
- SystemManager 이벤트는 Start 씬에서만 구독
262262
- 메모리 누수 방지를 위한 적절한 구독 해제
263263
- 불필요한 업데이트 최소화
264264

@@ -274,4 +274,4 @@ Assets/
274274

275275
## 결론
276276

277-
이벤트 기반 아키텍처를 통해 GameManager의 전역적 특성과 LoadingManager의 씬 전용 특성을 효과적으로 분리했습니다. 이를 통해 유지보수성과 확장성을 높이면서도 사용자에게 명확한 초기화 진행 상황을 제공할 수 있습니다.
277+
이벤트 기반 아키텍처를 통해 SystemManager의 전역적 특성과 LoadingManager의 씬 전용 특성을 효과적으로 분리했습니다. 이를 통해 유지보수성과 확장성을 높이면서도 사용자에게 명확한 초기화 진행 상황을 제공할 수 있습니다.

0 commit comments

Comments
 (0)