Tại sao đồ họa chơi game không đẹp như phim hoạt hình?


60

Tôi nhớ đã xem đoạn giới thiệu được dựng sẵn của Tomb Raider và ước rằng những đồ họa đó có thể có trong chính trò chơi.

Tại sao có sự khác biệt lớn như vậy giữa trailer và trò chơi thực tế? Tôi hiểu trò chơi là một khái niệm hoàn toàn khác, nó có đường ống khác nhau, nó phải trải qua các loại tương tác người chơi khác nhau, v.v. Tôi muốn biết những gì về trò chơi khiến việc dựng chúng trở nên khó khăn so với phim hoạt hình.

Cho đến nay tôi biết rằng việc tạo ra một trò chơi và một bộ phim hoạt hình chia sẻ một số khối lượng công việc cơ bản, ví dụ như tạo các mô hình 3d, kết xuất chúng (chỉ trong trò chơi nó diễn ra trực tiếp). Phim hoạt hình kết xuất trong một thời gian dài và chúng ta chỉ thấy những cảnh được dựng sẵn. Đó là tất cả những gì tôi biết vì vậy tôi hy vọng bạn sẽ trả lời từ quan điểm đó!

Điều gì về việc dựng phim hoạt hình hàng giờ liền khiến chúng trở nên đẹp đẽ trong khi kết xuất trực tiếp trong trò chơi lại kém đẹp (theo quan điểm chung)?


1
Tôi thực sự không thấy câu trả lời được chấp nhận thực sự đáp ứng điểm của câu hỏi của bạn như thế nào. Bạn có thể để lại một bình luận ở đây như một bản tóm tắt về những gì bạn đã hiểu từ nó, tức là những tin tức nào đã mang đến cho bạn để bây giờ bạn hiểu vấn đề mà trước đây, bạn đã không?
Bogdan Alexandru

4
Không chắc chắn những gì bạn bối rối về. Câu hỏi là tiêu đề; bài viết được chấp nhận trả lời câu hỏi đó.
jhocking

2
Thật ra tôi đã hiểu 80% từ câu trả lời. Phần còn lại chiếm 20%, đặc biệt tôi đã học được rất nhiều từ câu trả lời của @ Vladimir (xem bên dưới). Một số câu trả lời thậm chí đã thảo luận về những điều tôi không nghĩ tới, ví dụ như thêm chi tiết sau khi kết xuất. Và để trả lời câu hỏi của bạn, tôi đã chọn câu trả lời vì tôi nghĩ rằng nó mang lại mức độ hiểu biết sâu sắc hơn (không chỉ anh ấy đề cập đến các điểm, mà cả các thuật toán / khái niệm hoạt động đằng sau nó). Và khi tôi đọc xong nó, những câu trả lời khác cũng rất tuyệt vời! Thật khó để chọn cái nào là tốt nhất, nhưng mọi người dường như cũng thích cái đó! Tôi sẽ đánh dấu tất cả!
cowboysaif

Có lẽ bởi vì các nhà phát triển trò chơi không quan tâm đến việc chi 50.000.000 đô la + cho các hiệu ứng - điều mà các nhà sản xuất phim thường làm trong những ngày này.
Pieter Geerkens

Câu trả lời:


109

Bạn đã đề cập đến một trong những điểm trung tâm: Thời gian .

Trong quá trình thể hiện hoạt hình có độ trung thực cao, nhiều cách tiếp cận và thuật toán khác nhau được sử dụng (tất cả thường được kết hợp theo thuật ngữ "Chiếu sáng toàn cầu" ), với Ray-Trace là một trong những phương pháp phổ biến nhất (ví dụ khác bao gồm RadiosityAmbient Ocinating ).

Ray-Trace liên quan đến việc mô phỏng một số lượng tia sáng (thường là cao) đi qua cảnh và tính toán đường đi của chúng, sự phản xạ và khúc xạ của chúng khi chúng chạm vào các vật thể bằng các vật liệu khác nhau. Các vật liệu khác nhau sau đó có các tính chất vật lý khác nhau dẫn đến các phản ứng cụ thể cho các tia (lượng ánh sáng chiếu từ một vật thể chẳng hạn cao hơn đối với vật sáng bóng so với vật sáng bóng).

Một điểm khác là Vật lý : Mô phỏng hàng ngàn chủng tóc theo cách chính xác về mặt vật lý là tốn thời gian. Đây là lý do tại sao trong các trò chơi cũ, tóc thường được xấp xỉ bằng một lưới rất thô sau đó được kết cấu để tạo ấn tượng cho tóc, có lẽ với một số đối tượng chuyển động bổ sung để làm cho nó trông thật hơn một chút.

