게임 그래픽이 애니메이션 영화만큼 아름답 지 않은 이유는 무엇입니까?


60

Tomb Raider가 사전 렌더링 한 예고편을 본 기억이 있으며, 그 그래픽이 게임 자체에 포함될 수 있기를 바랍니다.

예고편과 실제 게임 사이에 왜 그렇게 큰 차이가 있습니까? 게임이 완전히 다른 개념이고 파이프 라인이 다르고 다양한 종류의 플레이어 상호 작용을 거쳐야한다는 것을 이해합니다. 애니메이션 영화에 비해 게임을 렌더링하기가 어려운 게임에 대해 알고 싶습니다.

지금까지 게임과 애니메이션 영화 제작은 3D 모델 제작, 렌더링 (게임 내에서만 가능)과 같은 몇 가지 기본 작업을 공유한다는 것을 알고 있습니다. 애니메이션 영화는 오랫동안 렌더링되며 사전 렌더링 된 장면 만 볼 수 있습니다. 그게 내가 아는 전부이므로 그 관점에서 대답하기를 바랍니다!

몇 시간과 몇 시간 동안 애니메이션 영화를 렌더링하는 것은 어떻습니까? 게임 내 라이브 렌더링은 덜 일반적입니다 (일반적인 관점에서)?


1
나는 받아 들여진 대답이 실제로 당신의 질문의 요점을 어떻게 충족시키는 지 알지 못합니다. 여기에서 당신이 이해 한 것에 대한 요약으로 여기에 의견을 남길 수 있습니까? 즉, 어떤 뉴스가 당신에게 전해졌습니까?
Bogdan Alexandru

4
혼란스러운 점이 확실하지 않습니다. 문제는 제목입니다. 수락 된 게시물이 해당 질문에 답변합니다.
jhocking

2
실제로 나는 대답에서 80 %를 이해했습니다. 나머지는 20 %를 차지했으며 특히 @Vladimir의 답변에서 많은 것을 배웠습니다 (아래 참조). 답변 중 일부는 내가 생각하지 않은 것, 예를 들어 렌더링 후 세부 사항 추가에 대해서도 논의했습니다. 그리고 당신에게 질문에 대답하기 위해, 나는 그것이 더 깊은 이해 수준을 가져 왔다고 생각하기 때문에 대답을 선택했습니다 (그가 지적한 것뿐만 아니라 그 뒤에 작동하는 알고리즘 / 개념). 그리고 그때까지 나는 이것을 읽었을 때, 다른 답변들도 훌륭했습니다! 어느 것이 가장 좋은지를 선택하기는 어려웠지만 사람들도 그 것을 좋아하는 것 같습니다! 나는 그들을 모두 진드기 것입니다!
cowboysaif

아마도 게임 개발자는 효과에 5 만 달러 이상을 지출하는 데 관심이 없기 때문에 영화 제작자들이 요즘 일상적으로하는 일입니다.
Pieter Geerkens

답변:


109

이미 중심점 중 하나 인 Time을 언급했습니다 .

높은 충실도 애니메이션을 렌더링 뒤에 그 과정에서 여러 다른 접근 방법과 알고리즘 (모든 일반적 용어에서 함께 사용되는 "글로벌 조명" 으로) 광선 추적이 가장 흔한 것 중 하나 인 (다른 예를 들면 포함 라디오 시티주변 폐색 ).

Ray-Tracing은 장면을 통과하는 (보통 높은) 수의 광선을 시뮬레이션하고 다른 재질로 물체에 부딪 칠 때 경로, 반사 및 굴절을 계산합니다. 그에 따라 다른 재료는 다른 물리적 특성을 가지므로 광선에 대한 특정 반응이 발생합니다 (예를 들어, 하나의 물체에서 반사되는 빛의 양은 광택있는 물체에 비해 반짝이는 물체의 경우 더 높습니다).

또 다른 요점은 물리학입니다 . 물리적으로 올바른 방법으로 수천 개의 모발 변형을 시뮬레이트하는 것은 시간이 많이 걸립니다. 이것이 오래된 게임에서 머리카락이 종종 매우 거친 메쉬로 근사되어 머리카락을 인상하기 위해 질감을 입히는 것입니다.

