바닥 및 유리 머티리얼은 화면 공간 외부의 오브젝트를 반사합니다. 유리창에 비춰진 파란색 홀로그래픽 이미지는 실제로는 우주비행사 뒤의 방 안에 있습니다.
마찬가지로, RTX는 섀도를 단지 흉내내는 수준으로 렌더하지 않으며 마치 실제 환경에서 작동하는 것처럼 사실적으로 렌더링합니다. 그 결과 게임의 사실성과 신뢰성은 몇 단계는 더 높아집니다.
레이 트레이싱 구현은 잠재적인 성능 면에서도 눈여겨 볼 필요가 있습니다. 현재의 하드웨어만으로도 놀라운 효과가 가능하지만 이제 겨우 1세대 레이 트레이싱 하드웨어일 뿐입니다. 즉, 현재로서는 모든 라이트를 사용한 레이 트레이스 섀도와 같은 경이로운 기능은 실현하기 힘듭니다. 라이팅과 관련해 미묘한 느낌을 유지하기 위해 노력했으며, 레이 트레이스 섀도를 통해 실질적으로 크게 개선되는 몇 가지 스포트라이트에 집중했습니다. 한 가지 명심할 점은, 라이트에서 어떤 소스 반경, 소스 길이 또는 소프트 소스 반경을 사용하더라도 라이트는 단순히 한 포인트일 때보다 더 무거워진다는 사실입니다. 단일 포인트 라이트로 섀도를 드리울 경우 렌더러에서 섀도의 노이즈를 제거할 필요가 없고 프레임의 렌더링 시간도 짧아집니다. 아쉽게도, 레이 트레이스 섀도는 소스가 단순히 단일 포인트가 아니고 라이트를 발산하는 일정 영역일 때 가장 아름답습니다. 섀도 길이가 증가함에 따라 에어리어 라이트에 의해 부드러운 정도는 점점 더 높아집니다. 레이 트레이스 섀도가 더욱 돋보이고 사실적으로 보일 수 있는 이유는 바로 이 때문이기도 합니다. 또한, 디렉셔널 라이트로 레이 트레이스 섀도를 드리우기로 결정했습니다. 결국, 사실감이 훨씬 더 좋아졌고 이는 현재로서 레이 트레이스 섀도를 가장 적절하게 응용하는 방법으로 여겨집니다. 이 경우 모든 오브젝트는 선명한 접촉 섀도를 갖게 되고 섀도를 드리우는 오브젝트에서 멀어질수록 더 부드러워집니다.
라디오의 버튼들에 있는 개별적 섀도를 볼 수 있습니다.
개발자를 위한 최신 툴인 리얼타임 레이 트레이싱은 다른 모든 툴과 마찬가지로 그 결과물뿐만 아니라 현실적인 사용 가능성도 매우 중요한 요소입니다. 특히, 키오크엔 같은 소규모 인디 개발사에는 현실적인 이유 및 제한된 리소스로 인해 시간 효율성이 뛰어난 툴과 접근법이 필요합니다. RTX가 정식 출시되었을 때 '딜리버 어스 더 문'은 최종 정비 단계가 거의 다 끝나가고 있었습니다. 게임의 사실적인 그래픽은 주요 경쟁 포인트였으므로 리얼타임 레이 트레이싱은 반드시 필요했습니다. 하지만 이 기술을 구현한다는 것은 곧 작업을 거슬러 올라가 판도라의 상자를 여는 것과 마찬가지였습니다. 위험성 및 실행가능성에 대한 평가 결과는 언리얼 엔진과의 통합 덕분에 대부분 긍정적인 것으로 나타났습니다. 그리고 이는 결정적인 요인이었습니다.
RTX는 유리창에 비친 우주비행사의 리플렉션과 손잡이의 왼쪽으로 향하는 섀도로 나타나고 있습니다.
게임 제작이 실질적으로 끝난 상태에서 RTX를 구현하려면 일부 머티리얼과 라이팅 구성을 조정해야 합니다. '딜리버 어스 더 문'의 경우 비주얼 효과가 가장 큰 리플렉션에 초점을 맞추었습니다.
반투명 리플렉션을 구현하기 위해 유리 마스터 머티리얼을 약간 수정해야 했습니다. 가장 큰 수정 사항은 러프니스와 디테일한 노멀을 줄이는 부분에서 이루어집니다. 이전까지는 작은 스페클을 다수 포함한 유리를 만들어 단단하면서도 낡은 듯한 느낌을 주었으나, 이는 레이 트레이싱으로 렌더링되면 다소 이질적으로 보였습니다. 이에 러프니스와 노멀을 조정해서 원하는 결과를 표현했습니다. 조정 전과 후의 결과를 아래에서 확인할 수 있습니다. 외관 상의 개선은 분명했지만 성능을 더 높여야 했습니다. 더 정밀하면서도 강렬히 대비되는 노멀을 구현하려면 레이 트레이스는 더 많이 발산되어야 합니다. 즉, 세련된 이미지를 얻기 위해 더 많은 레이가 필요합니다. 이러한 노멀과 함께 러프니스는 반투명 머티리얼이 성능에 미치는 영향을 좌우합니다.
창문 셰이더의 디테일한 노멀이 레이 트레이스 리플렉션의 노이즈를 늘리고 있습니다.
노멀을 단순화할 경우 선명한 반투명 리플렉션을 구현하고 성능을 높일 수 있습니다.
주의를 기울였던 또 다른 부분은 리프랙션 레이의 양입니다. 이는 레이가 반투명 머티리얼을 통해 이동할 수 있는 시간의 양이기도 합니다. 이 게임에는 서로 겹쳐질 수 있는 많은 유리창과 파티클이 있었으므로 3~4시간이 가장 적합하다고 생각했습니다. 하지만 이 값은 성능을 저하시킬 수 있었으므로 1시간으로 설정해야 했습니다. 그런 다음, NVIDIA의 언리얼 엔진 4.23 RTX의 최신 기술을 통해 하이브리드 반투명을 활용할 수 있었습니다. 이 기능을 사용하면 레이 트레이싱이 필요 없는 작은 더스트 파티클과 같은 오브젝트를 일반 래스터라이제이션을 통해 렌더링할 수 있습니다. 단점은 이러한 오브젝트는 레이 트레이스 리플렉션에는 나타나지 않는다는 것입니다.
모든 불투명한 머티리얼 전반에서 성능을 개선하기 위해 몇몇 작업도 수행해야 했습니다. 반투명 머티리얼의 경우와 마찬가지로, 노멀 맵의 과다한 디테일과 비교적 높은 러프니스 값은 퍼포먼스에 부정적 영향을 미칩니다. 가장 중요한 머티리얼 노드는 RayTracingQualitySwitch입니다. 이 노드를 통해 레이 트레이스 리플렉션에서 얼마나 주기적으로 머티리얼을 렌더링할지 정할 수 있습니다. 저희는 레이 트레이스 리플렉션에서 렌더링할 때 노멀을 사용하지 않기로 정했습니다. 이 밖에도, 텍스처 샘플러에서 밉 바이어스(mip bias)를 활용하여 저해상도 밉을 사용함으로써 필요한 VRAM 대역폭을 낮췄습니다.
언리얼 엔진 4.23부터 레이 트레이스 리플렉션은 마지막 리플렉션 바운스 이후 리플렉션 구체 캡처로 다시 전환할 수도 있습니다. 그 이전에는 검정색이 너무 많이 보이지 않는 세련된 결과를 얻으려면 최소한 3개 이상의 바운스를 사용해야만 했습니다. 이로써 최대 리플렉션 바운스 수를 1로 설정하여 트레이스되지 않은 리플렉션으로 인한 큰 검정색 블록은 사라졌으며 성능도 대폭 높일 수 있었습니다.
최신 기술을 구현하는 작업은 안정성 문제와 알려지지 않은 기타 문제로 인해 많은 시간이 걸릴 수도 있습니다. 따라서 위험에 대비하고 최악의 시나리오에 대처할 수 있어야 합니다. 하지만, 저희는 얼리 액세스를 진행하면서도 비교적 수월하게 구현 프로세스를 거칠 수 있었습니다. 이는 '딜리버 어스 더 문'의 제한된 일정을 고려할 때 매우 중요한 장점이었으며, 결국 RTX에 있어서 획기적인 전환점이 되었습니다. 언리얼 엔진 덕분에 레이 트레이싱은 막대한 예산을 운용할 수 있는 대기업의 일부 그룹 외에 제한된 예산 및 인력을 보유한 소규모 팀에게도 그 기회가 열리고 있습니다.
결론적으로, 우리는 레이 트레이싱을 사용하여 '딜리버 어스 더 문'의 사실적인 그래픽을 뒷받침하고 있습니다. 자연스럽게 작동하는 섀도와 리플렉션을 통해 한 차원 더 향상되는 사실적인 스타일은 플레이어들의 열렬한 반응을 이끌어냅니다. 한편으로, 이 기술은 그 자체로 사실적인 그래픽을 추구하지 않는 게임에도 변함없는 이점을 제공합니다. 효율성 및 사용 편의성이 뛰어난 레이 트레이싱을 활용하면 사실적이거나, 스타일을 중시하거나, 만화 스타일을 노리는 모든 게임에서 고퀄리티 라이팅 시나리오를 구성할 수 있습니다. 게다가, 모든 요소를 하나하나 다 구울 필요가 없으므로 여유 시간을 확보해 다른 작업에 치중할 수 있습니다. 더 적은 시간을 투자해 더 나은 결과를 얻을 수 있다면 모두가 만족할 결과를 얻을 수 있습니다. 놀라운 결과를 이끌어내는 이 기술은 앞으로 등장할 많은 게임을 위한 기반을 마련할 수 있습니다. 키오크엔 인터랙티브 또한 다음 게임에도 기꺼이 이 기술을 활용할 것입니다.