Cũng được xem xét: Bộ nhớ & Băng thông . Chất lượng của kết cấu được áp dụng cho một đối tượng trong một cảnh càng cao thì bạn càng cần nhiều bộ nhớ để tải và sử dụng nó trong trò chơi. Nhưng hệ thống không chỉ cần có đủ bộ nhớ để chứa dữ liệu, mà dữ liệu này cũng cần được truyền đi xung quanh, sử dụng hết băng thông có sẵn. Vì bộ nhớ và băng thông bị giới hạn, có tối đa những gì có thể đạt được.

Các trò chơi thường gian lận một chút bằng cách chỉ sử dụng họa tiết có độ phân giải cao cho các đối tượng ở gần và sử dụng hình ảnh có độ phân giải thấp hơn cho các đối tượng ở xa (thuật ngữ: MipMapping ), do đó làm giảm băng thông cần thiết do cần phải tìm nạp ít hơn để tăng hiệu suất (xem phần về MipMapping trong Hướng dẫn lập trình OpenGLES của Apple).

Tương tự, các trò chơi cũng thường sử dụng các mắt lưới khác nhau cho các đối tượng tùy thuộc vào khoảng cách của chúng với các đối tượng ở xa ít chi tiết hơn (thuật ngữ: LoD = Cấp độ chi tiết ).

Kết luận: Trong đồ họa thời gian thực (như trò chơi và mô phỏng), quá trình kết xuất chi tiết và phức tạp này tất nhiên sẽ không hoạt động để tạo ra các cảnh mượt mà / mượt mà. Bạn cần ít nhất 20 khung hình được hiển thị mỗi giây để đạt được hiệu ứng hoạt hình / chuyển động mượt mà cho mắt người. Mặt khác, việc hiển thị một khung hình duy nhất (!) Trong phim hoạt hình có thể dễ dàng chiếm bất cứ thứ gì từ vài giờ đến nhiều ngày tùy thuộc vào nhiều yếu tố, chẳng hạn như số lượng tia được sử dụng trong Truy tìm tia hoặc số lượng mẫu cho Ambient Loại trừ (xem các trang Pixar 1 / Pixar trang 2 này để biết ảnh chụp màn hình của 16 so với 256 mẫu) cũng như độ phân giải phim mong muốn (nhiều pixel hơn = nhiều thông tin cần tính toán). Cũng xem bài viết nàyvề quá trình đằng sau bộ phim hoạt hình Đại học Quái vật của Pixar , đưa ra một số hiểu biết thú vị và cũng đề cập đến thời gian kết xuất 29 giờ trên mỗi khung hình.

Nói chung: Độ trung thực / độ chân thực cần đạt được càng cao, càng nhiều lần lặp / nảy / mẫu thường là cần thiết, sau đó đòi hỏi nhiều tài nguyên hơn (cả thời gian và / hoặc sức mạnh tính toán / bộ nhớ). Để hình dung sự khác biệt, hãy xem kết quả hiển thị dựa trên số lần thoát cho phép tính khúc xạ trong ví dụ này: Diamond Bounce từ Keyshot

Nhưng tất nhiên, chất lượng trong các ứng dụng thời gian thực tăng lên mọi lúc vì hai lý do:

  1. Phần cứng mạnh hơn: Khi các máy tính (chơi game) có sức mạnh tính toán tốt hơn (= nhiều hơn [song song], truyền dữ liệu cao hơn giữa các thành phần máy tính, bộ nhớ nhiều hơn và nhanh hơn, v.v.), độ trung thực của hình ảnh cũng tăng theo, vì thực sự tính toán tốn nhiều thời gian hơn trở nên khả thi trong một hệ thống thời gian thực.
  2. Các phương pháp / công thức thông minh hơn được phát triển và triển khai có khả năng tạo ra các hiệu ứng hình ảnh thực tế mà không cần raytracing. Điều này thường liên quan đến xấp xỉ và đôi khi dữ liệu được tính toán trước. Vài ví dụ:


4
@cowboysaif không bạn không thể làm điều đó trên GPU "như nó là". Bạn sẽ phải có được CTNH chuyên dụng. Tuy nhiên, có những nỗ lực để thực hiện raytracing thời gian thực bằng CUDA hoặc công nghệ tương tự.
wonderra

4
Có nhiều kỹ thuật khác ngoài raytracing được sử dụng trong kết xuất ngoại tuyến, khi thực hiện các tác phẩm điện ảnh chất lượng chuyên nghiệp. Nhưng như bạn nói, họ sử dụng các kỹ thuật kết xuất, chiếu sáng và đổ bóng đắt tiền mà đơn giản là không thực tế để kết xuất thời gian thực.
MrCranky

40
Câu trả lời này giải thích tại sao hoạt hình dựng sẵn lại mất nhiều thời gian hơn nhưng không thực sự mang lại cảm giác về quy mô. Sự khác biệt là rất lớn ! Một trò chơi phải kết xuất một khung hình dưới 1/30 giây, trong khi các bộ phim thường mất nhiều ngày để kết xuất mỗi khung hình.
jhocking

