Quá trình kết xuất đóng một vai trò quan trọng trong chu trình phát triển đồ họa máy tính . Chúng ta sẽ không đi sâu vào quá sâu ở đây, nhưng không có thảo luận nào về đường ống CG sẽ hoàn thành mà không ít nhất là đề cập đến các công cụ và phương pháp để dựng hình ảnh 3D.
Giống như phát triển phim
Rendering là khía cạnh kỹ thuật phức tạp nhất về sản xuất 3D, nhưng nó thực sự có thể được hiểu khá dễ dàng trong bối cảnh tương tự: Giống như một nhiếp ảnh gia phim phải phát triển và in ảnh của mình trước khi chúng có thể được hiển thị, các chuyên gia đồ họa máy tính đang gánh nặng tương tự cần thiết.
Khi một nghệ sĩ đang làm việc trên một cảnh 3D , các mô hình ông thao tác thực sự là một đại diện toán học của các điểm và bề mặt (cụ thể hơn, đỉnh và đa giác) trong không gian ba chiều.
Thuật ngữ kết xuất đề cập đến các tính toán được thực hiện bởi công cụ hiển thị của gói phần mềm 3D để dịch cảnh từ phép tính gần đúng sang hình ảnh 2D đã hoàn thành. Trong quá trình này, toàn bộ thông tin về không gian, kết cấu và ánh sáng của toàn cảnh được kết hợp để xác định giá trị màu của mỗi pixel trong hình ảnh phẳng.
Hai loại Rendering
Có hai loại kết xuất chính, sự khác biệt chính của chúng là tốc độ hình ảnh được tính toán và hoàn thành.
- Hiển thị thời gian thực: Hiển thị thời gian thực được sử dụng nổi bật nhất trong trò chơi và đồ họa tương tác, nơi hình ảnh phải được tính từ thông tin 3D với tốc độ cực kỳ nhanh.
- Tương tác: Vì không thể dự đoán chính xác cách người chơi sẽ tương tác với môi trường trò chơi, hình ảnh phải được hiển thị trong "thời gian thực" khi hành động mở ra.
- Tốc độ vấn đề: Để cho chuyển động xuất hiện chất lỏng, tối thiểu 18-20 khung hình mỗi giây phải được trả lại cho màn hình. Bất cứ điều gì ít hơn này và hành động sẽ xuất hiện choppy.
- Phương pháp: Hiển thị thời gian thực được cải thiện đáng kể bằng phần cứng đồ họa chuyên dụng (GPU) và bằng cách biên dịch trước càng nhiều thông tin càng tốt. Rất nhiều thông tin về ánh sáng của môi trường trò chơi được tính toán trước và "nướng" trực tiếp vào các tệp kết cấu của môi trường để cải thiện tốc độ hiển thị.
- Ngoại tuyến hoặc Hiển thị trước: Hiển thị ngoại tuyến được sử dụng trong các trường hợp tốc độ ít vấn đề hơn, với các tính toán thường được thực hiện bằng cách sử dụng CPU đa lõi thay vì phần cứng đồ họa chuyên dụng.
- Khả năng dự đoán: Hiển thị ngoại tuyến được nhìn thấy thường xuyên nhất trong hoạt ảnh và hiệu ứng hoạt động, nơi sự phức tạp và photorealism hình ảnh được tổ chức theo tiêu chuẩn cao hơn nhiều. Vì không có khả năng không dự đoán được về những gì sẽ xuất hiện trong mỗi khung hình, các studio lớn đã được biết là dành thời gian hiển thị lên tới 90 giờ cho từng khung hình riêng lẻ.
- Photorealism: Do hiển thị ngoại tuyến xảy ra trong khung thời gian mở, mức độ photorealism cao hơn có thể đạt được hơn với hiển thị thời gian thực. Các ký tự, môi trường và các kết cấu và ánh sáng liên quan của chúng thường được cho phép với số lượng đa giác cao hơn và các tệp kết quả có độ phân giải 4k (hoặc cao hơn).
Kỹ thuật hiển thị
Có ba kỹ thuật tính toán chính được sử dụng cho hầu hết hiển thị. Mỗi bộ đều có những ưu điểm và nhược điểm riêng, làm cho cả ba tùy chọn khả thi trong một số tình huống nhất định.
- Scanline (hoặc rasterization): Scanline rendering được sử dụng khi tốc độ là một điều cần thiết, mà làm cho nó là kỹ thuật của sự lựa chọn cho thời gian thực rendering và đồ họa tương tác. Thay vì hiển thị pixel theo pixel, trình kết xuất đồ họa sẽ tính toán trên đa giác theo cơ sở đa giác. Các kỹ thuật quét được sử dụng kết hợp với ánh sáng (nướng) có thể đạt được tốc độ 60 khung hình mỗi giây hoặc tốt hơn trên một cạc đồ họa cao cấp.
- Raytracing: Trong raytracing, đối với mỗi điểm ảnh trong cảnh, một (hoặc nhiều) tia sáng được chiếu từ máy ảnh đến vật thể 3D gần nhất. Tia sáng sau đó được truyền qua một số "bị trả lại" có thể bao gồm sự phản xạ hoặc khúc xạ tùy thuộc vào vật liệu trong cảnh 3D. Màu của mỗi điểm ảnh được tính toán theo thuật toán dựa trên tương tác của tia sáng với các vật thể trong đường đi của nó. Raytracing có khả năng photorealism lớn hơn scanline nhưng chậm hơn theo cấp số nhân.
- Radiosity: Không giống như raytracing, radiosity được tính độc lập với camera, và được định hướng bề mặt hơn là pixel-by-pixel. Chức năng chính của radiosity là mô phỏng chính xác màu bề mặt hơn bằng cách tính toán ánh sáng gián tiếp (ánh sáng khuếch tán bị phản xạ). Radiosity thường được đặc trưng bởi bóng tốt nghiệp mềm mại và chảy máu màu, nơi ánh sáng từ các đối tượng có màu sắc rực rỡ "chảy máu" lên các bề mặt gần đó.
- Trong thực tế, radiosity và raytracing thường được sử dụng kết hợp với nhau, sử dụng những lợi thế của mỗi hệ thống để đạt được mức độ ấn tượng của photorealism.
Phần mềm hiển thị
Mặc dù dựng hình dựa trên các tính toán cực kỳ phức tạp, nhưng phần mềm ngày nay cung cấp các thông số dễ hiểu để làm cho nó trở thành một nghệ sĩ không bao giờ cần phải đối phó với toán học cơ bản. Một công cụ render được bao gồm trong tất cả các bộ phần mềm 3D chính, và hầu hết trong số chúng bao gồm các gói vật liệu và ánh sáng mà làm cho nó có thể đạt được mức độ tuyệt vời của photorealism.
Hai công cụ hiển thị phổ biến nhất:
- Tinh thần Ray - Đóng gói với Autodesk Maya. Ray tinh thần cực kỳ linh hoạt, tương đối nhanh và có lẽ là trình kết xuất có thẩm quyền nhất cho hình ảnh nhân vật cần tán xạ dưới bề mặt. Mental ray sử dụng một sự kết hợp của raytracing và "chiếu sáng toàn cầu" (radiosity).
- V-Ray - Bạn thường thấy V-Ray được sử dụng kết hợp với 3DS Max — cùng với nhau là hoàn toàn vô song đối với việc hiển thị kiến trúc và hiển thị môi trường. Ưu điểm chính của VRay so với đối thủ cạnh tranh là các công cụ chiếu sáng và thư viện vật liệu mở rộng cho kiến trúc sư.
Hiển thị là một chủ đề kỹ thuật, nhưng có thể khá thú vị khi bạn thực sự bắt đầu xem xét kỹ hơn một số kỹ thuật phổ biến.