유니티(게임 엔진)

덤프버전 :

파일:나무위키+하위문서.png   하위 문서: 유니티(게임 엔진)/도움말



Unity
유니티

파일:유니티 로고.svg파일:유니티 로고 화이트.svg
개발사
Unity Technologies
출시일
2005년 6월 8일
최신 버전
2023.1.17 (2023/10/17)
유형
게임 엔진
기반 언어
런타임용
C, C++[1]
스크립팅용
C\# (지원 중)
UnityScript (2018.2 버전부터 지원 중단)[2]
Boo (5.0 버전부터 지원 중단)[3][4]
그래픽
API

DirectX[5] |Vulkan | Metal | OpenGL[6] | WebGL
타겟 플랫폼[7]
PC
Windows | macOS | Linux
콘솔
플레이스테이션 3 | 플레이스테이션 4 | 플레이스테이션 포터블 | 플레이스테이션 비타 | 플레이스테이션 5
Xbox 360 | Xbox One |
Wii | Wii U | New 닌텐도 3DS | Nintendo Switch
모바일
iOS | Android | Tizen | UWP
VR
HMD

Oculus Rift | HTC VIVE | PlayStation VR
Windows Mixed Reality | 구글 카드보드 | 기어 VR | 구글 데이드림
AR
HMD

ARKit | ARCore | Vuforia | Microsoft HoloLens
TV
안드로이드 TV | 삼성 스마트 TV | tvOS
클라우드
Stadia
자동차
테슬라 소프트웨어
요금[8]
Personal
무료[9]
Plus
월 $40[10]
Pro
월 $150[11]
웹사이트
파일:홈페이지 아이콘.svg | 파일:홈페이지 아이콘.svg한국
[1] 게임 엔진은 C++로 개발, API는 C#을 스크립팅 언어로 활용하여 작성한 형태를 띄고 있다.[2] JavaScript를 기반으로 하는 유니티 엔진의 자체 스크립트였으나, 2017 버전부터 서서히 퇴출 수순을 밟더니 2018.2 버전부터 지원이 완전히 중단되었다.[3] 이전에는 Boo라고 하는 언어도 지원했고 지금도 쓸 수는 있으나 5.0 버전으로 넘어오면서부터 API 문서를 지원하지 않는다고 공지하였다. 사실상의 퇴출 수순. 사실 Boo는 Python과 굉장히 유사한 언어고 기존에는 JS와 함께 여타 언어를 쓰던 유저들을 잡을 목적으로 지원했지만 그래도 제법 쓰고 있는 JS에 비해 사용률이 매우 저조했기 때문에... 현재 이곳에서 볼 수 있는 사용 가능 스크립트에도 아예 빠져있다.[4] 사실, .Net 기반 언어이면 모두 사용 가능하다. F#도 가능하다는 이야기. 추가로, Python을 사용할 수 있게 해주는 플러그인도 있다.[5] DX 9/10/11/12[6] OpenGL ES 포함[7] 출처[8] 출처[9] 상한선 연매출 및 자본액 $100,000[10] 상한선 연매출 및 자본액 $200,000.[11] 상한선 연매출액 및 자본액 제한 없음.

1. 개요
2. 트레일러/데모
3. 역사
3.1. Unity
3.2. Unity 2
3.3. Unity 3
3.4. Unity 4
3.5. Unity 5
3.6. Unity 2017
3.7. Unity 2018
3.8. Unity 2019
3.9. Unity 2020
3.10. Unity 2021
3.11. Unity 2022
3.12. Unity 2023
4. 장단점
4.1. 장점
4.1.2. 간편한 빌드
4.1.3. 낮은 요구 사양
4.1.4. 에셋 스토어
4.1.5. 넓은 사용자 층과 풍부한 관련 자료
4.1.6. 저렴한 라이센스 비용
4.2. 단점
4.2.1. 빈약한 고급 기능
4.2.2. 제한적인 멀티스레드 기능
4.2.3. GC 스파이크 문제
4.2.4. 라이센스 문제
4.2.5. 소스 코드 비공개
4.2.6. 보안성 문제
5. 다른 개발도구와의 비교
5.1.1. 유니티 → 언리얼 엔진 (4 이후) 목록
5.1.2. 언리얼 엔진 (4 이후) → 유니티 목록
5.2. 유니티 vs 크라이엔진
5.3. 유니티 vs 플래시 몰힐(Molehill)
5.4. 유니티 vs Cocos2d-x
5.5. 유니티 vs 쇼크웨이브
6. 논란
7. 기타



1. 개요[편집]


2004년 8월 Unity Technologies가 개발한 게임 엔진. Unity Technologies는 2004년 덴마크 코펜하겐에서 설립되었다. 현재는 미국 샌프란시스코로 본사를 이전했다. 주로 저사양/소규모 게임의 개발에 적합하며, 2005년 6월 8일에 처음 발표되었다.


2. 트레일러/데모[편집]




유니티 엔진으로 구현한 레이트레이싱 데모
}}}
실시간 시네마틱 티저 트레일러


파일:i8291144862.jpg

유니티 엔진 2019.3.14f1의 HDRP[12] 테크데모 SU:A(수아) 3.0


3. 역사[편집]


본래는 어도비 플래시가 한창 잘나가던 시절 플래시로 구현이 힘든 3D 시장 공략을 노린 3D 타겟 웹미디어 제작툴이었다. 초기 유니티 엔진은 멀티플랫폼 중 하나로 브라우저 역시 주력 지원했고, '유니티 웹 플레이어'라는 이름으로 현재까지 남아 있다. 하지만 전문적인 게임엔진에 비해 비교적 단순하고 사용법이 쉽다는 점에 착안한 개발자들이 이를 이용해 게임을 만들기 시작하면서 아예 게임 엔진으로 방향이 선회되었다. 언리얼 엔진의 퍼블리싱 라이선스 옵션 도입 전[13]에는 유니티의 라이선스 비용이 매우 저렴하고, 여타의 고급 엔진들로 대형 프로젝트를 개발하는 것에 비해 단순한 게임들을 만들어 내기에는 비교적 쉬운 편이라서 아이폰을 필두로 한 스마트폰 게임이 새로운 블루오션으로 떠오르던 태동기에 절묘한 타이밍으로 선점하여 모바일에서 승승장구했었다. Shiva3D와 같은 유사한 경쟁자들도 있었으나, 애셋 스토어라는 생태계의 조성에 힘입어 넓은 사용자 풀이 형성되면서 막 모바일 게임 시장이 확장되던 시기에 독보적으로 치고 나아갔다.

앞에서 언급한 플랫폼 이외에 VR HMD 또는 AR HMD 지원 기기 등을 비롯하여 현세대에 해당하는 대부분의 플랫폼으로 개발 가능한 게임 엔진이 되었다.

하지만 언리얼 엔진이 모바일 게임 시장까지 발을 넓혀가면서 그 입지가 서서히 양분화되어가는 추세로, 스마트폰도 점차 고사양화가 되며 고품질 AAA급 모바일 게임들은 언리얼 엔진을 사용하고, 저사양/소규모 프로젝트에는 유니티가 많이 쓰이는 상황이다. 언리얼 엔진이 교육정책에 힘을 쏟고 있는 것과 마찬가지로 유니티 역시 교육정책에 신경을 쓰고 있다.

