문서의 각 단락이 어느 리비전에서 마지막으로 수정되었는지 확인할 수 있습니다. 왼쪽의 정보 칩을 통해 작성자와 수정 시점을 파악하세요.

유니티 | |
정의 | 단일성, 통일, 통합을 뜻하는 영어 단어. 숫자 1을 나타내기도 한다. |
프로그래밍 관련 항목 | 유니티 게임 엔진 사용자 인터페이스 유니티 빌드 |
사용자 인터페이스 (Unity) | 우분투에서 사용하기 위한 셸 인터페이스. 17.10 버전부터는 GNOME으로 다시 돌아왔다. |
특징 (사용자 인터페이스) | 맥OS와 흡사한 인터페이스 사용자의 아이콘 추가가 불가능한 패널과 좌측에 고정된 독 Unity Search Lens라는 고유의 검색 프로그램 런처 |
현황 (사용자 인터페이스) | 공식 지원 중단 후, 프로젝트는 유니티7/유니티 X와 로미리(Lomiri)로 갈라짐. 유니티7/유니티X 데스크톱은 우분투 유니티 개발팀과 Unity7 메인테이너들이 개발. 로미리 데스크톱 환경은 UBports 개발팀이 개발. |
상세 정보 | |
유니티 게임 엔진 | 자세한 내용은 유니티(게임 엔진) 문서를 참고하십시오. |
유니티 빌드 | 비주얼 스튜디오에서 지원하는 C/C++ 등의 컴파일러의 JUMBO 빌드의 다른 말. 유니티 엔진과는 관계가 없다. |
기타 의미 | 어쌔신 크리드: 유니티 (게임) TheFatRat의 곡 대한민국의 그룹가수 (혼성그룹, 걸그룹 UNI.T) 국제우주정거장의 2번째 모듈 창작물 관련 (메이플스토리, 릭 앤 모티, 시드 마이어의 알파 센타우리, 스타필드, Geometry Dash) 슬로바키아의 프로게임단 NCT 127의 콘서트 투모로우랜드와 인섬니악의 콜라보 일렉트로닉 뮤직 페스티벌 |

유니티(Unity)는 단일성, 통일, 통합을 뜻하는 영어 단어이다. 숫자 1을 나타내기도 한다. 이 문서는 주로 프로그래밍 및 정보 기술 분야에서 널리 사용되는 세 가지 주요 개념을 다룬다.
첫 번째는 유니티 게임 엔진으로, 유니티 테크놀로지스가 개발한 인기 있는 게임 엔진이다. 두 번째는 사용자 인터페이스로서, 우분투 운영 체제에서 한때 기본으로 사용된 데스크톱 환경을 가리킨다. 세 번째는 유니티 빌드로, 비주얼 스튜디오 등에서 지원하는 C++ 및 C 컴파일러의 JUMBO 빌드 방식을 일컫는다.
이 외에도 유니티는 어쌔신 크리드: 유니티와 같은 창작물, TheFatRat의 음악, UNI.T와 같은 걸그룹, 국제우주정거장의 모듈 등 다양한 분야에서 사용되는 명칭이다.