9
"Ngày" chắc chắn là mức cao của thang thời gian, nhưng có những bộ phim đôi khi phải mất hơn 1 ngày để hiển thị một khung hình duy nhất (ví dụ ở đây ví dụ venturebeat.com/2013/04/24/iêu ) Và thậm chí ở mức trung bình thời gian kết xuất vẫn giống như nửa ngày trên mỗi khung hình, thời gian chờ đợi lâu hơn so với trò chơi phải kết xuất. Lý do toàn bộ bộ phim không mất một thập kỷ để kết xuất là vì họ có một trang trại kết xuất tức là. Hàng trăm máy kết xuất cùng một lúc.
jhocking

7
Một vài sự thật: raytracing được sử dụng ở mọi nơi, nó hoàn toàn không phải là một kỹ thuật thích hợp. VRay chỉ là CPU. VRayRT chỉ là GPU. GPU không phù hợp để sản xuất vì các cảnh thường chiếm nhiều GB RAM và không phù hợp với GPU (nhưng đôi khi nó giúp). Các bức ảnh của chúng tôi mất 1-2 giờ / khung hình trên các CPU cao cấp và nó không quá dài. JackAidley hoàn toàn sai.
Calvin1602

44

Bên cạnh yếu tố thời gian, đáng chú ý là trong một bộ phim, nghệ sĩ hoàn toàn kiểm soát những gì người xem sẽ và sẽ không nhìn vào.

Trong bối cảnh phim điển hình của bạn, máy ảnh sẽ không dành nhiều thời gian chỉ lên trần nhà hoặc chỉ vào một góc tối của căn phòng, hoặc nhắm vào mắt cá chân của ai đó, vì vậy ngân sách đa giác và kết cấu cho các yếu tố đó sẽ khá thấp.

Nếu toàn bộ cảnh diễn ra từ một điểm thuận lợi, thì bộ ảo (như bộ phim thực) không cần bao gồm các phần phía sau máy ảnh. Trong hầu hết các trò chơi, người chơi có thể tự do tìm kiếm bất cứ nơi nào bất cứ lúc nào. Điều đó có nghĩa là ngân sách chất lượng có thể được tập trung vào những gì thực sự nhìn thấy. (Một số trò chơi của người thứ ba, ví dụ như loạt God Of War, sử dụng máy ảnh bị hạn chế; hình ảnh của họ có xu hướng tốt hơn đáng kể so với các trò chơi có nhiều máy ảnh miễn phí hơn.)


12
Một điểm không được đánh giá thấp. Kết xuất một bộ khung cố định cho phép tập trung hoàn toàn vào chỉ những khung đó, bất kỳ điều gì gây ra sự cố trong một khung riêng lẻ đều có thể được xử lý thủ công.
aaaaaaaaaaaa

9
Heck, điều này thường được sử dụng với các trò chơi cắt cảnh "sống trong động cơ", đó là lý do tại sao các cảnh cắt vẫn có thể trông đẹp hơn.
trlkly

Một trò chơi phá vỡ quy tắc này IMHO là Brothers: A Tale of Two Sons Các nhà phát triển cố gắng hết sức để đảm bảo máy ảnh kết thúc ở đúng vị trí và cũng cảm thấy tự nhiên.
Cơ bản

12
Điều gì về việc dựng phim hoạt hình hàng giờ liền khiến chúng trở nên đẹp đẽ trong khi kết xuất trực tiếp trong trò chơi lại kém đẹp (theo quan điểm chung)?

Bạn đang cho rằng sự khác biệt chỉ đơn giản là trong kết xuất - trong một bộ phim hoạt hình, cũng có cơ hội chỉnh sửa sau thực tế. Chúng có thể có các hiệu ứng được tổng hợp trong đó rất khó đạt được trong công cụ gốc hoặc chúng có thể điều chỉnh mọi thứ một chút (ví dụ: loại bỏ hoặc lặp lại mỗi khung hình thứ 10 để tăng tốc / làm chậm hình ảnh động).

Nếu bạn có cơ hội, hãy đào một trong các DVD 'Roughnecks: The Starship Trooper Chronicles', khi họ có các bài bình luận của biên tập viên & nhà làm phim hoạt hình về các thủ thuật mà họ phải làm khi bắt đầu rơi vào lịch trình giao hàng của mình - những việc như tái chế ảnh nhưng lật trục để nó không rõ ràng, chỉnh sửa màu sắc, che đi những thứ họ không thích, thêm vào vụ nổ, v.v.


Công cụ trò chơi cũng làm điều đó! ;-)
Adrian Maire

