
- 게임은 실시간 느낌 영화는 녹화된 영상을 틀어줌 근본적인 차이가 있다.
1. Play Mode의 소개
유니티에디터는 빌드과정을 거쳐 플레이하는 것과 유사하게 빠르게 플레이 테스트를 해 볼 수 있는 Play Mode를 지원합니다.
- 유니티 에디터의 Play Mode
- 유니티 에디터는 별도의 빌드 과정을 거치지 않고, 에디터 내에서 바로 게임 플레이를 테스트할 수 있는 Play Mode를 지원합니다.
- 이 기능은 실제로 빌드된 게임과 유사한 환경에서 테스트할 수 있으므로, 개발 시간과 디버깅 시간을 줄이는 데 매우 유용합니다.
에디터 상단에 위치한 재생, 일시정지, 다음프레임 심볼의 버튼들이 Play Mode로 넘어가도록 도와주는 주인공들입니다.
- Play Mode 실행 버튼
- 유니티 에디터의 상단에 있는 재생(▶), 일시정지(⏸), 다음 프레임(⏩) 심볼은 Play Mode를 제어하는 버튼입니다.
- 이 버튼들은 Play Mode로 진입하거나 멈추는 등의 동작을 수행하며, 개발자가 테스트와 디버깅을 효율적으로 할 수 있도록 도와줍니다.
단축키 Ctrl + P

요즘에서야 게임엔진이라면 당연히 갖춰야 할 기능으로 받아들여지지만, 초기의 게임 엔진에서는 그렇지 못했고 컴파일과 빌드를 거쳐서야 플레이테스트를 해볼 수 있었습니다.
- Play Mode의 발전
- 오늘날에는 Play Mode와 같은 실시간 테스트 기능이 게임 엔진의 기본적인 요소로 간주됩니다.
- 그러나 초기 게임 엔진에서는 이러한 기능이 제공되지 않았습니다. 당시에는 컴파일과 빌드라는 긴 과정을 거쳐야만 변경 사항을 테스트할 수 있었습니다.
- 유니티의 Play Mode는 이러한 과정을 단축하여 개발 효율성을 크게 향상시킨 대표적인 기능입니다.
2. Edit Mode와 Play Mode
Edit Mode : 유니티 에디터에서 PlayMode 상태가 아닐 때 (평상시)
- Edit Mode
- Edit Mode는 유니티 에디터가 Play Mode가 아닌 상태를 말합니다.
- 이 상태에서는 게임 객체(Game Object)나 컴포넌트(Component)를 추가, 수정, 삭제하는 작업을 수행할 수 있습니다.
- 예를 들어, 씬(Scene)을 편집하거나, UI 요소를 배치하는 작업이 Edit Mode에서 이루어집니다.
Play Mode : 유니티 에디터에서 Play 중인 상태 (실행 테스트)
- Play Mode
- Play Mode는 유니티 에디터에서 게임을 실행 중인 상태를 의미합니다.
- 이 상태에서는 게임 로직, 물리 엔진, 애니메이션 등을 실행하여 실제 플레이 환경과 유사한 상황에서 테스트할 수 있습니다.
- Play Mode로 전환하면 코드가 실행되기 시작하며, 게임이 실행 중일 때 발생할 수 있는 문제를 디버깅하는 데 적합합니다.
에디터에서 빌드를 거쳐 스탠드어론으로 컴파일 된 후 실행되는 것은 플레이모드가 아닙니다.
- Play Mode와 빌드된 실행 파일의 차이점
- 유니티 에디터에서 Play Mode는 에디터 내에서 실행됩니다.
- 반면, 빌드된 실행 파일은 독립 실행형(standalone)으로 실행됩니다.
- 따라서 에디터와 런타임 환경이 약간 다를 수 있으므로, 빌드된 실행 파일에서는 Play Mode와 다른 결과가 나타날 가능성이 있습니다.
3. 런타임과 컴파일타임
에디터와 런타임은 대립되는 위치에 있는 용어가 아닙니다.
- 에디터와 런타임의 관계
- "에디터(Editor)"와 "런타임(Runtime)"은 서로 대립되는 개념이 아닙니다.
- 에디터는 유니티에서 개발 작업을 수행하는 인터페이스이고, 런타임은 코드가 실행되는 시점입니다.
- 에디터 내부에서도 런타임이 존재하며, Play Mode로 전환하면 에디터 내에서 런타임 환경이 활성화됩니다.
런타임은 코드가 실행중인 상태를 뜻하며 컴파일타임과 비견되는 개념입니다.
- 런타임 vs 컴파일타임
- 런타임(Runtime): 프로그램이 실행 중인 상태를 말하며, 코드가 실제로 동작하는 시점입니다.
예: Play Mode에서 캐릭터가 움직이거나, 충돌 이벤트가 발생하는 시점.
- 컴파일타임(Compile-time): 프로그램이 실행되기 전에 코드를 컴파일러가 분석하고 기계어로 변환하는 시점입니다.
예: 코드 작성 후 "Build" 버튼을 눌렀을 때 발생하는 과정.
4. 문제 해결 시 주의 사항
문제 발생시 위 차이에 유의하여 검색하면 보다 원활한 해답을 얻기에 유리합니다.
- 문제 해결 팁
- 문제를 해결할 때는 Edit Mode, Play Mode, 런타임, 컴파일타임의 차이를 명확히 구분해야 합니다.
- 이러한 차이를 이해하고 검색하면 보다 정확한 해결 방법을 찾을 가능성이 높아집니다.
- 예:
- 런타임에서 발생한 오류를 조사할 때는 실행 중인 코드와 관련된 키워드로 검색해야 합니다.
- 컴파일 오류는 빌드 과정에서 발생한 문제를 다뤄야 합니다.