또한 단순히 게임 엔진으로서 남지 않으려는 듯, 최근 여러 분야의 기술들을 확장 지원하고 시각효과 기업들을 인수합병하는 등 공격적인 확장 정책을 보이고 있다. 예를 들어, Pytorch를 통하여 게임 엔진 속의 오브젝트에게 머신러닝을 시키는 기능을 통합할 수 있는 ML-Agent 라던가, 자동차 및 제조산업을 위한 AR/VR을 제공하는 Unity Industrial Collection 라던가.

2021년만 해도 '아바타', '반지의 제왕', '왕좌의 게임' 등의 VFX 효과를 담당했던 웨타 스튜디오, 원격 데스크탑 및 스트리밍 기술기업인 Parsec, AR 건축 설계 기술기업인 비주얼라이브, 원격 동기화 협업 기술기업인 싱크스케치 등 다양한 분야의 가상현실 기업들을 흡수하고 있다.

유니티로 만들어진 게임영상은 유튜브 Unity GDC 채널에서 볼 수 있다. 공식 행사에서 뽑힌 퀄리티 높은 게임들을 묶어놓은 영상들이다.

공식 네이버 카페도 있다. 2018년 5월 말부터 한글 패치를 제공하고 있다.


3.1. Unity[편집]


2005년 6월 8일에 출시된 유니티 엔진의 최초 정식 버전으로, 초창기에는 macOS만 지원했으나 나중에 Windows와 PC 기반의 웹 브라우저들도 추가 지원하게 되었다.


3.2. Unity 2[편집]


2007년에 출시된 첫 메이저 업그레이드 버전으로, 3D 기능 강화와 공동 작업 기능, 비디오 재생 기능을 비롯하여 50여가지의 새로운 기능들이 추가되었다.

2008년에 애플의 앱 스토어가 런칭되면서 iPhone OS(현 iOS)를 추가 지원하여 유니티 엔진으로 개발된 게임을 앱 스토어로도 배포할 수 있게 되었다.


3.3. Unity 3[편집]


2010년 9월에 출시된 버전으로, 기존의 PC 플랫폼과 iPhone OS(iOS)뿐만 아니라 Android 같은 모바일 플랫폼, PS3, Xbox 360, Wii 같은 콘솔 게임기 등의 다양한 플랫폼으로 확장되었고 동시에 전세계적으로 스마트폰의 대중화와 맞물려서 유니티 엔진으로 개발된 게임들이 급격하게 늘어났다.

현재 유니티 엔진 버전별로 모아 놓은 공식 아카이브에서는 2011년 7월 26일에 발표된 3.4 버전부터 다운로드 받아 사용할 수 있다.
5.0.0부터 다운로드 받아 사용할 수 있게 바뀌었다


3.4. Unity 4[편집]


2012년 11월 13일에 출시된 버전으로, DirectX 11을 지원하기 시작했고 새로운 애니메이션 도구가 추가되었다.

2013년에 페이스북이 유니티 엔진 기반의 게임을 위한 개발 도구를 통합함으로써 유니티 엔진으로 개발한 게임을 페이스북에 등록하기가 쉬워졌다. SNS 연동으로 다른 사용자에게 게임 추천 기능을 제공하여 접속할 수 있는 일종의 광고 캠페인 기능이 추가되었다.


3.5. Unity 5[편집]


2015년 3월 3일에 정식 출시된 버전으로, GDC 2015에서 언리얼 엔진 4의 완전 무료화에 이어 유니티도 개인용 무료화를 선언하였다. 그러나 완전 무료는 아니고 여러가지 조건에 따른 제약 사항이 따른다.

2015년 9월 8일에 발표된 5.2 버전부터는 Windows 10 유니버셜 앱 플랫폼을 추가 지원하며, 코드 작성에 있어서 비주얼 스튜디오JetBrainsRider와의 연동이 가능하다.


3.6. Unity 2017[편집]


2017년 7월 10일에 정식 출시된 버전으로, Unity의 버전 이름이 연도 방식으로 변경되었을 뿐만 아니라 마이너 업데이트 버전의 형식도 2017.0.0 버전이 아니라 2017.1.0 버전부터 출발하는 것으로 변경되었다. 이후에 라이선스 정책도 변경되었다.

2017의 특정 버전부터 32비트 에디터를 더 이상 지원하지 않으므로 32비트에서 사용하려면 5 버전을 사용해야 한다.


3.7. Unity 2018[편집]


2018년 5월 2일에 정식 출시된 버전으로, 3D 그래픽 성능이 크게 개선되었고 잡 시스템과 ECS를 지원하여 멀티스레드를 이용한 포크-조인 방식의 병렬 프로그래밍이 유니티 스크립트에서도 사용 가능해졌다.


3.8. Unity 2019[편집]


2019년 4월 15일에 정식 출시된 버전으로, 경량 렌더 파이프라인이 정식으로 적용되어 2018 버전에 이어서 3D 그래픽 성능의 최적화가 개선되었고 버스트 컴파일러가 정식으로 적용되어 컴파일 속도가 개선되었다. 가비지 컬렉션 이슈가 일부 개선되었다.

안드로이드의 경우 64비트가 추가. 64비트 대응 추가 자체는 유니티 2017에도 비슷한 시기에 나온 2017.4.16f1부터 추가되었는데, 플레이 스토어에서 64비트 지원을 의무화하는[14] 구글 정책의 여파라고 한다.# 다만, ARM 64비트 대응 과정에서 안드로이드의 x86_64 지원 여부때문에 사용 빈도로 대응 여부를 검토한 결과, 안드는 x86 쓰는 기기가 거의 없어 2019.3 버전부터 x86을 아예 빼버렸다. 그래서 안드로이드에서 유니티 엔진 쓰는 게임은 x86을 아예 미지원하는 경우가 늘었고[15] 이는 플레이 스토어의 어플리케이션 업데이트시 64비트 지원이 의무화된 2019년 8월부터 본격적으로 증가했다.


3.9. Unity 2020[편집]




3.10. Unity 2021[편집]




3.11. Unity 2022[편집]




3.12. Unity 2023[편집]




4. 장단점[편집]



4.1. 장점[편집]


유니티 엔진의 장점은 크게 다음과 같이 살펴볼 수 있다.
시간이 지난 요즘에는 여타 게임 엔진들도 엇비슷하게 따라간 상황이라 유니티만의 특별한 장점으로 보기 힘들어졌다.


4.1.1. WYSIWYG[편집]


툴의 GUI가 아주 직관적이다. WYSIWYG 방식의 툴은 사용자가 직관적으로 내부 에셋들의 위치를 바꾸거나 적용하거나, 에셋의 임포트 등을 매우 손쉽게 가능하며 유니티가 소규모/인디 게임에 폭발적인 인기를 얻게 된 가장 큰 비결이었다. 게임 엔진에서 유저 친화적 UI가 얼마나 중요한지 상징적으로 보여줬으며, 향후의 게임 엔진들에 매우 많은 영향을 주었다.[16]


4.1.2. 간편한 빌드[편집]