@AdrianMaire: họ có thể làm một số thứ khác, nhưng họ sẽ không có con người ở đó để làm biên tập viên và điều chỉnh mọi thứ khi cần. Tôi biết tôi đã đề cập đến cách họ điều chỉnh mọi thứ, nhưng quan điểm chính của tôi là có con người tham gia vào các công cụ được kết xuất sẵn ..
Joe

10

Bạn đã trả lời câu hỏi của riêng bạn rồi. Phim hoạt hình thường có mức độ chi tiết cao hơn gây ra thời gian kết xuất dài cho từng khung hình riêng lẻ.

Mặt khác, các trò chơi không có quá nhiều chi tiết trong đó, vì cảnh phải được hiển thị 30 lần trở lên mỗi giây. Đó cũng là lý do tại sao các nhà phát triển cố gắng sử dụng lại càng nhiều tài sản (kết cấu, mô hình, v.v.) càng tốt, bởi vì việc hiển thị cùng một đối tượng ở hai vị trí nhanh hơn rất nhiều so với việc mọi thứ sẽ là duy nhất. Họ cũng phải coi chừng không sử dụng quá nhiều đa giác trong mô hình của mình và thay vào đó cố gắng đạt được ấn tượng về chiều sâu bằng cách sử dụng ánh sáng, kết cấu, ánh xạ va chạm và các kỹ thuật khác.

Phim không có vấn đề đó; họ tạo ra cảnh theo cách họ muốn và sử dụng nhiều họa tiết, mô hình và hình học chi tiết như họ cần để đạt được cảnh họ đang tìm kiếm.

Người ta có thể tranh luận mặc dù các trò chơi đang bắt kịp. Nếu bạn xem một số trò chơi hay nhất trong thời gian gần đây, chúng không còn xa với chất lượng phim như trước đây. Tất nhiên, bạn sẽ luôn có thể nhồi nhét nhiều chi tiết vào một cảnh được dựng sẵn hơn một trò chơi, nhưng tôi nghĩ rằng sự khác biệt sẽ không được chú ý trong một vài năm.


1
Yêu câu trả lời này! Vậy ai nên là thủ phạm chính? Đa giác cấp hay tia ray? Có phải các công cụ trò chơi có xu hướng sử dụng bộ đệm z vì nó nhẹ hơn? Hoặc truy tìm tia làm nhiều việc hơn là tính toán độ sâu?
cowboysaif

2
Tôi đoán đó là dấu vết tia. Philip dường như hiểu biết nhiều hơn tôi về điều này, nhưng theo tôi biết, về cơ bản, đó là cách mô phỏng các tia sáng khi chúng hoạt động trong thực tế - bật ra mọi thứ, bị khuếch tán, vỡ hoặc thay đổi bởi các vật liệu trong cảnh , v.v. Nếu bạn có những thứ như lông, tóc hoặc các mô phỏng nặng khác (như chất lỏng) trong cảnh của bạn, thì vật lý cũng có hiệu suất rất nặng - cũng vậy, những thứ đó sau đó lại ảnh hưởng đến sự phức tạp của việc dò tia.
Christian

2
Một ứng dụng dò tia cũng cần một cái gì đó giống như bộ đệm Z để xác định và lưu trữ các đối tượng nào ẩn với các đối tượng khác. Nhưng phương pháp dò tia chi tiết hơn nhiều so với ứng dụng thời gian thực, vì nó thực hiện tất cả những điều mà Christian và tôi đã đề cập để có độ trung thực đồ họa cao hơn bằng cách gửi các tia sáng riêng lẻ đó và tính toán khúc xạ / tán xạ thực tế, ví dụ như trong các vật thể thủy tinh hoặc nước , dựng tóc vật lý, chiếu sáng gián tiếp và che khuất môi trường xung quanh, v.v. (mặc dù một số phần đó cũng có thể được xấp xỉ trong ứng dụng thời gian thực hiện nay như tôi đã đề cập).
Philip Allgaier

7
Phim được kết xuất với khoảng 10-12 giờ thời gian tính toán trên mỗi khung hình. Và theo định luật của Blinn mỗi khi sức mạnh tính toán trở nên tốt hơn, họ chỉ cần thêm nhiều thứ vào cảnh để nó thực sự không bao giờ nhanh hơn. Kết xuất phim cũng có xu hướng sử dụng các giải pháp 'chính xác' dạng đóng cho tất cả các phương trình kết xuất, trong đó các trò chơi tạo ra nhiều xấp xỉ vì nó phải nhanh hơn một triệu lần so với phim.
Chuck Walbourn

2
chưa bao giờ nghe nói về Luật của Blinn trước đây, liên kết đó rất tuyệt
bắt đầu từ

8

Các câu trả lời khác bao gồm các vấn đề đồ họa thô rất chi tiết, nhưng không đề cập đến một phần quan trọng của tính chân thực của trò chơi so với phim và trailer: hoạt hình và chuyển động của máy ảnh .