또한 메모리 및 대역폭을 고려해야 합니다. 장면에서 오브젝트에 적용된 텍스처의 품질이 높을수록 게임에서로드하고 사용하는 데 더 많은 메모리가 필요합니다. 그러나 시스템에는 데이터를 보유하기에 충분한 메모리가 있어야 할뿐만 아니라이 데이터도 전송되어 사용 가능한 대역폭을 소모해야합니다. 메모리와 대역폭이 제한되어 있으므로 달성 할 수있는 최대 값이 있습니다.

게임은 종종 근거리 오브젝트에 고해상도 텍스처 만 사용하여 약간의 부정 행위 를하고, 원거리 오브젝트에 대해서는 저해상도 이미지를 사용 하므로 (용어 : MipMapping ) 적은 텍셀을 가져와야하기 때문에 필요한 대역폭이 줄어들어 결과적으로 성능이 향상됩니다. ( Apple의 OpenGLES 프로그래밍 가이드에서 MipMapping관한 섹션을 참조하십시오 ).

마찬가지로 게임은 멀리 떨어져있는 물체의 상세도가 떨어질 때 (먼저 LoD = Level of Detail ) 거리에 따라 물체에 다른 메쉬를 사용하는 경우가 많습니다 .

결론 : 게임 및 시뮬레이션과 같은 실시간 그래픽에서이 상세하고 복잡한 렌더링 프로세스는 물론 유체 / 매끄러운 장면을 생성하는 데에는 효과가 없습니다. 사람의 눈에 유동적 인 애니메이션 / 움직임 효과를 얻으려면 초당 최소 20 개의 렌더링 된 프레임이 필요합니다. 반면에 애니메이션 동영상에서 단일 프레임 (!)을 렌더링하는 것은 레이트 레이싱에 사용 된 광선의 수 또는 주변의 샘플 수와 같은 많은 요인에 따라 몇 시간에서 며칠까지 쉽게 걸릴 수 있습니다. 폐색 ( 16 개 샘플과 256 개 샘플의 스크린 샷 은이 Pixar 1 페이지 / Pixar 2 페이지 참조 ) 및 원하는 영화 해상도 (더 많은 픽셀 = 계산할 추가 정보). 이 기사 도 참조 하십시오Pixar의 Monsters University 애니메이션 영화 배후 프로세스에 대해 흥미로운 통찰력을 제공하고 프레임 당 29 시간의 렌더링 시간을 언급합니다.

일반적으로, 달성되는 충실도 / 현실성이 높을수록 더 많은 반복 / 반송 / 샘플이 필요하며, 그에 따라 더 많은 리소스 (시간 및 / 또는 계산 능력 / 메모리)가 필요합니다. 차이를 시각화하려면이 예제의 굴절 계산에 대한 바운스 수를 기반으로 결과 렌더링을 참조하십시오. Keyshot의 Diamond Bounces

물론 실시간 응용 프로그램의 품질은 다음 두 가지 이유로 항상 증가합니다.

  1. 강력한 하드웨어 : (게임) 컴퓨터가 향상되면 (= 더 많은 [병렬] 컴퓨팅 성능, 컴퓨터 구성 요소 간 더 높은 데이터 전송, 더 빠른 메모리 등), 시간이 많이 걸리는 계산이 실제로 이루어지기 때문에 시각적 충실도도 향상됩니다. 실시간 시스템에서 실현 가능
  2. 레이트 레이싱없이보다 사실적인 효과를 만들 수있는보다 영리한 방법 / 수식이 개발 및 구현되었습니다. 여기에는 종종 근사치와 때로는 사전 계산 된 데이터가 포함됩니다. 몇 가지 예 :


4
@cowboysaif 아니요 "있는 그대로"GPU에서 수행 할 수 없습니다. 전문화 된 HW를 받아야합니다. 그러나 CUDA 또는 유사한 기술을 사용하여 실시간 레이트 레이싱을 시도하고 있습니다.
wondra

4
전문적인 품질의 영화를 제작할 때 오프라인 렌더링에 사용되는 레이트 레이싱 이외의 많은 기술이 있습니다. 그러나 당신이 말했듯이, 그들은 실시간 렌더링에 실용적이지 않은 비싼 렌더링, 조명 및 음영 기술을 사용합니다.
MrCranky