버튼 몇 번만 누르면 다양한 플랫폼으로 빌드가 가능하다. 그러나 플랫폼별 특성에 맞게 어느 정도 조정작업 및 별도의 최적화도 필요하다. 플랫폼별로 특징이 다르므로 당연한 일이며 유니티를 쓴다고 해서 그런 조정작업이나 최적화가 자동으로 되지는 않는다. 게임 하나 만들어 놓고 별다른 노력도 없이 다양한 플랫폼으로 출시할 수 있는 건 아니니 반드시 유의해야 한다.


4.1.3. 낮은 요구 사양[편집]


버전 업 되면서 요구 사양이 점점 높아졌지만 AAA급 고퀄리티 게임을 개발할 수 있는 다른 메이저 게임 엔진에 비하면 비교적 가벼운 편이라 저사양 PC에서도 저사양 타겟의 간단한 게임 정도는 무리없이 개발이 가능하다. 다만, 어디까지나 다른 메이저 게임에 비해 가볍다는거지, 여기서도 개발자의 최적화 능력이 부족하다면 요구사양에 비해 버벅이는 문제점이 생길수도 있다.


4.1.4. 에셋 스토어[편집]


인디 게임개발자들이나 초보 개발자들에게 유리한 이점을 제공한다. 바로 에셋 스토어의 존재다. 각종 리소스부터 스크립트, 플러그인으로 사용할 수 있는 다양한 기능, 미리 만들어 놓은 AI 등 수많은 기능들을 이용자들이 올려서 서로 사고 팔 수 있는 장터를 제공한다. 이 정책은 크게 성공하여 유니티 붐을 일으키는 데 일조했다. 사용자가 많을수록 에셋 스토어에 더 많은 상품들이 올라오고, 그것을 본 사람들은 유니티 사용에 긍정적으로 접근하게 되고, 신규 유입된 사람들이 다시 스토어에 유니티 기능을 만들어 올리는 등 선순환 과정이 형성되어 있다. 그리고 유니티에서 운영하는 인디, 초보자들을 지원하는 프로그램 등 관련된 다양한 행사가 진행된다는 점도 강점이다. 엔진 자체의 확장성과 맞물려 게임 이외에 방송, 애니메이션, 툴 등 3D 게임 엔진으로 할 수 있는 각종 에셋들이 존재하며, 찾아보면 이런 것도 있나 싶을 정도로 방대한 생태계를 자랑한다.

웹사이트

유니티를 다른 엔진들에 비해 우월한 지위에 올려 준 가장 큰 요소이다. 디자인, 모델링부터 유니티에 기능을 추가하는 플러그인에 해당하는 에셋까지 누구나 무료로 배포하거나, 유료로 판매할 수 있는 에셋용 앱스토어이다. 코딩에 익숙하지 않은 디자이너들이나 리소스 제작이 힘든 개발자들이 이 에셋 스토어에서 구매하거나 무료로 다운받은 에셋을 사용하여 프로젝트를 수월하게 진행할 수 있도록 도와준다.
항목
에셋
GUI
NGUI, Scaleform[17], Noesis GUI[18], ...
2D
2D Toolkit, ...
Shader
Substance, Shader Forge, ...
Script
Playmaker, uScript, ...
AI
Simple Path, ...
Tween
iTween, LeanTween, ...
Modeling
UModeler, Simplygon, GameDraw, ProBuilder 2, ...
에셋 스토어 폴더에 파일이 너무 많으면 로드가 매우 느려질 수도 있다. 그리고 빈 회색 화면만 보인다면 edit > project setting > player에서 use Direct3D 11을 체크 해제해 보자.


4.1.5. 넓은 사용자 층과 풍부한 관련 자료[편집]


개발 초보자나 비 프로그래머에서부터 고급 개발자까지 사용자층이 다양하고 그 수가 많다. 특히 입문 장벽이 낮기 때문에 초보자 인구가 많은데, 이 때문에 인터넷 어디를 검색해도 관련 자료가 넘쳐난다.

마이너하거나 사용자층이 한정될수록 인터넷 상에 자료들이 적고 제작사에서 제공하는 도움말이나 공식포럼이 고작인 경우가 많은데, 이는 사용자 수 자체가 적은 것도 있고, 사용자들이 이미 대부분 고여버려서 어지간한 상황에서 만나는 장애물들은 알아서 이미 해결가능하기 때문인 경우도 있다. 반면 유니티의 경우엔 정말 생초보들을 위한 그림책 수준의 강의부터 오만 잡다한 에러의 해결법 및 흔히 마주치는 실수, 사람들이 즐겨 사용하는 베스트 프랙티스까지 매우 많은 정보가 인터넷에 돌아다니고 있으며, 이것들이 엔진을 배우는 데 큰 도움이 된다. 그 형태도 블로그, 유튜브 강좌나 튜토리얼, 인터넷 강의, 소스 공유 사이트의 공개된 실습 코드등 매우 다양하기 때문에 동일한 기술을 배우는 데도 자기가 알아듣기 쉽고 따라하기 편한 매체를 고를 수 있다.

유니티는 엔진의 변화가 빠르고 지원 API 변화가 잦아서 공식 홈페이지의 도큐먼트의 질에 있어 언리얼 엔진 도움말이 더 좋다는 평이 많은데, 인터넷에서 찾을 수 있는 수많은 실제 예제들이 이러한 불리함을 보충해 주고 있다. 아직까지도 1인 개발자에게는 유니티 엔진이 더 유리한 이유다.


4.1.6. 저렴한 라이센스 비용[편집]


2017 버전 이후 영구 라이센스는 없어졌으나 개인 라이센스는 여전히 무료로 유지하고 있으며, 연매출 20만불 이하일 경우 월 40,000원대, 그 이상은 140,000원의 라이센스 비용을 받는다. 매출이 10만 달러 이하일 경우는 무료 라이센스를 사용할 수 있다. 1인 개발자의 경우, 여기에서 의미하는 10만 달러는 순수하게 유니티 엔진을 사용하여 번 돈을 의미한다. 예를 들어 유니티와 전혀 관계 없는, 연봉 10만 달러 이상의 금융 회사에 다니는 회사인이 있다고 가정해 보자. 그 회사인이 취미로 유니티를 이용하여 개인적으로 게임을 개발할 경우, 그 게임이 연 매출 10만 달러 이하라면 여전히 유니티를 무료로 사용하여 게임을 만들 수 있는 것이다. 이러한 값싼 라이센스 비용은 각종 엔진들이 무료화하는 데 큰 영향을 끼쳤으며, 게임이 출시되더라도 별도의 라이센스 비용을 청구하지 않는다. 이는 개발의 민주화라는 모토와 맞물려 게임개발의 대중화 및 인디/소규모 개발팀이 많이 생겨나는 계기를 만들어냈다.

이러한 장점들 덕분에 벤처 기업이나 소규모 스타트업 창업을 하는 사람들 입장에서는 굉장히 유용하게 사용할 수 있으며, 2D 기능 역시 최신 기능들이 계속 추가되고 있기에 2D, 3D 모두 개발이 가능하다. 특히 소규모/인디 개발에만 한정되던 초기와는 다르게 저사양 게임이지만 비교적 개발자본이 어느 정도 들어가는 규모의 게임까지, 그리고 장르 역시 MMORPG에서 전략/퍼즐/액션 등 다양하게 개발되고 있다.