Trong một bộ phim hoặc trailer, mỗi chuyển động của người và máy ảnh có thể được phối hợp cẩn thận để chỉ hiển thị cảm xúc phù hợp vào lúc này và chúng không bao giờ cần phải lặp lại. Trong các trò chơi video, trò chơi phải có khả năng phản ứng tức thì với chuyển động của người chơi và phải sử dụng lại một nhóm hoạt hình nhỏ để lấp đầy thời gian trò chơi không giới hạn có thể có.

Ví dụ về điều này từ đoạn trailer được đề cập là khi nhà trị liệu gật đầu và nở một nụ cười "không tệ" , và khi Lara nắm chặt tay vịn, cười khúc khích hoặc nhìn vào hang động trong sự sợ hãi. Những điều nhỏ nhặt này (hoặc thiếu chúng và các nhân vật "dẻo" có liên quan) ảnh hưởng đến chủ nghĩa hiện thực nhận thức hơn nhiều so với những cải tiến đồ họa nhỏ.

Không giống như những khác biệt về đồ họa khác, đây không phải là vấn đề có thể giải quyết được bằng cách ném thêm sức mạnh tính toán vào nó: đó là một sự khác biệt cơ bản giữa một thế giới được viết kịch bản và một thế giới đáp ứng mọi hành động của bạn. Về vấn đề đặc biệt này, tôi hy vọng rằng tính chân thực của các đoạn trailer ngày nay sẽ vượt quá tất cả các trò chơi trong tương lai gần.


8

Thêm vào các câu trả lời tuyệt vời khác đã được đăng, điều đáng chú ý là để đạt được thời gian xử lý nhanh mà trò chơi cần, các nhà phát triển trò chơi cần phải nướng nhiều hiệu ứng hình ảnh của họ dưới dạng kết cấu đơn giản. Điều này có nghĩa là phải hết sức cẩn thận để tránh ảnh hưởng không tốt.

Một hiệu ứng quan trọng khó có thể nướng cho các trò chơi video là Tán xạ dưới bề mặt (SSS) . Thật không may, hiệu ứng này thực sự quan trọng trong việc tạo ra da người trông giống thật. Đó là lý do tại sao nhiều nhân vật trò chơi video "thực tế" trở nên dẻo.

Một cách mà các nhà phát triển tránh vấn đề này là bằng cách cố tình làm cho các ký tự được tô màu rực rỡ để làm mất vẻ ngoài của nhựa hoặc bằng cách thêm nhiều bóng và các chi tiết về kết cấu vào khuôn mặt (như râu, v.v.) để phá vỡ các phần lớn, liên tục của làn da.


2
Chưa kể tất cả các công việc xử lý bài đi vào hoạt hình phim. Rất nhiều thứ được kết xuất thành nhiều cảnh riêng biệt cần được xếp chồng lên nhau sau khi kết xuất. Đó là lý do tại sao, trong nhiều bộ phim hoạt hình, bạn sẽ thường thấy các hình nền tương đối tĩnh với các nhân vật di chuyển ở phía trước.
Vladimir

6

Để trả lời một trong những câu hỏi mà OP đã hỏi trong một bình luận:

"Vậy ai nên là thủ phạm chính? Cấp độ đa giác hoặc dò tia?"

Câu hỏi này khó hơn vẻ ngoài của nó. Tôi nghĩ rằng một quy tắc tốt là phương trình sau đây (mà tôi đã tạo ra bằng cách này):

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

Về cơ bản, điều này có nghĩa là đối với các mô hình có tương đối ít vật liệu đặc biệt (ví dụ không có gương, sóng phụ, v.v.), thời gian tính toán sẽ được xác định lớn bởi số lượng poligons. Đây thường là trường hợp cho đồ họa trò chơi video rất đơn giản.

Tuy nhiên, trên thực tế, trong các trò chơi cao cấp mới hơn và đặc biệt là phim ảnh, thủ phạm là "tia" thường. Tại sao? Vâng vì hai lý do. Tôi sẽ đưa ra lý do toán học trước, và sau đó là ý kiến ​​của tôi về lý do thực sự ở cuối.


Lý do toán học:

Cập nhật: Giải thích toán học này có thể không hoàn toàn chính xác. Vui lòng xem giải thích của CrazyCasta trong các bình luận để biết thêm chi tiết.

Giả sử bạn có 1000 đa giác và 3 nguồn sáng. Số lượng dấu vết tia nhỏ nhất bạn cần thực hiện là 3 * 1000.

Nếu chúng ta đơn giản hóa tình huống và giả sử rằng phép tính 1 tia = 1 phép tính (tổng mức đánh giá thấp) thì chúng ta sẽ cần 3000 phép tính.

Nhưng bây giờ hãy giả sử bạn muốn có phản xạ quá.

Các cài đặt mặc định cho phản xạ trong chương trình phần mềm miễn phí Blender là:

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