유니티 게임 엔진의 개발 환경은 주로 통합 개발 환경인 유니티 에디터를 중심으로 구성된다. 이 에디터는 마이크로소프트 윈도우와 macOS 운영 체제에서 실행되며, 게임 개발에 필요한 대부분의 작업을 하나의 애플리케이션 내에서 처리할 수 있도록 설계되었다. 개발자는 이 에디터를 통해 씬을 구성하고, 게임 오브젝트에 스크립트를 첨부하며, 애니메이션을 제어하고, 사용자 인터페이스를 디자인할 수 있다.
주요 프로그래밍 언어로는 C 샤프가 사용된다. 유니티는 .NET 기반의 스크립팅 백엔드를 제공하여 C# 코드를 게임 로직으로 실행한다. 또한, 비주얼 스튜디오나 JetBrains의 Rider와 같은 외부 코드 에디터와의 연동을 지원하여 코드 작성, 디버깅, 리팩토링 작업의 효율성을 높인다. 에디터 내에는 물리 엔진, 조명 시스템, 파티클 시스템, 오디오 믹서 등 다양한 내장 툴과 컴포넌트가 포함되어 있어 별도의 외부 프로그램 없이도 콘텐츠 제작이 가능하다.
에셋의 관리와 협업을 위해 유니티 애셋 스토어와 유니티 콜라보레이트 서비스를 제공한다. 애셋 스토어에서는 다른 개발자가 제작한 3D 모델, 텍스처, 플러그인, 완성된 툴킷 등을 구매하거나 무료로 다운로드하여 프로젝트에 활용할 수 있다. 유니티 콜라보레이트는 클라우드 기반의 버전 관리 시스템으로, 팀원 간의 코드 및 에셋 동기화를 용이하게 한다.
또한, 다양한 플랫폼을 타겟팅하는 개발을 지원하기 위해 각 플랫폼별 모듈(SDK)을 설치하고 에디터 내 빌드 설정에서 간편하게 전환할 수 있다. 이는 모바일 게임 개발에서 안드로이드의 APK나 iOS의 IPA 파일 생성부터, 콘솔 게임이나 가상 현실 애플리케이션의 배포에 이르기까지 광범위한 개발 워크플로우를 가능하게 한다.
유니티 게임 엔진은 직관적인 시각적 스크립팅 시스템과 강력한 물리 엔진, 다양한 애니메이션 도구를 포함한 포괄적인 기능 세트를 제공한다. 개발자는 C 샤프 프로그래밍 언어를 사용하여 게임 로직을 작성하며, 엔진 내장의 통합 개발 환경을 통해 코드 작성 없이도 많은 요소를 구성할 수 있다. 이는 프로그래밍 경험이 적은 개발자도 접근하기 쉽게 만드는 주요 장점이다.
엔진의 핵심 기능 중 하나는 실시간 3차원 컴퓨터 그래픽스 렌더링을 위한 고성능 렌더링 엔진이다. 이는 조명, 셰이더, 후처리 효과를 포함한 고품질 시각적 결과물을 만들어낸다. 또한, 오디오 관리, 인공지능 경로 탐색, 사용자 인터페이스 구축을 위한 전용 시스템을 갖추고 있어 게임 개발의 모든 측면을 단일 플랫폼 내에서 처리할 수 있다.
애셋 관리와 협업 측면에서 유니티는 효율적인 워크플로우를 지원한다. 애셋 스토어를 통해 모델, 텍스처, 사운드, 완성된 툴 등을 쉽게 구입하고 프로젝트에 통합할 수 있다. 버전 관리 시스템과의 통합 및 유니티 콜라보레이트 서비스를 통해 팀 기반 개발과 원격 협업이 용이하다.
최근에는 실시간 3D 콘텐츠 제작 플랫폼으로의 영역을 확장하며, 가상 현실과 증강 현실 애플리케이션 개발을 위한 최적화된 툴셋을 강조하고 있다. 머신러닝을 위한 지원과 엔터프라이즈 솔루션 도입으로 게임 개발을 넘어 건축, 자동차, 영화 등 다양한 산업 분야에서 활용되고 있다.
유니티 게임 엔진은 다양한 플랫폼에 대한 게임 및 인터랙티브 콘텐츠의 개발과 배포를 지원하는 것이 주요 특징 중 하나이다. 엔진의 크로스 플랫폼 개발 환경을 통해 개발자는 한 번의 제작으로 윈도우, macOS, 리눅스와 같은 주요 데스크톱 운영체제에 동시에 배포할 수 있다.
모바일 게임 시장에서는 iOS와 안드로이드를 완벽하게 지원하며, 웹 브라우저 기반 배포를 위한 WebGL 빌드도 제공한다. 또한 플레이스테이션, 엑스박스, 닌텐도 스위치를 포함한 주요 가정용 게임기 플랫폼으로의 출시도 가능하다.
이 외에도 증강 현실과 가상 현실 콘텐츠 개발을 위한 지원이 두드러지며, Oculus Rift, HTC Vive, 플레이스테이션 VR, 애플 비전 프로 등 다양한 VR 기기와 ARCore, ARKit 같은 모바일 AR 플랫폼을 타겟팅할 수 있다. 이러한 광범위한 플랫폼 지원은 유니티가 인디 게임 개발자부터 대형 게임 개발사까지 널리 사용되는 핵심 이유 중 하나를 형성한다.
유니티 게임 엔진의 비즈니스 모델은 주로 서브스크립션 기반의 라이선스 판매와 애드 네트워크 서비스, 애셋 스토어를 통한 수익 창출로 구성된다. 엔진 자체는 무료로 사용할 수 있는 개인용 플랜을 제공하지만, 연간 매출이나 자금 조달 규모가 일정 기준을 초과하는 조직은 유료 플랜을 구독해야 한다. 유료 플랜은 유니티 프로와 유니티 엔터프라이즈로 구분되며, 더 많은 기능과 전문적인 기술 지원, 성능 분석 도구 등을 제공한다.
수익의 중요한 축은 게임 내 광고 솔루션인 유니티 애즈와 애셋 스토어 마켓플레이스다. 유니티 애즈는 개발자가 게임에 광고를 쉽게 통합하고 수익을 낼 수 있도록 하며, 애셋 스토어에서는 개발자들이 제작한 3D 모델, 텍스처, 사운드, 확장 기능 등을 판매할 수 있다. 유니티는 이 거래에서 일정 수수료를 가져간다. 또한, 멀티플레이어 및 음성 채팅과 같은 고급 온라인 서비스는 별도의 사용량 기반 요금이 부과된다.
이러한 종합적인 수익 모델은 유니티를 단순한 게임 엔진 제공업체를 넘어, 개발자가 게임을 제작, 운영, 수익화하는 전 과정을 지원하는 에코시스템 플랫폼으로 자리매김하게 했다. 최근에는 비게임 분야인 건축 시각화, 자동차, 영화 제작 등의 산업에도 엔진을 확장하며 새로운 시장을 개척하고 있다.