40
이 답변은 왜 사전 렌더링 된 애니메이션이 더 많은 시간이 걸리지 만 실제로 스케일에 영향을주지 않는지 설명합니다. 차이가 크다 ! 게임은 1/30 초 이내에 프레임을 렌더링 해야하지만 영화는 각 프레임을 렌더링하는 데 며칠 이 걸립니다 .
jhocking

9
"Days"는 확실히 타임 스케일의 최고급이지만 네 영화는 때때로 단일 프레임을 렌더링하는 데 1 일 이상이 걸립니다 (예 : venturebeat.com/2013/04/24/… 참조 ) 심지어 평균 렌더링 시간 프레임 당 반나절 정도이며 게임에서 렌더링하는 것보다 여전히 길다. 전체 영화를 렌더링하는 데 10 년이 걸리지 않는 이유는 렌더링 팜이 있기 때문입니다. 수백 대의 기계가 동시에 렌더링됩니다.
jhocking

7
몇 가지 사실 : 레이트 레이싱은 어디에서나 사용되며 틈새 기술은 아닙니다. VRay는 CPU 전용입니다. VRayRT는 GPU 전용입니다. 장면은 일반적으로 많은 GB의 RAM을 사용하고 GPU에 맞지 않기 때문에 GPU는 프로덕션에 적합하지 않습니다 (그러나 때로는 도움이 됨). 우리 고유의 샷은 하이 엔드 CPU에서 1-2 시간 / 프레임이 걸리며 그리 오래 걸리지 않습니다. JackAidley는 완전히 잘못되었습니다.
Calvin1602

44

타임 팩터 이외에도 영화에서 아티스트는 시청자가 보거나 보지 않을 것을 완벽하게 제어 할 수 있습니다.

일반적인 영화 장면에서 카메라는 천장을 가리 키거나 방의 어두운 구석을 가리거나 누군가의 발목을 겨냥하는 데 많은 시간을 소비하지 않으므로 해당 요소의 다각형 및 텍스처링 예산이 상당히 낮아집니다.

전체 장면이 하나의 유리한 지점에서 발생하면 가상 세트 (실제 필름 세트와 같은)는 카메라 뒤에있는 부분을 포함 할 필요가 없습니다. 대부분의 게임에서 플레이어는 언제 어디서나 자유롭게 볼 수 있습니다. 즉, 품질 예산은 실제로 본 것에 집중할 수 있습니다. (예를 들어 God Of War 시리즈와 같은 일부 3 인칭 게임은 제한된 카메라를 사용합니다. 그들의 프리뷰는 더 많은 무료 카메라 게임보다 훨씬 나은 경향이 있습니다.)


12
과소 평가되지 않아야 할 점. 고정 된 프레임 세트를 렌더링하면 해당 프레임에만 집중할 수 있으며 개별 프레임에서 문제를 일으키는 모든 것을 수동으로 처리 할 수 ​​있습니다.
aaaaaaaaaaaa

9
이 장면은 컷씬이 "엔진에 생중계되는"게임에서 자주 사용되므로 컷 장면이 여전히 더 좋아 보일 수 있습니다.
trlkly

이 규칙을 어기는 한 가지 게임 IMHO는 Brothers : A Tale of Two Sons 개발자들은 카메라를 올바른 위치에 배치하고 자연스러운 느낌을주기 위해 많은 노력을 기울입니다.
기본

12
몇 시간과 몇 시간 동안 애니메이션 영화를 렌더링하는 것은 어떻습니까? 게임 내 라이브 렌더링은 덜 일반적입니다 (일반적인 관점에서)?

차이점은 단순히 렌더링에 있다고 가정합니다. 애니메이션 영화에서는 사실 후에 편집 할 수있는 기회도 있습니다. 원래 엔진에서는 달성하기 어려웠던 효과가 합성되어 있거나 약간 씩 조정 (예 : 애니메이션의 속도를 높이거나 느리게하기 위해 10 번째 프레임마다 제거 또는 반복) 할 수 있습니다.

기회가된다면, 편집자 및 애니메이터가 납품 일정을 넘어 서기 시작했을 때해야 할 트릭에 대한 논평 트랙을 가지고있는 '러프 넥 : 스타쉽 기병 연대기'DVD 중 하나를 파헤 치십시오. 샷을 재활용하지만 축을 뒤집어 색상 보정, 마음에 들지 않는 것을 숨기거나 폭발 등을 추가하지 않았습니다.


게임 엔진도 그렇게합니다! ;-)
Adrian Maire