기본적으로 연수입/자본금 10만 달러 이하의 경우에는 완전 무료이지만, 그 이상부터는 개발자 머릿수(Seat)당 월간 라이센스 비용의 형태로 비용이 발생한다. 연수입/자본금 20만 달러 이하의 경우에는 월 40달러 (1년 납부시) 이며 그 이상의 경우 무제한 라이센스인 Unity Pro로서 월 150달러를 지불해야 한다. 여기에 만일 추가로 유료 플러그인을 구매할 경우 각 플러그인의 라이센스 정책에 따라 일시불 혹은 구독료가 추가로 발생할 수 있다.

유료 라이센스의 비용이 상당한 편이지만 여기서 생각해야 할 점은, 유료 라이센스는 연 10만 달러[19]가 넘는 수익규모를 가진 개발팀에 적용되는 것이며, 이 정도 규모의 개발팀이면 시스템이나 개발툴을 갖추는 데에도 적지 않은 비용이 필요하고 팀을 운영하기 위한 고정비가 요구된다는 점을 감안해야 한다. 연 1억원이 넘는 매출을 나오면서 개발자 1인당 월 40달러 추가 지출을 못하는데, 필요한 개발자 seat 수가 대단히 많으며, 소스 코드 레벨 커스터마이징이 필요한 블록버스터 인디 팀은 사실상 없다.

경쟁 프로그램 중 하나인 언리얼 엔진은 기본 고정 라이센스 비용을 완전 무료화했고 매출에 대한 비율 로열티만 지불하는 정책으로 바뀌었다. 언리얼 엔진 5 발표 이후 한 프로젝트당 $1,000,000 이상의 총수익[20]을 벌지 않았다면 로열티를 지불하지 않는, 사실상의 전면 무료 선언을 했기 때문에 상대적으로 라이센스 매출액 상한이 낮은 유니티가 더 라이센스 비용을 지불하게 되는 등의 엎치락뒤치락하는 부분이 생겼다. 유니티는 매출과 자본액에 맞춰 고정 지출이 나가는 라이센스라는 단점을 가지고 있다. 만약에 언리얼 엔진으로 로열티 지불 기준을 넘은 그 이상의 천문학적 수준으로 수익을 벌었을 경우에는 퍼센트로 지불해야하는 언리얼보다 유니티 엔진이 경제적이라고 생각할 수 있으나 그런 수익을 벌게 된다면 라이센스 옵션을 로열티를 지불하지 않는 맞춤형 라이센스로 재계약[21]해서 로열티 지불을 전혀 하지 않기 때문에 결국 언리얼 엔진이 더 경제적이게 된다.

4.2. 단점[편집]



4.2.1. 빈약한 고급 기능[편집]


간편하게 적용할 수 있는 고급 기능이 별로 없다. 고급 기능을 활용하기 위해서는 개발자의 삽질이 필수적이다. 엔진 자체의 최적화가 아직 부실한 탓인지 일부 기기에선 프레임 드랍이 일어나기도 한다. 무엇보다 한국어 지원이 상당히 부실하다. 한국인으로서는 큰 걸림돌. 윈도우에서 처음 구동시 사용자 계정명이 한글로 되어있으면 제대로 실행조차 되지 않는다. 더욱이 기본적으로 마이크로소프트 계정 연동으로 인해 계정명이 기본적으로 실명으로 생성되는 윈도 8 유저들이라면 유니티 하나 돌리겠답시고 새 계정을 만드는 곤혹스러운 과정을 치러야 한다. 청강대에서 열렸던 유니티 로드쇼 2015에서 올해 내로 중국어를 제치고 한국어를 정식 지원하기로 언급했지만, 결국 3년 뒤 2018년 5월 경에서야 2018.1 버전 출시와 동시에 한글판 베타 버전이 출시되었다. 유니티 한글화 관련 소식


4.2.2. 제한적인 멀티스레드 기능[편집]


유니티 API가 메인 스레드 외에서는 호출이 안전하지 않기 때문에[22] 제한적으로만 멀티 스레드를 적용할 수 있으며 결국 이를 통해서 높은 성능 향상을 꾀할 수는 없다. 유니티 API가 없는 순수한 연산 집약적 동작을 병렬 처리하는 것인데, 이는 전체 동작에 대한 완전 병렬화가 아니다. 또한 연산 관련 코드에서 API를 통하지 않는 경우는 많지 않으면서, 대부분의 연산 능력을 API에서 요구하기 때문. 즉, 병렬화가 되는 부분이 극히 일부이기 때문에 높은 이득을 취할 수는 없다. 암달의 법칙 참고.

설령 어찌해서 구현했다 해도 노력 대비 얻는 성능 향상이 크지 않아서 이를 동적 로딩(프리로드)에 응용하는 경우도 볼 수 있는데, 마찬가지로 유니티 API를 멀티스레드에서 안전하게 사용할 수 없으니 완벽한 동적 로딩을 구현하기는 힘들고 성능 향상도 기대에 미치지는 못한다. 즉, 고도의 편법을 완벽하게 익혀서 문제가 될 부분을 최소화하여 적용하지 않는 이상, 성능 이슈가 될 가능성이 높은 부분을 병렬화하지 못해 0번 코어만 죽어라 갈구는 경우가 될 가능성이 높다는 것이다.

실제로 유니티 엔진 4로 개발된 로켓 발사 시뮬레이션 게임인 Kerbal Space Program은 시뮬레이션 특성상 물리연산을 엄청 빡세게 하는데 이 물리연산 스레드를 코어 하나가 전부 감당해야 하기 때문에 어디가서 성능 좀 된다 하는 CPU도 부품이 많아지면 프레임을 제대로 못뽑는 상황이 무조건 발생한다. 이때문에 개발자가 유니티 엔진 5로 엔진을 갈아타는(!) 작업을 완료해 업데이트를 했지만, 그나마도 우주선 하나당 코어 하나씩 분담시키는 수준이 한계라고 밝혔다. 멀티스레딩이 안되어서 생기는 문제의 아주 대표적인 예. 물론, 이 문제는 KSP 못지 않게 연산량이 드럽게 많은 시티즈: 스카이라인도 마찬가지인데[23], 이 게임은 아예 유니티 본사 측에서 기술 지원을 해줬다(...). 그나마도 8스레드까지 인식하지만 실질적인 스레드 분담은 4스레드까지. 그래서 짝퉁 멀티코어 지원이라고 까이고 있다.

다수의 저성능 코어를 빅 리틀 솔루션까지 적용해가며 끌어모은 모바일 환경은 물론, 각 코어당 성능이 높은 편인 PC에서까지 영 좋지 않은 자원 활용도를 보일 수밖에 없다. 따라서 일정 수준 이상의 규모가 되는 게임을 개발하기에는 아쉬움이 크다.

다행히 2018.1 버전부터 C# 잡 시스템(JobSystem)[24]과 ECS[25]이라는 방법으로 멀티스레드를 이용한 병렬 처리를 지원한다. 하지만, 아직 문제가 많고 불안정해서 많은 개발자들이 지켜보고 있는 상황이다.


4.2.3. GC 스파이크 문제[편집]


