언리얼 엔진 3 (Unreal Engine 3) 가격과정보
개발사 : 에픽 게임스 (Epic Games)
가격
1 타이틀 당 $500,000
1 플랫폼 추가 당 $50,000
한 회사에서 다중 라이센스 시에는 라이센스 수에 비례해서 타이틀 당 가격, 플랫폼 추가 당 가격이 내려간다
로열티 프리일 경우엔 라이센스 비용이 약간 상승한다
계약 조건에 따라서 업데이트 기간이나 가격 등이 상이하게 다르다
언리얼 엔진의 버전
원래는 언리얼 엔진 버전은 build 숫자가 존재하였다.
Unreal Engine 1의 build 숫자는 1부터 613까지
Unreal Engine 2의 build 숫자는 633부터 3369까지
Unreal Engine 3의 build 숫자는 3376부터 시작되었으며 Unreal Engine 4가 주류가 되기 이전인약 2012~2013~2014까지 업데이트
에픽에게 필요한 것을 계속 요구하고 엔진의 사용자들이 많이 요구하는 것들일수록 그 요구사항에 관한 업데이트가 빨리 이루어진다. 예를 들면 MMOG에 적용하는 사례가 많아지면서 네트웍 모듈을 쉽게 수정 가능하도록 네트웍과 연계된 부분에 대한 엔진의 코드 구조를 바꾸는 업데이트가 행해지거나 역동적인 물리 엔진 효과들을 기반으로 한 게임플레이를 추구하는 게임들이 많아지면서 물리 엔진의 강화와 더불어 UnrealEd 내부에서 물리 엔진 설정과 실험을 직접 플레이하면서 가능하도록 마치 하프라이프 2의 Garry Mod와 비슷한 에디팅이 가능하도록 업데이트 되었다. 이처럼 필요한 것이 있다면 직접 구현하지 말며 항상 에픽에게 요구를 해서 필요한 기능이 업데이트 되도록 해서 엔진을 사용하는 다른 개발사들에게도 이득이 되도록 해야한다.
언리얼 엔진의 역사
이전 역사는 언리얼 엔진 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는 다음 세대의 게임 콘솔 기기들과 2012년 이후의 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
팀 스위니는 오래전부터 이런 강연과 연설을 해왔음에도 불구하고 이런 부분을 신경쓰는 게임엔진들이 언리얼 엔진을 제외하고는 전무하다는게 놀라운 일이다. 물론 이러한점 때문에도 언리얼 엔진이 범용 게임엔진으로 자리를 굳건히 한데에도 커다란 이유가 됐을것이다. 만일 국내에서 국산 엔진 개발을 시도한다면 이런 부분을 꼭 신경써서 개발하길 바라는 바이다.
언리얼 엔진은 앞으로도 버전업과 새로운 세대의 버전을 개발하면서 이 부분들을 더욱 강력하게 신경써서 확장할 계획에 있다.
언리얼 엔진 3의 버전업은 언리얼 엔진 4 (언리얼 엔진 4는 2010년 말이나 2011년 초에 출시될 예정)가 주 개발 플랫폼으로 자리잡을 시점인 약 2012년까지 꾸준하게 버전업이 이루어지면서 새로운 툴셋의 추가와 개선, 그 동안 새롭게 출시되는 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)
가상의 폴리곤을 형성해 그곳에 라이팅과 음영처리가 실제 폴리곤이 존재하는 것처럼 반응하거나 그외의 여러가지로 쓰이게 위해 연구중인 기술들이며 현재는 지형과 서페이스 도입되어 있으며 캐릭터 애니메이션과도 혼합할 수 있게 연구중에 있다.
제공되는 소스
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
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가 계속 버전업을 이루면서 발전하고 있다.
UnrealEd에서는 모든 작업을 실시간으로 하여 보이는 그대로 적용하는 것 그대로가 게임이 그대로 나오는 것이다. 모든 렌더링 제작, 편집 및 설정 (인도어 제작, 아웃도어 제작, 광원 배치, 텍스처 적용, 다양한 특수 효과 적용, 그림자 사용, 애니메이션 설정), 물리 설정 및 적용, 탈것 설정 및 적용, A.I. 패스노드 설정, 사운드 설정, 컷신 제작, 게임 플레이 스크립트 설정, 게임 A.I. 설정, 게임 모드와 멀티 A.I. 설정 등의 게임에 필요한 모든 작업을 UnrealEd 내부에서 보이는 그대로 작업한다.
외부 툴과의 연동이나 UnrealEd 내의 새로운 툴 추가나 수정이 쉽고 엔진을 개량시 동시에 툴셋에도 개량 요소 추가 용이하며 새로 추가한 요소와 기존의 요소를 연동하기가 용이하다.
UnrealEd의 주요 세부 툴셋
UnrealMatinee :UnrealEd 내에서 편리하게 도와주는 컷신 제작 툴셋 (언리얼 엔진 2버전에 비해 비약적으로 향상)
UnrealCascade : 언리얼 엔진 2의 파티클 위저드 및 언리얼 엔진 2.5의 파티클 시스템 에디터에 비해서 비약적으로 향상된 파티클 툴셋
UnrealKismet : 게임 플레이나 인공지능 설정등의 모든 스크립팅을 플로우챠트 형식으로 만들어서 비주얼적으로 개발하는 툴셋, UnrealScript를 자동 생성하며 UnrealMatinee로 컷신 스크립트를 작성 할 때도 사용 가능하며, UnrealEd 내의 다른 모든 툴 및 임의적으로 추가한 툴과도 연동되어 각 부분의 스크립트 생성에 사용 가능하며 임의로 추가한 기능이나 커스터마이징된 기능 및 IPP로 추가된 새로운 기능들과도 연동되어 사용 가능하다.
Visual Material Editor : 비주얼 툴셋으로 재질 셰이더를 설정하면 자동으로 Cg, HLSL, GLSL 코드가 생성된다.
Visual Terrain Editor : 실시간 비주얼로 보이는 그대로 지형을 생성하고 초목을 장식하고 광활한 실외 지역을 작업하는 툴셋 (현재 보이는 스크린샷은 2004년경의 구버전 에디터이다. 후에 2005년엔 향상되고 편리한 새로운 지형 에디터로 변화 되었으며 현재 2009년 9월자로 voxel 혼합의 지형과 이전보다 더 편리하고 새로운 지형 에디터로 변화하였다)
SoundCue Editor : 사운드의 설정을 해주는 툴로 작업환경 전체에 걸쳐서 다양한 세부적 사운드 설정을 해주는 툴셋
UnrealPhAT : 물리의 모든 세부적인 설정을 해주는 툴로서 게임내 모든 환경과 오브젝트, 탈것, 캐릭터에 물리를 실시간으로 세부적인 설정이 가능한 툴셋
AnimSet Editor : 모든 애니메이션 세트와 애니메이션 시퀀스를 설정하는 툴셋
AnimTree Editor : 애니메이션을 비주얼 트리 모양으로 나열해서 한눈에 알아보기 쉽게 구성해 놓고 설정을 할 수 있는 툴셋
Script Editor : UnrealEd 내에서 모든 스크립트를 바로 열어서 확인 가능하고 수정한 후에 즉석에서 인터프리팅해서 실행할 수 있으며 컴파일해서 적용 시킬 수도 있는 툴셋
Play In Editor : UnrealEd 내에서 에디팅 작업 중의 게임 자체를 바로 실행해 볼 수 있는 확인하고 작업할 수 있는 기능을 가진 툴셋으로 UnrealEd 상에서 에디팅 작업과 게임 플레이를 동시에 가능하며 매우 직관적인 디자인을 가능하게 해준다
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를 제작할 수 있는 툴셋
적당한 노말값을 추정하여 노말맵을 생성하는 툴셋 2,000,000 폴리곤 (노말맵을 추출할 모델) 5,287 폴리곤 (실제 게임에 사용될 모델) 5,287 폴리곤이 사용된 모델에 노말맵을 적용 (엔진상에서 보이는 모델) 200,000,000개의 폴리곤으로 노말맵을 추출해서 적용한 배경씬 실제 게임상의 폴리곤 수는 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는 2012년까지 업데이트 될 예정으로서 앞으로도 더 많은 툴셋과 유틸리티들이 추가 될 예정에 있다.
제공되는 컨텐츠
Unreal Engine 3 Example Contents
Epic의 Unreal Engine 3 사용 게임들의 Example Contents
Gears of War의 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년 12월 출시 예정
언리얼 토너먼트 3 (Unreal Tournament 3)
PC - 2007년 11월 출시 예정
Xbox 360 - 2008년 1월 출시 예정
PlayStation 3 - 2007년 11월 출시 예정
신작 FPS 게임 (확정)
신작 미니 게임 (미확정, UDN에 있는 정보)
기어스 오브 워 2 (Gears of War 2, 미확정, UDN에 있는 정보)
언리얼 3 (Unreal 3, 확정)
이 엔진을 사용한 대표적인 게임
기어스 오브 워
레인보우 식스 베가스
언리얼 토너먼트 3
헉슬리
로스트 오디세이
바이오쇼크
메달 오브 아너: 에어본
스트랭글홀드
로스트 오딧세이
매스 이펙트
아바
스타게이트 월즈
튜록
마그나 카르타 2
국내에서 쓰이는 게임 (MMORPG)
레드덕의 프로젝트 M(신작 MMORPG라고 한다)
NC소프트의 프로젝트 M(김형태씨가 참여해 만드는 동양풍의 판타지 MMORPG라고 한다) 및 몇개의 미발표 작품들
애니파크의 A4(A3 차기작이며 A4는 임시제목이다)
소노브이의 신규 MMORPG
블루너츠의 신규 MMORPG
아크로게임즈의 신규 MMORPG
국내에서 쓰이는 게임 (MMOFPS)
웹젠의 헉슬리
국내에서 쓰이는 게임 (온라인 FPS)
레드덕의 아바
SK i미디어의 신규 온라인 FPS
CJIG의 B프로젝트
국내에서 쓰이는 게임 (콘솔 게임)
소프트맥스의 마그나 카르타 2(Xbox 360용)
국내에서 쓰이는 게임 (세컨드 라이프)
RTWA의 미발표한 세컨드 라이프 프로젝트
그 외에 아직 미발표한 다수의 개발사들이 언리얼 엔진 3를 사용해서 개발중인데 적어도 2007년 11월 현재 국내에서 약 50여 이상의 프로젝트에 사용하고 있으며 국내에서는 대부분 FPS나 MMORPG가 많다.
국내에서 엔진을 쓰다가 게임이 취소된 경우
웹젠의 PlayStation 3용 게임인 엔드리스 사가
언리얼 엔진 3가 게임과 맞지 않다거나 엔진 자체의 문제점으로 취소된 것은 아니고 PlayStation 3의 열악한 개발조건과 회사 수지타산이 맞지 않아서 취소된 경우이다.
그러나 라이센스비용이 낭비된 것은 아니다. 웹젠은 이미 언리얼 엔진 3를 사용해서 헉슬리를 개발하고 있었으며 엔드리스 사가도 언리얼 엔진 3를 사용해서 개발했지만 이미 한번 라이센스 한 상태에서 비용은 더 들지 않으며 게임이 완성되어 출시했을 때 추가비용이 들어가는 것이기 때문이다.
웹젠의 뮤 2 (개발사들의 퇴사로 인해 현재 개발이 중단되었으나 완전히 취소된 것은 아니다)
NC소프트의 리니지 3 (개발자들의 기술 유출 사건으로 개발진이 교체되고 자체 엔진으로 다시 개발된다)
해외에서 쓰이는 게임
뛰어난 기술력과 편리한 차세대 툴셋과 뛰어난 확장성으로 PlayStation 2 및 Xbox 세대에서 표준으로 사용되던 렌더웨어(RenderWare)를 제치고 PlayStation 3 및 Xbox 360 세대부터는 콘솔 및 PC 게임 및 온라인 게임 개발 시장을 장악하다시피 하고 있다.
다양한 장르에 많이 쓰이며 FPS나 3인칭 액션, 어드벤쳐, RPG, RTS, 카툰 스타일의 캐주얼 게임, MMORPG등 장르를 구분하지 않고 많이 쓰인다.
MMOG의 언리얼 엔진 3 활용 사례
Sigil Games Online
Vanguard : Saga of Heroes 두번째 확장팩 (뱅가드 원본과 첫번째 확장팩은 언리얼 엔진 2를 사용하였으며 두번째 확장팩에서 언리얼 엔진 3로 업그레이드 할 예정이다)
그 외에 신작 MMO 게임들
Cheyenne Mountain Entertainment
Stargate Worlds
그 외에 신작 MMO 게임들
Sony Online Entertainment
DC Comics/Universe Online
EverQuest 3
그 외에 몇종의 MMO 게임들
Auran
Fury
그 외에 몇종의 신작 MMO 게임들
Vogster Entertainment
Crimecraft
그 외에 몇종의 신작 MMO 게임들
Microsoft Game Studios
몇종의 신작 MMO 게임들
Realtime Worlds
All Point Bulletin
Realtime Worlds Asia의 세컨드 라이프 프로젝트
중국의 개발사 천청의 신작 MMORPG
중국의 개발사 소프트-월드 (Soft-World)의 신작 MMORPG
중국 개발사 9you(나인유)의 신작 MMORPG
중국 개발사 Magic Grids의 다수 작품들
이 외에 다수의 개발사들이 언리얼 엔진 3를 사용해 온라인 게임을 개발중이거나 개발할 예정에 있다.
RTS의 언리얼 엔진 3 활용 사례
Ensemble Studios
Halo Wars
Age of Empire 후속작
또 다른 신작 RTS
TimeGate Studios
미발표 신작 RTS
Ubisoft
Tom Clancy's EndWar
RPG의 언리얼 엔진 3 활용 사례
Mistwalker
Lost Odyssey
Square Enix
The Last Lemnant
그 외에 다수의 RPG 게임들
라이센스 수가 더욱 늘어나서 현재 2007년 6월까지 약 100여곳 이상의 업체에서 현재 600여개 이상의 타이틀 개발중이다. 콘솔 게임에도 매우 많으며 앞으로도 더 늘어날 것으로 추정된다.
소규모 개발사에서는 싱글 라이센스로 사용하거나 큰 유통사의 지원을 받아 사용하는 경우가 많다
대규모 개발사에서는 대부분 멀티플 라이센스 계약을 체결해서 사내의 여러 스튜디오 및 팀에서 사용하게 한다.
특히 엔진 구조가 매우 플랙시블한 장점을 한껏 활용해서 대형 회사같은 경우에는 멀티플 라이센스로 회사 전체에서 공유하면서 여러 게임에 커스터마이징 되고 그렇게 된 부분들의 장점들을 또 다시 추려내서 각 게임마다 다시 적용하는게 쉬워서 그런 장점으로도 많이 사용되고 있다. 깔끔하고 좋은 코드의 구조와 연동성을 갖지 못한 엔진은 그렇게 할 수 없다. 그런 경우엔 코드가 거의 엉망진창이 된다.
언리얼 엔진 2는 특히 유비소프트에서 그렇게 잘 사용하였다.
언리얼 엔진 3는 그렇게 사용하는 개발사가 상당히 많다. 해외 서양쪽이나 일본쪽의 대형 유통사 및 개발사들의 경우에 많은 회사들이 다수의 게임에 사용하기 위해서 언리얼 엔진 3를 멀티플 라이센스를 하였다. 언리얼 엔진 3부터는 그런 장점들이 타 플랫폼으로의 이식에도 용이하도록설계되어 있다.
업데이트 : 지속적으로 개량 중, 최적화, 새로운 렌더링 기술, 새로운 툴셋, 기타 요소 등등
언리얼 엔진 3는 현재 64-bit 프로세싱, PC와 차세대 콘솔 기기들의 멀티 쓰레딩, Windows Vista와 Direct3D 10의 완전한 활용 및 복셀 렌더링, 새로운 지형 시스템, 실시간 래디오시티같은 신기술이 구현되어 있으며 앞으로도 언리얼 엔진 4가 출시되기 이전인 약 2012년정도까지 계속해서 꾸준하게 엔진이 버전업 되면서 신기술의 추가와 더 편리한 툴셋과 IPP의 추가등 현격한 향상이 있을 것이다.
언리얼 엔진 3의 특징
C++ DLL 모듈 기반
Plug-in 컴포넌트화
기존의 언리얼 엔진 2보다도 더욱 커스터마이징이 용이한 구조로 개선되었다.
엔진 코드와 게임 코드가 상호 의존적인 부분을 완전히 분리시키고도 내부적으로 엔진의 연동성은 더 뛰어나고 유연함과 확장성이 기존보다도 더 증대되었으며 더욱 융통성 있는 엔진의 구조를 갖게 되었다.
기존의 언리얼 엔진 2에 비해서도 더욱 발전된 언리얼 엔진 코어 시스템 디자인
UnrealScript의 사용으로 여러 모듈 결합이 매우 용이한 점은 전보다 더욱 확장하기 쉽게 개선되었다.
언리얼 엔진이 다른 엔진들과 가장 차별화되는 독보적인 특징으로서 언리얼 가상 머신의 개념과 UnrealScript를 사용하여 다양한 모듈을 제어하고 연동할 수 있다는 점이다.
언리얼 엔진에서는 모든 모듈이 언리얼 엔진에서 정의한 각각의 모델로 구성되어 있으며 기존의 존재하는 모델이나 모델 타입 또는 새로운 모델이나 새로운 모델 타입을 추가/변경/삭제가 가능하며 이 모든 것들은 커스터마이징이 가능하다.
모든 모듈/모델은 언리얼 가상 머신을 통해 언리얼 엔진 내부에서 전체적으로 매우 유연하게 연동된다. 직접 네이티브 코드로 연동을 시키지 않고서도 UnrealScript만을 사용해서도 외부의 모듈을 언리얼 엔진 내에 연동 시켜서 사용할 수 있으며 이런 연동 작업은 UnrealEd 내에서 매우 간단하게 가능하다. UnrealScript를 쓰지 않고 네이티브 코드만 연동 시키는 경우에도 유연한 코드 구조 덕분에 다른 엔진보다 쉬운 장점을 제공하지만 UnrealScript를 쓰는 것은 전혀 어렵지 않으므로 꼭 쓰길 권한다. 네이티브 코드로 연동하고 UnrealScript를 사용해서 연동 시킨다면 더욱 빠른 속도와 모듈의 커스터마이징에 유연한 환경을 가질 수 있다.
엔진 제어나 연동 외에도 게임 플레이 스크립트도 UnrealScript로 작성할 수 있다.
게임 플레이 프로그래머/스크립터의 취향이나 성향에 따라서는 C#, ja-vascript, Ruby, Lua와 같은 외부 언어를 적용하거나 외부 언어와 UnrealScript 동시 사용이 가능하다.
UnrealScript와 외부 언어 2개 이상 또는 외부 언어만 2개 이상을 동시 사용하는 것도 유연한 코드 구조 덕분에 쉽게 가능하다.
각각 모듈별로 언어를 적용하여 사용이 가능하다.
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에 지속적으로 최신 버전으로 업데이트 된다.
플랫폼 지원
32-bit Windows (Windows XP/Vista, Windows Vista와 DirectX 10 완벽 대응)
64-bit Windows (Windows XP/Vista, Windows Vista와 DirectX 10 완벽 대응)
완전한 64비트 프로세싱 지원
64비트에서는 더욱 향상된 리소스 관리와 최적화, 더욱 세밀한 메쉬, 텍스처, 라이팅, 셰도우, 셰이더, 특수효과 등의 렌더링 표현, 더욱 향상된 물리 시스템 및 인공지능 처리 등 모든 점에서 기능적, 성능적으로의 향상이 있다.
32-bit Linux
64-bit Linux
완전한 64비트 프로세싱 지원
64비트에서는 더욱 향상된 리소스 관리와 최적화, 더욱 세밀한 메쉬, 텍스처, 라이팅, 셰도우, 셰이더, 특수효과 등의 렌더링 표현, 더욱 향상된 물리 시스템 및 인공지능 처리 등 모든 점에서 기능적, 성능적으로의 향상이 있다.
32-bit MacOS X
64-bit MacOS X
완전한 64비트 프로세싱 지원
64비트에서는 더욱 향상된 리소스 관리와 최적화, 더욱 세밀한 메쉬, 텍스처, 라이팅, 셰도우, 셰이더, 특수효과 등의 렌더링 표현, 더욱 향상된 물리 시스템 및 인공지능 처리 등 모든 점에서 기능적, 성능적으로의 향상이 있다.
Xbox 360 (Gears of War를 통해 Xbox 360상에서의 성능은 충분히 증명이 되었으나 더 향상을 위해 개선중에 있다)
PlayStation 3 (현재 2007년 10월 버전 기준으로 PlayStation 3상에서 매우 잘 돌아가며 계속 개선중에 있다)
멀티 쓰레딩
Xbox 360 (Xenon 프로세서의 트리플 코어에 최적화된 멀티 쓰레딩)
PlayStation 3 (Cell 프로세서의 다중 코어에 최적화된 멀티 쓰레딩)
PC (2-코어, 4-코어, 8-코어에 각각 최적화된 멀티 쓰레드 렌더링/멀티 쓰레딩/멀티 쓰레드 프로세싱)
렌더링 시스템을 멀티 쓰레드로 처리
렌더링, 물리 연산, 인공지능, 사운드를 각각 멀티 쓰레드로 처리
기타 모듈을 멀티 쓰레드로 지정하여 처리
로딩 시스템
Zone-based Loading System
Backgrounds Loading System
Static Loading System
Dynamic Loading System
Streaming Loading System
Seamless Loading System
렌더링 엔진
Perforce를 통해서 제공받는 Unreal Engine 3 코드는 순수한 Pure Unreal Engine 3이다. Pure Unreal Engine 3 코드는 아래에 설명된 것처럼 다양한 기술을 포함하지 않는다. 순수 D3D 9, D3D 10, OpenGL 2.x, OpenGl 3.x 기반의 렌더링만 탑재하고 있고 아래와 같은 다양한 기술 지원은 UDN에 로그인 해서 IPP를 포함해 다양한 기술들을 필요에 따라 골라서 추가하거나 조합하는게 가능하다.
멀티 쓰레딩 렌더링 지원
렌더링 API 지원
Direct3D 9 (Windows XP/Vista, Xbox 360)
Direct3D 10 (Windows Vista)
PSGL (Modified version of OpenGL ES 1.0 and 2.0 for PlayStation 3)
OpenGL 2 (Windows XP/Vista, Linux, MacOS X)
OpenGL 3 (Windows XP/Vista, Linux, MacOS X)
Native OpenGL (Windows XP/Vista, Lunux, MacOS X, PlayStation 3)
하드웨어 셰이더 (Hardware Shader)
셰이더 모델 2b (Shader Model 2b) 하위 호환
셰이더 모델 3 (Shader Model 3) 완벽 지원
셰이더 모델 4 (Shader Model 4) 완벽 지원
지오메트리 셰이더 (Geometry Shader) 완벽 지원
셰이더 모델 5 (Shader Model 5) 곧 지원 예정
인도어 (Binary Space Partitioning, Constructive Solid Geometry, Portal rendering, Octree, Occlusion Culling, Collision Detection, Static Meshes, Voxel Spaces, Level of Detail)
Umbra Software의 Umbra, dPVS, sPVS 씬 그래프의 CPU, GPU 하드웨어 최적화 기술을 통합하여 제공 (Unreal Engine 3 IPP)
Static Meshes의 활용으로 고폴리곤의 복잡한 구조물들이 점철된 지역을 적은 메모리와 연산량으로 빠르게 구현이 가능하다 (언리얼 엔진 1에선 고정되어 있고 완전히 정적인 메쉬들만 스태틱 메쉬로 정의해 연산량을 줄일 수 있었으나 언리얼 엔진 2에선 미리 정해놓은대로 혹은 임의로 이동하는 객체나 물리 엔진을 적용해서 상호작용하는 객체 (Mover)까지도 물리 엔진을 적용해서까지 스태틱 메쉬로 정의해 연산량을 줄일 수 있게 됐으며 언리얼 엔진 2.5에선 모양은 변하지 않되 같은 메쉬 내의 버텍스가 움직이는 Animated Pawn Actor까지도 스태틱 메쉬로 정의해 연산량을 줄일 수 있게 됐으며 언리얼 엔진 3에선 메쉬의 폴리곤 버텍스 좌표는 변하지 않고 메쉬 자체의 모양은 제한 없이 가변성이 있는 애니메이션을 가진 메쉬들까지도 스태틱 메쉬로 정의하여 연산량을 크게 줄이는 것이 가능하게 됐으며 버전업을 하면서 최신 버전에서는 메쉬의 폴리곤 버텍스 좌표는 변하지 않는 한에서 산산조각이 나며 부서지는 메쉬까지도 단 하나의 스태틱 메쉬로 정의하여 연산량을 크게 줄이는게 가능하게 됐으며 그것은 미리 만들어진 모양으로나 임의적 모양으로나 물리 엔진을 적용한 사실적인 파편조각들로 튀게 만드는게 가능하다)
Long-ranged Distance Indoor Space and Static/Dynamic Meshes (가시거리의 범위가 매우 크며 64비트 프로세싱을 할 경우에는 가시거리의 범위가 늘어나며 더욱 세밀한 구조물들을 빠른 속도로 구현이 가능하다)
Displacement Mapping 기술을 활용해서 Level of Detail로 인해서 생길 수 있는 시각적 손상을 방지한다.
실시간 지역/물체 동적 변형
물리적 강도에 따른 모양의 자유로운 변화
미리 정해 놓은 한도내의 변화
미리 구성된 변화
아웃도어 (Height-field Terrain, Voxel Terrain, Octree, Occlusion Culling, Collision Detection, Level of Detail) 이 스크린샷은 구버전으로 최신버전은 이 스크린샷보다 훨씬 향상되었다
Umbra Software의 Umbra, dPVS, sPVS 씬 그래프의 CPU, GPU 하드웨어 최적화 기술을 통합하여 제공 (Unreal Engine 3 IPP)
아웃도어의 표현에도 모든 렌더링, 라이팅, 셰이딩, 셰도우, 텍스처링의 적용에 전혀 제한이 없으며 인도어의 표현에서 사용하는 모든 기술들을 그대로 적용할 수 있다
Long-ranged Distance Terrain (가시거리는 약 100Km 이상이며 64비트 프로세싱을 할 경우에는 가시거리의 범위가 늘어나며 지형의 세밀한 굴곡 표현 등의 정밀도도 향상된다)
2007년 9월자의 새로운 지형 시스템 업데이트로 100Km 이상의 광대한 지형을 구현하는 시스템과 초목 장식, 나무, 숲, 산, 동굴, 가파르거나 평평한 절벽 등 다양한 새로운 기술의 지형 시스템이 업데이트 됐으며 새로운 툴셋은 UnrealEd에 포함되어 간단한 에디팅으로 이 새로운 지형 시스템을 작업이 가능하게됐다.
Seamless Mixing of Indoor Meshes and Outdoor Terrain Meshes (인도어와 아웃도어의 이음새가 없이 부드럽게 연결되며 넓은 범위의 인도어와 아웃도어를 동시에 렌더링이 가능하다)
지형도 역시 실내의 구현에서처럼 Displacement Mapping 기술을 활용해서 Level of Detail로 인해서 생길 수 있는 시각적 손상을 방지한다.
실시간 지형/지물 동적 변형
물리적 강도에 따른 모양의 자유로운 변화
미리 정해 놓은 한도내의 변화
미리 구성된 변화
Procedurally-placed Meshes
Grass Layers and Vegetation Layers
IDV의 SpeedTreeRT가 통합되어 있다. (Unreal Engine 3 IPP)
이 스크린샷들은 구버전의 스크린샷이며 최신버전은 SpeedTreeRT의 최신버전으로의 업그레이드와 함께 더 많은 종류의 나무들과 최신 렌더링 기술이 포함되어 적용된 모습을 볼 수 있다
라이팅/셰이딩/셰도우
High Dynamic Range Rendering/Lighting
Per-vertex Lighting
All Modern Per-pixel (Phong) Lighting/Shading/Rendering Techniques
Dynamic Ranged Tone Mapping
Dynamic Sampled Tone Mapping
Including Normal Mapped
Inlcuding Phong Mapped
Including Displacement Mapped
Parameterized Phong Lighting
Custom Artist Controlled Real-time Dynamic Per-material Lighting Models Including Anisotropic Effects
Real-time Dynamic Light Attenuation Functions
Real-time Lightmaps
Dynamic Lightmaps
Directional Lightmaps
Real-time Spherical Harmonic Lighting
Real-time Ambient Lighting
Dynamic Ambient Occlusion Lighting
Real-time Ambient Lightmaps
Static Ambient Occlusion Lighting
Real-time Point Lighting
Real-time Sun Lighting
Real-time Directional Lighting
Real-time Spot Lighting
Real-time Diffuse Lighting
Real-time Specular Lighting
Real-time Shiny Lighting
Real-time Gloss Lighting
Real-time Opacity Lighting
Real-time Spread Lighting
Real-time Emissive Lighting
Real-time Light Beams
Real-time Light Shafts
Fully Dynamic PRT (Pre-computed Radiance Transfer) Radiosity Lighting
With Per-vertex
With Per-pixel
Geomerics의 Enlighten이 통합되어 있다. (Unreal Engine 3 IPP)
Global Illumination/Radiosity를 구현하고 재반사의 의해 생성되는 Soft Shadows를 실시간으로 구현하는 미들웨어 라이팅 엔진이다.
Volumetric Lighting
Deferred Rendering/Shading
Sub-surface Scattering
Stencil Buffer Shadow Volumes
Dynamic Umbra~Penumbra Effects
Multi-sampled Soft Shadows
Dynamic Umbra~Penumbra Effects
Ultra Extreme Multi-sampled High Quality Soft Shadows
Dynamic Umbra~Penumbra Effects
Pre-computed Shadow Masks
Dynamic Umbra~Penumbra Effects
Pre-computed Bump-granularity Self-shadowing Using Spherical Harmonic Maps
Real-time Shadowmaps
Directional Shadowmaps
Dynamic Shadowmaps
Dynamic Projective Shadows
Dynamic Umbra~Penumbra Effects
Real-time Dynamic Fuzzy Soft Shadows
Dynamic Sharpy~Blurry Effects
Dynamic Hard~Soft Effects
Dynamic Umbra~Penumbra Effects
All Dynamic Environments
All Dynamic Objects
All Dynamic Characters
Self-shadows
텍스처링
Real-time Dynamic Streaming Texture Loading System (실시간 텍스처 로딩, 적은 메모리에서 고해상도 텍스처 실현 가능)
Advanced Modified ClipTexturing (초고해상도 텍스처 사용 가능, 타일링 방지 기술)
Real-time Dynamic Streaming Mip-mapping System (UnrealEd 툴상에서 여러 타일들을 찍어낸 후 하나의 텍스처셋팩으로 저장 후 사용 가능, 구글 어스의 구현과 비슷하게 줌인하면 자세한 텍스처가, 줌아웃하면 밉맵핑 처리된 텍스처가 적용되는 새로운 텍스처 포커싱 효과 기술로, 매우 빠르게 실시간으로 처리된다, UnrealEd에서 MipStreaming이라는 이름으로 정의된다)
Alpha Blending
Light Mapping and Shadow Mapping
Multi-pass Normal Mapping (Normal map/Bump map/Specular map/gloss map/opacity map/heghit map/offset map/etc)
Parallax Mapping
Steep Parallax Mapping
Bump Offset Mapping
Offset Mapping
Per-pixel Displacement Mapping with Distance Function
Parallax Mapping with Offset Limiting
Relief Mapping
Relief Texture Mapping
Relief Texture Method
Virtual Displacement Mapping (가상 변위 매핑)
With Self-shadowing
With Z-bias Correction
Real Dispalcement Mapping (변위 매핑)
With Level Of Detail-based Tessaration and Defomation
With Real-time Lighting/Shading/Shadowing
Displacement Mapped Water Effects
Displacement Mapped Snowy Effects
Allegorithmic의 ProFX가 통합되어 있다. (Unreal Engine 3 IPP)
절차적 텍스처를 생성하여 구현하고 Shader처리하는 차세대 미들웨어 텍스처 렌더링 엔진이다.
언리얼 엔진 3상에 ProFX가 융합되어 언리얼 엔진 3상의 다른 여러가지 렌더링 기술들 및 여러가지 효과들과 함께 렌더링하는 장면을 영상으로 만든 동영상
http://download.profxengine.com/gallery/demos/bayou/videos/bayou.mov (MOV 포맷)
http://download.profxengine.com/gallery/demos/bayou/videos/bayou.wmv (WMV 포맷)
애니메이션
Vertex Animation
With Level of Detail
Keyframed
Inverse Kinematics
Motion Captured
Animation Blending
Procedural Motion Warping
Skeletal Animation
With Level of Detail
Animated
Motion Captured
Smooth-skinned Geometry
Software Skinning
Hardware Skinning
Animation Blending
Procedural Skelatal Controllers
Procedural Motion Warping
OC3 Entertainemtn의 FaceFX가 통합되어 있다. (Unreal Engine 3 IPP)
Facial Animation과 Lipsync를 실시간으로 구현하는 미들웨어 애니메이션 엔진이다.
PhaseSpace의 Motion Capture 프로그램이 포함되어 있다. (Unreal Engine 3 IPP)
특수 효과
Light Bloom
Lenticular Halos
Image-based Lighting
Image-based Rendering
Depth-of-field (촛점 심도)
Always on Depth-of-field
Special Focused Close-up Zoom-in Depth-of-field
Multiple Dynamic-driven Depth-of-field
Motion-blur (모션 블러)
Full Scene Motion-blur
Object-based Motion-blur
Some-parts Motion-blur
Distance Fog
Radial Fog
Plane Fog
Height Fog (높이 안개)
Volumetric Fog (입체 안개)
Frame Buffer Distortion (수면 효과나 왜곡 효과 등)
Real-time Sunrise~Sunset Effects (실시간 낮과 밤의 변화)
Real-time Weathering System (실시간 날씨의 변화)
Etc...
Advanced Portal Rendering System
Mirror Surface (거울 반사 효과)
Semi-reflective Materials
Warp-portal (공간 이동 포탈, 3D Realms의 Prey나 Valve의 Portal에서 볼 수 있는 그것과 동일하다)
Multiple Dynamic Sky Box Zone (독립적으로 움직이거나 회전하는 하늘이나 배경을 처리하는 다중 스카이 박스)
파티클 시스템
일반 파티클
탄피, 불꽃 등
소프트 파티클
불, 물, 연기, 모래, 비, 눈, 우박, 안개 등
Volumetric 파티클
입체로 된 구름, 불, 물방울, 안개, 폭발효과 등을 구현
Voxel 파티클
Voxel 오브젝트
Voxel 기반의 정적 오브젝트
Voxel 기반의 동적 애니메이션/모핑오브젝트
Voxel의 하드웨어 가속
Multiple Split-screen Rendering (다중 화면 분할 렌더링)
UI 및 GUI 시스템
매우 Flexible하며 Customizing이 가능하고 다양한 형태의 게임에 적용할 수 있는 UI와 GUI를 기본적으로 제공한다.
로컬라이제이션
유니코드 캐릭터셋
16비트 유니코드 완벽 지원
텍스트 인풋
렌더블 비트맵에 프투 타입 폰트 개입 포함
로컬라이제이션을 고려한 프로그래밍과 컨텐츠 개발 환경
게임의 모든 로컬라이제이션을 위한 텍스트, 오디오, 이미지, 비디오, 립싱크 등의 구체적이면서도 간단한 프레임워크 제공
기본적으로 총 9개국어 (영어, 불어, 독어, 스페인어, 에스퍄냐어, 이탈리아어, 한국어, 중국어, 일본어)가 지원되며 다양한 폰트와 함께 제공된다
기본 제공되는 폰트들은 무료이며 어떻게 변형해도 상관 없다
로컬라이제이션을 위한 임의의 언어를 쉽게 추가 가능하다
폰트 변형으로 인한 로딩 속도 저하나 프레임 저하 등의 퍼포먼스 문제는 없다
이미지 추출 기능
고컬러, 고품질, 고해상도의 스크린샷 추출 가능
임의적인 해상도 변경 가능
다양한 이미지 포맷으로 추출 가능
무비 레코딩 및 편집 재생기능
엔진을 통한 실시간 Demo 녹화 기능이 기본적으로 제공되며 이 기능은 다양하게 커스터마이징이 가능하다.
DivX 동영상 포맷으로 동영상 아웃풋 레코딩이 가능한 기능이 기본적으로 통합되어 제공된다. (Unreal Engine 3 IPP)
RAD Game Tools의 Bink Video가 통합되어 있다. (Unreal Engine 3 IPP)
언리얼 엔진 3상에 통합되어 있으며 별도의 비용이 필요 없이 Bink Video에서 제공하는 다양한 포맷으로 녹화와 재생 및 편집이 가능하다.
물리 엔진
멀티 쓰레딩 물리 연산 처리 지원
Ageia의 PhysX 물리 엔진이 통합되어 있다. (Unreal Engine 3 IPP)
UnrealScript와 연동되어 있고 UnrealEd 내부에 강력한 물리 컨트롤 툴셋으로 통합되어 있어서 UnrealEd 내에서 곧 바로 사용 가능하며 기본적으로 엔진의 모든 요소들과 연동되어 있어서 특별히 연동 작업이 필요 없다.
RagDoll Physics (봉제인형 물리효과) 지원
모든 오브젝트에 물리적인 충돌 및 감지와 중력효과 지원
Vehicles Physics (탈것의 물리효과) 지원
파티클을 포함한 모든 특수 효과에 물리 연산 지원
Cloth 시뮬레이션 (펄럭이는 천이나 헝겊, 옷감 등에 자연스러운 물리 효과) 지원
플레이어 컨트롤에 물리 연산 연동 지원
애니메이션과 물리 연산 연동 지원
물리 + 애니메이션 + 사용자 입력 반응 지원
물리적 충격에 의한 지역/지형/지물/물체의 변화에 영향을 주는 연산 지원
인공지능과 물리 연산 연동 지원
네트워킹과 물리 연산 연동 지원
Physics-driven Sound (물리 기반 사운드) 지원
Ageia의 PhysX 물리 연산 하드웨어 지원
PhysX 물리 엔진의 지속적인 최신 버전 업데이트를 항상 체크해서 적용
언리얼 엔진 3에는 Ageia의 PhysX 물리 엔진이 기본적으로 통합되어 제공되지만 어떠한 연유에서인지 언리얼 엔진 3를 사용하는 개발사 중에는 일부는 언리얼 엔진 3에 통합되어 무상 제공되는 PhysX 물리 엔진대신에 Havok 물리 엔진이나 그외 타사의 물리 엔진을 사용하는 개발사들도 있긴 하다.
언리얼 엔진 3상에서 Havok 물리 엔진이나 그외 타사의 물리 엔진을 PhysX 물리 엔진과 혼용하거나 또는 완전히 교체가 가능하며 이런 작업은 매우 간단한 편이다.
인공지능 엔진
멀티 쓰레딩 인공지능 연산 처리 지원
싱글 플레이 기반의 다양한 A.I. 구현 시스템
싱글 플레이에서 동료의 A.I.에 대한 구현 시스템
Path Finding (길찾기)
멀티 플레이의 BOT A.I.
Vehicles A.I. (탈것의 A.I.)
Team Work A.I. (팀 운영 A.I.)
상황 판단 능력 A.I.
A.I.-driven Sound (인공지능 기반 사운드) 지원
자체적인 인공지능 엔진 외에도 타사의 외부 미들웨어가 IPP로 연동되어 제공된다
Engenuity의 AI Implant이 통합되어 있다. (Unreal Engine 3 IPP)
게임에 필요한 다양한 인공지능 기술을 제공하는 고급 미들웨어로서 많은 게임들에 채용되고 있는 인공지능 엔진이다.
Kynogon의 Kynapse A.I.이 통합되어 있다. (Unreal Engine 3 IPP)
3D 월드의 패스 파인딩 (길찾기)에 최적화 된 상용 인공지능 미들웨어이다.
UnrealEd상에서 UnrealScript와 함께 직접 Kynapse를 사용하는 동영상 (고용량의 MOV 파일이 RAR로 압축률이 매우 높게 압축되어 있다)
http://www.kynogon.com/images-blog/Demos/Kynapse_UE_1_PathDataGeneration.rar
패스 데이터 생성
http://www.kynogon.com/images-blog/Demos/Kynapse_UE_2_Crowd.rar
에디터상의 AI 런타임
http://www.kynogon.com/images-blog/Demos/Kynapse_UE_3_PatrolKismet.rar
UnrealKismet에 연동된 작업으로 UnrealScript 생성
두가지 이상의 인공지능 엔진을 언리얼 엔진 3내에서 동시 사용 가능하며 커스터마이징 혹은 필요하다면 외부의 다른 솔루션이나 직접 개발한 모듈을 동시 적용이 가능하다.
사운드 엔진
멀티 쓰레딩 사운드 처리 지원
Creative의 OpenAL (공개 소프트웨어)
돌비 서라운드 사운드
모노 및 스테리오와 다중 채널 (4.0, 5.1, 6.1, 7.1) 지원
EAX 지원 (1.0, 2.0, 3.0, 4.0, 5.0)
OGG Vorbis (공개 소프트웨어)
SIMD 최적화
크로스 플랫폼 DSP 효과 (반전, 기타)
마이크로폰 인풋
3D Positioning (3D 위치 기반 사운드 포지셔닝), Spatialization (좁은 공간에서 소리의 울림, 떨림, 왜곡 등의 효과), Doppler Shift (도플러 이동 사운드 효과)
Data-driven Sound (데이터 기반 사운드) 지원
음성 지원
Voice-over-IP 지원
Text-to-speech 지원
AI Speech Recognition (A.I. 음성 인식) 지원
네트워크 엔진
빠른 FPS 액션 게임에 최적화된 64명 기반의 서버-클라이언트 네트워크 엔진
A.I.들의 무빙, 탈것, 물리 모델과 충돌 감지 예측의 빠른 네트워크 기능을 모두 포함한다.
TCP 서버 네트워크 엔진
UDP 기반의 네트워크 엔진
Quazal Technologies의 Rendez-Vous이 통합되어 있다. (Unreal Engine 3 IPP)
PC/콘솔 크로스 플랫폼 네트워크 엔진
Quazal Technologies의 Spark이 통합되어 있다. (Unreal Engine 3 IPP)
콘솔 기반 크로스 플랫폼 네트워크 엔진
MMO용 서버-클라이언트 네트워크 엔진과 서버 DB는 아직까지는 제공되지 않는다.
IGN의 GameSpy 네트워크 기술
유명한 GameSpy의 네트워크 기술이 통합되어 있다. 다양한 기종끼리의 크로스 플랫폼 멀티 플레이를 위해서다.(Unreal Engine 3 IPP)
GUI 기반의 인-게임 서버 브라우저 (인-게임 채팅, 서버 쿼리 전송 기능 등)
마스터 서버 컴포넌트 (커스터마이징 가능)
월드와이드 게임 스탯 트랙킹 시스템 http://ut2004stats.epicgames.com/
UDN (Unreal Developer Network) 지원
언리얼 엔진 2와 마찬가지로 UDN에서 개발자들끼리 다양한 정보나 기술, 소스 코드, 커스텀 유틸리티, 커스텀 툴셋, 커스텀 이펙트등을 공유 가능하다.
에픽에서 공식적으로 제공하는 예제 및 샘플등이 제공된다.
언리얼 엔진 3에 기본적으로 없는 다양한 종류의 렌더링 기술 및 기타 기능, 새로운 툴들을 추가적으로 지원 받을 수 있다.
자체적으로 커스터마이징을 하는 것 외에 엔진에 기본적으로 없는 기능들을 선택적으로 골라서 지원받아 커스터마이징 하는 것이 가능하다.
이것은 현재 지속적으로 여러가지 내용들과 기술들이 추가 중이며 계속해서 많은 내용들이 업데이트 될 것이다.
Unreal Engine 3 Integrated Partners Program (Unreal Engine 3 IPP)
Unreal Engine 3 Integrated Partners Program은 에픽 서드 파티들이나 외부의 훌륭한 미들웨어들을 언리얼 엔진 3상에 통합하는 것을 의미하며 줄여서 Unreal Engine 3 IPP라고 부른다.
외부 미들웨어는 렌더링 관련, 네트워크 관련, 물리, 애니메이션, 인공지능 관련등 각 분야의 뛰어난 기술을 언리얼 엔진 3를 사용하는 개발사들에게 제공하기 위한 목적이며 새로운 미들웨어가 Unreal Engine 3 IPP로 계약이 되면 곧바로 언리얼 엔진 3의 다음 버전업에 포함이 되며 이 Unreal Engine 3 IPP로 추가된 미들웨어는 언리얼 엔진 3의 기본적인 기능으로 자리잡게 되므로 각 미들웨어 개발사에게 별도의 라이센스 비용을 들일필요가 없이 언리얼 엔진 3를 사용함으로서 해당 미들웨어들을 모두 무상으로 사용할 수 있다.
IPP 체결이 된 미들웨어들은 단순히 언리얼 엔진 3에 번들로 제공되는게 아니라 언리얼 엔진의 코어 시스템 기반하에 엔진과 완전하게 융합되서 제공된다.
Unreal Engine 3 IPP로 제공되는 모든 미들웨어들은 UnrealScript를 통해서 제어할 수 있으며 UnrealEd상에서 곧바로 사용할 수 있다.
Unreal Engine 3 IPP로 제공되는 모든 미들웨어들의 툴은 UnrealEd상의 내부 툴로 포함되며 UnrealEd 내의 여러 툴간의 각 상호작용이 이루어진다.
Unreal Engine 3 IPP로 제공되는 모든 미들웨어들은 언리얼 엔진 3의 모든 기능들과의 상호 연동은 물론 Unreal Engine 3 IPP로 포함된 모든 미들웨어들간의 상호 연동이 가능하게 된 상태로 제공이 된다.
Unreal Engine 3 IPP에 포함되는 모든 미들웨어들은 항상 최신버전을 유지하기 위해서 해당 미들웨어의 최신버전이 릴리즈되면 언리얼 엔진 3의 최신버전에 해당 미들웨어의 최신버전을 Unreal Engine 3 IPP에 업데이트 한다.
같은 분야의 미들웨어가 두개 이상 포함될 수도 있다. 예를 들어 인공지능 (A.I.) 미들웨어에 2006년 10월 3일부터 Engenuity社의 AI Implant가 포함되었으나 2006년 11월 2일부터는 Kynogon社의 Kynapse A.I.도 포함되었다. 그러나 AI Implant를 대체해서 Kynapse가 쓰이는 것이 아닌 두 미들웨어 모두 언리얼 엔진 3상에 IPP로 포함이 되며 각각의 최신 버전이 릴리즈되면 언리얼 엔진 3상에도 각각의 미들웨어가 최신 버전으로 계속해서 업데이트 해나가게 된다. 그리고 에픽의 자체적인 A.I. 엔진도 언리얼 엔진 3상에 내장되어 있으며 이 자체적인 A.I. 엔진도 지속적으로 업데이트 된다. 따라서 현재까지 언리얼 엔진 3상에 포함되서 제공되는 A.I. 엔진은 모두 3가지 종류인 셈이다. 3가지 종류의 A.I. 엔진은 각각의 게임에 필요한 것으로 골라서 사용하거나 서로 조합하여 필요한 부분만 골라서 쓸 수 있다. 물론 3가지 종류 모두 UnrealEd상에서 바로 사용 가능하며 UnrealScript로 제어가 가능하다. 커스터마이징도 가능하며 같은 분야에 사용자 정의의 새로운 미들웨어를 더 추가할 수도 있다. 인공지능뿐만 아닌 다른 분야에서도 마찬가지이다.
Unreal Engine 3 Integrated Partners Program (IPP)에 현재까지 포함된 리스트는 다음과 같다
Ageia의 PhysX 물리 엔진 (언리얼 엔진 3가 라이센스 되기 전부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
물리 엔진 SDK, 툴셋
물리 엔진은 언리얼 엔진 3와 완전하게 융합
기본적인 물리현상, 탈것, 파티클등의 특수효과에 적용 가능하게 융합
툴셋은 UnrealEd 상의 PhAT라는 물리 셋팅 툴의 일부로 완전하게 통합
OC3 Entertainment의 FaceFX Technology (2005년 10월 18일부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
페이셜 애니메이션 및 립싱크 엔진 및 툴셋
페이셜 애니메이션과 립싱크 엔진의 기능은 언리얼 엔진 3상에 완전하게 통합
툴셋은 UnrealEd상에 완전하게 통합
DivX 동영상 코덱 (2006년 초부터 포함)
제공 (라이센스 비용 없이는 컴파일된 모듈과 일부 라이브러리만 제공)
RAD Game Tools의 Bink Video (2006년 초부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
동영상 녹화, 편집 및 재생하는 미들웨어
Quazal Technologies의 Rendez-Vous (2006년 9월 28일부터 포함)
제공 (라이센스 비용이 필요함)
네트워크 엔진
Quazal Technologies의 Spark (2006년 9월 28일부터 포함)
제공 (라이센스 비용이 필요함)
네트워크 엔진
Fonix Speech의 VoiceIn (2006년 10월 2일부터 포함)
제공 (라이센스 비용 없이는 컴파일된 모듈과 일부 라이브러리만 제공)
Fonix Speech의 DecTalk (2006년 10월 2일부터 포함)
제공 (라이센스 비용 없이는 컴파일된 모듈과 일부 라이브러리만 제공)
음성 인식 엔진
Engenuity의 AI Implant (2006년 10월 3일부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
인공지능 엔진
IDV의 SpeedTreeRT (2006년 10월 5일부터 포함)
초목 구현 시스템
제공 (라이센스 비용이 필요함)
언리얼 엔진 3상에 통합된 물리 엔진이나 라이팅 엔진을 통해서 새로운 라이팅과 셰도우를 적용하거나 물리 현상을 적용이 가능
IPP로 포함되기 전에는 언리얼 엔진 3를 구입하고서도 SpeedTreeRT를 따로 비용을 들여서 라이센스 해야했지만 지금은 IPP에 포함되어서 비용을 따로 들일 필요 없이 언리얼 엔진 3에서 SpeedTreeRT를 사용할 수 있다
Digimask의 Digimask SDK (2006년 11월 1일부터 포함)
제공 (라이센스 비용이 필요함)
게이머가 직접 자신의 얼굴을 게임 속 캐릭터의 얼굴로 만들 수 있는 안면 모델 생성 및 적용 솔루션
머리 모양과 얼굴의 텍스처를 생성하고 적용이 가능
Unreal Engine 3 IPP로 포함된 미들웨어인 FaceFX와 연동해서 사실적인 페이셜 애니메이션과 립싱크가 가능
Unreal Engine 3 IPP로 포함된 미들웨어인 VoiceIn까지 연동해서 게임중에 자신의 음성을 이용해 실시간 립싱크도 적용이 가능
Kynogon의 Kynapse A.I. (2006년 11월 2일부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
인공지능 엔진
Geomerics의 Enlighten (2007년 2월 19일부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
실시간 글로벌 일루미네이션 (Real-Time Global Illumination), 래디오시티 (Radiosity) 라이팅 및 재반사에 의해 생성되는 부드러운 그림자 (Soft Shadows)를 구현하는 엔진 차세대 라이팅 엔진
Allegorithmic의 ProFX (2007년 3월 1일부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
절차적 텍스처 (Procedural Textures)를 생성하여 셰이더 처리하는 차세대 텍스처 렌더링 엔진
PhaseSpace의 Motion Capture (2007년 7월 6일부터 포함)
제공 (별도의 라이센스 비용 없이 SDK와 툴셋의 Full Source까지 제공)
모션 캡쳐를 도와주는 프로그램
IGN의 GameSpy 네트워크 기술 (2007년 8월 15일부터 포함)
제공 (별도의 라이센스 비용 없이 제공)
다양한 플랫폼의 크로스 플랫폼 멀티 플레이를 위해 제공된다
Umbra Software의 Umbra, dPVS, sPVS 씬 그래프의 CPU, GPU 하드웨어 최적화 기술 (2007년 9월 7일부터 포함)
제공 (별도의 라이센스 비용 없이 제공)
하나의 게임 안에서도 여러 컨셉의 맵 제작이 수월하게 가능하도록 좁은 공간 위주의 맵을 표현하는지 또는 넓은 지형 위주의 맵을 표현하는지에 맞춰 각각 그 맵의 컨셉에 따른 씬 그래프의 최적화와 함께 각각의 플랫폼 PC, Xbox 360, PlayStation 3의 하드웨어에 맞는 최적화를 가능하게 해준다
Scaleform의 Scaleform GFx 프로그래미 (무료, 스케일폼 작성 미들웨어, UE3에 완전 연동)
Anark Corporation의 Gameface (무료, UE3에 완전 연동)
MÄK Technologies의 VR-Link (무료, UE3에 완전 연동)
Whole Tomato Software의 Visual Assist (무료, UE3에 완전 연동)
Firelight Technologies의 FMOD (무료, 사운드 엔진, UE3에 완전 연동)
Creative Labs의 OpenAL (무료, 사운드 엔진, UE3에 완전 연동)
Open Dynamics Group의 ConvexDecomposition (무료, 물리 엔진 및 툴셋, UE3에 완전 연동)
--------------------------------------------------------------------------------
토론
언리얼 엔진 3는 Direct3D 9b의 Shader Model 2x를 최소사양으로 하며 Shader Model 2.0 및 그 이하의 고정 파이프라인 렌더링과의 하위호환성을 완전히 배제한 완전한 Shader Based Rendering을 추구합니다. 그 이하는 고려되지 않기 때문에 그 이하를 염두하는 게임이라면 언리얼 엔진 3를 선택하지 말고 언리얼 엔진 2나 다른 엔진을 선택하는게 옳습니다. --아무개
쉐이더 3.0 이상아닌가요? PC로 나온 레인보우식스 베가스,RoboHordes 데모를 보면 Radeon x800 시리즈도 지원을 하지 않습니다(분명히 x800은 쉐이더 2.x 이상을 지원하는데).그리고 언리얼 엔진 3에 대한 단점은 전혀 없군요. 2를 써본 경험으론 그렇게 유연한 엔진이란 생각은 들지 않던데요. --다른 아무개
UE2는 프로젝트에 쓴게 아니지만 소스만 봤는데 UE3에 비해서는 유연함이 많이 떨어지는 편입니다. 하지만 그전부터 언리얼 엔진 시리즈가 유연함에서 좋다고 한 이유는 다른 통합형 엔진에 비해서 구조가 이쁘기 때문입니다. 적어도 제가 본 엔진중 시리어스 샘과 파 크라이와 리스텍중에선 UE2가 코드의 상태가 잘 정리되있고 코드 내부도 modify하기에 편리한 점이 있죠.(예: core(UE써봤다면 뭔지 아시겠죠)에서 구현하는 uvm으로 모든 코드가 들어온 다음에 다시 분산시키고 engine에 핵심적인 기술이 들어있고 나머지 세부 객체를 파생시켜서 연동하는 형태와 모듈 객체마다 패키지 파일을 써서 언리얼 스크립트로 컨트롤하거나 텍스트 파일을 일부 떨궈서 텍스트 편집기로만 간단하게 설정할수 있는점을 들수 있겠네요. UE3도 같은 구조에서 더 광범위하고 편하게 쓰도록 확장되어 있습니다.
UE3의 단점을 들라면 글쎄요. 지금까지 단점은 특별히 느끼지 못했지만 저마다 뭔가 불만을 토로할수는 있겠죠. 저는 단점은 못느꼈습니다. 굳이 단점을 하나 말하라면 전 일주일마다 한번씩 업데이트 받아야한다는 강박관념(?)정도? 아니 업데이트 한다고 개발에 큰 차질이 생기는것도 아니고 별로 상관은 없지만. 그 외엔 개발중 생기는 트러블과 어려움은 어떤 엔진을 써도 마찬가지고 그런 이유가 UE3로 인해 생긴다고 생각되지 않으니까요. 예전부터 상용 엔진이나 미들웨어를 도입하는 사람들이 불만을 토로하는 경우를 종종봐왔는데 그런 경우는 "엔진에서 뭐든 그냥 알아서 다 해주겠지"라는 안일한 태도를 갖고 있는 사람들이거나 실력 부족인 경우가 대부분이었고 그렇게 불만 갖는 친구들 치고서 프로젝트가 순조로운걸 못봤습니다. 이건 물론 저만의 시각일수도 있지만 적어도 제가 봐왔던건 그렇습니다.
마지막으로 UE3는 쉐이더 2.x부터 돕니다. 레인보우 식스 베가스나 로보뭐시기는 안해봤지만 그 게임들이 지원안하는건 그 게임들 문제겠지요. 쉐이더 2.x를 지원하는 라데온 9xxx 시리즈부터 돌고 지포스는 쉐이더 3.0 지원하는 6xxx부터 제대로 돕니다. 다만 최신 드라이버는 쉐이더 3.0 기준으로 개발되고 있고요. 현재는 쉐이더 4 기반 드라이버가 준비되서 제공될려고 하고있습니다.
--UE3쓰는이
지금은 회사에서 나왔지만 얼마전까지만 해도 UE3를 쓰던 사람입니다. 저도 UE3 쓰면서 단점을 굳이 찾으라는 말은 억지로 단점이라고 짚어내지 않고서야는 이 엔진의 단점을 말하기란 다른 일로 생긴 문제를 억지로 엔진의 탓으로 핑계대는 것이라고 밖에 생각되지 않습니다. 뭐 팀원이나 팀장등의 입장으로서는 그런 발언 한마디에 자기들 밥줄이 걸린 문제니까 이해할만하지만요. --도타쿠
맞습니다. 언리얼 엔진 3 좋기만 하더만요. 엔진에 핑계대는 사람치고 자기 실력에 문제가 없는 사람없었다는... 언리얼 엔진 2까지는 조금 그렇지만 언리얼 엔진 3에는 투정부릴게 전혀 없습니다. 게임브리오만 쓰다가 언리얼 엔진 2, 3 구경해보니까 2는 좀 그래도 3는 차원이 다르더군요. 언리얼 엔진 3 쓰면서 느낀점은 이 대단한 엔진을 쓰면서 엔진에 핑계대는다는것은 프로그래머로서의 자질부터 스스로 체크해봐야겠다는 생각뿐이었습니다. --낙잠자자
정책이 저렇게 바뀐건 알지만 1년 유지보수에 $100,000인가요? --- 도타쿠
HDR 구현에 관심이 많은데, 라데온 9xxx 씨리즈에서도 된다니 신기하네요, 라데온 9xxx 씨리즈는 A16B16G16R16F에서 alpha blending을 지원하지 않는 걸로 알고 있습니다. 언리얼 엔진 3기반 게임은 pix로 잠깐 잡아보면 백버퍼가 A16B16G16R16F 인거 같던데 여튼 신기하군요 --- 지나가던이의 의견
HDR 구현에 대한 자료들은 인터넷 검색을 통해서 보시면 많은 자료들을 찾으실 수 있을겁니다. 파크라이 (크라이 엔진 1)는 HDR 구현을 SM2 이하에서는 구현하지 못했으나 나중에 나온 스플린터셀 3,4 시리즈나 언리얼 엔진 3, 하프라이프 2의 소스 엔진을 비롯해 요즘엔 SM2에서도 HDR을 구현합니다. 언리얼 엔진 3에선 SM3 이상 모드에서는 R16 G16 B16 A16모드나 R32 G32 B32 A32로도 HDR을 구현하는것도 가능합니다. 지포스 7000 계열 카드에서는 올 R32 G32 B32 A32모드로 돌리면 FSAA나 지연 렌더링을 사용 불가하게 되지만 이후의 카드에서는 가능합니다. --- UE3 사용자 의견
언리얼 엔진 3 HDR은 쉐이더 2에서도 돌아갑니다. 라데온 9시리즈부터 잘돌고 HDR도 되며 지포스 계열에선 지포스 6600 SM3부터 잘돕니다. 그리고 DX10 지오메트리 쉐이더 지원하고 있는데 비스타를 대비해서 잘 구현해놓고 있습니다. 뭣보다 GOW나 UT3의 쉐이더도 다 제공되는데 그걸 그대로 쓰면 GOW나 UT3정도는 나온다는 사실입니다. GOW보다 UT3가 UE3 엔진의 빌드 버전업 외에도 쉐이더 자체도 훨씬 진보했는데 IPP가 추가된 기능들을 추가로 쓴다는 점에서 훨씬 이득이며 비교적 낮은 사양에서도 더 뛰어난 모습을 보여줍니다. 그리고 엔진의 유연성이 별로라고 하신분이 계시는데 UE3를 써보고 하시는 말씀인지 모르겠지만 유연성에 관해서는 잘 알려진 그대로이며 말할 필요가 없습니다. --- UE3 쓰는 프로그래머
아는 분 회사에서 UE3 를 구경했습니다. 쉐이더를 직접짜지 않고 연산자 연결로만 쉐이더가 생성되는 건 아주 인상적이더군요. 그런데 질문이 있는데요. 연산자 연결로 쉐이더가 생성된다 치더라도, 각종 재질에 대한 물리적 이해가 있어야 그걸 구성하는데, 그래픽 디자이너 분들이 제대로 이해해서 활용하는지 궁금합니다. 그리고 기어스오브워 맵도 로딩해보면 원경은 2D 혹은 3D 병풍이던데, UE3에 원경에 대한 최적화 기법이 들어있나요? --- 125.131.230.250
머테리얼 셰이더는 비주얼 툴만으로도 작성이 가능한데 그래픽 디자이너들이 재질 혼합에 대한 이해를 가지고 있어야 합니다. 원경은 스카이 박스를 말씀하시는 것이라면 단순 2D부터 3D까지 여러 종류의 스카이 박스를 제공하고 있습니다. 그리고 UE3의 원거리 렌더링은 현재 새롭게 개발중입니다. Voxel 렌더링 기법과 Displacement Map을 혼합한 새로운 장거리 렌더링 시스템을 추가중에 있습니다. 약 100km 이상의 전장의 구현을 목표로 하는데 이 기능이 제대로 구현될려면 아직 몇개월 지나야 할것으로 보입니다. --- UE3 엔진 프로그래머
얼마전에 구경해봤는데 그래픽 퀄리티는 둘째치고 툴셋이 대단하더군요. 이쁜 디자인으로 꾸며진 인터페이스에 마우스 클릭만하면 직관적으로 척척 처리되고 그때그때 작업하면서 바로바로 툴셋 자체에서 플레이까지 가능한게 매우 인상 깊었습니다. 그리고 프로그래머분 말씀으로는 타 엔진에 비해서 정말로 커스터마이징에 아주 적합한 코드의 베이스를 갖고 있어서 프로그래머에겐 툴보다 그 부분이 더 행복한 부분이라고 하시던데 떠도는 말이 빈말은 아닌것은 확실한것 같네요. 그리고 생각보다 사양도 낮은데 놀랐습니다. XBOX 360으로 돌아가는 Gears of War보다 훨씬@.@ 이상의 퀄리티로 그래픽을 툴셋에서 바로 플레이 해봤는데 8800GTX 싱글에서도 아주 부드럽게 체감상 60프레임도 넘어보였는데 전혀 끊기지도 않고 돌아가더군요. 툴셋에서 플레이했다고 뭐가 빠진것은 아니라 실 게임 그대로 툴셋에서 돌아갑니다. --- 샤랄랄라
작년에 회사서 돌리는걸 봤을때도 7800GTX 싱글로도 않끊기고 잘 돌아갔습니다. PRT나 퍼지 쉐도우가 적용된 상태였었죠. --- 라이팅
저기 업데이트 기간은 계약조건에 따라서 달라지는 부분입니다. 무한이라니요? 무한 아닙니다. 기간 지나가면 UDN 로그인 아이디 짤리고 엔진 최신 업데이트 못받습니다(버그 패치는 받지만 툴 신규 업데이트나 엔진 개선 업데이트나 IPP 추가 업데이트 따위는 못받음). --- 프로그래머당