Post

2026-04-07 TA

2026-04-07 TA

Split Fiction

사진 자료

2인용 협동 게임 개발을 해보고 싶어 TA 개인과제로 Split Fiction을 분석해보았습니다.

엔진 사진

엔진: Unreal Engine 5.4
장르: 2인용 협동 및 액션


• UI/UX

직관적인 상호작용

상호작용 GIF 1 상호작용 GIF 2

  • 분석: 퍼즐이나 오브젝트 상호작용 시, 각 플레이어의 고유 컬러(Player 1은 보라색, Player 2는 초록색)를 UI와 오브젝트 라이팅에 사용했습니다.
  • 효과: 직관적으로 무슨 플레이어가 조작해야하는지 인지하게 하여 플레이하게 편하게 해줍니다.


화면 GIF

  • 분석: 같은 공간에서 서로 다른 각도로 상호작용할 때 발생할 수 있는 시각적 혼동을 막기 위해, 카메라 시야각를 적절히 조절하고 화면별로 시야를 꽉 채우는 대형 오브젝트(주황색 홀로그램 벽 등)를 배치하여 두 화면의 공간감을 시각적으로 단절시켰습니다.
  • 효과: 옆 화면이 나와 완전히 다른 방향으로 돌아가 있거나 움직이더라도 시선이 빼앗기거나 어지럽지 않으며, 플레이어가 자신이 바라보는 시점과 퍼즐 조작에만 집중할 수 있습니다.

조작감

  • 분석: 점프 후 발판에 착지하거나 특정 기믹과 상호작용을 할 때, 정확한 위치를 요구하지 않고 충돌 및 상호작용 판정 범위를 넉넉하게 설계했습니다.
  • 효과: 플레이어의 조작 스트레스와 피로도를 줄여주어, 게임의 흐름이 끊기지 않고 쾌적하게 이어지도록 돕습니다.


• 그래픽

한 대의 PC/콘솔에서 두 개의 시점를 동시에 렌더링해야 하는 분할 화면 게임은 프레임 드랍의 위험이 2배라고 생각합니다. 이를 해결하기 위해 어떤 기술을 사용했는지 궁금했습니다.

Baked GI

Baked GI GIF

  • Baked GI 사용한 이유

언리얼 5.4의 Lumen은 실시간으로 빛을 계산하므로 매우 무겁습니다. 한 화면에 두개의 스크린때문에 Lumen 연산을 두 번 돌리게 되면 기기가 부담이 되어서 프레임 드랍이 발생합니다. 따라서 빛의 연산 결과를 텍스처로 미리 구워두는 Baked GI 방식을 채택하여 GPU 연산 비용을 절약하도록 하였습니다.


TAA

TAA

  • TAA인 이유

최신 업스케일링 기술은 품질은 좋지만 분할 화면 환경에서 오버헤드가 발생하거나 잔상 버그가 생길 수 있습니다. TAA는 이전 프레임의 데이터를 활용해 계단 현상을 없애는 방식으로, 비용 대비 성능이 우수합니다. 듀얼 렌더링 환경에서 시스템 자원을 아끼면서 안정적인 프레임을 뽑아내기 위한 선택입니다.


사전 셰이더 컴파일 (PC한정)

컴파일

  • PC 환경에서는 사전 셰이더 컴파일이 필수?

콘솔 기기는 하드웨어가 동일하지만, PC는 유저마다 그래픽카드와 CPU가 다릅니다. 만약 게임 플레이 도중 실시간으로 셰이더를 컴파일하게 되면, 화면이 끊기는 현상이 발생합니다.
그러므로 로딩 화면이나 게임 시작 전에 셰이더를 미리 컴파일해 두어 프레임을 방어한 것입니다.

• 보너스 (역시 버그없는 게임은 없다!)

컴파일

탈 것과 상호작용을 했는데 탈 것에 안타지고 밑으로 계속 떨어지는 버그를 발견했습니다.

• 다음 목표

영상의 내용처럼 Split Fiction의 연출을 블루프린트로 구현을 해본 영상인데 C++로도 구현해보는걸 도전해보고 싶습니다.

This post is licensed under CC BY 4.0 by the author.