유니티 엔진이 스크립팅용 언어로 C\#을 사용하는 만큼 실제 실행과정에서는 .NET 런타임의 쓰레기 수집기가 메모리관리를 담당하고 있으며 유니티 측에서는 이에 대해서 가상머신의 쓰레기 수집기가 담당하는 관리 영역과 쓰레기 수집기가 담당하지 않는 비관리 영역을 구분하고 있다.

가비지 컬렉터가 메모리 관리를 하기 때문에 개발하는 개발자들은 메모리 관리에 덜 신경써도 되지만 가비지 컬렉션 자체가 상당한 자원이 드는 작업이라 관리가 필요한 메모리 영역이 늘어날수록 가비지 컬렉션이 일어나는 와중에 발생한 성능 저하로 인한 GC Spike등의 성능 문제가 자주 발생하며 이와 관련된 대표적인 게임이 Escape from Tarkov다.

사실 유니티는 일단은 가비지 컬렉션 관련 기능을 수동으로 제어하거나 심지어는 C/C++로 이루어진 코어 부분의 메모리 영역에 접근하는 방법을 만들어 둬 이를 작정하고 이용해 최적화 할경우 GC Spike등의 문제를 최소화 할수 있다. 문제는 유니티 엔진을 쓰는 회사들 규모가 상대적으로 작은 편이라 그렇게 까지 최적화를 할 필요성을 못느끼는 개발자들이 많기 때문에 단순 GC Spike 뿐만이 아니라 유니티에서도 메모리 누수가 빈번히 발생하는 게임들을 볼수있다.[26] 핵심은 유니티가 GC 에 의존한다기 보다는 제대로 메모리를 관리하지 않고 GC에게 일임해버리는 개발자들이 문제인 셈.

4.2.4. 라이센스 문제[편집]


위의 장점 항목에서처럼 인디~저매출 기업에게 매우 유리한 라이센스 정책으로 엔진에게 큰 홍보효과를 얻는 반면, Unity 본사와 달리 Unity Korea에서는 대학에 과금을 시도하려는 조짐이 보이고 있어 게임학과에서 큰 반발을 불러오고 있다. 美 게임 엔진 '유니티', 대학에 사용료 받나... 학계 공동대응 예고

또한, 점점 유료 라이센스의 가격이 비싸지고 있다. 엔진의 발전이 더딘데 가격만 오르고 있어서, 해당 엔진 사용자 입장에서는 불만이 가득한 편. 결국 그 동안 쌓이던 불만이 다운로드 횟수에 따른 종량제 논란을 기점으로 한꺼번에 폭발했다.

4.2.5. 소스 코드 비공개[편집]


유니티는 기본적으로 월간 비용을 지속 지불하더라도 전체 소스코드는 여전히 비공개며, 전체 소스코드가 포함된 라이선스를 원할 경우 그 비용은 언리얼 엔진 커스텀 라이선스 비용과 맞먹게 된다. 유니티 측은 프로 라이선스도 소스 코드에 엑서스 할 수 있는 것 마냥 선전하고 있지만 실상은 구독과 별개로 소스코드를 구매해야 한다고 한다. 여기에 개발기간이 길어진다던가, 개발팀 인원이 증가된다던가, 타 스튜디오 등의 지원을 받아서 유니티의 시트당 사용자수가 늘어날 경우에 따라서 개발 비용이 지나치게 높아질 수 있으므로 상황에 따라서 언리얼 엔진의 사용을 고려해야 할 수도 있다. 거기다가 언리얼 엔진은 나중에 소스 코드를 모든 사용자에게 무료로 공개해버렸다.

유니티는 버전 간의 완벽한 호환성이나 버그 무결성을 추구하는 것보다는 신기술과 트렌드를 빨리 도입하고 시장 강화적인 마케팅에 더 힘을 쏟는 정책을 펼치고 있다.

때문에 2019년 현재 FEEDBACK과 ISSUE TRACK에 올라온 치명적 버그가 수십~수백개에 달하며 심지어 그 중 몇몇 개는 엔진 자체를 사용 못하게 만드는 버그임에도 불구하고 대응 속도가 아직도 너무 느리다. 예를 들면 다음 링크 모음과 같은 버그들이 있다. 버전관리가 안돼서 이전에 잡힌 버그도 계속 부활한다. 이쯤 되면 회사가 버그를 잡아서 해결하는 것이 아니라 제작사가 알려진 버그를 피해서 해결하라는 이야기.
#1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11

한편, 상기 언급된 바와 같이 유니티 엔진은 대규모 개발로 사용되기엔 부적합하여 인디 환경 위주로 많이 쓰이는 편인데, 인디 개발 환경 특성상 발적화 문제가 흔하기 때문에 두가지 단점이 시너지를 일으켜서 유니티를 사용한 게임들은 버그 덩어리라는 오명을 얻는 경우가 흔하다. 유니티 엔진을 사용한 고사양 3D 게임 치고 심각한 버그 문제를 겪지 않은 게임이 손에 꼽을 정도.

그런 반면 대외적 홍보, 강사 초빙, 세미나 등에 초점을 맞춰 마케팅에 집중하고 있다. 최근에는 VFX 업체나 고퀄리티 3D 스캔 업체를 인수합병 하는 등, 게임개발도구로서의 장인기업보다는 종합 시각화/가상현실 솔루션 기업으로 나아가려는 모습을 보이고 있다.


4.2.6. 보안성 문제[편집]


이전 버전의 경우 C# 프레임워크인 Mono에 기반했기 때문에 보안이 거의 하나도 되지 않았다. 강제로 오픈소스화된다고 할 정도로, 게임 내의 모든 리소스를 포함해서 스크립트의 코드를 담고 있는 DLL 또한 압축해제와 리버싱을 통해 얼마든지 내용이 드러나게 된다.[27] 이는 결과물이 중간 바이트코드인 대부분의 경우에 공통적으로 해당된다. 기계어 수준까지 컴파일이 되는 경우는 역컴파일이 쉽지 않고, 그마저도 현재는 C로 제한적인 표현이 가능한 수준이다. 그것도 다른 언어로 컴파일된 것이면 해석이 더욱 어렵다. 암호화를 시키면 되지만...

보안 문제는 메모리 해킹 방어, 스크립트 암호화[28], 변수 암호화 및 다중화, 체크섬 및 패킷 암호화 등 프로그래머들이 갈려나가면서 보안성을 마련하면 어느 정도는 해결될 수는 있다. 시간 많고 능력 좋은 수준급 해커와 만나면 털리는 것은 시간문제이긴 하지만. 문제는 유니티의 낮은 진입장벽에 의해 코드 암호화를 하지 않는 프로그래머가 대다수라는 점이 문제다. 어차피 모바일 환경이 보안성을 살릴 수 없는 환경이라는 점과[29] "어차피 털릴 어플은 털린다"라는 생각을 가지는 개발자들이 대부분이고 현장의 인식도 여기에서 크게 다르지 않은 상태라서 많은 게임들은 클라이언트-서버 구조로 제작해서 중요한 부분을 서버에서 처리하는 형태로 운영되고 있다. 이러면 다행이기라도 하지, 아예 보안장치를 마련하지 않는 사례도 수두룩하다.

