Star Engine[1] | |
<colbgcolor=#e6e6e6><colcolor=#000> 개발 | CIG |
유형 | 게임 엔진 |
기반 언어 |
C++,
C#, |
라이선스 | 사유 소프트웨어[3] |
플랫폼 | Windows[4], Linux |
|
개발사 Cloud Imperium Games가 개발하는 차세대 게임 엔진으로 스타 시티즌 개발을 위해서 만든 엔진이다.
1. 개요
|
스타 엔진의 강력한 행성 툴과 오픈월드 스케일 예시.[5] |
크리스 로버츠의 의하면 스타 엔진은 기존 크라이엔진의 80%이상을 갈아엎고 새로 짠 코드들이라고 한다. 이 새로 짠 코드만 따로 때면 크라이엔진이 아니라 아예 새로운 엔진이 될 정도로 크라이엔진의 정체성은 기본적인 부분[8]만 남았다고 내부적으로 스타 엔진이라 부르는 것은 이런 연유인듯하다. 럼버야드 엔진으로 교체할땐 이 80% 코드만 가져왔다.[9]
CIG가 크라이텍과의 소송을 이기면서 부가적으로 스타엔진 소스코드의 지적재산권과 소유권을 인정받게 됐다.
소송 이후 스타 엔진은 완전히 CIG 소유가 되었다.
럼버야드 엔진을 사용하게 되면서 계약내용에 포함되어있는 ''게임 실행시 로고 노출''과 기타 계약 때문에 스타 시티즌에 스타 엔진의 로고가 정식으로 나오거나 또는 정식으로 스타 엔진으로 만들어졌다는 내용은 앞으로도 나오지 않을 가능성이 크다. 오히려 아마존이 스타 시티즌을 지원하는 이유인 '엔진 홍보'때문에 럼버야드로 만들어졌다고 홍보될것이다.
이런 방면에서는 아쉽게 됐지만 많은 유저들이 완성된 스타 엔진으로 만들어질 SQ42 에피소드2,3와 스타 엔진으로 기반으로 만들어질 모딩툴[10], 스타 시티즌 이후에 스타 엔진 기반으로 만들어질 게임들에 기대를 품고있다.[11]스타 엔진은 럼버야드에 포함된 기술이 아닌 법원이 인정한 지적 재산이기 때문에 스타 시티즌 이후 CIG가 따로 상용엔진으로 내놓을 가능성도 있다.
시티즌콘 2953에서 드디어 스타 엔진 로고가 나왔다. 정식으로 채용될지는 아직 미지수
이미 럼버야드로 바뀐 시기였던 시티즌콘2947[12] 같은 연례행사에서 엔진 개발에 관해 설명할때 여전히 럼버야드가 아닌 스타 엔진으로 여전히 설명하는것을 볼때 내부적으로 계속 스타 엔진이라고 부르는것을 알 수 있고 럼버야드는 단순히 아마존 클라우드 서비스 때문에 선택한것을 알 수 있다.
연례행사에서 이런 모습이 보여주는 또 한가지는 럼버야드와 스타 엔진 사이에 어쩌면 일어날 법적문제에 선을 긋는것이라 해석할 수도 있다.[13]
2. 특징
스타 엔진으로 구현한 행성 |
스타 시티즌의 크고 아름다운 우주세계를 구현하는데 초점이 맞추어져있다. 대부분의 기술들이 CIG가 자체 개발한 신기술들이며 현재도 계속 개발되고 추가되고 있다. 개발사에서 계획한 기술들이 모두 개발된것이 아니기 때문에 스타 엔진은 아직 완성된 엔진은 아니다.
스타 시티즌의 랜더링 비주얼과 물리엔진의 관련된 기술도 개발중인데 이 경우 신기술보다 기존에 있었던 기술들을 개량하는 식이 많다.
이런 신기술 덕분인지 규모가 규모인 만큼 그래픽 부분 같은건 너프 될 것이라고 초기 예상 되었던 것과 다르게 오히려 그래픽에 버프를 먹고 있는 상황이다. 월드 그래픽이 AAA급 게임 그래픽을 보여주고 있으며 이걸 행성급으로 만들 수 있다는것은 타의 추종을 불허한다.[15][16]
물론 월드 그래픽만 좋은것이 아니다. 함선은 물론 인물 그래픽은 더 좋기 때문에 최상급 그래픽을 보여준다. 개발사 CIG가 인물 그래픽은 업계 최고라고 자부한다고 말할 정도다.[17]
- 티어 0의 레이첼 맥 라렌[18] 싱글 플레이 트레일러 컷신
또한 로딩 기술 관련해서는 현세대 게임 엔진들 사이에서 가장 독특하고 발전한 모습을 보여준다. 대규모 월드 구축과 함께 스타 엔진에서 내세울만한 장점중 하나
그밖에 4가지 표면 셰이더를 혼합하여 함선이 기총으로 데미지를 받을 경우 구멍이 생기고 안쪽의 뼈대가 보이거나, 하나의 소형 맵인 함선을 쉽게 만들 수 있는 함선 파이프라인 툴같은 별의별 신기술이 적용되어 있다.
Object Container Streaming을 비롯한 여러 복잡한 신기술 때문에 콘솔이나 기타 플랫폼은 고려되지 않은 엔진이라 사용할 수 없다.
애초에 개발 목적 자체가 PC의 강력한 성능을 최대한 뽑아내서 스타 시티즌 우주를 구현하는게 목적이니 당연한 결과, 구조가 다르고 메모리와 성능에 한계가 있는 현세대 콘솔은 사용할 수 없다. 차세대면 모를까.[19]
또 상용엔진이 아닌 개발사 독점 엔진인데도 적용된 기술이나 알고리즘[20], 앞으로의 개발 계획이 상세하게 알려지고 있는 엔진이기도 한데 이는 스타 시티즌이 크라우드 펀딩으로 만들어지는 공개 개발이기 때문이다.[21]
DirectX 12를 사용하지 않고 Vulkan API만 사용할 예정이다[22]. 두 API는 실질적으로 다르지 않고[23] Windows 10만 지원해서 업그레이드 해야하는 다이렉트와 다르게 Vulkan은 7,8,10 그리고 Linux에서 사용할 수 있기 때문이라고 한다. 스타 엔진에서 DirectX 12가 Vulkan API보다 확실하고 실질적인 이점을 준다고 판단 할 때만 고려될것이라고 한다. Ali Brown 그래픽 엔지니어링 담당 이사 의견
이전에는 레이트레이싱과 DLSS같은 업스케일링 지원에 대해서 아직 계획이 없다고 했지만, 시티즌콘 2953에서 드디어 레이트레이싱과 DLSS, FSR을 지원하는게 확정됐으며 해당 행사에서 상세 설명 및 시연되었다.
3. 차세대 엔진의 면모
게임 기술을 전문으로 다루는 저널리즘 디지털 파운더리에 의하면 스타 시티즌과 스타 엔진은 2019년 이미 차세대 콘솔들이 주장하는 SSD 기술을 이미 이용하고 있다고 하며, 특히 2020년도에 언리얼 엔진 5의 PS5 데모 로 보여준 스트리밍 기술도 이미 스타 엔진에서 안정적인 기술로 게임에 적용했다고 보도하였다.3.1. 64bit 라지 월드
스타 엔진은 64비트 세계 공간 좌표를 사용하는데 이는 더 큰 가상 주소 공간을 허용하여 행성계가 들어갈만한 공간을 구현 가능해진다.3.1.1. Mega Map
행성계 좌표를 지정하는 기술로 행성과 항성의 좌표를 결정하고 공전과 자전을 하게 만든다.3.1.2. Camera Relative Rendering
상대적인 카메라 위치에 따라서 렌더링하는 기술 64bit 라지 월드기술의 맞춘 렌더링 기술인데 보통의 게임 엔진의 경우 32bit 좌표를 사용한다.[24] 그래서 좌표계 렌더링이 64bit좌표를 사용하는 스타 엔진에서는 문제가 생긴다. 개발진은 카메라의 '상대 위치'위치를 계산하여 GPU에 전달하는 기술로 이를 해결하였다.3.2. 로컬 피직스 그리드
스타 시티즌의 함선 내부 컨텐츠 구현을 위한 기술로 무려 함선 내부를 돌아다닐 수 있게 만든다.별거 아닌것 같지만 스타 시티즌의 대형 함선들은 내부가 매우 디테일하게 만들어져있고 또 매우 넓은데 이것을 하나의 맵 취급을 해서
함선이 움직이거나, 퀀텀 드라이브(양자여행)을 하거나 공격을 받아도 내부에서 돌아다니고 생활 할 수 있다.[25] 이것은 다른 게임에서 찾아볼 수 없는 스타 시티즌의 또 다른 아이덴티티이다.[26] 이 기술로 실시간 온라인 상태에서 함선 내부 전투나 생활 컨텐츠를 개발, 즐길 수 있다.
일종의 부차적인 효과로, 함선의 내부가 하나의 작은 맵으로 취급받기 때문에 함선 내부에 있다면 외부로부터의 중력이나 관성, 작용/반작용 등의 영향을 전혀 받지 않게 된다. 행성 표면에 함선을 거꾸로 눕혀 놓더라도 행성의 중력을 무시하고 마치 자석 부츠라도 신은 마냥 바닥에 거꾸로 매달려 있게 되고,
3.2.1. Zone System
로컬 피직스 그리드의 최적화&디테일 관련 기술 별개의 맵 취급인 우주선이 월드를 자유롭게 돌아다니고 외부에서 내부를 내부에서 외부를 볼 수 있으며 우주선과 월드 사이의 경계를 없애는 기술이다. 또 존 시스템은 64bit 라지월드와 연동되어 최적화하는데 초점이 맞추어져있다.3.3. 통합 1인칭 3인칭 애니메이션
보통의 게임들은 1인칭과 3인칭의 애니메이션을 따로 만들고 적용한다. 이는 카메라의 위치 때문인데 1인칭의 카메라가 눈에 위치한것이 아니기 때문이다. 스타 엔진은 1인칭의 카메라를 눈에 위치하게 만들고 1인칭과 3인칭의 모션이 동일하게 통일하면서 필요한 애니메이션을 대폭 줄였을뿐만 아니라 이로 인한 버그들을 원인 자체를 제거해버렸다.[29][30]즉 내가 보는 애니메이션은 남들과 동일하다. 보통 게임의 경우 1인칭에서 총기 정조준은 따로 자신의 화면에만 생성된 총기를 정조준하는건데 스타시티즌의 경우 진짜로 3인칭의 정조준이 1인칭의 정조준이니 총기 모델링의 실제 가늠자를 사용한다.또한 카메라가 눈에 위치하게 되면서 미래에 VR을 지원할 스타 시티즌에서 VR 작업이 매우 쉬워지게 됐다. 현재 헤드트레킹을 지원하는 장비들(토비아이,트랙ir등)을 이용해서 총을 든 상태로 홀로그램 도트사이트를 머리를 좌우로 움직여보면 현실과 거의 흡사하게 묘사된다.
카메라를 눈에 위치하게 만들면 플레이어 캐릭터가 걷거나 뛸때 머리가 흔들려 카메라가 흔들리는 현상이 있었는데 조류의 시선고정(몸은 움직여도 머리는 움직이지 않는 본능)을 게임에 적용하여 해결했다고 한다. 원래는 인간의 시선 흔들림 처리를 게임에 적용하려고 했지만 복잡하여 그렇게 하지는 못했다고...
3.4. 절차적 행성 기술
스타 시티즌의 행성을 만드는 기술로 타 게임의 완전한 랜덤 생성이 아닌 아티스트의 손을 거치는 방식의 새로운 행성 기술이다.아티스트는 미리 해당 행성의 컨셉의 맞는 에셋들을 준비하고 그림을 그리듯 어떤 지형을 어디에 만들지 정할 수 있다. 이후 생성은 컴퓨터가 진행한다. 2018년 2분기 업데이트였던 3.2버전에서는 채광이 가능한 광석들도 생성이 가능해졌고 2019년 2분기 예정 업데이트인 3.6에서는 식물군의 채집 요소들도 절차적 생성으로 행성 곳곳에 배치가 가능해진다.
3.4.1. 절차적 행성 V4
2019년 시티즌콘에서 발표된 더욱 업그레이드된 행성 기술 기존의 V3보다 확연한 발전이 눈의 띈다.기존 V3보다 거리의 따른 오브젝트의 로드/언로드가 자연스러워졌으며 월드 자체의 그래픽 향상도 이루어졌다.
또한 빽빽한 소나무 숲을 만들어도 안정적인 프레임 유지가 가능해졌다.
V4에서 새로이 넣어진 신기술은 날씨에 관련된 기술인데 단순히 행성에 날씨를 추가하는것이 아닌 물리적인 기후를 추가하며[31]
행성의 각 위치마다 기온이 설정된다.[32]또한 이 설정된 기온과 기후에 따라서 지형의 침식과 풍화도 설정되어 적절한 지형의 모습과 색감이 자동으로 설정된다.[33]
3.8 메이저 업데이트에서 적용이 되었다.
3.4.1.1. 날씨 v1
절차적 행성 V4에서 추가되는 기본적인 날씨 기술 행성 전체의 각 부위별로 온도가 설정된다. 또한 물리적인 바람과 비, 눈같은 날씨가 추가되는데 이에 따른 오브젝트들의 반응은 물론[34] 숲같은 장소에서는 바람이 나무에 막혀 영향이 줄어들고 기온과 바람, 비, 눈같은 날씨에 영향을 받아 플레이어의 체온이 떨어지게된다. 바람의 강도와 방향에 따라서는 플레이어가 이동하는데 방해가 되기도 한다.입고있는 옷과 우주복에 따라서 체온이 올라가거나 떨어지기 때문에 플레이어들은 날씨에 맞는 옷을 입어야 한다.
행성이나 위성의 온도가 밤낮에 따라 달라지며, 적절한 옷이나 우주복을 입어야 장시간 활동이 가능하다.
3.4.2. 생태계 지정
기본적인 식물을 비롯해 동물들까지 행성 전역에 구역을 지정하여 생태계를 절차적 생성 하는 기술 3.6에서 그 초기 버전인 채집 가능한 식물군이 등장하고 차후 동물들도 차차 추가할 예정이다. 2016년에 데모에서는 샌드웜도 등장했는데 차후 등장할지는 미지수.3.4.3. 동굴 절차적 생성
아직 업데이트 예정이 없는 기술 동굴을 절차적 생성한다. 예정에만 없는거지 공식 유튜브에 상세한 개발 영상까지 올라와있으므로 곧 볼 수 있을거라 예상되는 기술 절차적 생성으로 만들었음에도 굉장한 퀄리티를 보여주는 등 기대치가 높은 기술이다.3.7에서 성공적으로 등장하였다.
3.4.4. 도시 절차적 생성
2019년 1분기 업데이트인 3.5버전에서 나온 ArcCorp에 적용된 기술로 무려 도시를 생성하는 기술이다. 이 기술도 기존의 행성 기술 처럼 아티스트가 레벨 디자인이 가능하나 현재는 초기 단계여서 아직 그렇게 상세하게 적용되진 않았다.[35] 2008년 크라이엔진 데모에서 선보였던 도시 기술을 당시 기술 담당자들이 CIG로 이직하면서 완성 시킨 기술이다.3.4.4.1. 건물 내부 절차적 생성
건물의 내부를 절차적 생성하는 기술 2017년 시티즌콘에서 도시 절차적 생성과 같이 공개됐다.현재 우주 정거장에 제작에 사용되었으며 이 기술을 통해 모든 건물의 내부를 만들 수 있지만 개발사에서는 모든 건물의 내부를 만들지는 않을 것이라고 말했다. 그래도 들어 갈 수 있는 건물이 많아진다는것은 기존 게임들에서 아쉬웠던 부분이 기술적으로 해결되는 셈이다.
3.5. The Sun as a physical object
행성의 자전의 따른 태양 위치변환으로 광원과 그림자가 실시간으로 변화하는 시스템.3.6. 지속성
현재 일부만 적용된 기술로 MMO의 특징중 하나인 영구적인 세계를 구현하기 위한 기술이다.지속성은 내 캐릭터 상태뿐만 아니라 디테일한 함선 파괴 상태, 물리적인 아이템 상태와 우주에 파괴된 함선과 쓰레기등을 유지하고 시간에 따라 변화하게 만드는 기술로 플레이어가 게임을 끄고 있어도 우주가 돌아가게 만드는 중요한 기술이다.
3.18버전에 본격적인 아이템 지속성 데이터 서버가 도입된다. 이렇게 되면 지금은 플레이어가 아이템을 떨어뜨리면 로그아웃 후 바로 사라지지만 3.18버전부터는 서버에 남게 되어 타인이 루팅 가능하게 된다. 이로 인해 적을 죽이고 아이템 습득이 가능하게 된다. 또한 그동안 플레이어 메모리 캐쉬 안에 아이템 위치가 기록되어 그걸 서버에서 읽어보느라 필요 이상의 데이터를 플레이어와 통신했지만 이제 이 역할이 대부분 서버로 옮겨가게 되면서 메모리 수정 치팅도 대부분 막히고 서버도 연산이 빨라지게 되어 종합적으로 플레이어가 더 쾌적하게 즐길 수 있게 된다.
3.7. 서버 매쉬
아직 개발중인 스타 엔진의 기술로 인스턴트 서버와 서버를 연결하여 싱글 샤드 서버로 만드는 기술로 이 기술이 완성되면 스타시티즌은 MMO로써 면모를 가지게된다.[36] 자세한 사항은 아직 공개된 시연이 없어서 불명이나 갤럭시 서버라는 중앙 서버를 중점으로 OCS와 지속성을 이용하여 플레이어가 이동하는동안 자연스럽게 서버간 이동을 하게되고 그 서버에 있는 사람들을 만나게된다. OCS와 마찬가지로 자연스럽게 이어져서 플레이어는 알아차리지 못한다고 한다. A행성과 B행성의 서버가 다르지만 플레이어는 자연스럽게 A에서 B로 넘어가서 B행성의 사람들을 만날 수 있다는것이다. 또 서버 매쉬는 단순히 서버간의 연결뿐만 아니라 한개의 인스턴트가 감당할 수 없는 양의 인원이 몰리면 여러 인스턴트를 합쳐서 더 큰 인스턴트로 만들어서 사람들을 수용하는 기능도 있다.이 기술이 실현될려면 서버 OCS인 SSOCS와 완전한 지속성이 적용되어야하는데 아직 이 두 기술도 완전히 개발, 적용된것이 아니여서 서버 매쉬의 적용은 아직 요원한 상태이다. 하지만 이 두 선행기술은 일부가 이미 인게임에 적용된 상태여서 어느정도 미래는 밝다.
수많은 스타 시티즌 후원자들의 유구한 역사를 자랑하는 떡밥기술이기도 한데 이 기술이 언급된건 무려 스타시티즌 개발의 시작인 2013년 초 이다. 스타 시티즌 개발이 이제 7년을 바라보고 있으므로 많은 후원자들이 시티즌콘[37]에서 시연하길 기다리는 기술이기도 하다. 개발만 완료 되면 사실상 클라우드 게임 서버가 되는 형태여서 스타시티즌 뿐만 아니라 다른 게임에서도 적용되면 굉장한 효과를 발휘할 수 있을것으로 기대되고 있다.
2023년 시티즌콘에선 서버 매쉬 기술이 처음으로 시연하는데 성공했다. 초기 단계라 ㄱ자 방에서 적용한 것이 전부지만 드디어 개발에 첫 발을 딛었다며 유저들과 개발자들이 환호하였다.
2024년에는 에보카티 테스트 서버에서 파이로 행성계 서버와 스탠턴 행성계 서버를 동시에 가동 + 점프 포인트를 통해 이동 하는 것 까지 성공했고[38] 이후 PTU 서버에서 행성마다 서버를 나누어 한 서버에 총 800명의 유저가 접속할 수 있게 되었다. 다만 서버의 경계선에서 다른 서버로 넘어갈 때 행성의 북극점, 남극점이 아닌 다른 곳에서 넘어가면 행성의 자전 문제로 인해 함선이나 유저 또는 물건이 순식간에 사라져버리거나 반대편 서버에 있는 함선이 타게팅 되지 않는 등의 잡다한 버그들이 발생했다. 향후 CIG가 해결해야 할 부분이다.
3.8. 우주 안개, 구름 기술
스타 시티즌은 대규모로 펼쳐진 안개와 구름과 비나 눈같은 기상현상을 온라인 환경에서 똑같이 구현해야한다. 즉 행성 크기의 구름을 모든 유저가 똑같이 봐야한다는것 이 구름과 안개에서 연료 채취를 하기 위한 매커니즘도 구현중 2.5버전에서 안개 기술은 일부 공개된적이 있었으나 구름기술과 함께 행성 크기로 구현하는것에 문제가 생겨서 현재 계속해서 작업중이다.개발진은 이 구름에서 기상 현상이 일어나는것을 구현하는것을 매우 고대하고 있으며 2017년 시티즌콘 당시 미리 인게임 날씨앱(...)까지 만들어서 공개하며 특정 행성의 기상상황을 알 수 있게 만들어 실감나는 기상상태에 관한 게임 플레이를 만들겠다고 발표했다.
3.9 부터 구름이 추가되었으며 [마이크로텍]행성에 블리자드가 몰아친다면 블리자드가 몰아치는 곳에 구름이 모여있음을 볼 수 있다.
3.12에서 라그랑주점에 가스 구름 효과가 추가되었다.
3.14에서 크루세이더 행성에 새로운 구름 기술이 적용되었다. 다만 아직 아크콥이나 마이크로텍등의 다른 행성들은 기존의 2d 구름이 적용되어 있는 상황. 추후 업데이트 될 것으로 보인다.
3.9. 소셜 AI
AI가 실제로 생명을 가진 것처럼 행동하게 하는 기본 기술 보통의 MMO 게임의 AI가 24시간 내내 한 곳에 서있는것과 달리 NPC의 하루 일과를 부여하여 행동하게 만드는 기술이다. 스카이림의 NPC 생활이 MMO의 적용된다고 생각하면 쉽다. 이 소셜AI는 선원 AI에게도 적용되어 그들의 욕구를 들어주지 않는다면(식사, 수면같은 휴식시간, 샤워 등) 일의 효율이 떨어지거나 반란이 일어날 수도 있다고 한다.현재는 아직 적용되지 않는 기술.
4. 로딩 기술
스타 엔진에서 가장 특징적이고 장점인 기술중 하나로 개발사는 공약으로 내세운 로딩창이 없는 게임을 만들기 위해서 새로운 신기술을 개발했다. 이 기술들은 실시간 지능적 로딩으로 아예 로딩창이 없거나 단 몇초만에 로딩을 완료하는등 현세대 엔진들 중에서 가장 진보된 로딩 기술을 보여준다. 또한 이 로딩 기술은 대규모 월드를 메모리에 모두 넣지 않아도 구현 가능하게 만들었다.최근 발행된 점프포인트[39]에 의하면 여타 다른 게임 엔진에서 사용하는 'Level'[40] 개념의 시스템이 아닌 아예 새로운 개념의 기술을 접목하여 만들었다고 한다. 기존의 시스템은 미리 정해진 순차대로 계산하고 메모리에 로드했다면 스타 엔진은 여러 레벨 빌딩 블록으로 이것들이 모이는 방식이며 멀티 스레드를 이용한 병렬 계산을 수행하며 순차적이 아닌 지능적으로 각 관리자가 서로 상호 소통하여 먼저 필요한것을 예측하고 우선순위를 정하여 로드한다고 한다. 이렇게 된다면 기존의 방식들에서 불가능했던것들이 가능해지는데 리소스 데이터를 로드, 언로드, 초기화를 모두 동시에 수행하여 엄청난 크기의 데이터를 가진 우주 맵을 로딩없이 구현이 가능해진다. 기존의 있었던 우주 게임들이 꼼수로 우주를 구현하여 그 한계가 명확했던것과는[41] 달리 스타 엔진은 새로운 개념의 기술을 도입하여 기존의 한계를 극복했다고 한다.
4.1. 메가 로딩
후술할 OCS[42] 기술의 아주 기본적인 기술적 설계를 바탕으로 만든 기술 본 게임인 PU(퍼시스턴스 유니버스)의 접속할때, 다른 모듈 게임 플레이이자 일종의 미니 게임인 '아레나 커맨더'[43]와 '스타마린'[44]의 로딩을 담당하는 기술이다. 접속시 맵에 있는 에셋들중[45] 가장 먼저 필요한것을 지능적으로 우선순위를 정하여 로딩하여 단 몇초만에 로딩이 끝나고 접속이 되는 고속 로딩 기술이다. 다만 PU의 경우 불러올 데이터량이나 경우의 수도 많기 때문에 몇십초까지 늘어날때가 많다.4.2. Object Container Streaming
줄여서 OCS라고 부르며 실시간 로딩 기술이다. 게임 월드의
오브젝트 상태를 관리하는 스타 엔진의 복잡한 시스템으로 연결된 서버가 지시 한대로 게임 클라이언트 내의 오브젝트 데이터로드 및 언로드와 관련이 있다. OCS는 엔진/서버의 기본요소이고 게임 월드 확장에 필요한 기술이다. SQ42(싱글 플레이)와 PU(온라인) 모두에 대한 클라이언트 성능을 향상 시키고
RAM 사용량을 줄이며 서버 매쉬의 기초를 제공한다.
OCS 개발사 설명글
개발사는 스타 시티즌의 리얼한 세상을 위해서 로딩창 없는 세계를 구현하겠다고 공약을 했었는데 이를 위한 로딩 기술이자 무지막지하게 큰 월드와 게임을 구현하기 위한 기술이기도 하다. 이 기술이 없던 시점인 1.0부터 3.2까지는 게임 내부의 모든 에셋을 통으로 한번에 로딩하여 로딩창이 없었지만 이는 기술적 설계가 없는 무식한 방법인지라 프레임 드랍은 물론 허스턴같은 행성을 추가할 수 없었다.[46]
매우 복잡하고 예측을 통한 지능적인 로딩 기술로 로그인 할 때 모든걸 로드하는것이 아닌 필요할때 필요한 에셋을 지능적으로 제공한다.
플레이어가 이동할때 떠난 영역의 사용되지 않은 모든 에셋을 언로드하여 새로운 에셋을 위한 공간을 만든다. 또 이것이 단순한 물체 오브젝트 뿐만 아니라 ' NPC'와 다른 플레이어에게도 적용된다. 더 이상 시야 내에 없다면 언로드 한다. 하지만 여전히 우주에는 다른 플레이어들이 존재하며 그들이 무언가 파괴하거나 영향을 준다면 나중에 해당 지역에 갔을때 그 여파를 볼 수 있다. 중요한것은 이 모든것이 매끄럽게 진행되며 플레이하는동안 전혀 눈치채지 못한다.
개발사는 OCS가 구현하는게 매우 어려웠다고 하는데 게임 전체의 작은 컵부터 큰 행성까지 이르는 오브젝트 컨테이너를 다루는것이기 때문이였고 실제로 이 기술 하나 개발하는데 3년(!!!)이 걸렸다고 한다.
크게 클라이언트 쪽에 적용되는 OCS와 서버 측에 적용되는 Server-side OCS로 구분되는데 클라이언트 OCS는 알파 3.3 버전에서 최초로 적용되었고 SSOCS는 3.8에서 추가되었다. 두 버전 모두 PU의 모든걸 갈아엎는 거나 다름 없는 대규모 패치여서 개발자들은 게임이 작동 불가능하게 망가지지 않을까 엄청나게 염려하는 모습을 보였다. 다행히 개발진의 염려와는 다르게 잘 작동 되는중이다.
4.2.1. 간략한 작동 방식
오브젝트 컨테이너 스트리밍으로 스타 시티즌은 점점 더 많은 행성, 위치 및 함선으로 확장됩니다.
게임이 발전할 수록 플레이어의 컴퓨터의 대한 수요가 증가합니다. 따라서 우리는 스트레스를 완화하고 계획대로 우주를 지속적으로 확장 할 수 있는 기능을 만들었습니다. 현재 플레이어가 로그인을 할 때마다 게임의 모든 에셋을 로드합니다. 개인의 행동이 주변의 다른 모든 사람들에게오래 지속되는 영구적이며 커다란 우주게임에 어울리지 않는 로드 방식입니다. 현 알파 3.2는 풀용량 풀로드 상태임으로 새로운 장소를 만들고 있지만 구현할 여지가 없습니다. OCS는 컴퓨터 메모리에 의존하지 않고 세계로드 방식을 변경함으로써 이를 수정합니다.- 초록색:플레이어가 들어가기전에 로드 준비가 완료된 지역
- 하얀색:플레이어에게 로드된 지역
- 빨간색:플레이어에게 멀어져 로드가 풀릴지역
- 노란색:준비중인 지역
작동방식
로그인 할 때 모든걸 로드하는것이 아닙니다. OCS는 필요할때 필요한 에셋을 지능적으로 제공합니다.
영역을 떠날때 사용되지 않은 모든 에셋들을 언로드하여 새로운 에셋을 위한 공간을 만듭니다.
이것은 NPC와 다른 플레이어들에게도 적용됩니다. 그들이 더 이상 시야 내에 있지 않다면 언로드 할 것 입니다.
그러나 그들은 여전히 우주에 존재합니다. 그들은 사라지지 않으며 다시 볼 수 있을때까지 에셋이 게임에 로드되지 않습니다.
그들이 무언가 파괴하거나 충돌하는등 다른것에 영향을 준다면 나중에 경로로 따라갔을때 여파를 볼 수 있습니다.
이 모든것이 매끄럽게 진행되며 플레이하는동안 전혀 눈치채지 못할 것입니다.
스케닝
오브젝트, 함선, 캐릭터는 여전히 존재하며 완전히 로드되기 보다는 가까워질때까지 최소한의 정보만을 로드합니다.
예를 들어 알려지지않은 우주선을 먼거리에서 스캔하는것은 당신의 시야에 들어올때까지 세부적인 정보만 로드합니다.
이것은 플레이어와 NPC의 함선이 만날때까지 컴퓨터의 메모리의 극소수만을 사용하는 것을 의미합니다.'''
5. 그래픽 렌더링 기술
스타 엔진은 렌더링 기술도 여럿 개선, 개발하고 있다. 그래픽으로 유명한 크라이엔진이 기반이여서 수려한 그래픽을 보여주는것도 특징그래픽 기술의 경우 신기술 개발보다는 기존의 있던 기술을 개량하는 경우가 많은데 예로 GPU Particle System의 경우 똑같은 기반인 럼버야드와 기반인 크라이엔진에도 있지만 스타 엔진의 경우 효율성을 위해 바닥에서부터 빌드되게 바뀌였다.
광원에 관련한 기술은 신기술이 많은데 이는 행성의 자전에 따른 광원효과, 변화를 구현하기 위해서 광원부분의 신기술이 많다. 또한 우주에서 보는 행성의 표면에 대한 랜더링 기술도 새로 제작한 기술이다.
- Object space shader damage
- Real time environment-probe capture and compression
- Image based lens flares
- Physically based bloom
- Human eye exposure simulation
- Major improvements to planar lights
- Intelligent mesh-merging system
- Upgraded volumetric fog
- Major upgrade to shadow pool system
- Render target pooling
- Render to texture pipeline
- Tiled lighting upgrades
- Density based LOD algorithm
- GGX normal map filtering
- Camera relative rendering
- GPU Particle System
- Various improvements to transparency sorting
- Artist friendly profiler
- Physically based atmospheric scattering
- Hierarchical object management
5.1. 물리 기반 렌더링
줄여서 PBR이라고 불리는 렌더링 방식 언리얼 엔진을 비롯한 유니티 엔진, 프로스트바이트 엔진같은 최신 엔진에서 사용되는 렌더링 방식을 사용한다. 자세한것은 항목 참조.6. 타사 소프트웨어
엔진에 들어간 타사 소프트웨어- Kythera - 인공 지능 미들웨어
- Vulkan API - 그래픽 및 연산 API [47]
- Wwise - 사운드 엔진
7. 단점
7.1. 개발의 최대 난제
다사다난 그리고 기적이 있었던 엔진
험난했던 개발-크리스 로버츠 인터뷰
불가능을 가능으로 다른 엔진들에게서 없던 기능을 만들었어야 했다.
스타 시티즌의 가장 큰 걸림돌이었던건 다름아닌
스타 엔진으로 개조되기 이전
크라이엔진이었다.불가능을 가능으로 다른 엔진들에게서 없던 기능을 만들었어야 했다.
스타 시티즌이 세상에 공표되기전인 2011년 크리스는 마인크래프트의 성공에 영감을 받고 새로운 신작을 구상중이었는데.
당시 크리스는 스타 시티즌의 프로토타입을 만들기 위해서 엔진 선택을 고민하고 있었다. 한개는 발매를 눈앞에 둔 언리얼 엔진 4였고 다른 하나는 크라이엔진3였다.
아예 새로 엔진을 개발하긴 싫었어요. 이전 게임들에는 그렇게 했지만, 시간이 너무 오래 걸리거든요. 최신 엔진과 비교해서 약 5% 향상된 엔진을 개발하느라 2년을 허비할 순 없었어요.-크리스 로버츠
개발사의 문의로 크리스는 두개의 엔진을 모두 얻게됐는데 사용해본 후 크리스는 크라이엔진으로 개발하기로 결정하게된다. 언리얼 엔진 4는 분명 성능도 좋고 유연성도 있지만 아직 기본적인 시스템조차 개발이 덜 됐을 정도로 너무 초창기였기 때문에 이미 성숙한 단계에 있던 크라이엔진으로 결정하게 된다. 이미 개발된 상용엔진을 사용하는것은 그만큼 프로토타입을 더 빨리 뽑을 수 있다는 장점이 있었지만 추후 가장 큰 걸림돌이 됐다.첫번째로 기술자의 문제였다. 크라이엔진을 잘 다루는 경력있는 프로그래머를 구하기 위해서 크리스는 방방곡곡 수소문을 했지만 잘 찾지 못했다고 한다. 아레나 커맨더의 출시일이 다가왔을때 조차 크라이엔진의 기본적인 부분도 완벽하게 파악하지 못해서 버그에 시달렸다. 크라이텍에서 기술지원으로 보낸 직원이 아니었다면 해결하지 못했을거라고 한다.
두번째로 스타 시티즌이 크라우드 펀딩으로 엄청난 성공을 거둔 후 초창기와 다르게 크라우드 펀딩 돌파로 인한 추가 목표로 AAA급 게임개발로 거듭나게 된다. 크라이엔진은 분명 크리스가 현실적으로 생각했던 적은금액, 작은 스타 시티즌에는 어울릴만한 엔진이였지만 거대해진 스타 시티즌에는 굉장한 걸림돌이 됐는데 크라이엔진은 좋은 FPS 엔진이지만 MMO게임을 만드는데 사용되는 엔진이 아니었기 때문이다. 즉 엔진의 구조 자체를 바꾸는 정도를 넘어서 아예 새로운 엔진을 창조하는 지경까지 가야만 했다.
- MMO가 아닌 작은 규모의 멀티만을 염두에 두고 쓰여진 네트워크 코드
- 스타 시티즌의 구상된 AI를 감당할 수 없는 AI코드
- 대규모 우주를 만들 수 없는 32비트 좌표
- 우주와 맞지않는 광원과 랜더링
- 언제 작성된지 알 수 없는 난해하고 불필요한 레거시 코드[48]
- 그외에 수많은 기타 등등(...)
결국 크라이엔진으로만으로는 너무나도 역부족이라는 결론이 나오게된다. 아니 애초에 시장에 나와있는 다른 상용엔진도 똑같이 스타 시티즌을 만드는데에는 기술적 한계가 명확했다.[49]스타 시티즌은 특수한 기술이 필요한 대규모 프로젝트였고 결국 크라이엔진의 내부까지 모두 뜯어서 새로 코드를 쓰게된다. 그리고 그것 때문에 모든것이 느려지게 됐다.다만 굳이 크라이엔진이 아닌 언리얼을 비롯한 다른 게임엔진을 사용했더라도 똑같은 문제에 봉착했을거라고 한다.
크라이엔진은 개발이 중단된 엔진이고 필요한 기능들이 없어서 스타 엔진으로 자체 마개조를 해야했었다.
초창기 50만 달러가 아닌 1억 달러가 모인 자금은 문제가 안됐는데 기술력을 가진 인력이 없다는게 가장 큰 문제. 상술했듯 초창기 스타 시티즌 개발진은 크라이엔진의 본질도 잘 파악하지 못했던 상황 그런데 여기서 대박이 터지게된다.
바로 크라이텍의 재정위기로 2014년 후반기부터 베테랑 개발자들이 우순죽순 퇴사하기 시작한것 무려 18개월간 크라이엔진을 다룰 줄 아는 직원을 찾아다녔는데 갑자기 크라이텍 출신의 10년 넘은 경력의 개발자들을 고용할 수 있게 된것이다. CIG에게는 엄청난 횡재였고 독일 프랑크푸르트 스튜디오[50]에 스카웃, 기술자들을 대량 고용하게됐다.
그들은 엔진을 속속들 알고 있었고 결국 진전이 없었던 엔진 개발이 시작되어 그 뒤 거의 모든것을 갈아엎은 스타 엔진이 개발된다.
현재 스타 엔진에 있는 시간의 따른 오브젝트 노화 기능이나 도시 절차적 생성의 경우 본래 크라이엔진으로 먼저 시연된 기술이라고 한다. 실제로도 크라이엔진에 프로토타입은 탑재되어있기도 하다. 다만 스타 엔진은 프로토 타입이 아닌 완전한 신기술로 개발되어 적용됐는데 이는 당시 개발을 주도했던 기술 개발 감독이 CIG에 이직해서 기술력이 넘어간것이라고 한다.
크라이엔진 때문에 18개월간 개발 진전이 없는 위기를 맞았지만 도리어 크라이텍이 먼저 무너지는 바람에 기적과도 같은 개발진전과 기술력을 흡수했으니 전화위복이라고 할만하다.
7.2. 버그
완성된 엔진도 버그가 있는데 완성 안된 스타 엔진은 버그가 많다. 물론 만드는 사람들이 엔진을 전문으로 개발했던 사람들이니 곧바로 고쳐지지만 추가될 사항이 많은 만큼 적당한 선에서만 고치고 있는 추세다.물론 베데스다가 엘더스크롤 3: 모로윈드이나 엘더스크롤 5: 스카이림으로 보여주었던 수준은 아니더라도, 자잘한 버그가 너무 많다. 개발사에서 완성 후 빠른 픽스를 기대할 수 밖에 없다.
7.3. PC에만 맞춰진 개발 환경
상술했듯 다른 플랫폼은 고려되지 않은 신기술이 들어간 엔진이라 개발이 불가능하다. 차후 다른 플랫폼을 지원하기 위해선 꽤나 고칠 사항이 많다.7.4. 높은 사양
스타 엔진은 컴퓨터의 자원을 잘 이용하고 뽑아먹어 대규모 스케일을 구현하지만 그만큼 사양이 높다. 개발 게임인 스타 시티즌이 기본적으로 RAM 16GB는 기본 그래픽 카드도 최소 4GB VRAM이 있어줘야 어느정도 안정적으로 돌아간다. 다만 2019년 기준으로 개발사가 최적화 기술도 적용하고 있기 때문에 차후에는 컴퓨터의 발전과 최적화로 사양이 하향 평준화될 가능성이 높다.7.5. 팝업/팝인 현상
신기술인 OCS는 로드/언로드의 관련된 로딩 기술이지만 아직 개발된지 얼마 안된 신기술이기 때문에 팝업/팝인 현상이 두드러지게 보이고 먼곳에 로우 텍스쳐와 하이 퀄리티 텍스쳐 전환이 부자연스럽게 이루어진다.현재 이 문제는 행성v4에서 개선되어 알아차릴 수 없게 되었다.
8. 기타
크라이엔진을 다룰 줄 아는 유저가 개발사에 취업 문의를 넣었는데 '크라이엔진의 흔적조차 없어져서 크라이엔진을 다룰 수 있다 없다는 상관없다. 어차피 들어오면 처음부터 배워야한다'(...)라는 답변을 얻었다고 한다.상술 했듯 크라이텍이 이 엔진과 럼버야드 엔진에 관해서 소송을 걸었다. 소송을 건 크라이텍은 크라이 엔진 버그픽스 소스코드 공유를 이유로 스타 엔진의 소스코드 공유를 하라고 주장, 계약과 다르게 럼버야드 엔진으로 교체했다는점, 자신들은 스타 시티즌의 개발만을 허용했지 싱글인 스쿼드론42는 허락하지 않았는데 개발했다고 주장했다.
이에 관한 CIG의 반론은 크라이텍의 지원은 이미 2015년 이전에 끊겼기 때문에[51][52] 스타 엔진의 소스코드는 독자적으로 개발, 버그 픽스했고 해당 계약은 크라이텍이 기술지원을 해준다는 전제 조건 하에 이루어지는것이기 때문에 엔진의 코드를 공유할 순 없다는 입장을 표명했다. 이후 법원이 CIG의 손을 들어줘서 스타 엔진의 소스코드는 법적으로 완전히 CIG로 넘어왔다.
엔진의 교체도 비슷한 연유로 법원이 판단했을때 편협적인 계약 내용 해석인지라 CIG가 승소했다.
스쿼드론 42의 경우 럼버야드로 넘어와서 개발을 했기 때문에 별 문제 없이 승소했다. 이미 법원이 스타 엔진의 소스코드는 CIG것이라고 인정했기 때문에 스쿼드론42의 소스코드 역시 인정한것이나 다름없어서 럼버야드 이전에 개발한 에셋도 문제없이 승소했다.
이제 배상금액 소송만이 남았는데 이마저도 크라이텍이 진다면 CIG에게 배상할 금액이 최소 2백만달러라고 한다.
해외와 국내 유저들의 크라이텍의 관한 반응은 당연히 안좋다. 기적같은 투자지원으로 살아나서 하는게 과거 자신들의 동업자였던 CIG를 너 고소하는것이니... 유저들의 시점에서는 현재 승승장구하고 있는 CIG를 물고 늘어져서 돈을 받고 노력없이 소스코드도 취하며 더불어 못 도망가게 만들어 계속 동업자로 남게 만들려고 하는 인간 말종 이였다.
크라이텍 입장에서는 조금 배아플만하기도 한것이 임금체불로 나가게된 크라이엔진의 핵심 개발자들 대부분이 회사 바로 근처에 있던 CIG 독일 스튜디오에
많은 개발자가 스타 시티즌이 불가능한 이유중 하나로 뽑았었다 현재는 별말 없지만 당시엔 말도 안될 정도의 자금이 들어가는 신 엔진 개발에 회의적인 업계 개발자들이 많았다. 또 그 신 엔진이 이때까지 없던 기능들을 개발해야하니 당연한 반응.
월드를 이동할때마다 청크당 랜덤 생성하는 마인크래프트와 텅빈 우주 공간을 맵으로 사용하는 게임들이 제외하면 스타 엔진으로 만든 스타 시티즌은 가장 큰 맵을 가지고 있는데 수많은 행성중 고작 하나인 허스튼이 표면적 4,188,790,204km2이여서 기네스북에 올라간 엘더스크롤 2: 대거폴의 맵 크기인 161,600km2를 뛰어 넘는다.[53] 앞으로 수많은 행성들까지 합하면 아득해질 정도로 어마어마한 맵 크기이다.
이 엔진의 구조 때문에 생긴 해프닝이 있는데 2019년 3분기 업데이트인 3.7버전에서 자체적인 미니 FPS 게임 '스타 마린'의 신규맵인 '굿 닥터'라는 맵은 2016년 시티즌콘에서 데모 시연했던 행성의 어느 연구시설이라는 설정의 테마 맵이다. 허나 이 맵에서 이상한점을 어느 유저가 발견하게 되는데 통상적인 FPS 게임들은 맵 밖에 있는 배경들은 텍스쳐로 만들어진 미구역 지역이지만[54]굿 닥터맵은 뚫기 버그로 밖으로 나간다면 지형과 자연 구조물들이 모두 구현돼있다는걸 볼 수 있었다. 심지어 지평선 넘어로 끝없이 맵이 이어져있었는데 이에 개발자의 답변으로는
저희가 개발한 스타 엔진은 대규모 월드 제작에 알맞게 개발됐습니다. 그래서 그냥 작은맵 하나를 만들어서 넣는것보다 행성하나를 구현하고 그 표면에 FPS용 맵을 배치하는것이 성능이 더 잘나왔기 때문에 이런방식을 택하게 됐습니다. 밖은 자연구조물 이외에 다른것들은 없습니다만 하나의 행성으로 모두 구현되어 있습니다.
즉 스타 엔진 자체가 작은맵을 염두에 두고 개발되지 않았고 대규모 월드의 관한 제작과 최적화 기술을 접목하다보니 상식적으로 작고 필요없는 부분은 텍스쳐로 대체하는 방식이 더 성능면에서 월등해야 하지만 스타 엔진은 엔진 구조 때문에 그 반대가 된것이다.
간혹 이 엔진의 특이한 역사 때문에 개발진이 3번이나 엔진을 교체했다고 오해하는 경우가 있는데 상술됐듯 이 엔진 개발로 개발기간이 늘어난건 맞지만 개발진들이 엔진을 자주 바꾸면서 질질끈다는 세간의 인식은 잘못됐다. 보통 크라이엔진에서 스타 엔진으로 교체하고 럼버야드 엔진으로 교체했다고들 오해하지만 사실상 하나의 엔진으로 엔진을 교체한것이 아니라 엔진을 개발하고 있는것 이런 오해 때문에 개발자들이 무능하거나 아니면 개발기간을 더 늘리려는 속셈이라고 말하는 커뮤니티 유저들이 종종 보인다.
[1]
정식 명칭이 아닌 내부에서 부르는 비공식 명칭.
데시마 엔진이 코지마 프로덕션과 협업하기 전에는 이름이 없고 단순히 킬존: 섀도 폴 엔진이라 불렸던것과 비슷하다.
[2]
스타 시티즌 3.3 버전 이후로 Lua 코드는 모두
C++으로 교체됐다.
[3]
개발사 독점.
[4]
스타 시티즌은 PC독점 게임이다. 엔진 자체가 PC의 강력한 성능을 잘 활용하여 세계를 구축하는데 설계됐다.
[5]
행성v4 버전으로 2023년 시티즌콘에서 공개된 스타 엔진 롱테이크 영상이다. 편집이 하나 없는 롱테이크씬로 2개의 행성계를 넘나들며 스타 엔진 오픈월드의 엄청난 스케일을 보여준다.
[6]
CIG와 크라이텍의 엔진 관련 재판에서 이와 관련된 항목도 나온다. 크라이텍 주장으로는 CIG에게 기술지원을 하는 대신 엔진을 개조한 소스코드를 크라이텍에 공유하는것이 조건 이였는데 이를 지키지 않았다는것 하지만 법원은 CIG의 편을 들었다.
[7]
많은 사람들이 착각하는 항목으로 럼버야드로 변경했다고 기존에 개발하던 스타 엔진을 버린것이 아니다. 애초에 럼버야드에는 스타시티즌을 구현하기 위한 기술이 없고 CIG는 아마존의 강력한 서버를 사용하기 위해서 두 엔진을 통합해서 사용하는것이다.
[8]
디버그를 위한 콘솔 명령어 정도
[9]
그리고 자신들이 새로 만든 이 코드만 사용했기에 크라이텍과의 소송에서 승리하기도 했다.
[10]
행성툴을 비롯하여 스타 엔진에 적용된 기술이 들어간 모딩툴이라면 활용도가 무궁무진하다.
[11]
우주를 구현하기 위한 대규모 기술들이 접목되었다보니 일부 유저의 경우 스타 시티즌이 망하더라도 만들어질 스타 엔진 때문에 가치가 있다고 말할 정도이다. 그만큼 대규모 게임을 만드는데 특화됐으니 기대치가 높은것.
[12]
스타 시티즌의 연도는 2940년도로 현실의 년도 일의 자리 숫자만 붙이면 된다. 즉 스타시티즌에서 2947년이면 현실 년도로 2017년이다.
[13]
럼버야드 계약 사항의 관한 내용중에 소스코드 관련 내용이 많다.
[14]
Hurston이라는 행성이다. Stanton 행성계의 1번째 행성이며 인게임에서도 처음 등장한 행성 OCS기술 없이 구현하면 메모리가 32GB여도 부족하다고 한다.
[15]
로드맵에서 언급.
[16]
개발자 크리스 로버츠는 이런 발전이 가능한 이유가 PC의 놀라운 발전속도 덕분이라고 한다.
[17]
아직 티어0~1(낮은 티어가 더 좋다.)인 주요 인물들이 게임에 등장하지는 않았지만 컷신이 아닌데도 플레이어와 지나가는 평범한 NPC 그래픽을 보면 매우 뛰어나다.
[18]
배우는
질리언 앤더슨.
[19]
현세대도 게임의 크기를 제한하고 OCS같은 기술을 사용하지 않거나 개량하는 방식으로 사용은 할 순 있겠으나 스타 엔진의 가장 큰 장점인 대규모 월드를 버리는 꼴이라 차라리
언리얼 엔진이나 플스의 최적화된
데시마 엔진을 선택하는것이 좋다.애초에 상용엔진도 아니고...
[20]
소스코드같은 세부사항은 비공개.
[21]
보통 다른 크라우드 펀딩 게임들도 이렇게 상세하게 알려주지는 않고 근황 정도 보고하지만 스타 시티즌의 경우 역대급 크라우드 펀딩 개발이기 때문에 주, 월 단위로 상세한 공개가 이루어지고 QA도 많이 이루어지는 특이한 사례이기 때문이다.
[22]
현재는 DirectX 11을 사용 중이다.
[23]
둘다 로우레벨 API이다.
[24]
그만큼 큰 맵을 만들지 않기 때문에 불필요하다.
[25]
일반적인 게임들의 탈 것은 캐릭터 교체같은 눈속임이라서 내부를 보질 못한다. 대표적인 예가 배틀필드나 콜오브듀티 시리즈의 탈 것들이 이런식에 해당된다. 반면에 아르마나 배틀그라운드 같은 게임에서는 눈속임은 아니지만 맵의 개념이 아니기 때문에 공중에서 점프하면 관성력이 없어서 캐릭터가 탈 것에서 이탈해버리게 된다. 반면에 스타시티즌은 맵안에 맵이 이동하는 형태여서 외부 맵의 영향을 안받으므로 퀀텀이동 같은 초광속 이동시에도 내부에서 뛰거나 점프하거나 매달릴 수 있다.
[26]
이 기술로 스타시티즌은
스페이스 오페라물 성향이 더 강해졌다.
[27]
어찌보면 물리법칙을 무시하는 묘사인데, 뉴 베비지의 초고속 트램 같은 물건을 보면 분명 수G의 가속도로 움직이는 것으로 보이는데도 불구하고 캐릭터가 미동도 않고 서 있을 수 있는 것으로 보아 스타 시티즌 세계관은 인공 중력이나 관성 상쇄장치(Inertia Dampener) 같은 SF적인 기술이 흔하게 사용되고 있다는 설정일 수도 있다
[28]
설정상 시안 종족의 중력제어 기술이 도입되면서 모든 함선들에는 기본적으로 인공중력 생성장치가 사용되고 있다는 설정이다
[29]
크라이엔진으로 만들어진 '크라이시스2'는 1인칭 3인칭의 애니메이션이 1200개였다고 하는데 스타 엔진의 경우 이것을 50까지 줄여버렸다.
[30]
또한 크라이시스2는 이렇게 많은 애니메이션이 1인칭과 3인칭이 따로 놀기 때문에 시점차이로 인한 버그들도 많았다고 한다.
[31]
예를 들면 바람이 불때 산의 나무들이 바람의 방향에 맞추어 흔들리고 플레이어는 방향에 따라 앞으로 가기 어려워진다. 또한 플레이어의 체온도 낮아서 생존 가능성이 떨어진다.
[32]
다른 게임들도 가지고 있는 기후 기술이지만 스타 엔진은 이것을 행성 스케일로 구현한다.
[33]
색감의 경우 바로 자동으로 설정되는것은 아니고 행성을 아티스트가 직접 만드는 스타 엔진 특성상 아티스트가 작업하는 도중에 추천하는 색같은걸로 툴에 나오는듯 하다. 침식과 풍화는 자동으로 진행되는듯 하다.
[34]
천이 바람의 방향으로 날린다던가
[35]
서버 OCS도 필요한데다 절차적 도로 기술이 완성이 안됐기 때문에 의미가 없다.
[36]
현 스타시티즌 알파는 IMO형식으로 제공되고 있다.
[37]
스타 시티즌 연례행사.
[38]
여담으로 점프 포인트를 최초로 통과한 유저는 Mr.
Trash(...)라는 닉네임을 가진 유저라고 한다.
[39]
개발사인 CIG에서 발행하는 월간 디지털 잡지이다. 스타 시티즌과 싱글 플레이인 스쿼드론 42의 추가 정보를 제공하는 잡지이다.
[40]
RPG의 레벨을 말하는것이 아닌 게임 엔진들이 사용하는 오브젝트들의 목록이다.
[41]
행성들이 모두 복붙이거나 아예 행성 자체에 착륙이 불가능했다.
[42]
Object Container Streaming
[43]
전투기 도그파이팅 게임
[44]
라운드 형식의 FPS 게임
[45]
맵의 오브젝트는 물론 가까이 있는 플레이어같은 변수까지
[46]
행성이 추가됨으로써 늘어나는 월드 좌표와 행성 한개를 메모리에 다 넣을 수 없기 때문이다. 행성 하나당 16GB이상의 메모리를 요구한다고 한다.
[47]
크라이엔진에 탑재된 Gen11을 개선하며 자체제작중인 Gen12 API 를 통해 Vulkan을 조금씩 이식하고 있다. 아직은 DirectX 11을 유지 중이다.
[48]
개발자의 말의 의하면 토네이도를 맞은 공구상점에서 쓸만한 공구를 찾는 느낌이였다고 한다.
[49]
크리스 왈 만약 가능했던 엔진이 있었다면 당장 그것을 사용했겠지만 없었다.
[50]
크라이텍 본사도 위치한 도시.
[51]
크라이텍은 재정위기로 2016년까지 직원들의 월급이 밀려있었고 스튜디오도 몇군데 폐쇄했기 때문에 CIG에게 기술 지원을 못했다.
[52]
초기에는 했긴 했다. 아레나 커맨더의 엔진 버그를 고칠때 크라이텍 직원이 와서 해결했다는 일화가 있다. 배가 물 속에 있듯 굼뜬 상태가 되는 버그 였는데 크라이엔진은 일정 높이 이하는 물로 인식해서 그랬다고. 그리고 버그를 해결한 크라이텍 직원도 크라이텍 임금체불 때문에 2015년부터 CIG로 이직했다.
[53]
노맨즈 스카이같은 게임도 있지만 노맨즈 스카이와 엘리트 데인저러스 같은 게임은 랜덤으로 생성한 맵이여서 공식적으로 정확한 크기가 없다. 반면 스타 시티즌은 아티스트가 직접 상세한 설정을 기반으로 제작한 행성이기 때문에 행성부터 왜소행성까지 상세한 크기가 알려져있다.
[54]
보통은 최적화를 위해 제대로 만들지 않고 눈속임용으로 대충 택스쳐만 만든다.