@AdrianMaire : 그들은 다른 일을 할 수도 있지만, 편집자가되고 필요할 때 일을 조정할 사람이 없을 것입니다. 나는 그들이 물건을 어떻게 조정 했는지 언급 했지만, 나의 주요 요점은 사전 렌더링 된 물건에 인간이 관여한다는 것입니다.
Joe

10

당신은 이미 당신 자신의 질문에 대답했습니다. 애니메이션 영화는 일반적으로 더 높은 수준의 디테일을 가지므로 개별 프레임마다 렌더링 시간이 길어집니다.

반면에 게임은 초당 30 회 이상 렌더링되어야하기 때문에 게임의 세부 사항은 그리 많지 않습니다. 그렇기 때문에 개발자가 가능한 한 많은 자산 (텍스처, 모델 등)을 재사용하려고하는 이유는 동일한 객체를 두 위치에 렌더링하는 것이 모든 것이 고유 할 때보 다 훨씬 빠르기 때문입니다. 또한 모델에 너무 많은 다각형을 사용하지 말고 조명, 텍스처, 범프 매핑 및 기타 기술을 사용하여 깊이를 느끼도록 노력해야합니다.

영화에는 그런 문제가 없습니다. 장면을 원하는 방식으로 만들고 원하는 장면을 달성하는 데 필요한만큼 상세한 질감, 모델 및 형상을 사용합니다.

게임이 따라 잡고 있다고 주장 할 수도 있습니다. 최근에 가장 멋진 게임 중 일부를 살펴보면 예전처럼 영화 품질과 멀지 않습니다. 물론 게임보다 항상 사전 렌더링 된 장면에 더 자세한 내용을 담을 수는 있지만 몇 년 안에 그 차이는 눈에 띄지 않을 것입니다.


1
이 답변을 사랑합니다! 그렇다면 누가 주범이되어야합니까? 다각형 수준 또는 광선 추적? 게임 엔진은 z 버퍼를 사용하는 경향이 있습니까? 또는 레이트 레이싱은 깊이 계산보다 더 많은 작업을 수행합니까?
cowboysaif

2
광선 추적이라고 생각합니다. 필립은 이것에 대해 나보다 훨씬 더 잘 알고있는 것처럼 보이지만, 내가 아는 한, 광선은 실제로 행동하는 것처럼 광선을 시뮬레이션하는 방법입니다. , 등등. 장면에 모피, 머리카락 또는 유체와 같은 다른 무거운 시뮬레이션과 같은 것이 있으면 물리 성능도 좋지 않습니다. 또한 이러한 것들이 광선 추적의 복잡성에 다시 영향을 미칩니다.
Christian

2
레이트 레이싱 응용 프로그램은 또한 어떤 객체가 다른 객체와 차단되는지를 결정하고 저장하기 위해 Z 버퍼와 같은 것이 필요합니다. 그러나 광선 추적은 실시간 응용 프로그램보다 훨씬 자세합니다. Christian과 내가 이미 개별 광선을 보내고 유리 물체 나 물에서 실제 굴절 / 산란을 계산하여 그래픽 충실도를 높이기 위해 언급 한 모든 작업을 수행하기 때문입니다. , 물리적 인 모발 렌더링, 간접 조명 및 주변 폐색 등 (이러한 부분 중 일부는 요즘 언급 한 것처럼 실시간 응용 프로그램에서도 근사 할 수 있음).
Philip Allgaier

7
동영상은 프레임 당 약 10-12 시간의 계산 시간으로 렌더링됩니다. 그리고 Blinn의 법칙에 따라 계산 성능이 향상 될 때마다 장면에 더 많은 물건을 추가하기 때문에 실제로는 더 빨라지지 않습니다. 영화 렌더링은 또한 모든 렌더링 방정식에 대해 폐쇄 형 '정확한'솔루션을 사용하는 경향이 있습니다. 여기서 게임은 영화보다 백만 배 더 빠르기 때문에 게임이 수많은 근사치를 만듭니다.
척 Walbourn

2
Blinn의 법칙에 대해 들어 본 적이 없다. 그 연결은 훌륭했다
42 초

8

다른 답변은 생생한 그래픽 문제를 자세하게 다루지 만, 게임과 영화 및 예고편의 현실감에서 중요한 부분은 언급하지 않습니다 . 애니메이션과 카메라 움직임 .