그래서 해당 부분을 암호화하기 위하여 애셋 스토어에 CodeGuard나 Anti-Cheat-Toolkit 등의 서드파티 툴이 기본적인 코드 난독화, 메모리 해킹감지 등을 제공했다. 물론 완벽하게 막아줄 수는 없다.

최신 버전에 들어서면서 Mono 대신 .Net framework 4 이상의 버전으로 마이그레이션함과 동시에 아예 C++로 변환 후 네이티브 코드를 생성하는 IL2CPP / Burst Compiler를 도입하여 이 약점에 대응하는 수단이 등장했다. 네이티브 코드의 경우 C#이 해독되는 가장 큰 약점인 중간 바이트코드가 없이 C/C++과 동일하게 어셈블리 코드를 생성하므로 해당 문제점이 나타나지 않는다. 초기에는 IL2CPP의 컴파일 시간이나 버그에 대한 불만이 있었으나 현재는 거의 안정화된 상태.


5. 다른 개발도구와의 비교[편집]



5.1. 유니티 vs 언리얼 엔진[편집]


파일:나무위키상세내용.png   자세한 내용은 언리얼 엔진 vs 유니티 엔진 문서를 참고하십시오.



5.1.1. 유니티 → 언리얼 엔진 (4 이후) 목록[편집]


상당수의 게임들이 유니티 엔진 기반으로 개발도중 언리얼 엔진 4로 엔진을 바꿔 재개발하는 경우가 많은 사례로 나타나고 있다. 주된 이유는 프로젝트의 규모가 커지면서 유니티로는 감당하기 힘든 리소스 관리 및 고퀄리티 그래픽 대비 최적화, 개발 툴의 편의성과 엔진의 확장성, 유연성에 있다. 유니티는 비교적 툴이 단순해 보여서 익히기 쉽고 편리하게 보일 수 있으나 개발의 깊이가 깊어질수록 그 한계가 드러나는 반면 언리얼은 유니티와는 정 반대이기 때문이다.

원래 유니티로 개발되던 게임이 개발 중간에 언리얼 엔진 (4 이후 버전)으로 전환하여 개발, 또는 이미 출시한 게임을 대규모 패치나 차기 에피소드 등 특정 시점 이후 언리얼 엔진 (4 이후 버전)으로 변경된 게임들, 전작은 유니티 엔진으로 개발했었으나, 후속작/차기작부터는 언리얼 엔진 (4 이후 버전)으로 개발하는 게임들 목록

  • 고스트러너
  • EVE 발키리
  • 로딩 휴먼
  • 데드 링거
  • 워해머 40k 이터널 크루세이드
  • 리틀 데빌 인사이드
  • 화이트데이 2: 거짓말하는 꽃[30]
  • 화이트데이 2: 스완송
  • 시스템 쇼크 리메이크
  • 시스템 쇼크 3 기사기사
  • 스콘인터뷰
  • 언턴드[31]
  • 이카루스M
  • 머더 마이너스 X
  • 세션 스케이트보딩 게임
  • 언어스드: 트레일 오브 이븐 바투타[32]
  • 보일링 보트
  • 스컬프터 VR
  • Bendy and the Dark Revival[33]
  • MORDHAU[34]
  • Dark Deception[35]
  • Life is Strange: Before the Storm(리마스터)[36][37]
  • 세션 스케이트 심
  • 고스트 오브 어 테일 2
  • 레이어스 오브 피어 2편 이후[38]
  • 슬렌더: 더 어라이벌[39]

목록을 보면 알겠지만 인디에서도 유니티에서 언리얼로 갈아타고 있는 것을 알 수 있다. 어찌보면 당연한 일인게, 대규모 프로젝트의 경우는 애초에 유니티를 사용하지 않고 언리얼로 시작한다. 그러므로 유니티에서 언리얼로 갈아타는 프로젝트들은 인디/소규모 게임일 수밖에 없다.

5.1.2. 언리얼 엔진 (4 이후) → 유니티 목록[편집]


반대로, 개발규모를 축소하면서 작업을 증가시키는 일인 엔진 교체를 하는 상황 자체가 비합리적이므로 알려진 게임들 중 언리얼 엔진 4에서 유니티로 변경된 게임의 사례는 찾아보기 어렵다. 애초에 메이저나 인터넷에 알려질 정도로 유명세가 있는 개발팀이라면 이러한 선택을 하지 않을 것이다.

소수 모바일 프로젝트의 프로토타입 단계에서 테스트 후 엔진을 변경한 사례는 있으나 개발규모가 작은 게임의 경우며, 그마저도 개발중간에 변경한 사례는 찾아볼 수 없는데 애초에 작은 규모의 게임을 만들던 팀은 개발 중간에 엔진을 바꿔서 새로 만들 여력이 없는 경우가 대부분이기 때문이다.

언리얼 엔진에서 유니티로 변경된 게임들 목록



5.2. 유니티 vs 크라이엔진[편집]


크라이 엔진은 모바일에서의 사용이 전무하며, 2018년 이후 시점에서는 PC/콘솔의 대형 프로젝트에서의 입지도 거의 잃은 상황이라 사실상 비교하기 힘들다.


5.3. 유니티 vs 플래시 몰힐(Molehill)[편집]


웹에서 실행할 수 있다는 점에서 비슷한 쓰임새를 가진다. 정확히 따지자면 유니티는 게임 엔진이고, 플래시의 몰힐은 DirectXOpenGL과 같은 로우 레벨 API이다.(참고 사이트) 조금 다르지만 비유를 들자면 붓과 물감의 관계에 가깝다.

굳이 비교를 하자면 유니티는 직관적인 GUI를 통해 3D쪽에서 높은 생산성과 함께 진입 장벽이 낮다. 플래시는 유니티보다 OOP적이며 높은 생산성, 특히 2D에 유리하다. 퍼포먼스는 몰힐이 로우 레벨 API라는 점에서 기기의 GPU 성능만 어느 정도 된다면 대체로 플래시의 몰힐이 더 높은 성능을 낼 것이다. 라이선스 면에선 유니티는 다른 수억 대의 엔진들에 비하면 싸긴 해도 일단 돈이 들긴 드는데 비해, 몰힐은 그냥 공짜다. 가령 Flash Professional은 유료. 몰힐 자체는 공짜라서 몰힐을 Flex Builder에서 쓰든 공짜 툴인 Flash Develop, Haxe에서 쓰든 아무 상관없다. 사실 적용 대상이 달라 차이를 비교하기는 어렵다.


5.4. 유니티 vs Cocos2d-x[편집]


몰힐의 비교와 비슷하다. 유니티는 C# 스크립트가 주가 되지만 Cocos2d-x 는 C++ 코드가 주로 사용된다. Cocos2d-x 는 드로우콜에 관련된 부분은 전부 OpenGL에 의존하며. 원래부터 GUI 기반의 에디터가 존재하지 않는 하드코딩이다. 나중에 GUI 에디터를 기반으로 개발된 Cocos Studio가 나왔지만, 나온지 얼마 안 돼서 그런건지 기능적인 지원 수준이 유니티 엔진에 비하면 부족한 편이다. 3D도 지원하긴 하지만 지금으로써는 거진 OpenGL로 3D 게임을 만드는 것보다 약간 더 편리한 정도 차이 밖에 없다. 3D 기능을 사용하고 싶다면 코코스2dx를 사용하는 것보다 유니티 엔진이나 언리얼 엔진을 사용하는 것이 훨씬 낫다. 아니, 비교가 불가능할 정도.