Đối với các cài đặt này, chúng tôi có thể dự đoán rằng, trong trường hợp tốt nhất, sự phản chiếu siêu đơn giản này sẽ tăng gấp đôi chi phí tính toán cho mô hình của bạn.

Nhưng như tôi đã nói trước đây, ví dụ này rất đơn giản và bạn có thể tìm thấy rất nhiều hiệu ứng (bên cạnh những hiệu ứng tôi đã đề cập) sẽ quay thời gian kết xuất của bạn qua mái nhà.

Case và point: cố gắng hiển thị các phản xạ với gloss=1(mặc định trong Blender), sau đó chuyển độ bóng xuống 0,01 và so sánh hai lần kết xuất. Bạn sẽ thấy rằng một cái có độ bóng 0,01 sẽ chậm hơn nhiều, nhưng độ phức tạp của mô hình đã không được thay đổi.


Lý do định tính nhưng thực tế hơn của tôi:

Tăng độ phức tạp của lưới sẽ chỉ cải thiện chất lượng mô hình đến một điểm. Sau khi vượt qua một vài triệu khuôn mặt, thực sự không có nhiều thứ mà việc thêm nhiều khuôn mặt sẽ làm. Tôi thậm chí sẽ đi xa đến mức nói rằng nếu bạn sử dụng làm mịn, bạn sẽ có thể thoát khỏi chỉ với vài trăm khuôn mặt cho hầu hết các mục đích chung.

Nhưng những thứ hầu như luôn tạo ra sự khác biệt là ánh sáng, hiệu ứng vật liệu và dấu vết tia. Đó là lý do tại sao các bộ phim sẽ có xu hướng sử dụng một số lượng lớn trong số này để cố gắng xấp xỉ những phức tạp đẹp đẽ của thế giới thực.


Một cách tuyệt vời để cảm nhận tất cả những thứ này là xem danh sách diễn viên ở cuối các phim hoạt hình dài mới nhất của Disney. Có lẽ bạn sẽ ngạc nhiên bởi chỉ có bao nhiêu người có ánh sáng và kết cấu.


2
Chúa ơi đây là điểm tôi đang săn lùng. Mặc dù đó không phải là câu hỏi của tôi (tôi hơi bối rối không biết nên hỏi gì), tôi nghĩ đây là nó!
cowboysaif

1
@cowboysaif Rất vui được giúp đỡ! :)
Vladimir

1
Trong thực tế mọi thứ không thực sự tốt như tôi có thể làm cho chúng có vẻ. Nhưng tôi nghĩ rằng điều này có thể giúp bạn có được một ý tưởng chung. Tôi thường chỉ dựa vào thử nghiệm và lỗi. Giống như nếu tôi hiển thị một cảnh dài hơn (hơn 100 khung hình), trước tiên tôi kết xuất một hoặc hai khung hình để tôi có thể thấy tốc độ của nó diễn ra nhanh và những hiệu ứng nào có xu hướng làm chậm nó.
Vladimir

2
Một mẹo cũ từ việc sử dụng POVRay vào 486 trở lại trong ngày - nếu bạn muốn biết phần nào trong cảnh của mình đắt nhất, hãy hiển thị nhiều chế độ của toàn bộ sân khấu với tất cả các diễn viên và đạo cụ tại chỗ và xem các phần chậm các raytracer để bò. Phóng to các phần đó và tìm ra hiệu suất trong trường hợp xấu nhất và chi tiêu phần lớn ngân sách kết xuất của bạn cho các khung kết hợp các yếu tố đó. Nếu bạn đã có một lịch trình kết xuất chặt chẽ, hãy xem xét sắp xếp lại một số bức ảnh.
Tom B

1
@TomB Lời khuyên tốt! Tôi nói thêm rằng nếu bạn mong muốn một cảnh cụ thể bị chậm, bạn có thể đưa nó ra trên web và hiển thị mọi thứ khác cục bộ.
Vladimir

4

Đáng nói thêm rằng phim hoạt hình thường làm rất nhiều kỹ xảo hình ảnh để làm cho chuyển động nhận thức trở nên trôi chảy hơn.

Ví dụ, các nhà làm phim hoạt hình có thể sử dụng các kỹ thuật hoạt hình tay truyền thống thường không được sử dụng trong kết xuất thời gian thực, chẳng hạn như bôi nhọ, bội số hoặc cong vênh để tạo ra chuyển động trông có vẻ trôi chảy hơn mặc dù tốc độ khung hình thấp hơn (cho đến gần đây ) hiển thị tại. Việc sử dụng các vết bẩn và bội số đặc biệt phức tạp khi sử dụng các mắt lưới - bạn cần tạo ra các biến dạng lưới cho loại biến dạng lưới đó và tôi không tin rằng tôi đã thấy điều đó được thực hiện trong bất kỳ trò chơi video 3d nào.