영화 나 예고편에서 사람과 카메라의 각 움직임을 신중하게 조정하여 순간에 적합한 감정을 보여줄 수 있으며 반복 할 필요가 없습니다. 비디오 게임에서 게임은 플레이어의 움직임에 즉각적으로 반응 할 수 있어야하고 가능한 한 게임 시간을 무제한으로 채우기 위해 작은 주식 애니메이션 풀을 재사용해야합니다.

문제예고편의 예로는 치료사가 고개를 끄덕이고 "나쁘지 않은"미소를 지을 때, 라라가 팔걸이를 잡거나 다리를 흔들거나 동굴을 경외심으로 바라 볼 때가 있습니다. 이러한 작은 것들 (또는 그것들의 부족과 관련된 "플라스틱"캐릭터)은 약간의 그래픽 향상보다 인식 된 사실감에 영향을줍니다.

다른 그래픽 차이와는 달리, 더 많은 컴퓨팅 성능을 제공하여 해결할 수있는 문제는 아닙니다. 이는 스크립팅 된 세계와 모든 작업에 응답하는 세계의 근본적인 차이입니다. 이와 관련하여, 오늘 예고편의 사실성은 가까운 미래에 모든 게임 플레이를 능가 할 것으로 기대합니다.


8

이미 게시 된 다른 훌륭한 답변에 덧붙여 게임에 필요한 빠른 처리 시간을 달성하려면 게임 개발자가 많은 시각적 효과를 간단한 질감으로 구워야 한다는 점에 주목할 가치가 있습니다. 이것은 잘 굽지 않는 효과를 피하기 위해 세심한주의를 기울여야한다는 것을 의미합니다.

비디오 게임에서 구워 내기 어려운 중요한 효과 중 하나는 SSS (Subsurface Scattering) 입니다. 불행하게도이 효과는 사실적인 인간 피부를 생성하는 데 매우 중요합니다. 그것이 많은 "현실적인"비디오 게임 캐릭터들이 소박 해 보이는 이유입니다.

개발자가이 문제를 피할 수있는 한 가지 방법은 고의적으로 밝은 색으로 캐릭터를 밝게 보이게하거나 얼굴에 수염과 같은 세부적인 그림자를 추가하여 큰 연속적인 부분을 분할하는 것입니다. 피부.


2
영화 애니메이션에 들어가는 모든 후 처리 작업은 말할 것도 없습니다. 많은 것들이 렌더링 후에 함께 계층화되어야하는 여러 개의 개별 장면으로 렌더링됩니다. 그렇기 때문에 많은 애니메이션 영화에서 전경에서 움직이는 캐릭터가있는 정적 배경이 자주 나타나는 이유가 있습니다.
블라디미르

6

OP가 의견에서 질문 한 질문 중 하나에 대답하려면 다음을 수행하십시오.

"그래서 누가 주범이되어야합니까? 다각형 수준 또는 광선 추적?"

이 질문은보기보다 어렵습니다. 좋은 경험 법칙은 다음과 같은 방정식이라고 생각합니다.

number of calculations = {polygons} * {light sources} * {effects}

기본적으로 이는 상대적으로 특수 소재가 적은 모델 (예 : 미러, 서브 서핑 등)의 경우 폴리곤 수에 따라 계산 시간이 길어집니다. 이것은 일반적으로 매우 간단한 비디오 게임 그래픽의 경우입니다.

그러나 실제로 최신 고급 게임, 특히 영화 에서 범인은 "보통"레이 트레이싱입니다. 왜? 두 가지 이유가 있습니다. 먼저 mathy 이유를 제시하고 마지막에 실제 이유에 대한 나의 의견을 드리겠습니다.


Mathy 이유 :

업데이트 :이 수학 설명은 완전히 정확하지 않을 수 있습니다. 자세한 내용은 의견에 CrazyCasta의 설명을 참조하십시오.

1000 개의 다각형과 3 개의 광원이 있다고 가정합니다. 수행해야하는 가장 적은 수의 광선 추적은 3 * 1000입니다.

상황을 지나치게 단순화하고 1 광선 추적 = 1 계산 (총 과소 평가)이라고 가정하면 3000 계산이 필요합니다.

그러나 이제 반사를 원한다고 가정 해 봅시다.