2D에 특화된 코코스2dx라서 2D 쪽으로는 유니티 엔진과 경쟁할 정도로 생산성이 높다지만... 코코스에서 지원하는 기능만을 사용해서 개발하기엔 무리다. 언제가 되었든 간에 반드시 클래스와 객체지향적 프로그래밍을 알아야 하기 때문에, 첫 진입장벽은 꽤 높은 편이다.

2019년 기준으로 2D쪽으로도 유니티가 압도적으로 생산성이 좋다.

Cocos는 CocosCreator 쪽으로 집중하느라 Cocos2D-X는 업데이트 주기가 점점 길어지고 있다. 또한, 업데이트되면 기능이 좋아지거나 추가되거나 버그가 없어지거나 해야 되는데, 정반대로 CocosStudio를 포함하여 있던 기능도 제거되고, 지원 플랫폼도 줄어들고 버그도 늘어나고 있는 중이다. 게임 엔진중에서 거의 유일하게 공식적으로 닌텐도 스위치를 지원하지 않는다(...).


5.5. 유니티 vs 쇼크웨이브[편집]


유니티 초창기 시절에 비교되었으며 이때는 웹 브라우저상에서 3D를 구현하는 가장 편리하고 성능 좋은 방법 중 하나로 어도비 쇼크웨이브가 자리잡고 있었고, 유니티 웹 플레이어는 후발주자인 상황이었다. 하지만 유니티는 게임 엔진이고 쇼크웨이브는 그저 웹 브라우저 등에 사용되는 멀티미디어 플레이어일 뿐이므로 둘은 적절한 비교 대상이 아니다.


6. 논란[편집]



6.1. 요금제 개편 논란[편집]


파일:나무위키상세내용.png   자세한 내용은 유니티 엔진 요금제 개편 논란 문서를 참고하십시오.


7. 기타[편집]


  • 곳곳에 영국식 영어와 미국식 영어가 혼재되어 있다. 대표적으로 C# 스크립트를 열자마자 나오는 Initialize라는 단어와 Behaviour라는 단어가 있는데 영어를 구분할 수 있는 사람들이라면 당황하게 된다. 실사용에선 문제가 없지만 영미권에서도 이에 대해 궁금해 하는 사람들이 커뮤니티에 질문을 올리기도 한다.
  • 대한민국 서울이 2012년 유니티 엔진 사용 집계에서 전 세계 도시 중 1위를 차지했다(관련 기사).
  • 2018년에는 게임 퍼블리싱 사업을 벌였는데, 다름 아닌 PLAYERUNKNOWN'S BATTLEGROUNDS의 유럽 지역 퍼블리싱을 맡았다. 그런데 이 게임은 경쟁사인 에픽게임즈언리얼 엔진을 사용하여 개발된 게임이다.
  • 2014년에 CEO로 존 리치티엘로(John Riccitiello)가 선임되었다. 한데, 이 사람은 일렉트로닉 아츠(EA)의 전 회장이며, 웨스트우드와 불프로그(Bullfrog), 오리진(Origin)의 인수에 대해서 “우리 EA가 그들을 망쳐놓았다. 상당한 기간 동안 나는 이들 기업의 인수에 직접 관여하고 있었다. 그래서 나는 그들을 망쳤다고 말할 수 있다.” 라며, 웨스트우드 인수는 큰 실패였다고 자평했던 인물이다. 웨스트우드 문서 참고. 그리고 그 EAT ALL의 장본인 아니랄까봐 당장 돈이 안되는 프로젝트들을 취소, 광고에 멜웨어를 심는등 부정적인 행위를 벌이던 광고업체 아이언소스 인수를 하는가 하면 게임 개발 단계에서 수익성을 고려하지 않는 개발자는 얼간이다.라고 공개적으로 비하하고 주가가 추락하자 마지못해 사과하는 등[40] 부정적인 행보를 이어가고 있다. 개발자 비하 사건이 터지기 전 메타버스에 손을 댈 조짐을 보였던지라 게임 팬덤한테 유니티를 메타버스코인으로 말아먹을 생각이면 가만두지 않겠다는 비판을 받고 있다.[41] 이후 위에서 언급된 유니티 요금정책으로 인해 제대로 구설수에 올랐다.
  • 어느 1인 개발자가 유니티 엔진을 이용해서 이니셜D 아케이드판을 구현해냈다. 게임 퀄리티를 보면 그야말로 괄목할 만한 수준. 그러나 개인적인 용도로 만들었기 때문에 정식 게임은 아니며 배포할 의향도 없다고 한다. 자세한 사항은 이니셜D/게임 목록 참조.
  • 2021년 국내 개인 주식투자자들이 유니티 소프트웨어에 1200억원에 달하는 순매수를 진행한것으로 조사되었다.관련 기사.
  • 최근 경쟁사인 에픽 게임즈의 언리얼 엔진이 실사 영상계에 CG로 진출하는 것에 대한 벤치마킹인지 토에이 특촬물인 기계전대 젠카이저에서 CG 연출에 활용되는 것이 확인되었다. 그런데 토에이는 기사룡전대 류소우저부터 언리얼 엔진을 활용해왔다.


7.1. 유니티 엔진 기반 게임들[편집]


파일:나무위키상세내용.png   자세한 내용은 유니티(게임 엔진)/게임 목록 문서를 참고하십시오.



7.2. SU:A(수아) 인물 데모[편집]


파일:20200610122043_2801.jpg

on-mind라는 스타트업에서 제작한 Digital human. Unity HDRP를 사용했으며, 딥페이크를 사용한 2D 기반이 아닌 실제 리얼타임 기반으로 캐릭터가 사용자와 소통 가능한걸 목표로 제작중이다. 디지털 휴먼이 유니티 코리아의 모델이 되었다는 기사에 여러 커뮤니티-루리웹기사링크에서 뜨거운 관심을 받은 캐릭터이기도 하다. 현재수아 디지털 on-mind로 사명을 바꾸고 넵튠 자회사로 편입 최근 SK스퀘어에서 100억 규모로 투자가 진행되었다는 소식이 있다.

실제 인물을 3D 스캔 해서 제작하는 방식이 아닌 제로 베이스에서 제작된 캐릭터로 얼굴을 자세히보면 여러 아이돌의 느낌이 난다.

2020년 1월 첫 공개되었을 땐머리카락은 움직이지 않지만, 3월에 공개되었을 때는 머리카락도 물리엔진이 적용되었다. 이후 웨비나 헤어 솔루션은 Deform dynamics의 솔루션을 사용했다고 밝혔으며, 실시간으로 사용자와 소통하는 모습을 보여줬다유니티웨비나링크. 이후 AMD와 협업해 TressFX 헤어 솔루션을 변경한 것으로 보인다(무려 47만뷰다).

제작 비화를 밝힌 김형일[42]은 일반적인 극사실 모델링이 실재 인물을 바탕으로 3D 스캔해서 만들지만 SU:A는 Z브러쉬로 일일이 그려서 제작했는데, 어차피 3D 스캐닝도 수작업으로 후보정을 해야해서 걸리는 시간은 비슷했다고 한다. 오히려 이 때문에 개인적으로는 3D 스캐닝을 비효율적이라고 봤다. 오히려 만들기 어려웠던 건 머리카락이었다고 토로했다.#