Các khung hình với các vật thể chuyển động nhanh đi qua chúng có thể được hiển thị ở tốc độ khung hình khác và sau đó kết hợp lại để tạo ra chuyển động mờ trong cảnh. Chuyển động mờ là một kỹ thuật khá phổ biến trong đồ họa 3d thời gian thực ngày nay. Hiệu ứng thường không phải là chất lượng cao mà một nhà hoạt hình có hàng tá bộ xử lý sẽ xử lý (xem câu trả lời "thời gian" ở trên) phần lớn do thực tế là làm mờ chuyển động thực sự đòi hỏi nhiều bước xử lý bài trên mỗi lớp, và một số lượng lớn các khung trung gian để thực sự trôi chảy.

Thực hiện loại thủ thuật trực quan này để nâng cao chất lượng cảm nhận với đồ họa thời gian thực một cách hiệu quả đòi hỏi phải giới hạn tốc độ khung hình đầu ra ở mức thấp hơn các khung trung gian hiển thị nền tối đa có sẵn, sau đó thực hiện tổng hợp để tạo ra khung cuối cùng. Có lẽ có nhiều trường phái suy nghĩ về việc liệu mức tăng trung thực trực quan khi sử dụng các kỹ thuật như thế này có đáng để mất ngân sách khung hay không, đặc biệt là nếu nó sẽ cực kỳ khó để làm đúng.

Để giải quyết một khía cạnh của câu hỏi của bạn:

Điều gì về việc dựng phim hoạt hình hàng giờ liền khiến chúng trở nên đẹp đẽ trong khi kết xuất trực tiếp trong trò chơi lại kém đẹp (theo quan điểm chung)?

Nghệ nhân, chủ yếu. Các nghệ sĩ thời gian thực không có cơ hội tinh chỉnh từng khung hình hoặc tạo ra các mánh lới quảng cáo một lần để cải thiện cái nhìn tổng thể của một cảnh hoặc phản ứng, không chỉ vì hạn chế về thời gian (cả trong quá trình phát triển và kết xuất) mà còn bởi vì của những hạn chế thực tế. Như đã lưu ý trong phần bình luận tương tác, người chơi có thể sẽ không thực hiện chính xác điều tương tự mỗi lần, nhưng bộ phim sẽ phát cùng một lần mỗi lần.

Điều này có nghĩa là nghệ sĩ trò chơi video có một loạt các ưu tiên rất khác nhau, nơi nó liên quan đến chất lượng mô hình và chất lượng kết xuất cuối cùng so với nghệ sĩ phim. Cả hai đều đòi hỏi số lượng kỹ năng khổng lồ, nhưng mỗi yêu cầu kỹ thuật khác nhau. Tôi hy vọng các kỹ thuật này sẽ ngày càng hội tụ khi phần cứng kết xuất ở mức tiêu dùng tiếp tục phát triển và thiên tài toán học tiếp tục xuất hiện tại SIGGRAPH và GDC của bạn.


1
Oooh bạn vừa thảo luận về một cái gì đó mà tôi muốn nói về. Biến dạng lưới? nó cũng được gọi là sửa đổi lưới? Có một công cụ sửa đổi tôi đã sử dụng trong khi tôi sửa đổi với unity 3d, nó được gọi là mega-fiers ( west-racing.com/mf/?page_id=2 ). Mặc dù unity 3d chỉ hỗ trợ hoạt hình dựa trên xương, bạn có nghĩ rằng các công nghệ trò chơi cuối cùng đã đối phó với điều đó không? Tôi không có ý tưởng về các công cụ trò chơi khác mặc dù!
cowboysaif

1
Loại hiệu ứng đó phải tương thích với bất kỳ loại kỹ thuật hoạt hình nào miễn là bạn đang sử dụng các biến dạng toàn mô hình toán học với một shader đỉnh (có lẽ là những gì "mega-fiers" đang làm). Một vài cách tiếp cận khác là: * có lưới "đích" là lưới thứ hai bị biến dạng hoàn toàn và sử dụng trình tạo bóng đỉnh của bạn để di chuyển các đỉnh trong lưới của bạn về các đỉnh khớp của chúng trong lưới thứ hai; * có các biến dạng được nướng vào chính mô hình của bạn và sử dụng hoạt hình keyframe; * thực hiện các biến dạng của bạn bằng cách sử dụng hoạt hình xương chỉ đặt thêm xương khi cần thiết ...
Tom B

