camera_system #5

Merged
Jeonghyeon merged 18 commits from camera_system into develop 2025-07-14 07:10:06 +00:00
Owner
  1. CameraManager도 IManager를 상속받아 GameFramework에 등록
  2. 매니저에서 CameraGameObject 컴포넌트를 등록, 해제 하는 기능 추가
  3. CameraGameObject마다 각자의 고유 Id를 통해서 카메라 매니저에 Dictionary로 관리
1. CameraManager도 IManager를 상속받아 GameFramework에 등록 2. 매니저에서 CameraGameObject 컴포넌트를 등록, 해제 하는 기능 추가 3. CameraGameObject마다 각자의 고유 Id를 통해서 카메라 매니저에 Dictionary로 관리
iwnc2020 self-assigned this 2025-07-10 11:11:49 +00:00
iwnc2020 added 3 commits 2025-07-10 11:11:49 +00:00
iwnc2020 requested review from Jeonghyeon 2025-07-10 11:12:01 +00:00
iwnc2020 added 1 commit 2025-07-11 06:02:27 +00:00
Author
Owner

브런치 실수로 camera쪽에 모두 푸쉬함

  1. RestaurantPlayer가 Input을 받아서 이동, 대쉬 재구현 및 스파인 애니메이션 기능 연동
  • InputManager 따로 사용 안하는 중. PlayerInput 컴포넌트를 플레이어가 들게하고 코드로 바인딩 중
    추후에 필요해지면 재구현
  1. Camera 트래킹 기능 추가

  2. 게임 플로우 로직에서 assetRef가 있으면 Instantiate하는 기능 추가

  • CreateRestaurantPlayer를 등록해서 해당 플로우가 재생하면 동적으로 플레이어 생성하는 방식으로 변경 + 카메라 트래킹
  1. FadeManager를 통해서 씬 활성화 간에 Fade 기능 추가
