언리얼 엔진 3
언리얼 엔진 3 (Unreal Engine 3)
개발사 : 에픽 게임스 (Epic Games)
국내배급사 : 에픽 게임스 코리아 (Epic Games Korea)
에픽 게임스 코리아 설립 이념
에픽 게임스 코리아는 100% 에픽의 지분으로 설립된 한국 지사다. 100% 에픽의 지분으로 한국 지사를 설립한 주 목적은 엔진 비즈니스나 게임 개발을 위해서가 아닌 한국의 '언리얼 엔진 고객 지원 : 리얼 언리얼 서포트(Real Unreal Support)'을 위해서이다.
- 언리얼 엔진 한글화
- 현재 언리얼 엔진 3는 한글화 개발 완료
- 매달 지속적으로 build 버전이 업데이트 되는 언리얼 엔진 3는 한글 버전과 영문 버전이 딜레이 없이 동시에 업데이트
- 옵션을 통해 한글/영문을 전환 가능하며 두가지 버전이 완벽 호환
- 기존의 영문판에 익숙한 개발자들도 부담없이 사용 가능
- 현재 언리얼 엔진 3는 한글화 개발 완료
- 개발자 커뮤니티 지원
- UDN 한국어 지원
- 언어 번역 전담 인력 운영으로 커뮤니티 활성화 계획 중
- 국내 개발자들이 UDN에 한글로 올린 질문이나 의견들을 영어로 번역하여 전세계 개발자들과 공유하고, 영어로 올라온 답변이나 의견들을 다시 한글로 번역하여 한국 개발자들과 기술 지식 공유
- 에픽 게임스 코리아 주최로 정기적인 기술 세미나 개최
- 한글 메일링 리스트 지원
- 실시간 메신저 지원
- 언리얼 엔진 개발에 한국 의견 반영
- 에픽 게임스 코리아는 에픽 게임스 본사의 지휘하에 언리얼 엔진 개발 업무도 추진하는데 한국 개발자들이 요구하는 기능들이 언리얼 엔진의 업데이트에 지속적으로 반영된다.
가격
- 1 타이틀 당 $500,000
- 1 플랫폼 추가 당 $50,000
- 한 회사에서 다중 라이센스 시에는 라이센스 수에 비례해서 타이틀 당 가격, 플랫폼 추가 당 가격이 내려간다
- 로열티 프리일 경우엔 라이센스 비용이 약간 상승한다
- 계약 조건에 따라서 업데이트 기간이나 가격 등이 상이하게 다르다
언리얼 엔진의 버전
언리얼 엔진 버전은 크게는 세대로 구분되며 세부 업데이트로는 build 숫자로 구분된다.
세대별 구분은
- Unreal Engine 1 또는 First Generation Unreal Engine
- Unreal Engine 2 또는 Second Generation Unreal Engine
- Unreal Engine 3 또는 Third Generation Unreal Engine
이런식으로 구분되며,
build버전의 구분은
- Unreal Engine 1의 build 숫자는 1부터 613까지
- Unreal Engine 2의 build 숫자는 633부터 3369까지
- Unreal Engine 3의 build 숫자는 3376부터 시작되었으며 Unreal Engine 4가 개발의 주류가 되기 이전까지 업데이트
이런식으로 구분된다.
GDC 2010 프레젠테이션 3월 9일 ~ 3월 13일
동영상 링크 : http://www.youtube.com/watch?v=6FmAmShVsCE
새로 선보일 신기술
- 아티스트 기반의 도시 개발 툴 (빌딩이 즐비한 대도시의 모습을 절차적으로 세부조절하여 빠르게 구현할 수 있는 툴)
- 스플라인 기반의 고속 지형 변형 툴 (이것을 이용하여 도로, 인도, 촉수, 뿌리, 덩굴, 케이블, 철도와 같은 것들을 빠르고 쉽게 제작할 수 있다)
- 새로운 야외 초목 시스템 및 이것을 제작하고 제어하는 툴(물리가 적용된 야외에서의 고품질 초목 시스템)
- 새로운 실시간 광원 및 그림자와 이것을 제작하고 제어하는 툴(야외와 실내에서 G.I. 기반으로 적용되는 새로운 실시간 광원 효과와 그림자 기술, 사실적인 밤낮의 실시간 변화 및 날씨 변화 포함 등)
- 새로운 애니메이션 시스템 및 이것을 제작하고 제어하는 툴(절차적 애니메이션 기술에 기반한 새로운 애니메이션 엔진)
- 콘솔 동시 개발 지원 강화 (개발중 콘솔 실시간 미리보기 등)
- 언리얼 에디터 기능 강화 및 UI 개선 (언리얼 에디터의 각종 툴 강화 및 UI를 더욱 편리하고 유용하고 빠른 작업이 가능하도록 변경)
- 스테레오스코픽 3D 기술 지원 (3D입체안경이나 모니터 등을 이용한 입체 영상 기술)
- 모바일 지원 기술 (아이폰/아이팟 터치 플랫폼 지원 및 타기종 모바일 지원)
- Atlas Technology (언리얼 엔진 3 MMOG 서버 및 클라이언트 통합 기술)의 최신 버전
새로운 초목 시스템을 적용한 스크린샷
http://unrealtechnology.com/media/banners/FoliageDemoShot_01.jpg http://unrealtechnology.com/media/banners/FoliageDemoShot_02.jpg http://unrealtechnology.com/media/banners/FoliageDemoShot_03.jpg http://unrealtechnology.com/media/banners/FoliageDemoShot_04.jpg
GDC 2009 오스틴 프레젠테이션 Sep 15~18
새로 선보인 신기술
- Atlas Technology (언리얼 엔진 3 MMOG 서버 및 클라이언트 통합 기술)
GDC 09 프레젠테이션 Mar 25~27 San Francisco
동영상 링크 : http://g4tv.com/trailers/hdvideos/37413/Unreal-Engine-3-New-Features-GDC-2009-Trailer.html
새로 선보이는 기능들
- Unreal Lightmass (글로벌 일루미네이션 라이팅 & 쉐도우 기술)
- Unreal Contents Browser and serarch engine (새로운 에디터 컨텐츠 브라우저 및 검색 기능)
- Unreal Master Control Program (온라인 서비스 아키텍쳐)
- Unreal Swarm (라이팅 관련 툴)
- Strong powerful UnrealEd (더욱 강력해진 언리얼 에디터)
그외 기타 개선점 및 강연
- 위의 새로이 선보이는 기능들은 기존 언리얼 엔진 3 라이센시 및 신규 라이센시 들에게 무상 제공된다.
GDC 08 프레젠테이션 (2008년 2월 새로 추가된 기능 동영상, 가장 최신 버전은 좀 더 개선점이 있다)
http://www.youtube.com/v/Q0gNJfAkPSw&hl=ko&fs=1
저화질
http://www.gametrailers.com/remote_wrap.php?mid=30824
SD = 저화질, HD = 고화질
언리얼 엔진의 버전업에 관한 것은 엔진 사용자들이 에픽에게 필요한 것을 계속 요구하고 엔진의 사용자들이 많이 요구하는 것들일수록 그 요구사항에 관한 업데이트가 빨리 이루어지며 최신 하드웨어와 최신 소프트웨어 동향에 맞게 변화하는 점들에 대해서도 즉각 업데이트를 실시한다. 예를 들면 MMOG에 적용하는 사례가 많아지면서 네트웍 모듈을 쉽게 수정 가능하도록 네트웍과 연계된 부분에 대한 엔진의 코드 구조를 바꾸는 업데이트가 행해지거나 역동적인 물리 엔진 효과들을 기반으로 한 게임플레이를 추구하는 게임들이 많아지면서 물리 엔진의 강화와 더불어 UnrealEd 내부에서 물리 엔진 설정과 실험을 직접 플레이하면서 가능하도록 마치 하프라이프 2의 Garry Mod와 비슷한 에디팅이 가능하도록 업데이트 되었다. 만드는 프로젝트에서 새로이 요구되는 기능이 있다면 직접 구현하는 곳도 있으나 에픽에게 요구하여 필요한 기능이 업데이트 되도록 해서 엔진을 사용하는 다른 개발사들에게도 이득이 되도록 해야한다.
주요 이미지들
언리얼 테크놀러지 로고 http://www.unrealtechnology.com/media/banners/g_feature-partners.gif 주요 렌더링 샷 http://www.unrealtechnology.com/media/banners/ue3-rendering-1.jpg http://www.unrealtechnology.com/media/banners/ue3-rendering-2.jpg http://www.unrealtechnology.com/media/banners/ue3-rendering-7.jpg http://www.unrealtechnology.com/media/banners/ue3-rendering-8.jpg http://www.unrealtechnology.com/media/banners/ue3-rendering-9.jpg 애니메이션 셋팅 에디터(UnrealEd 내부 기능)http://www.unrealtechnology.com/media/Banners/ue3-animation-animset.jpg 애니메이션 트리 에디터(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/Banners/ue3-animation-animtree.jpg 오디오 설정 툴 SoundCue 에디터(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3_soundcue.jpg 캐릭터와 탈것의 물리 설정 PhAT 에디터(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3_phat_char.jpg http://www.unrealtechnology.com/media/banners/ue3_phat_rap.jpg http://www.unrealtechnology.com/media/banners/ue3_ragdoll.jpg 비주얼 스크립팅 시스템 UnrealKismet(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3_kismet1.jpg http://www.unrealtechnology.com/media/banners/ue3_kismet2.jpg 컷신 제작 툴 UnrealMatinee(UnrealEd 내부 기능) 최신버전은 크게 더 향상 되었음 http://www.unrealtechnology.com/media/banners/ue3_matinee.jpg 실시간 비주얼 파티클 에디터 UnrealCascade(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-cascade-1.jpg http://www.unrealtechnology.com/media/banners/ue3-cascade-2.jpg Unreal Static Meshes Editor(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-staticmesh.jpg Unreal TerrainEdit(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-terrain.jpg Unreal Post Process Editor(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-postprocess.jpg 실시간 머테리얼 셰이더 에디터 Unreal Material Shader Editor(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-materials.jpg Unreal Material Instance Editor(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-materialinstance.jpg Unreal Lens Flare Editor(UnrealEd 내부 기능) http://www.unrealtechnology.com/media/banners/ue3-lensflares.jpg 그 외 기타 UnrealEd 스크린샷 Decal 설정 http://www.unrealtechnology.com/media/banners/ue3-decals.jpg Prefabs http://www.unrealtechnology.com/media/banners/ue3-prefabs.jpg Actor Classes 설정 http://www.unrealtechnology.com/media/banners/ue3-actorclasses.jpg World Properties http://www.unrealtechnology.com/media/banners/ue3-worldproperties.jpg Source Control http://www.unrealtechnology.com/media/banners/ue3-sourcecontrol.jpg Generic Browser http://www.unrealtechnology.com/media/banners/ue3-genericbrowser.jpg 3DS MAX, MAYA, XSI 등과 호환되는 Unreal Tech ActorX http://www.unrealtechnology.com/media/banners/ue3-actorx.jpg Unreal Development Environment(언리얼 스크립트 컴파일 및 즉석 실행 도구) http://www.unrealtechnology.com/media/banners/ue3-unrealscript.jpg
언리얼 엔진의 역사
- 이전 역사는 언리얼 엔진 2 참고
언리얼 엔진 2는 매우 많은 게임들에 사용되었으며 PC용 FPS에서는 거의 언리얼 엔진이 관례가 되었다. 이 후에 64비트 프로세싱의 지원과 여러가지 향상이 있는 언리얼 엔진 2.5로 업그레이드 됐고 그 다음 버전으로 현재의 언리얼 엔진 3가 나왔다.
언리얼 엔진 3는 기존의 장점인 깔끔한 코드 구조가 더욱 커스터마이징하기에 좋고 확장성이 더욱 증대되어 이전 버전보다도 더욱 융통성이 좋게 개선되었으며 개발 툴셋 역시 전보다 많은 진보를 이루어서 차세대 게임 개발에 편리한 많은 잇점을 제공한다. 뿐만 아니라 이제는 더 이상 FPS 장르에만 특화된 게임 엔진이 아니며 모든 장르를 쉽게 수용할 수 있는 구조로 크게 개선이 되었으며 엔진 코드와 게임 코드의 뚜렷한 경계를 지었음에도 엔진의 유연성과 코드의 연동성은 기존보다 더 개선되었기 때문에 프로그래밍시의 많은 기술적 난점을 해소하였다. 그리고 이젠 PC뿐만 아니라 콘솔 기기도 본격적으로 지원을 함으로서 차세대 콘솔을 완벽지원하며 차세대 콘솔 기기인 Xbox 360와 PlayStation 3의 공식 미들웨어로 언리얼 엔진 3가 선정되었다.
지금 해외에선 언리얼 엔진 3가 차세대 콘솔 및 PC 게임 개발의 관례가 되어있으며 앞으로 게임 엔진 미들웨어의 중요성과 필요성이 점점 부각되어가고 있는 시점에서 지난 콘솔 세대의 미들웨어 선두주자인 렌더웨어(RenderWare)를 완전히 압도적으로 제치고 게임 엔진 미들웨어 시장의 선두주자로 달리고 있다.
렌더웨어가 단순히 그래픽스 라이브러리에 그쳐있는 반면에 언리얼 엔진은 버전업을 거듭하면서 방대한 게임 엔진으로 거듭났고 단순히 방대한게 아니라 방대한 엔진이 깔끔한 구조와 편리한 개발툴을 제공함으로서 개발 프로세서에 큰 향상을 주기 때문에 개발자들에게 크게 각광받고 있다.
현재 에픽의 엔진 개발팀에선 언리얼 엔진 3의 꾸준한 버전업을 담당하고 책임지고 있으며 언리얼 엔진의 핵심 개발자인 팀 스위니 (Tim Sweeney)는 언리얼 엔진 3의 상용화가 시작되기 1년전인 2003년부터 이미 언리얼 엔진 4의 코어 시스템 설계에 착수해 개발하고 있다. 언리얼 엔진 4가 출시되는 시점는 다음 세대의 게임 콘솔 기기들이 등장할 시기와도 맞물린다. 언리얼 엔진 4는 다음 세대의 게임 콘솔 기기(Xbox 360의 후속 기종, PS4, 그리고 닌텐도의 차기 콘솔 기종이 성능이 그에 미친다면 닌텐도의 차기 콘솔도 포함)들과 약 2013년 이후의 PC 하드웨어를 겨냥하여 개발된다.
- 언리얼 엔진 코어 시스템 (Unreal Engine Core System)이란 언리얼
엔진에서 가장 중요한 부분으로서 언리얼 엔진 코어 시스템은 언리얼
가상 머신 (Unreal Virtual Machine)을 구현하며
UnrealScript를 사용 가능하게 한다. 이
것은 언리얼 엔진이 각광받는 가장 큰 이유 중에 하나인
확장성/유연성/융통성에 관련된 부분이다. 언리얼 엔진이 독보적으로
다른 엔진들과의 가장 큰 차이점을 보이는 부분이며 범용 게임 엔진에서
가장 중요한 부분이며 뛰어나게 설계하기가 매우 어려우며 오랜기간에
걸친 업데이트와 노하우가 없이는 좋은 구조가 나올 수 없는 부분이다.
언리얼 엔진은 10여년이 넘게 특히 이 부분을 신경 써서 발전해왔으며 그
결과 시간이 지날수록 점점 다른 엔진들과 가장 뚜렷한 차이점을 보이고
있다. 대부분 알려지기로는 언리얼 엔진의 뛰어남은 표현력의 뛰어남이나
언리얼 에디터 툴셋의 편리함 덕분이라고 알려져 있다. 하지만 진정으로
언리얼 엔진에서 가장 뛰어난 부분은 바로 이 언리얼 엔진 코어
시스템이다. 언리얼 엔진 코어 시스템은 언리얼 엔진 1에서부터 현재의
언리얼 엔진 3까지 계속 이어서 발전해 왔으며 언리얼 엔진
4의 코어 시스템도 언리얼 엔진 3에서
개선되서 새롭게 설계되고 있다. 언리얼 엔진
4의 코어 시스템은 언리얼 엔진 3까지
구현된 코어 시스템을 이어받아서 2003년부터 또 다시 새롭게 설계되고
있으며 약 5년간의 설계가 더 된 후인 2008년 정도부터 언리얼 엔진
4의 언리얼 에디터 툴셋과 렌더링 엔진같은
내부 모듈의 작업에 들어갈 예정이다. 내부 모듈 작업이 진핼되는
시기에도 코어 시스템은 설계의 발전을 더 갖는다. 언리얼 엔진
4의 본격적인 개발이 거의 마무리가 되고
상용화가 가까워지는 시기에는 완성된 언리얼 엔진
4의 코어 시스템 설계를 이어받아 팀
스위니가 언리얼 엔진 5의 코어 시스템 설계에 들어가는 식의 개발
사이클을 갖는다.
- 팀 스위니는 플랙시블한 엔진 설계의 중요성을 오래전부터 익히
강조해왔으며 GDC 2006에서는 Building a Flexible Game Engine:
Abstraction, Indirection, and Orthogonality라는 주제로 그
중요성에 대해서 강연을 하기도 했다.
- 이 링크를 들어가서보면 당시 GDC 2006에서 강연의 사전 요약을 볼 수 있다. https://www.cmpevents.com/GD06/a.asp?option=C&V=11&SessID=1540
- 팀 스위니는 오래전부터 이런 강연과 연설을 해왔음에도 불구하고 이런 부분을 신경쓰는 게임엔진들이 언리얼 엔진을 제외하고는 전무하다는게 놀라운 일이다. 물론 이러한점 때문에도 언리얼 엔진이 범용 게임엔진으로 자리를 굳건히 한데에도 커다란 이유가 됐을것이다. 만일 국내에서 국산 엔진 개발을 시도한다면 이런 부분을 꼭 신경써서 개발하길 바라는 바이다.
- 언리얼 엔진은 앞으로도 버전업과 새로운 세대의 버전을 개발하면서 이 부분들을 더욱 강력하게 신경써서 확장할 계획에 있다.
- 팀 스위니는 플랙시블한 엔진 설계의 중요성을 오래전부터 익히
강조해왔으며 GDC 2006에서는 Building a Flexible Game Engine:
Abstraction, Indirection, and Orthogonality라는 주제로 그
중요성에 대해서 강연을 하기도 했다.
언리얼 엔진 3의 버전업은 언리얼 엔진 4 (언리얼 엔진 4는 다음 콘솔 기기와 2013년 이후의 PC 하드웨어 세대에 맞춰 출시될 예정)가 주 개발 플랫폼으로 자리잡을 시점까지 꾸준하게 버전업이 이루어지면서 새로운 툴셋의 추가와 개선, 그 동안 새롭게 출시되는 PC 하드웨어와 새롭게 나오는 API의 활용 및 신기술의 추가, 엔진의 전체적인 기능성 및 최적화의 향상, 버그 수정과 개선, 확장성의 증대, 새로운 외부 미들웨어들의 IPP 추가 등의 현저한 향상과 두드러지게 새로운 특징들의 추가(significant enhancement and adding major new features)가 있을 것이며 Xbox 360와 PlayStation 3에도 각각 특화된 버전들로 꾸준하게 최적화를 이뤄갈 것이다.
언리얼 엔진 3가 처음 릴리즈 된지 얼마되지 않았을 때는 엔진이 불안정하며 버그가 많은 미완성된 엔진이라는 비아냥거림도 있었으나 현재는 버그가 많이 해결됐고 매우 안정적이며 이전보다 더 진보한 툴셋, 향상된 엔진의 성능, 다양한 외부의 미들웨어 IPP를 제공함으로서 이전보다 매우 크게 향상된 모습을 갖추고 있다. 실제로 2006년 11월에 발매된 기어스 오브 워에 쓰인 언리얼 엔진 3 버전과 현재 2007년 4월자 언리얼 엔진 3 최신의 빌드 버전을 비교해보면 불과 몇달정도 사이에 렌더링을 비롯한 많은 부분에서 큰 진보가 이루어졌다.
엔진 타입 : 통합형 범용 엔진
- 언리얼 엔진 3는 이전 버전들과는 다르게 더 이상 FPS 장르에만 특화된 게임엔진이 아니다. 언리얼 엔진 2를 포함한 쥬피터 엔진 시리즈, 시리어스 엔진 시리즈, 크라이 엔진 시리즈등의 다른 통합형 FPS 게임엔진들은 기본적으로 FPS에 맞추어진 엔진이라서 MMORPG나 다른 장르의 개발시에 변경에 어느정도의 어려움이 있다. 하지만 언리얼 엔진 3는 그런 어려움이 전혀 없이 매우 순조롭게 커스터마이징이 가능하다. 다양한 장르를 고려하기 때문에 심리스 월드도 기본 지원된다. 그리고 FPS용 네트워크 엔진이나 게임의 장르마다 필요한 네트워크 엔진들이 따로 제공되며 액션 게임용 인공지능 엔진이나 MMO용 길찾기 엔진등 다양한 게임의 환경과 기획과 문제점들을 고려한 기술들이 제공된다.
엔진 구성 및 업데이트
- 이전까지와는 다르게 게임 코드와 엔진 코드가 완전히 분리되어
제공된다. 즉, 순수한 언리얼 엔진으로서 코드가 제공되는 것이다.
그리고 게임 코드와 엔진 코드 및 확장 모듈등의 각 코드간의 경계를
이전보다 더욱 명확하게 함으로서 엔진의 구조적 융통성과
커스터마이징이 용이한 구조와 뛰어난 확장성은 전보다 더욱 강화되었다.
- 그리고 참고용 예제로 에픽에서 개발하는 게임의 모든 소스 코드도 제공된다.
- 엔진의 build 넘버가 올라갈수록 더 엔진에 기능이 추가되거나 새 툴셋이 추가되거나 기존의 성능이 더 향상된다. 기어스 오브 워가 나왔을 때의 엔진보다 언리얼 토너먼트 3에 사용되고 있는 엔진의 버전이 더 높으며 기능이 더 많고 더 최신 기술들이 사용되었다. PC 버전에서는 새로이 출시되는 하드웨어를 활용한 새로운 기술들이 지속적으로 업데이트 되며 콘솔 버전에서도 기술의 추가가 똑같이 이루어지지만 PC에서만 사용 가능한 기술들이 더 많다. 그리고 엔진 버전업이 되면서 최적화 작업도 계속 이루어진다.
- 리눅스, 매킨토시 및 차세대 콘솔 지원
- 언리얼 엔진 2까지는 엔진은 기본적으로 PC를 기반으로 하며 다른 OS/플랫폼으론 이식이 되는 방식이었다. 하지만 언리얼 엔진 3부터는 OS/플랫폼별로 별도의 이식이 필요하지 않게 설계되어 있다. 엔진의 모든 구성요소와 모듈이 코어를 통해서 모든 플랫폼에 유연하게 호환되며 플랫폼 별로 런쳐와 렌더링 디바이스를 따로 분리해서 그부분만 최적화할 수 있게 해 놓았다. 따라서 다중 플랫폼으로 게임을 출시하는 경우에 플랫폼마다 엔진을 손볼 필요가 없이 각각의 플랫폼에 따른 런쳐와 렌더링 디바이스 최적화만을 해주는 것으로 손쉽게 다중 플랫폼화가 가능하다. 또한 64비트 윈도우, 64비트 리눅스, 64비트 MacOS X까지 완전히 대응하고 있으며 별도의 플랫폼 추가를 위해서는 런쳐와 디바이스만의 작성으로 손쉬운 추가가 가능하다.
- 새로운 기술 연구 및 개발 (New Technology Research and Development)
- 현재 언리얼 엔진 3는 지속적인 버전업을 이루며 새로운 기술에 대한 연구와 개발을 진행하는데 새로이 연구된 기술들은 시범적으로 새로운 빌드 버전업에 추가되기도 하며 최종적으로 효과적인 기술이 완성되면 그것에 대한 편리한 툴이 UnrealEd로 추가됨과 동시에 엔진상의 기술로 정식 추가된다.
- 현재까지 연구중인 기술들의 목록은 다음과 같다
- 타일링 방지 기술 (Anti-tiling Techniques)
- 주로 지형이나 벽같은 서페이스에 텍스처가 반복되어 타일링 현상이 두드러지는 것을 방지하는 방편의 기술들이 3가지 이상 연구되고 시범적으로 도입되고 있다.
- 복셀 혼합 렌더링 (Blended Voxel Techniques)
- 복셀을 통해 오브젝트나 지형, 그리고 일부 공간분할 렌더링에 효과적인 도입을 위해 연구중이며 복셀 지형과 복셀 오브젝트는 현재 시범으로 도입되고 있다)
- 지오메트리 가상화 기술 (Geometry Virtualization Techniques)
- 가상의 폴리곤을 형성해 그곳에 라이팅과 음영처리가 실제 폴리곤이 존재하는 것처럼 반응하거나 그외의 여러가지로 쓰이게 위해 연구중인 기술들이며 현재는 지형과 서페이스 도입되어 있으며 캐릭터 애니메이션과도 혼합할 수 있게 연구중에 있다.
- 타일링 방지 기술 (Anti-tiling Techniques)
제공되는 소스
UDN은 Perforce에서 제공받는 코드는 Pure Unreal Engine 3이다. 이것은 말 그대로 순수한 Unreal Engine 3로 작성된 코드다.
라이센시 개발자들은 이 순수한 Unreal Engine 3를 가지고 각자의 타이틀에 맞게 세세한 확장 및 수정과 필요에 따라서는 특정한 기술의 추가가 요구될 수도 있다.
Pure Unreal Engine 3는 기본적으로 언리얼 엔진 코어 시스템과 기본적인 기술들과 그 기술들에 기반한 UnrealEd 툴셋의 기능들이 제공된다.
라이센시 개발자들은 UDN에 로그인 해서 그들의 타이틀에 필요한 기능 확장 등을 할 수 있다.
새로운 렌더링, 물리, AI, 사운드, 네트워크 등 모든 분야의 기술적인 지원 및 새로운 툴셋과 새로운 유틸리티 등 다양한 지원을 제공받을 수 있다.
언리얼 엔진을 사용한 게임들이 제각각으로 최적화도 다르고 게임의 외형적으로나 파일 시스템에서도 다양한 차이를 보이는 것은 이런 이유가 있기 때문이며 이것은 언리얼 엔진을 쓰는 게임들이 모두 같아 보이지 않도록 일부러 의도한 것이며 게임마다 서로 다르게 필요한 다양한 기술을 사용할 수 있기 때문이다.
언리얼 엔진을 사용하는 개발사들은 각각의 타이틀에 필요 없는 기술들은 사용하지 않고 필요한 기술들만을 골라서 최적화를 해야하며 그것은 개발자들의 몫이다.
- 순수한 Unreal Engine 3 (UnrealEd 및 모든
유틸리티 포함)의 Full source code
- 매 월 업데이트되는 Unreal Engine 3의 새로운 build 버전 codedrop
- Epic의 Unreal Engine 3 사용 게임들의 Full source code
- Gears of War의 Full source code
- Gears of War2의 Full source code
- Unreal Tournament 3의 Full source code
- UDN (Unreal Developer Network)에서 Demiurge Studios에 의해 지속적으로 추가 제공되는 Customize code와 Example code
제공되는 툴 (아래의 스크린샷들은 2004년 build의 스크린샷으로 최신버전에선 아래의 스크린샷들과 GUI 디자인이 더욱 디자이너 친화적으로 변화됐으며 새로운 보조 툴들의 추가와 세부적인 기능들의 추가 및 향상이 이루어졌다. UnrealEd의 GUI나 보조 툴들 및 세부적인 기능들은 프로젝트마다 다르게 정할 수 있으며 커스터마이징이 가능하므로 각각의 프로젝트마다 다른 모습을 보일 수도 있다)
Perforce에서 처음으로 제공받는 Unreal Engine 3는 Pure Unreal Engine 3이며 Pure Unreal Engine 3에 있는 기술들만을 사용하기 위한 툴들이 제공되고 UDN에서 새로운 기술을 추가하고 그 기능을 사용하기 위한 추가툴을 받아서 추가할 수 있다. UnrealEd는 언리얼 엔진 고유의 코어 시스템에 기반하여 작성된 프로그램이고 실제 Editor의 기능을 담은 언리얼 엔진 코어에 기반한 Editor 모듈은 따로 존재하고 UnrealEd는 언리얼 엔진 코어를 통해 Editor의 기능을 사용하게 해주는 UI격이다. 따라서 새로운 에디팅 기능은 Editor 모듈을 손보는 것으로 UI의 수정은 UnrealEd를 손보는 것으로 가능하며 UnrealEd가 아닌 별도의 작은 툴 애플리케이션을 언리얼 엔진 코어에 기반한 Editor 모듈을 통해 제작하는게 가능하다.
- UnrealEd (언리얼 에디터)
- 언리얼 엔진 3가 버전업을 이루면서 처음 버전의 것과 완전히 다른 새로운 UnrealEd로 한번 교체가 되었으며 그 새로운 UnrealEd는 확장성도 더 좋게 개선되었고 다수의 인터페이스 변화와 외형의 변화가 이루어졌다. 이 새로운 UnrealEd에 적응되면 기존 언리얼 엔진 2의 것은 불편하게 느껴질 정도로 많은 변화와 큰 기능의 향상이 이루어졌으며 비주얼 셰이더 시스템이나, 파티클, 컷신툴 인공지능 툴셋, 사운드 설정 툴셋, 비주얼로 게임 스크립트짜는 툴같은 기존의 툴들의 성능 및 옵션 개선 및 새로운 툴 추가, 모든 툴은 UnrealEd 내부에 통합되어 있으며 각 툴간에 긴밀하게 상호 연동된다. 현재는 이 UnrealEd가 계속 버전업을 이루면서 발전하고 있다. http://www.unrealtechnology.com/screens/editorproperties2.jpg
- UnrealEd에서는 모든 작업을 실시간으로 하여 보이는 그대로 적용하는 것 그대로가 게임이 그대로 나오는 것이다. 모든 렌더링 제작, 편집 및 설정 (인도어 제작, 아웃도어 제작, 광원 배치, 텍스처 적용, 다양한 특수 효과 적용, 그림자 사용, 애니메이션 설정), 물리 설정 및 적용, 탈것 설정 및 적용, A.I. 패스노드 설정, 사운드 설정, 컷신 제작, 게임 플레이 스크립트 설정, 게임 A.I. 설정, 게임 모드와 멀티 A.I. 설정 등의 게임에 필요한 모든 작업을 UnrealEd 내부에서 보이는 그대로 작업한다.
- 외부 툴과의 연동이나 UnrealEd 내의 새로운 툴 추가나 수정이 쉽고 엔진을 개량시 동시에 툴셋에도 개량 요소 추가 용이하며 새로 추가한 요소와 기존의 요소를 연동하기가 용이하다.
- UnrealEd의 주요 세부 툴셋
- UnrealMatinee :UnrealEd 내에서 편리하게 도와주는 컷신 제작 툴셋 (언리얼 엔진 2버전에 비해 비약적으로 향상)http://www.unrealtechnology.com/screens/matinee.jpg
- UnrealCascade : 언리얼 엔진 2의 파티클 위저드 및 언리얼 엔진 2.5의 파티클 시스템 에디터에 비해서 비약적으로 향상된 파티클 툴셋http://www.unrealtechnology.com/screens/cascade_new.jpg
- UnrealKismet : 게임 플레이나 인공지능 설정등의 모든 스크립팅을 플로우챠트 형식으로 만들어서 비주얼적으로 개발하는 툴셋, UnrealScript를 자동 생성하며 UnrealMatinee로 컷신 스크립트를 작성 할 때도 사용 가능하며, UnrealEd 내의 다른 모든 툴 및 임의적으로 추가한 툴과도 연동되어 각 부분의 스크립트 생성에 사용 가능하며 임의로 추가한 기능이나 커스터마이징된 기능 및 IPP로 추가된 새로운 기능들과도 연동되어 사용 가능하다.http://www.unrealtechnology.com/screens/kismet_1.jpghttp://www.unrealtechnology.com/screens/kismet_2.jpg
- Visual Material Editor : 비주얼 툴셋으로 재질 셰이더를 설정하면 자동으로 Cg, HLSL, GLSL 코드가 생성된다.http://www.unrealtechnology.com/screens/GenericBrowser.jpg http://www.unrealtechnology.com/screens/MaterialEditor.jpg
- Visual Terrain Editor : 실시간 비주얼로 보이는 그대로 지형을 생성하고 초목을 장식하고 광활한 실외 지역을 작업하는 툴셋 (현재 보이는 스크린샷은 2004년경의 구버전 에디터이다. 후에 2005년엔 향상되고 편리한 새로운 지형 에디터로 변화 되었으며 현재 2009년 9월자로 voxel 혼합의 지형과 이전보다 더 편리하고 새로운 지형 에디터로 변화하였다)http://www.unrealtechnology.com/screens/TerrainEditing.jpg
- SoundCue Editor : 사운드의 설정을 해주는 툴로 작업환경 전체에 걸쳐서 다양한 세부적 사운드 설정을 해주는 툴셋 http://www.unrealtechnology.com/screens/soundcueeditor.jpg
- UnrealPhAT : 물리의 모든 세부적인 설정을 해주는 툴로서 게임내 모든 환경과 오브젝트, 탈것, 캐릭터에 물리를 실시간으로 세부적인 설정이 가능한 툴셋 http://www.unrealtechnology.com/screens/phat_raptor.jpg http://www.unrealtechnology.com/screens/phat_character.jpg
- AnimSet Editor : 모든 애니메이션 세트와 애니메이션 시퀀스를 설정하는 툴셋 http://www.unrealtechnology.com/screens/anim_socket.jpg
- AnimTree Editor : 애니메이션을 비주얼 트리 모양으로 나열해서 한눈에 알아보기 쉽게 구성해 놓고 설정을 할 수 있는 툴셋 http://www.unrealtechnology.com/screens/animtree.jpg
- Script Editor : UnrealEd 내에서 모든 스크립트를 바로 열어서 확인 가능하고 수정한 후에 즉석에서 인터프리팅해서 실행할 수 있으며 컴파일해서 적용 시킬 수도 있는 툴셋 http://www.unrealtechnology.com/screens/ScriptEditor.jpg
- Play In Editor : UnrealEd 내에서 에디팅 작업 중의 게임 자체를 바로 실행해 볼 수 있는 확인하고 작업할 수 있는 기능을 가진 툴셋으로 UnrealEd 상에서 에디팅 작업과 게임 플레이를 동시에 가능하며 매우 직관적인 디자인을 가능하게 해준다 http://www.unrealtechnology.com/screens/playineditor.jpg
- Offline Rendering System (오프라인 렌더링 기능으로 동영상 제작이 가능하다)
- Network Level Editing
- COLLADA Import Path for Meshes and Animation
- Microsoft XNA Framework 통합 호환 지원
- Visual UI Tool : UnrealEd 내에서 UI 또는 GUI를 디자이너가 비주얼적으로 Flexible한 작업으로 UI 또는 GUI를 제작할 수 있는 툴셋
- 적당한 노말값을 추정하여 노말맵을 생성하는 툴셋 http://www.unrealtechnology.com/screens/character_creation1.jpg 2,000,000 폴리곤 (노말맵을 추출할 모델)http://www.unrealtechnology.com/screens/character_creation2.jpg 5,287 폴리곤 (실제 게임에 사용될 모델) http://www.unrealtechnology.com/screens/character_creation3.jpg 5,287 폴리곤이 사용된 모델에 노말맵을 적용 (엔진상에서 보이는 모델) http://www.unrealtechnology.com/screens/EmbryHigh.jpg 200,000,000개의 폴리곤으로 노말맵을 추출해서 적용한 배경씬 http://www.unrealtechnology.com/screens/EmbryWire.jpg 실제 게임상의 폴리곤 수는 500,000
- GUI 기반의 디버깅 툴 및 퍼포먼스 모니터링 툴
- 메모리 트랙킹 툴
- GPU 메모리 트랙킹 기능 포함
- 원격 조정 유틸리티
- 게임의 셋팅과 실행을 관리하고 도움 명령어를 활용해서 디버깅하고 수정할 수 있는 툴
- 유틸리티 툴 자체의 기능 확장 가능성
- 메모리 트랙킹 툴
- Unreal Engine 3 Stats Viewer
- Unreal Engine 3 Stats Comparison Tool
- Unreal Engine 3 Stats Threadhold Tool
- UnrealScript Profiler
- UnrealScript Debugger
- UnrealActorX Exporter
- 3D Studio MAX Plug-in
- MAYA Plug-in
- Softimage XSI Plug-in
- 3D Studio MAX, MAYA, Softimage XSI에서 만든 메쉬를 UnrealEd로 익스포트 할 수 있는 Plug-in이다.
- Unreal Engine 3 IPP의 모든 툴셋이 UnrealEd에
연동
- PhysX 물리 엔진 툴셋
- PhysX 물리 엔진에서 제공하는 SDK 툴셋과 유틸리티들
- FaceFX 툴셋
- FaceFX에서 제공하는 페이셜 애니메이션 및 립싱크 제작 툴셋
- 이 외에도 Unreal Engine 3 IPP의 툴들을 포함한 다른 툴들이 더 존재하며 언리얼 엔진 3는 언리얼 엔진 4가 개발의 주류가 되기 이전까지 업데이트 될 예정으로서 앞으로도 더 많은 툴셋과 유틸리티들이 추가 될 예정에 있다.
- PhysX 물리 엔진 툴셋
제공되는 컨텐츠
- Unreal Engine 3 Example Contents
- Epic의 Unreal Engine 3 사용 게임들의 Example Contents
- Gears of War의 Example Contents
- Gears of War2의 Example Contents
- Unreal Tournament 3의 Example Contents
- Unreal Engine 3 Example Contents는 상용 프로젝트에 도입해도 상관없으나 Epic의 상용 게임들인 Gears of War나 Unreal Tournament 3의 Example Contents는 상용 프로젝트에 도입하면 안되며 참고용 예제로만 사용해야 한다.
- Demuirge Studio의 다양한 예제
- Demiurge Studio는 Unreal Developer Network의 지원팀으로 언리얼 엔진의 QA와 개선사항을 담당하고 엔진의 활용법과 다양한 예제를 개발하고 지원팀으로서 Q&A를 진행해준다.
엔진 개발사에서 만든 게임
- 기어스 오브 워 (Gears of War)
- Xbox 360 - 2006년 11월 7일 출시
- PC - 2007년 11월 6일 출시
- 언리얼 토너먼트 3 (Unreal Tournament 3)
- PC - 2007년 11월 19일 출시
- PlayStation 3 - 2007년 12월 10일 출시
- Xbox 360 - 2008년 월 7일 출시
- 기어스 오브 워 2 (Gears of War 2)
- Xbox 360 - 2008년 11월 7일 출시
- PC - 2009년 겨울 출시 예정
- NANO.STRIKE
- Xbox 360, PlayStation 3, PC - 2010년 출시 예정
- 미발표한 호러 액션 게임 (People Can Fly와의 공동 합작)
- 전혀 새로운 스타일의 빛과 그림자 기술을 강조한 고품격 그래픽을 가진 호러 액션 게임으로 출시일 미정
- 미발표한 MMORPG (Epic Games China와의 공동 합작)
- 언리얼 엔진 3로 MMORPG의 개발 지원을 강화하기 위해 만드는 엔진 개발 지원작
- Shadow Complex (Chair Entertainment와의 공동 합작)
- XBLA로 출시할 캐주얼 게임
- Ender's Game: Battle Room (Chair Entertainment와의 공동 합작)
- XBLA, PSN으로 출시할 예정의 캐주얼 게임
- 기어스 오브 워 3 (Gears of War 3)
- Xbox 360 - 2010년 겨울 출시를 목표로 개발 예정
- 언리얼 3 (Unreal 3)
- 언리얼 엔진 4가 나올 시기 쯤에 언리얼 엔진 3의 최종적인 성능을 극한으로 끌어 올리기 위한 작품으로 언리얼 엔진 4가 나올 시기쯤을 목표로 PC 전용 게임으로 개발 예정
이 엔진을 사용한 대표적인 게임
- 기어스 오브 워
- 레인보우 식스 베가스
- 언리얼 토너먼트 3
- 헉슬리
- 로스트 오디세이
- 바이오쇼크
- 메달 오브 아너: 에어본
- 스트랭글홀드
- 로스트 오딧세이
- 매스 이펙트
- 아바
- 스타게이트 월즈
- 튜록
- 마그나 카르타 2
국내에서 쓰이는 게임 (MMORPG)
- 레드덕의 프로젝트 M(신작 MMORPG라고 한다)
- NC소프트의 프로젝트 M(김형태씨가 참여해 만드는 동양풍의 판타지 MMORPG라고 한다) 및 몇개의 미발표 작품들
- 애니파크의 A4(A3 차기작이며 A4는 임시제목이다)
- 소노브이의 신규 MMORPG
- 블루너츠의 신규 MMORPG
- 아크로게임즈의 신규 MMORPG
국내에서 쓰이는 게임 (MMOFPS)
- 웹젠의 헉슬리
국내에서 쓰이는 게임 (온라인 FPS)
- 레드덕의 아바
- SK i미디어의 신규 온라인 FPS
- CJIG의 B프로젝트
- 드래곤플라이의 스페셜 포스 2
- 미발표작 FPS
국내에서 쓰이는 게임 (콘솔 게임)
- 소프트맥스의 마그나 카르타 2(Xbox 360용)
국내에서 쓰이는 게임 (세컨드 라이프)
- RTWA의 미발표한 세컨드 라이프 프로젝트
- 그 외에 아직 미발표한 다수의 개발사들이 언리얼 엔진 3를 사용해서 개발중인데 적어도 2007년 11월 현재 국내에서 약 50여 이상의 프로젝트에 사용하고 있으며 국내에서는 대부분 FPS나 MMORPG가 많다.
국내에서 엔진을 쓰다가 게임이 취소된 경우
- 웹젠의 PlayStation 3용 게임인 엔드리스
사가
- 언리얼 엔진 3가 게임과 맞지 않다거나 엔진 자체의 문제점으로
취소된 것은 아니고 PlayStation 3의
열악한 개발조건과 회사 수지타산이 맞지 않아서 취소된 경우이다.
- 그러나 라이센스비용이 낭비된 것은 아니다. 웹젠은 이미 언리얼 엔진 3를 사용해서 헉슬리를 개발하고 있었으며 엔드리스 사가도 언리얼 엔진 3를 사용해서 개발했지만 이미 한번 라이센스 한 상태에서 비용은 더 들지 않으며 게임이 완성되어 출시했을 때 추가비용이 들어가는 것이기 때문이다.
- 언리얼 엔진 3가 게임과 맞지 않다거나 엔진 자체의 문제점으로
취소된 것은 아니고 PlayStation 3의
열악한 개발조건과 회사 수지타산이 맞지 않아서 취소된 경우이다.
- 웹젠의 뮤 2 (개발사들의 퇴사로 인해 현재 개발이 중단되었으나 완전히 취소된 것은 아니다)
- NC소프트의 리니지 3 (개발자들의 기술 유출 사건으로 개발진이 교체되고 자체 엔진으로 다시 개발된다)
해외에서 쓰이는 게임
- 뛰어난 기술력과 편리한 차세대 툴셋과 뛰어난 확장성으로 PlayStation 2 및 Xbox 세대에서 표준으로 사용되던 렌더웨어(RenderWare)를 제치고 PlayStation 3 및 Xbox 360 세대부터는 콘솔 및 PC 게임 및 온라인 게임 개발 시장을 장악하다시피 하고 있다.
- 다양한 장르에 많이 쓰이며 FPS나 3인칭 액션, 어드벤쳐, RPG, RTS, 카툰 스타일의 캐주얼 게임, MMORPG등 장르를 구분하지 않고 많이 쓰인다.
언리얼 엔진 3 사용한 온라인 게임들
게임제목 | 개발사 | 장르 | 플랫폼 | 출시일 | 비고 |
---|---|---|---|---|---|
에픽의 미발표 MMO | 에픽 게임스 | MMO | PC | 미정 | 에픽에서 직접 언리얼 엔진 3를 활용해 만드는 프로젝트 |
프로젝트 A4 | 애니파크 | MMORPG | PC | 2010년 하반기 예정 | A3의 후속작 |
스타게이트 월즈 | Cheyenne Mountain Entertainment | MMORPG | PC | ||
DC 유니버스 온라인 | 소니 온라인 엔터테인먼트 | MMORPG | PC, PS3 | 2009년 예정 | |
The Agency | 소니 온라인 엔터테인먼트 | MMOFPS | PC, PS3 | 2009년 예정 | |
Fury | Auran Games | 판타지 MMO | PC | 2007년 10월 16일 | |
Crime Craft | Vogster Entertainment | MMORPG | PC | 2009년 예정 | |
All Point Bulletin | Realtime Worlds | PC | Realtime Worlds | ||
Second Life Project | Realtime Worlds Asia | PC | 세컨드 라이프 | ||
프로젝트 S.O.N | Magic Grid Network | 온라인 댄스 배틀 | PC | ||
미발표 신작 | 천청(중국 개발사) | MMORPG | PC | ||
미발표 신작 | 9you(나인유: 중국 개발사) | MMORPG | PC | ||
미발표 신작 | 38 Studios | MMORPG | PC | ||
씰 온라인 2 | YNK 코리아 | MMORPG | PC | ||
헉슬리 | 웹젠 | MMOFPS | PC, Xbox 360 | 2008년 | 콘솔 싱글플레이로 개발 중 |
Mortal Online | Star Vault | MMORPG | PC | 2009년 여름 | 레벨제가 없는 1인칭 MMORPG |
Global Agenda | Hi-Rez Studios | PC | MMO 슈터 | 2009년 예정 | |
블레이드&소울 | NC소프트 | PC | MMORPG | ||
테라 | 블루홀 스튜디오 | PC | 논타겟팅 MMORPG | ||
미발표 신작 | 블루너츠 | MMORPG | PC | ||
Otherland | RealU | MMORPG | PC | 2009년 예정 | 물리 엔진 기반의 MMORPG |
American Mcgee's Cart-Racing | Spicy Horse | PC | |||
T.A.R 프로젝트 | 소프트닉스 | MMO ActionRPG | PC | ||
Astronaut: Moon, Mars and Beyond | Virtual Heroes | MMO 시뮬레이션 | PC | NASA에서 제작 감수하는 MMO 기반의 우주 행성 시뮬레이션 게임 | |
미발표 신작 | Nikitova | MMORPG | PC | ||
Mobile MMOGs | TechFaith | MMORPG | Windows Mobile Phone | 개발중 | 윈도우 모바일 폰용으로 여러개의 MMOG 개발 추진중 |
아바(A.V.A) | 레드덕 | 온라인 FPS | PC | 2007년 | 성공적인 국산 온라인 FPS중 하나 |
미발표 신작 | SK-i미디어 | 온라인 FPS | PC | ||
스페셜 포스 2 | 드래곤플라이 | 온라인 FPS | PC | 2009년 하반기 베타테스트 예정 | 스페셜포스의 후속작 |
미발표 신작 | 레드덕 | 온라인 FPS | PC | 미정 | 아바의 개발사에서 만드는 또다른 신작 |
프로젝트 AC(스피드스타 or 에어블리츠(?)) | 아크로 게임즈 | 온라인 비행 레이싱 슈팅 | PC | ||
파라벨륨 | 온라인 FPS | 아코니게임즈 | PC | 2009년 예정 | 독일에 위치한 개발사로 16개국의 개발자가 모여서 만드는 게임 |
누리엔(Nurien) | 세컨드 라이프 | 누리엔 엔터테인먼트 | PC | 2008년 | 세컨드 라이프 형태의 게임으로 웹접목 등 앞으로 많은 변화가 기대되는 게임 |
-
- 이 외에 다수의 개발사들이 언리얼 엔진 3를 사용해 온라인 게임을 개발중이거나 개발할 예정에 있다.
- RTS의 언리얼 엔진 3 활용 사례
- Ubisoft
- Tom Clancy's EndWar
- Ubisoft
- RPG의 언리얼 엔진 3 활용 사례
- Mistwalker
- Lost Odyssey
- Mistwalker
-
- Square Enix
- The Last Lemnant
- Square Enix
-
- 마그나카르타 2
- 소프트맥스
- 마그나카르타 2
업데이트 : 언리얼 엔진 4 주력 이전(약 2013년경)까지 지속적 개량, 최적화, 새로운 렌더링 기술, 새로운 툴셋, 기타 요소 추가
- 언리얼 엔진 3는 현재 PC에서는 64-bit 프로세싱, 차세대 콘솔(Xbox 360, PS3)지원, 멀티 쓰레딩, Windows Vista와 Direct3D 10의 완전한 활용, 앞으로도 언리얼 엔진 4가 출시되고 난 후에도 언리얼 엔진 4가 개발의 주류가 될 때까지 계속해서 꾸준하게 엔진이 버전업 되면서 신기술의 추가와 더 편리한 툴셋과 IPP의 추가등 현격한 향상이 있을 것이다.
언리얼 엔진 3의 특징
- C++ DLL 모듈 기반
- Plug-in 컴포넌트화
- 기존의 언리얼 엔진 2보다도 더욱
커스터마이징이 용이한 구조로 개선되었다.
- 엔진 코드와 게임 코드가 상호 의존적인 부분을 완전히 분리시키고도 내부적으로 엔진의 연동성은 더 뛰어나고 유연함과 확장성이 기존보다도 더 증대되었으며 더욱 융통성 있는 엔진의 구조를 갖게 되었다.
- 기존의 언리얼 엔진 2에 비해서도 더욱
발전된 언리얼 엔진 코어 시스템 디자인
- UnrealScript의 사용으로 여러 모듈
결합이 매우 용이한 점은 전보다 더욱 확장하기 쉽게 개선되었다.
- 언리얼 엔진이 다른 엔진들과 가장 차별화되는 독보적인
특징으로서 언리얼 가상 머신의 개념과
UnrealScript를 사용하여 다양한
모듈을 제어하고 연동할 수 있다는 점이다.
- 언리얼 엔진에서는 모든 모듈이 언리얼 엔진에서 정의한
각각의 모델로 구성되어 있으며 기존의 존재하는 모델이나
모델 타입 또는 새로운 모델이나 새로운 모델 타입을
추가/변경/삭제가 가능하며 이 모든 것들은 커스터마이징이
가능하다.
- 모든 모듈/모델은 언리얼 가상 머신을 통해 언리얼 엔진 내부에서 전체적으로 매우 유연하게 연동된다. 직접 네이티브 코드로 연동을 시키지 않고서도 UnrealScript만을 사용해서도 외부의 모듈을 언리얼 엔진 내에 연동 시켜서 사용할 수 있으며 이런 연동 작업은 UnrealEd 내에서 매우 간단하게 가능하다. UnrealScript를 쓰지 않고 네이티브 코드만 연동 시키는 경우에도 유연한 코드 구조 덕분에 다른 엔진보다 쉬운 장점을 제공하지만 UnrealScript를 쓰는 것은 전혀 어렵지 않으므로 꼭 쓰길 권한다. 네이티브 코드로 연동하고 UnrealScript를 사용해서 연동 시킨다면 더욱 빠른 속도와 모듈의 커스터마이징에 유연한 환경을 가질 수 있다.
- 언리얼 엔진에서는 모든 모듈이 언리얼 엔진에서 정의한
각각의 모델로 구성되어 있으며 기존의 존재하는 모델이나
모델 타입 또는 새로운 모델이나 새로운 모델 타입을
추가/변경/삭제가 가능하며 이 모든 것들은 커스터마이징이
가능하다.
- 언리얼 엔진이 다른 엔진들과 가장 차별화되는 독보적인
특징으로서 언리얼 가상 머신의 개념과
UnrealScript를 사용하여 다양한
모듈을 제어하고 연동할 수 있다는 점이다.
- 엔진 제어나 연동 외에도 게임 플레이 스크립트도
UnrealScript로 작성할 수 있다.
- 게임 플레이 프로그래머/스크립터의 취향이나 성향에 따라서는
C#, JavaScript, Ruby, Lua와 같은
외부 언어를 적용하거나 외부 언어와
UnrealScript 동시 사용이
가능하다.
- UnrealScript와 외부 언어 2개
이상 또는 외부 언어만 2개 이상을 동시 사용하는 것도
유연한 코드 구조 덕분에 쉽게 가능하다.
- 각각 모듈별로 언어를 적용하여 사용이 가능하다.
- UnrealScript와 외부 언어 2개
이상 또는 외부 언어만 2개 이상을 동시 사용하는 것도
유연한 코드 구조 덕분에 쉽게 가능하다.
- 게임 플레이 프로그래머/스크립터의 취향이나 성향에 따라서는
C#, JavaScript, Ruby, Lua와 같은
외부 언어를 적용하거나 외부 언어와
UnrealScript 동시 사용이
가능하다.
- UnrealScript의 사용으로 여러 모듈
결합이 매우 용이한 점은 전보다 더욱 확장하기 쉽게 개선되었다.
- UnrealEd와 그 내부의 세부 툴은 C#이나 Visual Basic, Java APP등의 언어로 개발하여 연동하기가 쉬우며 이식도 간단하게 가능하다.
- 엔진 코드와 게임 코드의 명확한 경계로 프로그래밍이 훨씬 수월하게
개선되었다. 언리얼 엔진 2까지는 엔진
코드와 게임 코드가 어느정도 상호 의존적이었다. 그러나 언리얼 엔진
3에서는 그 구분이 더욱 명확해져서 프로그래밍 작업상의 훨씬 효율적인
잇점을 제공한다.
- 엔진을 커스터마이징하여 게임을 개발하던 도중 엔진을 업그레이드 하거나 다른 변경 사항을 적용해도 엔진을 크게 다시 손 볼 필요가 없이 손쉽게 적용 가능하다.
- 각 부분의 코드들의 명확한 경계가 있지만 내부적으로 연동성은 매우 좋다.
- Unreal Engine 3 IPP (Integrated Partners Program)
- 언리얼 엔진 3에선 IPP를 추진하고 엔진에 지속적으로 업데이트
해나간다. 언리얼 엔진 3 IPP는 에픽 자체의 기술이 아닌 외부의 각
분야마다 최고의 미들웨어 솔루션을 라이센스 해서 언리얼 엔진 3에
통합하는 것으로서 그 것은 렌더링 관련, 사운드, 네트워크,
인공지능과 같은 각 분야별 관련 미들웨어나 SDK, 그리고 외부의
다양한 툴셋마저도 통합하는 것을 포함하며 IPP에 포함된
미들웨어들의 라이센스 비용을 따로 필요로 하지 않으며 모두 언리얼
엔진 3 사용 개발사들에게 무상 제공된다. 하지만 아직까지는 모든
IPP가 완전히 무상으로 제공되는 것이 아니며 PhysX 물리
엔진이나 FaceFX는 모든 소스와
툴셋이 완전하게 제공이 되지만 일부 IPP는 일부 라이브러리만
제공되거나 SpeedTree는 직접 구매를
해야만 연결해서 사용이 가능하다. 언리얼 엔진 3 IPP가 생기게 된
연유는 다음과 같다.
- 현재는 기술의 발전으로 게임 개발에는 고도의 프로그래밍 기술이 필요하게 됐으며 그에 따라서 상용 엔진의 사용이 대세이다. 계속 발전하는 기술은 분야별로 세밀한 각각의 전문적인 엔진들 (렌더링, 애니메이션, 라이팅, 지형, 인도어, 물리, 사운드, 네트워크, 인공지능, 립싱크, 초목 구현 등)에 따라서 한 분야별 엔진들이 만들어지고 라이센스 되기 시작했다. 이 것은 엔진 개발 비용상으로도 어쩔 수 없는 문제이기도 하지만 발전하고 복잡해진 기술로 인해서 각각의 분야별로 전문적인 최고의 솔루션이 만들어지기 위해서는 어쩔 수 없는 현상이다.
- 언리얼 엔진 3는 이러한 각 분야마다 최고의 기술들을 제공하기 위해서이며 또한 만들고자 하는 게임에 따라서도 요구하는게 달라질 수 있으므로 같은 분야라도 (네트워크 부분의 모듈은 현재까지 자체 1개와 2개가 추가됐고 라이팅 관련은 자체와 IPP 1개, 인공지능은 자체 1개와 IPP 2개 등) 여러가지의 외부 기술들을 라이센스 해서 언리얼 엔진 3에 포함함으로서 진정한 최고의 범용 게임 엔진으로서의 길을 걷고 있다. 외부의 기술은 언리얼 엔진 3 라이센스시 그냥 번들 형태로 제공되는게 아니라 언리얼 엔진 3의 잘 짜여진 구조를 바탕으로 외부의 모든 모듈들이 서로간에 긴밀하게 연동되어 있으며 언리얼 엔진 3를 라이센스하면 이 모든 외부 IPP 기술들을 추가적인 비용없이 무상으로 제공받을 수 있다. 연동된 기술들은 언리얼 엔진 3 구조하에 연동된 만큼 언리얼 엔진 3의 기본적인 구성요소와 마찬가지로 UnrealScript를 통해 제어할 수 있으며 UnrealEd에서 곧 바로 사용 가능하며 언리얼 엔진 3의 기본적인 확장 기능성과 마찬가지의 특성을 가지고 있으므로 언리얼 엔진 3와 따로 떨어진 상태로 외부 미들웨어 모듈을 직접 사용하는 것보다 언리얼 엔진 3상에서 순조롭게 커스터마이징이 가능한 잇점도 제공한다. 그리고 언리얼 엔진 3 IPP에 포함된 미들웨어들은 한번의 업데이트로 끝나는 것이 아니라 해당 미들웨어들의 버전업을 수시로 체크하여 언리얼 엔진 3에 지속적으로 최신 버전으로 업데이트 된다.
- 언리얼 엔진 3에선 IPP를 추진하고 엔진에 지속적으로 업데이트
해나간다. 언리얼 엔진 3 IPP는 에픽 자체의 기술이 아닌 외부의 각
분야마다 최고의 미들웨어 솔루션을 라이센스 해서 언리얼 엔진 3에
통합하는 것으로서 그 것은 렌더링 관련, 사운드, 네트워크,
인공지능과 같은 각 분야별 관련 미들웨어나 SDK, 그리고 외부의
다양한 툴셋마저도 통합하는 것을 포함하며 IPP에 포함된
미들웨어들의 라이센스 비용을 따로 필요로 하지 않으며 모두 언리얼
엔진 3 사용 개발사들에게 무상 제공된다. 하지만 아직까지는 모든
IPP가 완전히 무상으로 제공되는 것이 아니며 PhysX 물리
엔진이나 FaceFX는 모든 소스와
툴셋이 완전하게 제공이 되지만 일부 IPP는 일부 라이브러리만
제공되거나 SpeedTree는 직접 구매를
해야만 연결해서 사용이 가능하다. 언리얼 엔진 3 IPP가 생기게 된
연유는 다음과 같다.
ATLAS Technology(MMO 지원 기술) : 곧 지원 예정
- MMO 월드 서버 기술 및 서버 툴
- 언리얼 엔진 3 클라이언트 MMO 최적화 기능 및 툴
- 서버와 클라이언트간 완벽한 연동
- 다양한 형태의 MMO 및 MO 게임을 위한 확장성 고려
- 언리얼 엔진 3 빌드 버전 업데이트에 맞춘 지속 업그레이드
플랫폼 지원
- 32-bit Windows (Windows XP/Vista/7, DX10 완벽 대응, DX11 곧 지원 예정)
- 64-bit Windows (Windows XP/Vista/7, DX10 완벽 대응, DX11 곧 지원
예정)
- 완전한 64비트 프로세싱 지원
- 64비트에서는 더욱 향상된 리소스 관리와 최적화, 더욱 세밀한 메쉬, 텍스처, 라이팅, 셰도우, 셰이더, 특수효과 등의 렌더링 표현, 더욱 향상된 물리 시스템 및 인공지능 처리 등 모든 점에서 기능적, 성능적으로의 향상이 있다.
- 완전한 64비트 프로세싱 지원
- 32-bit Linux
- 64-bit Linux
- 완전한 6