프리웨어 프로그램 블렌더 에서 반사에 대한 기본 설정 은 다음과 같습니다.

max reflections  = 2
ray length limit = None
...

이러한 설정의 경우 최상의 시나리오에서이 매우 간단한 리플렉션이 모델의 계산 비용을 두 배로 늘릴 것으로 추측 할 수 있습니다 .

그러나 이전에 말했듯이이 예제는 매우 단순화되어 있으며 이미 언급 한 것 외에는 렌더링 시간을 지붕을 통해 촬영할 수있는 많은 효과를 찾을 수 있습니다.

사례 및 요점 : gloss=1(블렌더의 기본값)으로 반사를 렌더링 한 다음 광택을 0.01로 낮추고 두 렌더링 시간을 비교하십시오. 0.01 광택을 가진 것은 훨씬 느리지 만 모델의 복잡성은 전혀 바뀌지 않았다는 것을 알게 될 것입니다.


내 질적이지만 더 현실적인 이유 :

메시 복잡성을 증가 시키면 모델 품질 만 향상됩니다. 몇 백만 개의 얼굴을 지나간 후에는 더 많은 얼굴을 추가 할 수있는 것이 많지 않습니다. 스무딩을 사용하면 가장 일반적인 목적으로 몇 백 개의 얼굴로 도망 갈 수 있다고 말하는 한까지도 갈 것입니다.

그러나 거의 항상 변화를 일으키는 것은 조명, 재료 효과 및 광선 추적입니다. 그렇기 때문에 영화는 현실 세계의 아름다운 복잡성을 근사하기 위해 많은 수의 영화를 사용하는 경향이 있습니다.


이 모든 것들에 대한 느낌을 얻는 가장 좋은 방법은 최신 Disney 기능 길이 애니메이션의 끝에있는 캐스트 목록을 보는 것입니다. 사람들이 얼마나 많은 조명과 질감을 가지고 있는지에 놀랄 것입니다.


2
나의 신 이것은 내가 사냥하고 있었던 요점이다. 그것은 내 질문이 아니었지만 (내가 무엇을 요구해야하는지 조금 혼란 스러웠다), 나는 이것이 생각한다!
cowboysaif

1
@cowboysaif 다행입니다! :)
Vladimir

1
실제로는 내가보기에 그리 좋은 것만은 아닙니다. 그러나 이것이 일반적인 아이디어를 얻는 데 도움이 될 것이라고 생각합니다. 나는 보통 시행 착오에 의존합니다. 더 긴 긴 장면 (100+ 프레임)을 렌더링하는 경우 먼저 하나 또는 두 개의 프레임을 렌더링하므로 속도가 얼마나 빠르며 속도가 느려지는 효과가 무엇인지 알 수 있습니다.
Vladimir

2
하루에 486에서 POVRay를 사용하는 오래된 트릭-장면의 어느 부분이 가장 비쌀 지 알고 싶다면 모든 배우와 소품을 제자리에 놓고 전체 무대의 여러 뷰를 렌더링하고 느린 부분을 봅니다. 크롤링 할 광선 추적기 이러한 부분을 확대하고 최악의 성능을 파악하고 해당 요소를 포함하는 프레임에 렌더링 예산의 대부분을 소비하는 것을 계산하십시오. 렌더링 일정이 빡빡하면 일부 샷의 재구성을 고려하십시오.
Tom B

1
@TomB 좋은 조언! 또한 특정 장면이 느릴 것으로 예상되는 경우 웹을 통해 팜을 만들어 로컬로 모든 것을 렌더링 할 수 있습니다.
Vladimir

4

영화 애니메이션은 일반적으로인지 된 동작을보다 유동적으로 만들기 위해 많은 시각적 비법을 수행한다는 점을 추가 할 가치가 있습니다.

예를 들어, 애니메이터는 영화의 프레임 속도가 낮더라도 (최근까지 어떤 속도로든) 스미어, 멀티플 또는 워핑 과 같이 실시간 렌더링에 일반적으로 사용되지 않는 전통적인 손 애니메이션 기술을 사용할 수 있습니다. )에 표시됩니다. 스미어와 배수의 사용은 특히 메시를 사용하여 복잡합니다. 이러한 종류의 메시 왜곡에 대해 메시 변형을 생성해야하며, 3D 비디오 게임에서 그랬다는 것을 믿지 않습니다.