유니티 사용자 인터페이스는 우분투를 위해 개발된 셸 인터페이스이자 데스크톱 환경이다. 우분투는 본래 GNOME을 기본 데스크탑으로 사용했으나, 8.04 버전의 Ubuntu Netbook Remix판에서 처음 채용되었다. 이후 11.04 버전에서 GNOME을 대체하며 우분투의 기본 사용자 환경으로 자리 잡았다. 그러나 17.10 버전부터는 다시 GNOME으로 기본 환경이 돌아갔다.
이 사용자 인터페이스는 맥OS와 유사한 외관을 특징으로 한다. 사용자가 아이콘을 자유롭게 추가할 수 없는 상단 패널과 화면 좌측에 고정된 독(Dock)을 제공하며, Unity Search Lens라는 고유의 통합 검색 런처를 갖추고 있었다.
공식 지원이 중단된 이후, 이 프로젝트는 두 갈래로 발전했다. 하나는 우분투 유니티 개발팀과 Unity7 메인테이너들이 이어가는 유니티7 및 유니티X 데스크톱이고, 다른 하나는 UBports 개발팀이 주도하는 로미리(Lomiri) 데스크톱 환경이다. 이로 인해 원래의 유니티 인터페이스는 커뮤니티 주도로 그 명맥을 이어가고 있다.
유니티 사용자 인터페이스는 우분투를 위해 개발된 데스크톱 환경이다. 본래 우분투는 GNOME을 기본 인터페이스로 사용했으나, 11.04 버전부터 유니티가 기본 환경으로 채택되었다. 그러나 17.10 버전부터는 다시 GNOME으로 돌아왔다.
이 인터페이스의 주요 특징은 맥OS와 유사한 디자인에 있다. 화면 상단에는 사용자가 아이콘을 추가할 수 없는 고정된 패널이 위치하며, 화면 좌측에는 애플리케이션 런처 역할을 하는 고정된 독이 있다. 또한 Unity Search Lens라는 고유의 통합 검색 런처를 제공하여 파일과 애플리케이션을 빠르게 찾을 수 있게 했다.
공식 지원이 중단된 후, 이 프로젝트는 두 갈래로 발전했다. 하나는 우분투 유니티 개발팀과 Unity7 메인테이너들이 이어가는 유니티7 및 유니티X 데스크톱이고, 다른 하나는 UBports 개발팀이 모바일 및 컨버전스 환경을 위해 개발하는 로미리 데스크톱 환경이다. 이로 인해 원래의 유니티 인터페이스는 다양한 형태로 진화하고 있다.
우분투의 기본 데스크톱 환경으로서의 공식 지원이 중단된 이후, 원래의 유니티 프로젝트는 주로 두 가지 방향으로 파생되어 개발이 계속되고 있다.
하나는 유니티7/유니티X 데스크톱이다. 이는 우분투 유니티 개발팀과 기존 유니티7 메인테이너들이 주도하는 프로젝트로, 전통적인 유니티7 코드베이스를 현대화하고 유지보수하는 데 중점을 둔다. 이 프로젝트는 공식 지원이 끝난 후에도 유니티 인터페이스를 선호하는 사용자들을 위한 공식적인 변형판 역할을 하고 있다.
다른 하나는 로미리(Lomiri) 데스크톱 환경이다. 이는 UBports 개발팀이 주도하며, 원래 우분투 터치를 위해 개발된 유니티8의 정신을 이어받아 모바일 및 컨버전스 디바이스에 초점을 맞춘 환경이다. 로미리는 스마트폰과 태블릿 컴퓨터 같은 터치 기반 장치에서의 사용을 더욱 최적화하는 방향으로 발전하고 있다.
이처럼 유니티는 단일한 공식 프로젝트로서의 생명주기를 마친 후, 데스크톱 중심의 유지보수 계승 프로젝트와 모바일/컨버전스 중심의 재창조 프로젝트로 나뉘어 그 유산을 이어가고 있다.

