가격 : ?
개발사 : 크라이텍 (CryTek)
엔진 역사 : 크라이 엔진 1에서 한단계 업그레이드 한 엔진이다. 차이점으로는 렌더링 엔진과 물리 엔진이 최신 하드웨어의 기능을 활용하는 차세대급 엔진으로 개선됐다는 점이고 툴셋이 최근의 추세에 따라 몇가지 기능을 추가된 점 이외에는 다른 부분은 이전의 엔진과 동일하다. 크라이 엔진 1이 국내에서 아이온과 카일라스에서 사용되고 있어서 크라이 엔진 2를 이 목록에 놓아두기는 했으나 사실 이 엔진이 채택할 곳은 거의 없을것으로 생각된다. 현재 크라이 엔진 2는 엔진의 개발사에서 만드는 크라이시스라는 게임이 뛰어난 그래픽을 구사하는 것으로 유명하며 언리얼 엔진 3와 라이벌급으로 비교될 정도로 언론에 언급되고 있다. 하지만 이 엔진은 FPS용 게임엔진이며 언리얼 엔진 3는 범용 엔진으로 개선이 되었고 툴셋이나 엔진의 구조적인 유연성이나 다양한 형태와 장르의 게임을 고려해서 다양한 기술과 여러가지 기술 파트너쉽을 맺고 기술들이 제공되고 있는 언리얼 엔진 3를 선택하는게 비슷한 가격에서 훨씬 나은 선택이기 때문에 이러한 많은 부분이 전체적으로 개선이 되지 않는 이상에는 언리얼 엔진 3와의 경쟁은 사실상 이루어질 수는 없을 것이다. 가격이 언리얼 엔진 3에 비해서 많이 싸다면 경쟁이 되겠지만 이 엔진의 개발 비용이 매우 많이 들었기 때문에 라이센스 비용은 언리얼 엔진 3와 비슷하다. 쥬피터 EX 같은 경우엔 가격이 싸고 중~고사양의 FPS를 만들기에 적합한 특색으로 언리얼 엔진 3와의 직접적인 경쟁은 피했기 때문에 많은 나름대로 라이센스 시장의 틈새를 파고 들 수 있었지만 크라이 엔진 2는 그런 틈새 미들웨어 시장보다는 언리얼 엔진 3와 직접적인 경쟁을 해야할 조건의 엔진이지만 언리얼 엔진 3와 비교되기엔 여러가지 많은 부족한 점들 때문에 미들웨어 라이센스 시장에서는 크게 빛을 보지 못할 것으로 보여진다. 그래도 일말의 가능성을 위해 이 곳에 이 엔진을 적어 둔다.
추가 설명: 위의 이야기는 모두 다맞는 이야기입니다. 하지만 크라이텍에선 FPS 엔진이란 단점을 보완하기 위해 스튜디오를 확장하고 여러개의 다양한 장르의 게임을 개발하는데 각각의 스튜디오에서 만드는 게임에 최적화된 버전들을 따로 준비하고 있는데 그중에는 MMORPG의 개발도 하고 있으며 그에 따라 MMORPG에 최적화된 변형 버전 크라이 엔진 2도 개발되고 있습니다.
위의 설명처럼 크라이 엔진 2가 언리얼 엔진 3보다 코드 커스터마이징과 구조적인 유연함에서는 떨어지는게 분명한 사실입니다. 하지만 각각의 스튜디오에서 만드는 다양한 장르의 게임에 맞게 개발사에서 최적화 해놓은 버전들을 따로 만들어 둠으로서 여러 장르에 도입할 길을 열어두고 있는 중에 있습니다.
엔진 구성 및 타입
- Cry Engine 2 (Crysis 버전) = 통합형 FPS/TPS 게임엔진 (PC용)
- Cry Engine 2 (Crytek 제2스튜디오 게임버전) = 통합형 FPS/TPS 게임엔진 (Xbox 360/PS3용)
- 콘솔 버전은 2006년부터 개발됐으며 아직 안정화되지 않았다. 약 1년 후쯤 Xbox 360, PS3의 지원이 어느정도 이루어질 것으로 예상된다.
- Cry Engine 2 (Crytek 제3스튜디오 게임버전) = 통합형 MMORPG 게임엔진 (PC용)
- MMORPG 버전은 2007년 가을 이후에 막 개발에 들어갔으며 아직 모든 것이 초기 상태다. 크라이텍 제3스튜디오의 개발작품 MMORPG 게임이 나오면 제대로 지원될 것으로 예상된다.
- C++ DLL 모듈 기반
- 게임 스크립트로 Lua 사용
- 언리얼 엔진 2의 경우에는 FPS 엔진이긴해도 각각의 코드마다 모듈화가 철저하게 되어 있고 커스터마이징을 고려해서 비교적 커스터마이징이 용이한 편이며 네트웍이나 물리, AI의 분리와 새로운 모듈 연동 또는 렌더링 시스템의 개선이나 커스터마이징에 큰 문제가 없는데 비해서 크라이 엔진은 렌더링, 물리, UI 시스템, LUA 스크립트 시스템, AI 시스템, 사운드를 비롯한 거의 모든 코드들이 단일화된 통짜형 코드 베이스로 짜여져 있어서 각각의 모듈들을 따로 커스터마이징하거나 전체적으로 커스터마이징하기가 매우 까다롭다. 예를 들어 렌더링부분에서 지형 시스템의 커스텀을 위해 코드를 수정하거나 물리 시스템을 따로 재구축하려면 코드를 전체적으로 크게 손봐야 하며 그로 인해 다른 부분에 연동되서 작동되지 않는 코드들을 손봐야 할 일이 생기는 수가 많다
- 언리얼 엔진 3에선 이전보다도 더 커스터마이징에 용이하도록 코드의 모듈화 구조가 더욱 강력하게 개선되었으며 한발 더 나아가서 서로간의 연동성은 매우 좋지만 엔진 코드와 게임 모드간의 명확한 경계를 두었고 FPS 엔진에서 벗어나 완전한 범용 게임 엔진으로서의 모습으로 환골탈태하였다. 그 반면에 크라이 엔진 2는 여전히 개발사 게임에 특화된 엔진의 형태에 머물러 있으며 엔진의 전체적인 내부 코드 구조는 크라이 엔진 1과 거의 동일하며 렌더링, 물리, 툴셋 등의 외적인 부분과 일부 Entity 시스템 등이 외부 모듈로 분리되도록 구성되었다.
- 크라이 엔진 2는 쥬피터 엔진의 Jupiter Discovery처럼 개발사 내부 스튜디오의 개발작품 중 MMORPG 프로젝트가 개발되어 엔진이 MMORPG용으로 변형되어 최적화된 버전이 존재한다. 허나 이런 버전의 존재가 엔진의 구조적 유연함을 말해주는것은 아니며 단지 개발사에서 만드는 MMORPG에 최적화된 MMORPG용 버전이 따로 존재하는 것이다. 언리얼 엔진 3가 그들이 만드는 특정 게임에 특화되지 않은 순수한 엔진으로만 개발되는 것과는 대조적이라고 볼수 있다.
눈팅중에 더하고 싶은 들말이 생겨서 여기에 써봅니다.
저희는 스튜디오에서 두엔진을 모두 보유하고 있는데 두팀에서 언리얼엔진3과 크라이엔진2를 비교해가면서 사용하고 있습니다.
두엔진 다 이전버전인 언리얼엔진2와 크라이엔진1을 써가며 고생했던 경험이 있던터라 두엔진의 구조에 대해서는 어느정도 알고 있습니다. 두엔진, 아니 총 네개의 엔진(크라이1,2와 언리얼2,3)를 설명해 보겠습니다.
언리얼엔진2와 크라이엔진1의 비교하면 크라이엔진1은 지형 렌더링에 강하고 DX9 셰이더를 기본 지원합니다. 언리얼엔진2는 DX8에 기반하고 DX9 셰이더를 지원하려면 약간의 추가 작업을 해야합니다. (어렵지는 않습니다)
에디터는 크라이엔진1의 Sandbox는 지형툴이 강력하고 언리얼엔진2의 UnrealEd는 실내지역에 세세한 부분을 꾸미는게 강력합니다.(그렇다고 UnrealEd의 지형이 나쁘다는말은 아닙니다) Sandbox는 Additive 스타일로 맵을 만들고 UnrealEd는 Additive와 Subtractive라는 두가의 스타일을 모두 지원합니다. Additive는 지형맵에 유리한 조건이고 Subtractive는 미로나 던전등 매우 복잡한 실내맵을 효과적으로 만들때 유리합니다.
둘다 FPS용 엔진이지만 언리얼엔진2는 코드의 Modulation에서 훨씬 우위의 구조를 갖추고 있습니다.
크라이엔진1은 엔진의 모든 부분이 상호간에 긴밀하게 얽혀 있습니다. 언리얼엔진2도 대부분의 코드들이 서로를 보완하는 식이지만 함수의 체계화와 소스의 정렬이 커스터마이징을 고려한 구조로 짜여져 있습니다. 그리고 언리얼 Core 시스템에서 만들어내는 언리얼 버추얼 머신의 개념은 단지 게임 스크립팅을 위한 도구가 아닌 엔진 전체에 걸친 연동화 작업을 해주는데 이것역시 상당히 유용합니다. 크라이엔진1이 내부적으로 렌더링, 물리, 네트웍, AI, 사운드 시스템까지 모든게 얽혀져서 커스터마이징에 상당히 애를 먹는 반면에 언리얼엔진2는 크라이엔진1에 비하면 비교적 훨씬 수월한편입니다. 언리얼엔진2는 크라이엔진1에 비하면 네트웍 분리, 물리엔진의 분리, AI, 사운드 시스템을 비롯해 모든 부분의 분리와 개조나 교체가 간단한편입니다.
이제 크라이엔진2와 언리얼엔진3를 비교하겠습니다.
크라이엔진2는 크라이엔진1과 비교하면 Entity 시스템과 GamePlay 그룹등의 엔진의 큰 함수 몇가지가 소스 코드상에서 별도의 DLL 모듈레이션으로 분리는 되있습니다만 실제적인 구조는 크라이엔진1과 거의 차이가 없습니다.
단지 외관의 줄만 위치가 바꼈고 실제 내부의 내용은 같다고 하면 이해가 쉬울까요?
DLL로 빠져있는건 물리, 사운드, 네트웍, 렌더링, AI등 빠져있을건 다 빠져있지만 그게 Extensible, Flexible, Modifible을 의미하진 않습니다.
코드상에서 Modulation으로 소스가 분리되어 있을뿐 그안에 소스가 얽혀있고 Lua 스크립트를 엔진의 라이브러리 삼듯 코딩이 되어있어서 엔진 전체에 얽혀있는점은 크라이엔진1과 다를바가 전혀없습니다.
크라이텍은 엔진상의 대형 함수만을 DLL로 빼놓으면 그게 엔진이 Highly Module화, Component성을 띈다고 생각한것 같은 모양입니다.
결론적으로는 말하자면 크라이엔진1처럼 엔진이 수정이 어렵고 다루기 힘든건 마찬가지란겁니다. 특히 크라이엔진1에서도 가장 심한 부분인 Lua 스크립트가 엔진 전체에 걸쳐 얽혀있는점은 상당한 문제가 있었는데 크라이엔진2도 역시 그문제를 고스란히 담고 있습니다.
다만 이번에는 크라이텍이 내부적으로 MMOG 프로젝트를 개발하는 관계로 MMOG용으로 엔진을 커스터마이징하고 MMOG용 네트웍 모듈을 삽입해 놓은 버전이 따로 존재합니다.
언리얼엔진3는 언리얼엔진2에 비하면 거의 모든 시스템이 재작성됐고 정말 판이하게 다릅니다만 언리얼 Core에 기반한 시스템만 이해하고 있으면 언리얼엔진3를 잘 사용하는데 무리는 없습니다.
언리얼엔진3의 코드의 구조는 크게 Core, Engine, Editor, UnrealEd라는 메인 모듈이 존재하고 나머지는 서브 모듈이나 익스텐드 모듈에 속합니다.
언리얼엔진3는 대부분의 기술적인 내용들은 Engine으로 정의된 모듈 내에서 수정을 하게 되는데 코드가 얽힌 부분이 없고 방대한 엔진 크기와 내용임에도 거의 완전한 코드 모듈레이션이 되어있어서 엔진을 수정하는데 큰 어려움이 없이 엔진을 커스터마이징이 가능한 수준이고 여기에 외부의 컴포넌트들을 매우 쉽게 연동하고 끼웠다 뺐다하는 식으로 쓸수도 있습니다.
기술적인 부분을 Engine에 담지않고 따로 빼는것도 얼마든지 가능하고 프레임웍을 프로그래머가 정의하는게 가능합니다.
그뿐 아니라 게임프레임웍과 파일 시스템 프레임웍도 프로그래머가 임의대로 정의할수 있습니다.
언리얼엔진3는 언리얼스크립트라는 엔진 자체내의 고유한 스크립트 언어를 사용하는데 이언어가 엔진 코드 전체에 걸쳐 써있지만 크라이엔진2처럼 Lua로 얽혀 수정을 힘들게 하는 구조는 아닙니다.
언리얼엔진3는 비교적 이쁜 구조에서 코드 커스터마이징도 수월한 편이고 구조 자체도 특정하게 얽매이지 않고 수정이 쉽게 가능한 구조입니다만 언리얼엔진3은 제대로 쓸려면 초반에 상당한 배움과 익힘이 필요한 엔진입니다.
언리얼스크립트를 익혀야하고 언리얼 Core의 개념과 그 개념으로 작동하는 작동 원리를 알아야만 제대로 써먹고 마음대로 수정할수 있습니다.
그걸 모르고 그냥 쓴다면 삽질도 잦고 엔진도 반쪽짜리 엔진으로 쓸수밖에 없습니다.
그대신 그 구조를 잘 익힌후 사용한다면 그것을 잘 익힌 프로그래머들에게는 무엇보다도 최고의 엔진이 될수 있습니다.
언리얼엔진이 다른 엔진과 차별화되는 독특한점은 그고유한 언리얼 Core의 개념과 그것의 구조적인 면과 거기에 기반한 작동법을 잘 익혀둔다면 나중에 언리얼엔진으로 새로운 프로젝트를 들어가더라도 또는 언리얼엔진으로 누가 개발하던 프로젝트를 다시 다루더라도 쉽게 적응이 가능합니다.
보통은 같은 상용화된 엔진을 사용했더라도 남이 한참 커스터마이징 해놓은 엔진을 프로그래머가 도중에 바톤터치 되거나 한 일이 발생되서 거기 적용하려면 잘 안되거나 매우 어려운게 사실입니다.
하지만 언리얼엔진일 경우엔 모든게 고유의 언리얼 Core에 기반해서 작동하고 엔진을 어떻게 수정해도 언리얼 Core에 기반해 모든 코드 작성이 이루어지기 때문에 도중에 프로그래머가 바껴도 언리얼 Core를 잘이해하고 있는 프로그래머들이라면 큰 문제가 없이 바로 적응이 되고 어떻게 엔진을 변형하고 사용해왔는지 이해도 빠르게 됩니다.
해외나 국내나 개발자 구인내용중 프로그래머에 보면 특히 언리얼엔진의 사용경험자와 언리얼스크립트 유경험자 우대라는 사항이 있는데 그말은 이유없이 나오는게 아닙니다.
디자이너의 경우에 각 엔진의 툴에 익숙한 디자이너를 우대하는거야 당연하지만 프로그래머로서 그런 경험이 필요한 엔진은 언리얼엔진같은 경우를 제외하고 없다고 봐도 무방합니다.
쓰다보니 언리얼엔진3가 짱이다라는 글이 되버렸는데 사실 말마따나 언리얼엔진3가 더좋긴 좋습니다.
크라이엔진2도 렌더링, 툴에서는 결코 언리얼엔진3에 비해 크게 밀리는 수준은 아니며 어느 부분에 있어선 오히려 더 뛰어난 점도 있습니다.
하지만 두 엔진중에 언리얼엔진3를 더 좋게 평가하는 가장 큰이유는 이런 통합구조 엔진에 있에서 가장 중요한건 역동적인 개발과정 상황속에서 유동적이고 변화무쌍한 기획과 기술적인 변화에 대한 요구조건을 빠르게 적용하고 코드가 거기에 맞게 빠르게 변화해야 되는데 이런걸 더잘해줄수 있는 엔진이 언리얼엔진3이기 때문에 언리얼엔진3를 더높게 평가하고 있습니다.
제공되는 소스 : 크라이텍의 크라이 엔진 2 기반의 모든 게임들의 소스 코드, Sandbox 2의 및 유틸리티의 소스 코드
제공되는 툴
- Sandbox 2
- 기본적으로 크라이 엔진 1의 Sandbox 1과 거의 동일하지만 엔진의 새로운 기능들을 활용하기 위해 근래의 여러 차세대 엔진들과 마찬가지로 비주얼 에디터와 플로우챠트 스크립트 에디터, 물리 엔진 에디터등이 추가되었다. 언리얼 엔진 3의 UnrealEd와 비교하기엔 디자이너 친화적인 면에서는 다른 모습이긴 하지만 여타 엔진들에 비교하면 매우 훌륭한 수준의 툴셋을 갖추고 있다고 볼 수 있다.
제공되는 컨텐츠 : 크라이텍에서 만드는 모든 게임들의 컨텐츠들 일부
엔진 개발사에서 만든 게임
- 크라이시스 (FPS, PC)
- 크라이텍 제 2 스튜디오의 미발표작 (TPS, 콘솔)
- 크라이텍 제 3 스튜디오의 미발표작 (MMORPG, PC)
파 크라이의 판권이 Ubisoft로 완전히 넘어간 상태며 파 크라이 2는 크라이텍과 아무런 관련이 없이 Ubisoft에서 자체 개발된다.
파 크라이 2는 크라이 엔진도 크라이 엔진 2도 아니며 Ubisoft가 자체 개발한 엔진인 Dunia 엔진으로 만들어진 게임이다.
Dunia 엔진은 특별히 파 크라이 2만을 위해 개발된 엔진으로 파 크라이 2의 배경인 사막 표현에 특화되었다.
파 크라이 2를 크라이 엔진 2로 착각하지 말아야한다. 두 엔진은 지향하는 기술, 툴, 모든것이 너무나 다르기 때문이다.
Ubisoft는 엔진 라이센스 사업을 별도로 하지는 않는다.
국내에서 쓰이는 게임
- XL게임즈의 신작
- 리로디드 스튜디오의 프로젝트 THE DAY'''
해외에서 쓰이는 게임
- Avatar Reality사의 미발표 프로젝트
플랫폼 지원
- 32-bit Windows (Windows XP/Vista, Windows Vista와 DirectX 10 완벽 대응)
- 64-bit Windows (Windows XP/Vista, Windows Vista와 DirectX 10 완벽 대응)
- 완전한 64비트 프로세싱 지원
- 64비트에서는 더욱 향상된 리소스 관리와 최적화, 더욱 세밀한 메쉬, 텍스처, 라이팅, 셰도우, 셰이더, 특수효과 등의 렌더링 표현, 더욱 향상된 물리 시스템 및 인공지능 처리 등 모든 점에서 기능적, 성능적으로의 향상이 있다.
- Xbox 360 (개발중, 아직 한참 미완성이다)
- PlayStation 3 (개발중, 아직 한참 미완성이다)
멀티 쓰레딩
- Xbox 360, PlayStation 3의 3-코어 지원
- PC의 2-코어, 4-코어 지원
- 렌더링, 물리, 인공지능을 각각 멀티 쓰레딩
렌더링 엔진
- 렌더링 API 지원
- Direct3D 9 (Windows XP/Vista, Xbox 360)
- Direct3D 10 (Windows Vista)
- OpenGL 2 (PlayStation 3 전용)
- 하드웨어 쉐이더 (Hardware Shader)
- 쉐이더 모델 2b (Shader Model 2b) 하위 호환
- 쉐이더 모델 3 (Shader Model 3) 완벽 지원
- 쉐이더 모델 4 (Shader Model 4) 완벽 지원
- 지오메트리 쉐이더 (Geometry Shader) 완벽 지원
- 쉐이더 모델 5 (Shader Model 5) 곧 지원 예정
- 인도어 (Constructive Solid Geometry, Occlusion Culling, Collision Detection, Level of Detail)
- Long-ranged Distance Indoor Space and Static/Dynamic Meshes (가시거리의 범위가 매우 크며 64비트 프로세싱을 할 경우에는 가시거리의 범위가 늘어나며 더욱 세밀한 구조물들을 빠른 속도로 구현이 가능하다)
- 실시간 지역/물체 동적 변형
- 물리적 강도에 따른 모양의 자유로운 변화
- 미리 정해 놓은 한도내의 변화
- 미리 구성된 변화
- 아웃도어 (Height-field Terrain, Occlusion Culling, Colision Detection, Level of Deatil)
- 아웃도어의 표현에도 모든 렌더링, 라이팅, 셰이딩, 셰도우, 텍스처링의 적용에 전혀 제한이 없으며 인도어의 표현에서 사용하는 모든 기술들을 그대로 적용할 수 있다
- Long-ranged Distance Terrain (가시거리는 약 8Km 이상이며 64비트 프로세싱을 할 경우에는 가시거리의 범위가 늘어나며 지형의 세밀한 굴곡 표현 등의 정밀도도 향상된다)
- Seamless Mixing of Indoor Meshes and Outdoor Terrain Meshes (인도어와 아웃도어의 이음새가 없이 부드럽게 연결되며 넓은 범위의 인도어와 아웃도어를 동시에 렌더링이 가능하다)
- 실시간 지형/지물 동적 변형
- 물리적 강도에 따른 모양의 자유로운 변화
- 미리 정해 놓은 한도내의 변화
- 미리 구성된 변화
- Procedurally-placed Meshes
- Grass Layers and Vegetation Layers
- 상당히 뛰어난 표현력의 자체 개발한 초목 컨텐츠를 가지고 있다. 그러나 현재 다양한 게임들에 쓰이고 있는 유명한 상용 초목 컨텐츠인 SpeedTree에 비교하면 많이 부족한 편이다
- 라이팅/셰이딩/셰도우
- High Dynamic Range Rendering/Lighting
- Per-vertex (Gouraud) Lighting/Shading
- 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
- Real-time Dynamic Light Attenuation Functions
- Real-time Lightmaps
- Real-time Spherical Harmonic Lighting
- Real-time Ambient Lighting
- Dynamic Ambient Occlusion Lighting
- Real-time Ambient Lightmaps
- Static Ambient Occlusion Lighting
- Real-time Light Beams
- Real-time Light Shafts
- Fully Dynamic PRT (Pre-computed Radiance Transfer) Radiosity Lighting
- Sub-surface Scattering
- High Quality Soft Shadows
- 텍스처링
- Alpha Blending
- Light Mapping and Shadow Mapping
- PolyBump 2 (Normal map/Bump map/Specular map/heghit map/offset map)
- 애니메이션
- 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
- 특수 효과
- Light Bloom
- Lenticular Halos
- Image-based Lighting
- Image-based Renderings
- 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
- Volumetric Fog (입체 안개)
- Frame Buffer Distortion (수면 효과나 왜곡 효과 등)
- 3D Ocean Technology (크라이시스의 수면 효과)
- Real-time Sunrise~Sunset Effects (실시간 낮과 밤의 변화)
- Real-time Weathering System (실시간 날씨의 변화)
- 파티클 시스템
- 일반 파티클
- 소프트 파티클
- 불, 물, 연기, 모래, 비, 눈, 우박, 안개 등
- Volumetric 파티클
- Voxel 오브젝트
- Voxel 기반의 정적 오브젝트
- Voxel 기반의 동적 애니메이션/모핑오브젝트
- UI 및 GUI 시스템
- 크라이 엔진 1과 거의 변한게 없으며 커스텀화하기가 상당히 불편하다.
- 로컬라이제이션
- 이미지 추출 기능
- 고컬러, 고품질, 고해상도의 스크린샷 추출 가능
- 무비 레코딩 및 편집 재생기능
물리 엔진
인공지능 엔진
- FPS 게임 크라이시스에 특화된 인공지능 엔진을 제공한다. 아직 판단할 수 없다.
사운드 엔진
- FMOD 사운드 시스템 (공개 소프트웨어)
- 돌비 서라운드 사운드
- 모노 및 스테리오와 다중 채널 (4.0, 5.1, 6.1, 7.1) 지원
- EAX 지원 (1.0, 2.0, 3.0, 4.0, 5.0)
- 자체 음악 포맷 지원
- 3D Positioning (3D 위치 기반 사운드 포지션), Spatialization (좁은 공간에서 소리의 울림, 떨림, 왜곡 등의 효과), Doppler Shift (도플러 이동 사운드 효과)
- Data-driven Sound (데이터 기반 사운드) 지원
네트워크 엔진
- 크라이시스의 멀티 플레이에 특화된 네트워크 엔진을 탑재하고 있다. 아직 판단은 힘들다.
- MMOG 네트워크 엔진은 제공되지 않는다.
기타
- 크라이 엔진 2의 초기데모로서 ATi 테크데모로 공개된 The Project라는 머시니마 데모가 있다. 인터넷에서 다운로드 받아서 돌려볼 수 있다. 초기버전이라서 완성된 크라이 엔진 2와는 차이가 많지만 기본적인 엔진의 표현능력은 살펴볼 수 있다. 차세대 엔진인만큼 초기버전도 사양이 매우 높다. 이 데모는 오로지 ATi용 카드에서만 돌아가며 셰이더 모델 2를 요구한다. 크라이 엔진 2의 기본적인 렌더링 성능을 볼 수 있는 데모이다. 이 데모는 파 크라이의 오프닝 동영상을 실시간으로 돌리는 씬이다. --- 나그네
- 엔진 도입을 고려해서 툴 및 엔진 런타임과 로직작성을 현재 최신 버전 (2007년 6월)으로 돌려본 결과론 아직 미완성된 엔진이란 느낌이 강합니다. 실제로 돌아가는 화면을 다이렉트로 보면 그동안 게이머 커뮤니티에 공개된 영상들처럼 실사의 느낌은 거의없습니다. 그것보다 문제는 퍼포먼스가 심각하게 안나오는데에 있습니다. 아직 렌더러부분의 최적화 작업을 많이 거쳐야될 것으로 보입니다. 툴은 언리얼 엔진 3의 UnrealEd와 거의 대등한 수준을 자랑하지만 UnrealEd만큼 디자이너에게 친화적인 스타일 아니고 기능면에서도 좀 부족한 감은 있는 듯합니다. 툴도 아직 버그 투성이에 세부적인 기능들도 제대로 구현되지 않아 있습니다.그리고 로직작성은 대략 난감합니다. 거의 엔진을 수정하기가 힘든 구조입니다. 가격대도 언리얼 엔진 3와 비슷하게 부르므로 이 엔진보다는 언리얼 엔진 3를 라이센스하는 방향이 훨씬 나을거라고 생각합니다. 앞으로의 행보를 어떻게 할지에 따라서 이 엔진의 운명이 결정될거라고 생각됩니다. --- 2007년 6월 22일, 이 엔진을 도입하려 했었던 한 게임 회사의 프로그램팀장
- 크라이 엔진 시리즈의 가장 큰 문제점은 엔진의 각각을 이루는 코드들이 분리하거나 수정하는 작업이 힘든 커플링이 심하다는 점이다. 기본적으로 게임 엔진으로서의 설계를 가진 코드로 설계된게 아닌 테크 데모로부터 시작된 코드에 코드를 얹고 또 얹어가면서 툴을 덧붙이며 게임 코드로 변형되어간 코드의 형태며 거기에 더해 LUA가 엔진에 심하게 얽혀져있고 엔진과 게임의 분리가 거의 이루어지지 않아 개발중 게임에 엔진 인터페이스가 노출되거나 게임에 들어가야 할 코드가 엔진에 얽혀 들어가는 일이 잦으며 엔진의 각 부분 역시 렌더링, 물리, AI, 네트웍, 심지어 사운드까지 모든 코드가 얽혀있어 각 부분을 적출하고 새로운 코드를 쓰거나 기존의 것을 수정하는데에는 많은 애로사항이 존재한다. 라이센스 되기 시작한 초기부터 최종 버전업이 있기까지 많은 변화가 있었지만 계속 이런식으로만 코드의 덩치가 불었으며 아예 무에서부터 완전히 새로운 엔진을 작성하지 않는 이상엔 이 엔진의 새로운 버전 업데이트도 계속 이런식으로 코드의 덩치만 불어갈 수 밖에 없는 상황으로 치닫았다. 크라이 엔진 1의 후속 버전인 크라이시스 엔진 (크라이 엔진 2)도 이런 상황을 벗어나지 못하고 더 복잡해지고 그 상태에서 더 복잡해지고 코드의 양이 더 불어나서 오히려 이전 버전보다 더 다루기 힘든 문제에 직면했다. 이 엔진 시리즈를 원하는대로 수정하고 변형해서 다루기 위해선 많은 시간과 노력이 필요할 것이다. --- 크라이 엔진 사용 경험있는 프로그래머
- 최근에 지인중에 크라이 엔진 2를 도입하려고 알아봤던 분이 계시는데 도입을 위해서 가장 최신 버전의 엔진 (2007년 9월 버전)을 받아서 평가를 해 봤는데 생각보다 낮은 퀄리티의 그래픽과 그에 비례해서도 엄청나게 좋지않은 퍼포먼스, 조잡하고 너저분한 툴, 그리고 수정하기에 매우 안좋은 코드의 퀄리티 (전반적인 코드 설계가 코드의 확장성을 거의 고려하지 못한 아키텍처, 지저분한 함수 정리, 배열의 조악함, 주석의 조악함, 각 코드들의 커플링현상 심함 등등) 등의 문제로 엔진 도입을 포기한 사례가 있습니다. --- 2007년 9월 22일, 한 프로그래머
상용 엔진 정보
분류 엔진