가정에서 사용되는 수준의 PC에서도 동작 가능하다고 하며, 버전 3.0 기준으로 API도 일반적인 다이렉트X 11을 사용하였다.#

틱톡 계정
인스타그램 계정 사진합성을 하는 것으로 보인다.


7.3. 유니티짱[편집]


파일:나무위키상세내용.png   자세한 내용은 유니티짱 문서를 참고하십시오.


파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 2023-12-11 18:43:43에 나무위키 유니티(게임 엔진) 문서에서 가져왔습니다.

[12] High Definition Render Pipeline 그외에 레이트레이싱 SSAO가 적용되었다.[13] 프로젝트당 약 3억[14] 의무화의 경우 유니티 5.6 이하는 2021년까지 유예.[15] 이 경우는 ARM을 가상화 하는 안드로이드 가상 에뮬레이터에서만 실행이 가능한데, 크롬북이나 태블릿중 인텔 계열 CPU를 쓰면서 안드로이드 호환으로 대응하는 경우도 마찬가지로 미지원 문제가 생겼다.[16] 언리얼 엔진도 이 영향을 많이 받았는데 언리얼 엔진 3까지는 GUI가 다소 복잡하여 처음 접하는 사람들은 적응에 시간이 좀 걸리는 편이었으나 언리얼 엔진 4부터는 전반적인 인터페이스가 직관적인 GUI로 변경됐으며 특히 버전업하며 많은 기능들이 드래그 앤 드롭과 클릭 몇번으로 작동될 수 있게 바뀌어 가고 있다.[17] Flash. 다만 유니티 스케일폼은 업데이트나 기술지원이 썩 활발한 편은 아니기에 말 그대로 있다 수준에 그치는 정도인데다 정작 이 항목의 에셋 스토어에는 있지도 않은데 이유는 더이상 기술지원을 안하고 아예 내다버려서이다. 실제로도 해당 플러그인은 게임계 전반으로 봐도 기존 전성기에 비해서는 쇠퇴하고 있다.[18] XAML.[19] 한화 약 1.2~1.3억[20] The first $1,000,000 in lifetime gross revenue for each Product[21] 흔한 오해 중 하나가, 언리얼 엔진의 사용요금이 기본 무료화에 수익이 일정 이상 발생하면 무조건 퍼센트로 로열티 지불을 하는 것으로 알려진 경우가 많은데 사실은 그렇지 않으며, 프로젝트당 라이센스 비용을 비싸게 지불하는 대신에 수익이 얼마가 나도 로열티를 전혀 지불하지 않는 맞춤형 라이센스가 계속 존재하고 있었다.[22] Thread-Unsafe는 여러 스레드가 동일한 레지스터에 동시 접근해서 잘못된 결과를 내는 것을 말한다.[23] i9를 넣어도 3배속 플레이가 안 된다.(!!!)[24] 최대 10개의 스레드가 작동한다. 발표에서 선보인 예제는 100만개 이상의 군세를 렉 없이 업데이트하고 렌더링하는 퍼포먼스를 보여주었다.[25] 객체 지향이 아닌 데이터 지향으로 동작을 관여하는 스크립트가 객체마다 생성되었던 것을 1개로 줄여 인스턴싱 효과를 얻을 수 있는 시스템이다.[26] GC가 동작하는 방법때문이기도 하다. C#의 GC는 접근 불가능한 객체에 대해 검사해 사용 권한을 회수하는 방식이라 개발자가 객체관리를 제대로 안하면 GC도 객체가 실제로는 쓰지않는 객체가 늘어나도 사용할수 있다고 보고 회수하지 않는다.[27] 물론 완벽하게 일치하지는 않는다. 컴파일을 진행하면서 전체적인 흐름을 깨지 않는 수준에서 최적화를 위해, 코드의 순서는 바뀌게 되기 때문. 그래도 스크립트의 전체적인 흐름은 파악하고도 남는다. 완전히 해커의 손에 떨어지는 셈.[28] 유니티의 경우 다이나믹 로더를 이용하기 때문에 이것이 가능하다. 물론, 스크립트 복호화 모듈이 해커에 의해 완전통제되면 답이 없다.[29] 모바일 앱인 안드로이드 앱의 경우 Java 패키징 형태로 제작되므로 해체에 대단히 느슨하다.[30] 화이트데이: 학교라는 이름의 미궁(2017)는 유니티로 개발됐다.[31] 언턴드 버전 3까지는 유니티로 개발, 언턴드 버전 4부터는 언리얼 엔진 4로 개발되었다.[32] 에피소드 1은 유니티로 개발, 에피소드 2부터는 언리얼 엔진 4로 개발되었다.[33] Bendy and the Ink Machine에서는 유니티로 개발을 했었다.[34] 킥스타터 지원을 받아 개발된 인디 게임으로 처음 개발은 유니티 4로 시작해서 유니티 5로 업그레이드 했다가 중간에 언리얼 엔진 4로 변경하여 완성되었다.[35] 데모 버전은 유니티, 정식 버전은 언리얼로 개발되었다.[36] 리마스터 콜렉션에 포함된 Life is Strange 오리지널의 원본 게임은 언리얼 엔진 3를 사용해 만들었으나 Life is Strange: Before the Storm의 원본 게임은 유니티를 기반으로 개발사 자체 개량을 거친 StoryForge를 이용해 만들었다. 그러나 두 게임 다 리마스터하면서 언리얼 엔진 4로 교체되었다.[37] 특히 개발사인 Deck Nine Games는 자사의 게임 개발을 위해 유니티 기반의 StoryForge에 많은 투자를 했으나 그것으로 나온 게임은 Life is Strange: Before the Storm 단 한작품 뿐이며, AAA급 대규모 게임 개발에 유니티의 한계를 느껴 그간 투자한 StoryForge를 포기하고 향후 개발 기반을 언리얼 엔진 4로 교체하였다.[38] 1편은 유니티 엔진, 2편부터는 언리얼 엔진으로 개발됐고 최근 리부트 되는 레이어스 오브 피어도 언리얼 엔진으로 개발된다. 레이어스 오브 피어 1편 이후 해당 개발사에서 만드는 모든 게임이 언리얼 엔진으로 개발되고 있다.[39] 유니티 엔진에서 언리얼 엔진 5.2로 리마스터한다.[40] 이마저도 비판하는 사람들을 맥락을 모르는 것들(Out of full context)이라 비하하고 성의없는 3줄로만 사과하다가 사람들이 스크랩하지 못하게 스크린샷으로 올린 사과문이라 자신이 비판할 때는 잘난 척하더니 남한테 비판받는 것은 싫다는 내로남불 티를 내서 게임 팬덤과 개발자 업계에서 단단히 찍혔다.[41] 유니티 엔진에 대한 의존도가 높아진 게임 시장에서 엔진이 공중분해되는 것은 어도비 플래시의 서비스가 종료되는 것과 비슷하나 더 큰 파장을 불러일으킬 것이기 때문이다.[42] 현재 온마인드 대표