빠르게 움직이는 객체를 통과하는 프레임은 다른 프레임 속도로 렌더링 된 다음 장면을 통해 모션 블러를 생성하기 위해 다시 결합 될 수 있습니다. 모션 블러는 요즘 실시간 3D 그래픽에서 매우 일반적인 기술입니다. 이 효과는 일반적으로 수십 개의 프로세서가있는 애니메이션 하우스가 모션 블러를 만드는 데 레이어 당 여러 개의 후 처리 단계가 필요하다는 사실 때문에 대체로 얻을 수있는 고품질이 아닙니다 (위의 "시간"답변 참조). 정말 유동적 인 많은 중간 프레임.

실시간 그래픽으로 인식 된 품질을 향상시키기 위해 이러한 종류의 시각적 속임수를 효과적으로 사용하려면 출력 프레임 속도를 사용 가능한 최대 백그라운드 렌더링 중간 프레임보다 훨씬 낮은 속도로 제한 한 다음 합성하여 최종 프레임을 생성해야합니다. 이와 같은 기술을 사용하여 시각적 충실도가 약간 향상되어 프레임 예산을 잃을 가치가 있는지, 특히 제대로 이해하기가 매우 어려울 지 여부에 대해 여러 가지 생각을 가진 학교가있을 수 있습니다.

질문의 한 측면을 해결하려면 :

몇 시간과 몇 시간 동안 애니메이션 영화를 렌더링하는 것은 어떻습니까? 게임 내 라이브 렌더링은 덜 일반적입니다 (일반적인 관점에서)?