1
Tôi chắc chắn rằng loại hoạt hình này đã có thể được một thời gian và ở một mức độ nào đó đã được sử dụng mặc dù tôi chỉ có thể nhớ lại các trường hợp trong các trò chơi với các sinh vật blobby và mô hình linh hoạt (như Gish, Tower of Goo, Octodad) . Phần khó đến từ việc tìm ra khi nào nên sử dụng các hiệu ứng, đặc biệt là khi sử dụng bội số hoặc bôi nhọ. Hướng di chuyển của máy ảnh hưởng đến kết quả của nhiều hoặc kết quả bôi nhọ. Tôi nghi ngờ các hướng dẫn mà các nhà làm phim hoạt hình sử dụng sẽ là một điểm khởi đầu tốt, nhưng hãy nghĩ đến tất cả những điều thú vị cần có trong thử nghiệm!
Tom B

3

Một bộ phim hoạt hình duy nhất có thể mất nhiều năm để kết xuất trên một con thú duy nhất của máy. Vì nó được kết xuất sẵn, nên chúng ta không thêm các hiệu ứng tốn kém như ánh sáng, bóng, v.v. Những bộ phim này thường được kết xuất bằng cách kết xuất trang trại nơi hàng ngàn PC được liên kết với nhau làm việc trong cùng một công việc.

Lý do chúng ta không thể đạt được chất lượng tương tự trong thời gian thực đơn giản là vì máy cần kết xuất khung hình hiện tại trong khoảng 16ms để đạt được FPS là 60. Một khung hình duy nhất cho một bộ phim hoạt hình có thể mất hàng giờ để hiển thị trên một PC.

Trong một trò chơi, bên cạnh đồ họa, một tấn những thứ khác đang diễn ra. Mỗi khung có hàng tấn tính toán. Nói một cách đơn giản, một bộ phim hoạt hình không cần tính toán thiệt hại mà người chơi đã gây ra từ một bệ phóng tên lửa, bạn chỉ cần làm động các gibs và đa giác sẽ hiển thị.

May mắn thay, có một số người thiên tài đi bộ trên hành tinh này. Ngoài PC tốt hơn có thể tạo ra nhiều đa giác và kết cấu lớn hơn, còn có một số phát minh khéo léo được tạo ra như bản đồ bình thường có thể làm sáng ánh sáng / bóng trên một đa giác phẳng rất rẻ, làm cho một vật thể 3D nhàm chán trông rất chi tiết.

Một số trong những hiệu ứng đắt tiền làm cho bộ phim có thêm phần bùng phát.

  • Ánh sáng bật lên. Trong cuộc sống thực, ánh sáng bị dội lại cho đến khi nó bị hấp thụ hoàn toàn bởi các bề mặt mà nó bị bật lên. Đối với mỗi tính toán nguồn ánh sáng phải được thực hiện. Hãy thử giữ một vật màu bên cạnh một mảnh giấy trắng, bạn sẽ thấy màu sắc chảy ra trên tờ giấy.
  • Các trò chơi có những hạn chế khắc nghiệt về số lượng đa giác được sử dụng, các bộ phim prerender không có những hạn chế này, nó chỉ mất nhiều thời gian hơn để kết xuất. Quay lại với ánh sáng nảy, nếu chúng ta có nhiều đa giác hơn thì sẽ có nhiều phép tính ánh sáng hơn cho hình ảnh thậm chí tốt hơn nhưng với chi phí tăng theo cấp số nhân.
  • Kích thước họa tiết, card đồ họa chỉ có thể chứa một lượng dữ liệu nhất định trong chúng và việc chuyển đổi dữ liệu này rất tốn kém. Một kết cấu 1024x1024 phổ biến bao gồm tất cả các bản đồ đổ bóng có thể dễ dàng chiếm một vài phần trăm của thẻ GFX 1GB của bạn. Khi thẻ cần chuyển đổi dữ liệu, việc này sẽ mất chi phí. Rõ ràng là chúng ta không quan tâm quá nhiều đến việc này khi chiếu trước một bộ phim. Ngoài ra, trong một bộ phim, chúng ta chỉ cần các kết cấu có độ phân giải cao nơi máy quay ở gần, đối với một trò chơi, chúng tôi muốn điều này cho từng đối tượng mà người chơi có thể tiến gần đến.
  • Pathfinding rất khắt khe trên CPU. Các thuật toán tìm đường, ví dụ, làm cho kẻ thù tìm đường về phía bạn hoặc khiến người chơi của bạn đi trên một con đường khi bạn nhấp vào một nơi nào đó. Việc tìm đường này có thể tốn kém, khi có 10000 điểm (chỉ là mỗi mét vuông trên bản đồ 100m x 100m) thì có thể chúng ta cần phải đi qua tất cả các điểm này nhiều lần trên một khung. Có nhiều cách để làm cho giá rẻ hơn tùy thuộc vào nhu cầu nhưng thực tế là chúng ta không cần điều này cho các cảnh quay trước.

Nói một cách dễ hiểu, chúng ta cần đưa ra những thủ thuật "rẻ tiền" để làm cho trò chơi trở nên đẹp mắt. Nhưng mắt người khó đánh lừa.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.