유니티 빌드는 C나 C++ 언어로 작성된 프로젝트를 컴파일할 때 사용되는 기법 중 하나로, JUMBO 빌드라고도 불린다. 이 기법은 비주얼 스튜디오와 같은 통합 개발 환경에서 지원하며, 유니티 게임 엔진과는 직접적인 관련이 없다.
전통적인 컴파일 방식은 각 소스 코드 파일(.c, .cpp)을 개별적으로 컴파일하여 목적 파일(.obj)을 생성한 후, 링커가 이들을 연결하여 최종 실행 파일을 만든다. 이 과정에서 각 소스 파일이 참조하는 헤더 파일의 내용이 반복적으로 포함되어 컴파일되기 때문에, 프로젝트 규모가 커질수록 컴파일 시간이 길어지는 단점이 있다. 유니티 빌드는 이러한 중복 작업을 줄이기 위해 여러 소스 파일을 하나의 큰 파일로 합쳐서 컴파일하는 방식을 취한다.
개발자는 IDE의 프로젝트 설정에서 유니티 빌드 사용 옵션을 활성화하기만 하면 된다. 그러면 시스템이 자동으로 소스 파일들의 종속성을 분석하여 하나의 통합 소스 파일(예: unity_xxxx.cpp)을 생성하고 컴파일을 수행한다. 이 방법을 사용하면 헤더 파일의 중복 처리가 크게 줄어들어 빌드 시간을 단축할 수 있으며, 디버거를 사용할 때도 원본 소스 파일 단위로 디버깅이 가능하다.
유니티 빌드는 컴파일 시간을 단축하는 데 효과적인 방법이다. 여러 개의 소스 파일을 하나의 큰 파일로 합쳐 컴파일하기 때문에, 중복되는 헤더 파일의 처리를 줄이고 링크 과정을 간소화할 수 있다. 이는 대규모 C 또는 C++ 프로젝트에서 빌드 속도를 크게 향상시킬 수 있는 주요 장점이다. 또한, IDE가 자동으로 처리해주기 때문에 개발자가 수동으로 파일을 병합하는 번거로움을 덜어준다.
그러나 유니티 빌드에는 몇 가지 주의할 점이 있다. 모든 소스 파일이 하나로 합쳐지기 때문에, 전처리기 매크로나 조건부 컴파일 지시문이 예상치 못한 방식으로 상호작용할 수 있어 컴파일 오류가 발생할 위험이 있다. 또한, 디버거를 사용할 때 원본 소스 파일과의 매핑이 대부분 정상적으로 이루어지지만, 복잡한 상황에서는 디버깅이 어려워질 수 있다.
특정 라이브러리나 코드는 유니티 빌드와 호환되지 않을 수 있다. 예를 들어, Winsock과 Winsock2 같이 충돌 가능성이 있는 헤더를 동시에 사용하는 프로젝트에서는 문제가 발생할 수 있다. 이러한 경우, 문제가 되는 소스 파일을 유니티 빌드에서 제외시키거나 별도의 폴더로 분리하는 등의 추가 설정이 필요하다. 따라서 프로젝트에 도입하기 전에 코드베이스의 구조와 종속성을 신중히 검토해야 한다.