주로 장인. 실시간 아티스트는 각 프레임을 미세 조정하거나 일회성 특수 효과를 만들어 장면의 전반적인 모양 또는 반응을 개선 할 수있는 기회가 없습니다 (시간 제한 (개발 및 렌더링 모두) 때문일뿐만 아니라 실질적인 제약의. 인터랙티비티 주석에서 언급했듯이 플레이어는 매번 똑같은 일을하지는 않지만 매번 영화가 동일하게 재생됩니다.

즉, 비디오 게임 아티스트는 영화 아티스트와 모델 품질 및 최종 렌더링 품질과 관련된 우선 순위가 매우 다릅니다. 둘 다 엄청난 양의 기술이 필요하지만 각각 다른 기술이 필요합니다. 소비자 수준의 렌더링 하드웨어가 계속 발전하고 SIGGRAPH 및 GDC에서 더 많은 수학적 천재가 계속 등장함에 따라 이러한 기술이 점점 더 융합 될 것으로 기대합니다.


1
방금 말씀 드린 내용에 대해 말씀 드렸습니다. 메시 변형? 메쉬 수정 자라고도합니까? 내가 mega-fiers ( west-racing.com/mf/?page_id=2 ) 라는 단일 3D로 땜질 하는 동안 사용한 수정자가 있습니다 . 유니티 3d는 뼈 기반 애니메이션 만 지원하지만 게임 기술이 마침내 그에 대처한다고 생각하십니까? 나는 다른 게임 엔진에 대해 전혀 모른다!
cowboysaif

1
버텍스 셰이더 (아마도 "메가 파이어"가하는 것)와 함께 수학적 전체 모델 왜곡을 사용하는 한 이러한 종류의 효과는 모든 종류의 애니메이션 기술과 호환되어야합니다. 몇 가지 다른 접근 방식은 다음과 같습니다. * 완전히 왜곡 된 두 번째 메시 인 "대상"메시를 갖고 버텍스 셰이더를 사용하여 메시의 정점을 두 번째 메시의 일치하는 정점으로 이동시킵니다. * 모델 자체에 변형을 적용하고 키 프레임 애니메이션을 사용합니다. * 뼈대 애니메이션을 사용하여 필요에 따라 여분의 뼈를 독점적으로 배치하여 왜곡을 수행합니다.
Tom B

1
나는 이런 종류의 애니메이션이 한동안 가능했을 것이라고 확신하고, 어느 정도는 이미 거친 생물과 유연한 모델 (Gish, Tower of Goo, Octodad)이있는 게임에서만 인스턴스를 불러올 수 있지만 어느 정도 이미 사용되었습니다 . 어려운 부분은 효과를 언제 사용할 것인지, 특히 배수 나 번짐을 사용할 때를 알아내는 것에서 비롯됩니다. 카메라 움직임의 방향은 결과 배수 나 번짐 모양에 영향을줍니다. 핸드 애니메이터가 사용하는 가이드 라인이 좋은 출발점이 될 것 같지만 실험에있어 모든 재미를 생각하십시오!
Tom B

3

하나의 애니메이션 영화는 한 대의 기계에서 렌더링하는 데 몇 년이 걸릴 수 있습니다. 사전 렌더링되기 때문에 장면에 추가하는 라이트 바운스, 그림자 등과 같은 비용이 많이 드는 효과는 중요하지 않습니다. 이 영화는 일반적으로 동일한 작업을 수행하면서 수천 대의 PC가 서로 연결된 렌더 팜에서 렌더링됩니다.

우리가 실시간으로 동일한 품질을 달성 할 수없는 이유는 단순히 FPS 60을 달성하기 위해 현재 프레임을 약 16ms 안에 렌더링해야하기 때문입니다. 애니메이션 영화의 단일 프레임은 단일 PC에서 렌더링하는 데 몇 시간이 걸릴 수 있습니다.

게임에서 그래픽 외에도 많은 다른 것들이 진행되고 있습니다. 각 프레임에는 수많은 계산이 있습니다. 간단히 말해서, 애니메이션 영화는 로켓 발사기에서 플레이어가 입는 피해를 계산할 필요가 없으며 깁스에만 애니메이션을 적용하면 다각형이 렌더링됩니다.

운 좋게도이 행성에는 몇 명의 천재인들이 걸어 다니고 있습니다. 더 많은 폴리곤과 더 큰 텍스처를 렌더링 할 수있는 더 나은 PC와는 별개로 평범한 폴리곤의 조명 / 그림자를 매우 저렴하게 애니메이션화 할 수있는 노멀 맵 과 같은 독창적 인 발명품이 있어 지루한 3D 객체가 매우 세밀하게 보입니다.

영화를 만드는 이러한 비싼 효과 중 일부에는 추가 효과가 있습니다.

  • 바운스 실제로는 빛이 반사되는 표면에 완전히 흡수 될 때까지 빛이 반사됩니다. 각 광원마다 계산이 이루어져야합니다. 흰 종이 옆에 색깔이있는 물체를 잡으려고하면 종이에 색이 번지는 것을 볼 수 있습니다.
  • 게임은 사용되는 폴리곤의 양에 대한 엄격한 제한이 있으며 프리 렌더 영화에는 이러한 제한이 없으며 렌더링하는 데 시간이 더 걸립니다. 라이트 바운싱으로 돌아가서 다각형이 많을수록 더 나은 비주얼을 위해 라이트 계산이 더 많아 지지만 기하 급수적으로 비용이 증가합니다.
  • 텍스처 크기, 그래픽 카드는 특정 양의 데이터 만 저장할 수 있으며이 데이터를 전환하는 데 많은 비용이 듭니다. 모든 셰이더 맵을 포함한 일반적인 1024x1024 텍스처는 1GB GFX 카드의 몇 퍼센트를 쉽게 차지할 수 있습니다. 카드가 데이터를 전환해야하는 경우 비용이 듭니다. 분명히 우리는 영화를 미리 렌더링 할 때 이것을별로 신경 쓰지 않습니다. 또한 영화에서는 카메라가 가까이있는 고해상도 텍스처 만 있으면됩니다. 게임의 경우 플레이어가 접근 할 수있는 각 객체에 대해 이것을 원합니다.
  • CPU에서 경로 찾기가 매우 요구됩니다. 예를 들어, 길 찾기 알고리즘은 적들이 당신을 향한 길을 찾도록하거나 다른 곳을 클릭 할 때 플레이어가 길을 걸게합니다. 10000 x 100m 맵의 각 평방 미터에 해당하는 10000 웨이 포인트가있을 때 이러한 경로 찾기는 비용이 많이들 수 있습니다. 그런 다음 모든 웨이 포인트를 단일 프레임에서 여러 번 횡단해야 할 수도 있습니다. 필요에 따라이 방법을 저렴하게 만드는 방법은 여러 가지가 있지만 사전 렌더링 된 장면에는 필요하지 않습니다.

Simpy는 게임을 멋지게 보이게하기 위해 "저렴한"트릭을 생각해 내야합니다. 그러나 인간의 눈은 바보하기가 어렵습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.