브런치 실수로 camera쪽에 모두 푸쉬함 1. RestaurantPlayer가 Input을 받아서 이동, 대쉬 재구현 및 스파인 애니메이션 기능 연동 * InputManager 따로 사용 안하는 중. PlayerInput 컴포넌트를 플레이어가 들게하고 코드로 바인딩 중 추후에 필요해지면 재구현 2. Camera 트래킹 기능 추가 3. 게임 플로우 로직에서 assetRef가 있으면 Instantiate하는 기능 추가 * CreateRestaurantPlayer를 등록해서 해당 플로우가 재생하면 동적으로 플레이어 생성하는 방식으로 변경 + 카메라 트래킹 4. FadeManager를 통해서 씬 활성화 간에 Fade 기능 추가
iwnc2020 added 1 commit 2025-07-14 02:10:22 +00:00
Jeonghyeon approved these changes 2025-07-14 03:42:10 +00:00
Dismissed
@ -103,1 +107,3 @@
SceneManager.Instance.ActivateScene(sceneToLoad);
if (GetFlowScene(newFlowState, out var sceneToLoad))
{
await FadeManager.Instance.FadeOut();
Collaborator

FadeManager 호출 구조를 변경해주세요.
FlowManager에서 FadeManager를 알고, 호출해야 하는 게 아니라
FadeManager가 알아서 자기가 필요한 타이밍에 불리게끔 등록해야 합니다.
예를 들어, FlowManager의 ReadyForStartNewFlow, WaitUntilAllRegisteredManagerReady 같은 형식으로요.
그리고 FadeManager가 여기서 플로우변경이 아니라 씬에 등록되어 씬 전환 이전-씬전환이후로 가는 게 더 적절할 것 같습니다.

FadeManager 호출 구조를 변경해주세요. FlowManager에서 FadeManager를 알고, 호출해야 하는 게 아니라 FadeManager가 알아서 자기가 필요한 타이밍에 불리게끔 등록해야 합니다. 예를 들어, FlowManager의 ReadyForStartNewFlow, WaitUntilAllRegisteredManagerReady 같은 형식으로요. 그리고 FadeManager가 여기서 플로우변경이 아니라 씬에 등록되어 씬 전환 이전-씬전환이후로 가는 게 더 적절할 것 같습니다.
@ -0,0 +12,4 @@
{
try
{
var playerPrefab = await AssetManager.LoadAsset<GameObject>("RestaurantPlayer");
Collaborator

리터럴 스트링 제거할 방법이 있을까요?

리터럴 스트링 제거할 방법이 있을까요?
@ -0,0 +15,4 @@
var playerPrefab = await AssetManager.LoadAsset<GameObject>("RestaurantPlayer");
var player = Instantiate(playerPrefab, _spawnPosition, playerPrefab.transform.rotation);
player.name = "RestaurantPlayer";
CameraManager.Instance.GetCameraGameObject("RestaurantBaseCamera").SetFollowAndLookAtTarget(player.transform);
Collaborator

여기도 리터럴 스트링 제거하고 레퍼런스 기반으로 작업할 방법이 있을까요?

여기도 리터럴 스트링 제거하고 레퍼런스 기반으로 작업할 방법이 있을까요?
@ -10,0 +24,4 @@
{
_rigidbody = GetComponent<Rigidbody>();
_animation = GetComponent<RestaurantCharacterAnimation>();
_visualLook = transform.Find("VisualLook");
Collaborator

리터럴 제거 바랍니다. 다른 방식으로 얻을 수 없을까요?

리터럴 제거 바랍니다. 다른 방식으로 얻을 수 없을까요?
@ -10,0 +31,4 @@
{
try
{
_playerData = await AssetManager.LoadAsset<RestaurantPlayerDataSo>("RestaurantPlayerDataSo");
Collaborator

리터럴 제거

리터럴 제거
@ -10,0 +79,4 @@
_currentDirection = normalDirection;
}
private void FlipVisualLook()
Collaborator

무브먼트에서 다뤄야할 영역이 아님.
다른 컴포넌트로 이관 필요.

무브먼트에서 다뤄야할 영역이 아님. 다른 컴포넌트로 이관 필요.
@ -10,0 +107,4 @@
SetCurrentDirection(_inputDirection);
_isMoving = _inputDirection != Vector3.zero;
string animationName = _isMoving ? "RunFast" : "Idle";
Collaborator

애니메이션 재생 역시 무브먼트의 소관이 아님.
애니메이션 컴포넌트로 이동해야할듯합니다.

애니메이션 재생 역시 무브먼트의 소관이 아님. 애니메이션 컴포넌트로 이동해야할듯합니다.
@ -10,0 +134,4 @@
_isDashing = true;
_isDashCooldown = true;
_animation.PlayAnimationDuration("Dash", false, _playerData.DashTime);
Collaborator

애니메이션 제거. OnDashStarted나 IsDashing 등으로 처리할 것.

애니메이션 제거. OnDashStarted나 IsDashing 등으로 처리할 것.
Jeonghyeon changed title from camera_system to WIP: camera_system 2025-07-14 03:42:16 +00:00
Jeonghyeon requested review from Jeonghyeon 2025-07-14 03:42:21 +00:00
Jeonghyeon refused to review 2025-07-14 03:42:49 +00:00
Jeonghyeon requested changes 2025-07-14 03:44:14 +00:00
Dismissed
Jeonghyeon left a comment
Collaborator

추가 코드 작업 필요

추가 코드 작업 필요
iwnc2020 added 1 commit 2025-07-14 04:15:22 +00:00
iwnc2020 added 1 commit 2025-07-14 04:32:44 +00:00
iwnc2020 added 1 commit 2025-07-14 04:35:25 +00:00
iwnc2020 added 1 commit 2025-07-14 04:39:15 +00:00
iwnc2020 added 1 commit 2025-07-14 05:07:21 +00:00
FlipVisualLook RestaurantPlayerCharacter에서 관리
iwnc2020 added 1 commit 2025-07-14 05:09:53 +00:00
iwnc2020 added 1 commit 2025-07-14 05:11:29 +00:00
iwnc2020 added 1 commit 2025-07-14 05:11:40 +00:00
iwnc2020 added 1 commit 2025-07-14 05:14:25 +00:00
iwnc2020 added 1 commit 2025-07-14 05:20:27 +00:00
iwnc2020 added 1 commit 2025-07-14 05:57:18 +00:00
iwnc2020 added 1 commit 2025-07-14 05:57:35 +00:00
iwnc2020 added 1 commit 2025-07-14 06:37:51 +00:00
iwnc2020 added 1 commit 2025-07-14 06:38:30 +00:00
iwnc2020 added 1 commit 2025-07-14 06:38:43 +00:00
Jeonghyeon approved these changes 2025-07-14 07:09:42 +00:00
Jeonghyeon changed title from WIP: camera_system to camera_system 2025-07-14 07:09:47 +00:00
Jeonghyeon merged commit 8e4a6d6118 into develop 2025-07-14 07:10:06 +00:00
Jeonghyeon deleted branch camera_system 2025-07-14 07:10:06 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: iwnc2020/ProjectDDD#5
No description provided.