영단어 '유니티'(Unity)는 '단일성', '통일', '통합'을 뜻하는 영어 명사이다. 이는 여러 요소가 하나로 합쳐져 조화를 이루는 상태를 의미하며, 사회적, 정치적, 조직적 맥락에서 널리 사용되는 개념이다. 또한, 숫자 1을 나타내는 용어로도 쓰인다.
이 기본적인 어의에서 파생되어, '유니티'라는 명칭은 다양한 분야의 특정 프로그래밍 도구나 소프트웨어의 이름으로 채택되었다. 대표적으로 유니티 게임 엔진이 있으며, 이는 전 세계적으로 널리 사용되는 크로스 플랫폼 게임 엔진이다. 또한, 우분투 운영 체제의 과거 기본 사용자 인터페이스였던 유니티도 있다.
이 외에도 유니티 빌드라는 소프트웨어 개발 기법이 존재하며, 어쌔신 크리드: 유니티와 같은 비디오 게임 제목, TheFatRat의 음악 곡, UNI.T와 같은 걸그룹의 이름 등 다양한 창작물과 엔터테인먼트 분야에서 이 단어가 사용되고 있다. 이처럼 '유니티'는 그 본래 의미인 '하나됨'을 상징하면서도 각기 다른 분야에서 독자적인 정체성을 가진 프로젝트나 작품의 이름으로 자리 잡았다.
창작물 분야에서 유니티는 다양한 작품의 제목이나 설정으로 등장한다. 어쌔신 크리드: 유니티는 프랑스 혁명을 배경으로 한 어쌔신 크리드 시리즈의 게임이다. 메이플스토리에는 유니티 프로젝트라는 세계관 내 중요한 설정이 존재하며, 릭 앤 모티에서는 정신기생형 군집생물의 이름으로 등장한다.
시드 마이어의 알파 센타우리에서는 인류의 마지막 희망이었던 우주선 UNS 유니티가 게임의 서사적 시작점을 제공한다. 스타필드에서는 게임 내 메인 퀘스트와 깊게 연관된 핵심 개념으로 등장한다. Geometry Dash에는 Unity라는 이름의 유명 온라인 레벨이 있다.
음악 분야에서는 TheFatRat의 곡 'Unity'가 있으며, 대한민국에서는 1998년 데뷔한 혼성 그룹 유니티 (음악 그룹)과 2018년 결성된 걸그룹 UNI.T가 활동했다. 또한 NCT 127의 콘서트 'NEO CITY - THE UNITY'와 투모로우랜드 및 인섬니악이 주최한 일렉트로닉 뮤직 페스티벌 'UNITY'도 존재한다.
음악 및 엔터테인먼트 분야에서 유니티는 여러 창작물의 제목이나 콘텐츠의 이름으로 사용된다. 독일의 일렉트로닉 뮤직 프로듀서 TheFatRat은 자신의 대표곡 중 하나를 'Unity'로 명명했다. 대한민국의 음악 산업에서는 1998년 데뷔한 4인조 혼성 힙합 그룹 유니티가 활동했으며, 이후 2018년에는 엠넷의 서바이벌 프로그램을 통해 선발된 여성 아이돌 그룹 UNI.T가 데뷔했다.
콘서트 및 대형 페스티벌의 명칭으로도 활용된다. 대한민국의 보이그룹 NCT 127은 'NEO CITY - THE UNITY'라는 이름의 월드 투어 콘서트를 개최했다. 또한 글로벌 일렉트로닉 뮤직 페스티벌 브랜드인 투모로우랜드와 인섬니악이 협업하여 'UNITY'라는 이름의 특별 뮤직 페스티벌을 열기도 했다.
e스포츠 영역에서는 슬로바키아의 프로게임단 UNiTY esports가 존재한다. 이 팀은 다양한 게임 종목에 선수를 보유하며 국제 대회에 참가하고 있다.