March 25, 2022 Ngoc Quynh

Các kỹ thuật nâng cao để tăng tốc độ kết xuất trên Redshift 3D

Redshift là một trình kết xuất mạnh mẽ sử dụng nhiều GPU, được xây dựng để đáp ứng các nhu cầu cụ thể của việc kết xuất đồ họa cao cấp đương thời. Nói cách khác, Redshift được thiết kế để hỗ trợ các cá nhân và studio sáng tạo ở mọi quy mô. Trên thực tế, Redshift cung cấp một bộ các tính năng mạnh mẽ và tích hợp với các ứng dụng CG tiêu chuẩn trong ngành. Trong vài năm qua, ngày càng có nhiều nhà thiết kế sử dụng Redshift để kết xuất và tăng tốc đáng kể thời gian kết xuất của họ nhờ trình kết xuất này.

Và thật tuyệt vời, Redshift có nhiều tùy chọn khác nhau cho phép bạn tinh chỉnh hiệu suất kết xuất, tùy thuộc vào yêu cầu cảnh của bạn. Đến với bài viết hôm nay, hãy cùng iRender khám phá một số kỹ thuật Tối ưu hóa tốt nhất để tăng tốc độ kết xuất trên Redshift 3D.

1. Tăng Trace Depth lên mức tối đa

Trace Depth kiểm soát cách phản xạ và khúc xạ có thể đi sâu tới mức nào. Cách đầu tiên để tăng tốc độ kết xuất trên Redshift 3D chính là tăng Trace Depth lên mức tối đa. Tồn tại các cài đặt riêng biệt cho sự phản chiếu, khúc xạ và độ trong suốt. Cài đặt “kết hợp” chỉ định giới hạn trên cho cả phản xạ và khúc xạ. Ví dụ, giả sử rằng sự phản xạ, khúc xạ và kết hợp đều được đặt thành giá trị là 10. Nếu một tia đã được phản xạ 8 lần, thì tia đó chỉ có thể bị phản xạ hoặc khúc xạ thêm 2 lần nữa vì độ sâu vết kết hợp là 10. Transparency trace depth cho phép các vật thể trong suốt thẳng như  Opacity trong Redshift Material đi sâu hơn nhiều so với các khúc xạ phức tạp. Cài đặt  Transparency Trace Depth đã được thêm vào với Redshift 3.0, khi sử dụng RS 3.0 để khớp kết quả với các cảnh cũ hơn, hãy đảm bảo đặt Transparency Trace Depth thành cùng giá trị với Refraction Trace Depth để nhận được kết quả tương tự như 2.6, liên quan đến cả ngoại hình và hiệu suất.

Lưu ý rằng việc nâng cao giới hạn trace depth  có thể làm tăng thời gian hiển thị! Hầu hết các cảnh có thể biến mất với reflection và refraction trace depth limits quá thấp. Điều này đặc biệt đúng đối với reflections. Bao lâu bạn có thể nhìn thấy sự phản chiếu của một hình ảnh phản chiếu khác của sự phản chiếu khác? Mặt khác, khúc xạ có thể khó khăn hơn. Những cảnh có thủy tinh có thể yêu cầu tăng refraction trace depth để tránh kết quả không chính xác đằng sau một vài lớp thủy tinh, như hình dưới đây:

Tương tự, một cảnh “gương phản chiếu” như hình bên dưới sẽ yêu cầu tăng reflection trace depth limit

2. Ngưỡng giới hạn - Cut-off Thresholds

Khi các tia đi qua phản xạ, khúc xạ hoặc bóng tối, chúng bị pha màu và trở nên mờ hơn. Ví dụ, một tia phát ra từ máy ảnh có thể chạm vào một chiếc gương rất mờ. Bất cứ thứ gì được phản chiếu trên tấm gương đó sẽ bị mờ. Khi các tia sáng trở nên mờ, chúng đóng góp rất ít vào hình ảnh cuối cùng, do đó, không có điểm nào để trình kết xuất tiếp tục phát chúng xung quanh.

Đặt ngưỡng giới hạn – Cut-off threshold cũng là một cách tăng tốc độ kết xuất trên Redshift 3D. Cut-off threshold cho phép người dùng chỉ định các giá trị tối thiểu được coi là “đen” và cho phép trình kết xuất kết thúc truy tìm sớm hơn. Các giá trị mặc định sẽ hoạt động tốt đối với hầu hết các cảnh, nhưng trong một số trường hợp, một tấm gương rất tối có thể phản chiếu một phần hình học cực kỳ sáng. Nếu trình kết xuất “cắt” các tia phản chiếu sớm, hạt grain sẽ xuất hiện. Nếu bạn nghi ngờ điều này đang xảy ra với cảnh của mình, bạn có thể thử giảm những con số này xuống. Để tắt hoàn toàn tính năng tối ưu hóa này, hãy đặt các giá trị thành 0,0.

Cảnh thử nghiệm bên dưới cho thấy điều gì sẽ xảy ra nếu có các vật thể rất sáng trong cảnh và cutoff thresholds không đủ thấp. Ở giữa cảnh có một quả cầu phản xạ và khúc xạ bằng thủy tinh. Xung quanh nó là 4 quả cầu tự phát sáng rất đẹp. eflection and refraction trace depths được đặt thành 16 nên phản xạ / khúc xạ của quả cầu tự phát sáng ‘lặp lại’ nhiều lần bên trong quả cầu thủy tinh.

3. Russian-Roulette

Một số bộ đổ bóng nhất định cần bắn nhiều loại tia khác nhau. Ví dụ, một kính đổ bóng cần bắn một tia để phản xạ và một tia khác để khúc xạ. Bộ đổ bóng kiến ​​trúc có thể bắn ra hai tia phản xạ (với các giá trị độ bóng khác nhau) và một tia khúc xạ. Chất tạo bóng sơn xe bắn ra hai tia phản xạ (với các giá trị độ bóng khác nhau). Khi các tia của những bóng đổ như vậy ‘nhìn thấy’ những bóng đổ khác cùng loại, số lượng tia phải bắn ra có thể tăng lên theo cấp số nhân với  trace depths ngày càng tăng. Hai tia ban đầu của kính đổ bóng có thể trở thành 4 tia ở độ sâu vết tiếp theo, sau đó là 8, rồi 16, 32, 64, v.v.

Russian-Roulette cho phép trình kết xuất chỉ bắn một loại tia khi mức độ quan trọng của tia thấp. Ví dụ, một tấm kính nhìn qua một tấm gương rất mờ thường có thể bị lệch đi đôi khi bắn ra tia phản xạ và một số trường hợp khác bắn ra tia khúc xạ. Việc chọn loại tia nào để bắn được điều khiển bởi các thông số đổ bóng. Ví dụ, nếu một tấm kính rất trong suốt và chỉ có một lượng phản xạ rất mờ, người kết xuất sẽ chủ yếu chọn tia khúc xạ. 

“Importance Threshold” quyết định thời điểm trình kết xuất sẽ bắt đầu thực hiện tối ưu hóa này. Số rất thấp có nghĩa là “bắt đầu làm điều đó đối với các tia sáng rất mờ” trong khi các số cao hơn có nghĩa là “làm điều đó đối với các tia sáng hơn một chút”. Vì vậy, con số càng cao, việc tối ưu hóa sẽ xảy ra càng sớm. Tuy nhiên, bắt đầu quá sớm có thể xuất hiện các grain artifacts. Nếu bạn nhìn thấy hạt trong kính của mình và bạn đang nghi ngờ là do Russian-Roulette, bạn có thể thử giảm con số này xuống 0,001. Để tắt hoàn toàn tính năng tối ưu hóa này, hãy đặt nó thành 0.0.

Tham số “Falloff” “dễ dàng” vào quá trình tối ưu hóa Russian-Roulette. Điều này có nghĩa là một khi cường độ của tia vượt qua giá trị “Importance Threshold”, trình kết xuất sẽ không đột ngột chuyển sang Russian Roulette mà sẽ làm điều đó dần dần. Điều này cải thiện các hiện vật tạo dải nhiễu tiềm ẩn. Mức độ dần dần của trình kết xuất sẽ dễ dàng vào quá trình tối ưu hóa Russian-Roulette được kiểm soát bởi tham số “Falloff”. Đặt tham số này thành 0.0 sẽ cho phép tối ưu hóa đột ngột, trong khi 1.0 thực hiện rất trơn tru. Rất hiếm khi người dùng cần điều chỉnh thông số này, vì vậy bạn nên để nó ở mức 0,5.

Để chứng minh các thông số của Russian-roulette parameters, chúng ta sẽ sử dụng cùng một cảnh đã sử dụng cho phần cut-offs.

4. Texture Sampling

Redshift hỗ trợ ánh xạ kết cấu chất lượng cao thông qua lọc ‘Anisotropic’. Redshift cũng hỗ trợ các kỹ thuật ánh xạ kết cấu nhanh nhưng chất lượng thấp hơn như ‘Bilinear’ (mờ) và ‘Point’ (khối).

Hầu hết các cảnh chỉ cần ánh xạ kết cấu chất lượng cao cho các phần của hình ảnh mà máy ảnh có thể nhìn thấy trực tiếp, tức là “tia chính”. Các tia thứ cấp (phản xạ, khúc xạ, GI, ánh sáng) và tia bóng tối thường ít quan trọng hơn về mặt thị giác nên chúng có thể bị loại bỏ khi sử dụng các kỹ thuật lấy mẫu kết cấu chất lượng thấp hơn. Vì lý do này, theo mặc định, Redshift cho phép ‘Anisotropic’ cho các tia sơ cấp và ‘Bilinear’ cho các tia thứ cấp và bóng tối.

MIP-maps là phiên bản được lọc trước (làm mờ) của kết cấu và được Redshift tính toán tự động ở hậu trường. Bản đồ MIP rất hữu ích trong việc làm cho textures  ít bị nhiễu hơn khi nhìn từ xa. Mỗi kết cấu có một số bản đồ MIP được liên kết với nó. Ví dụ: kết cấu 1024×1024 sẽ có bản đồ MIP 512×512, 256×256, 128×128, 64×64, 32×32, 16×16, 8×8, 4×4, 2×2 và 1×1. Mỗi lần trình kết xuất cần chọn một sample để lập texture mapping, nó sẽ chọn hai bản đồ MIP liên tiếp (ví dụ: 256×256 và 128×128) tùy thuộc vào khoảng cách đối tượng có kết cấu từ máy ảnh và sau đó lọc ở giữa chúng. Bộ lọc tốt nhất cho công việc này được gọi là “nội suy ba tuyến tính”. “MIP Filtering Trace Depth Threshold” buộc trình kết xuất phải tắt tính năng lọc “ba tuyến tính” giữa các cấp bản đồ MIP sau độ sâu theo dõi được chỉ định, điều này sẽ giúp tăng hiệu suất nhưng với khuyết điểm là tạo banding artifacts. Nói chung, tạo banding artifacts sẽ không hiển thị ngoài độ sâu vết nhất định, vì vậy bạn nên sử dụng cài đặt mặc định và cho phép trình kết xuất chuyển sang chế độ lọc “hai tuyến tính” “bi-linear” sau trace depth đầu tiên. 

Tùy chọn“Copy Pre-Converted Textures to Cache Folder”  được sử dụng để nối với các kết cấu đã được chuyển đổi trước bằng công cụ ‘TextureProcessor’. Theo mặc định, tùy chọn này được bật, giả định rằng thư mục bộ đệm kết cấu cục bộ có hiệu suất IO tốt hơn thư mục kết cấu nguồn, điều này thường xảy ra, ví dụ: khi các kết cấu nguồn được lưu trữ trên các ổ đĩa mạng chậm hơn hoặc khi thư mục bộ đệm kết cấu cục bộ nằm trên một Ổ SSD trong khi thư mục kết cấu nguồn nằm trên ổ cơ. Bằng cách sao chép các kết cấu được chuyển đổi trước vào thư mục bộ nhớ cache của máy cục bộ, việc truyền trực tuyến tệp kết cấu ngoài lõi trong quá trình kết xuất có thể nhanh hơn đáng kể, điều này có thể có tác động đáng kể đến hiệu suất hiển thị. Tùy chọn này sẽ bị vô hiệu hóa khi hiệu suất IO của thư mục bộ đệm kết cấu bằng hoặc thấp hơn hiệu suất của thư mục kết cấu nguồn.

5. Global Overrides

Các tùy chọn “Bật phản xạ”“Bật khúc xạ” trên toàn cầu sẽ bật / tắt phản xạ và khúc xạ tương ứng. Tùy chọn “Bật tán xạ dưới bề mặt” bỏ qua tất cả tiền xử lý phân tán dưới bề mặt và hiển thị các bộ đổ bóng SSS dưới dạng khuếch tán. Tương tự, “Enable Tessellation And Displacement” cho phép / vô hiệu hóa tất cả cách viết và chuyển vị. Tùy chọn “Enable Emission” trên toàn cầu sẽ bật / tắt phát xạ trên vật liệu.

Kết luận

Mong rằng sau bài viết này, bạn có thể có thêm nhiều kiến thức mới để tối ưu hóa cảnh, tăng tốc render và có thể tận dụng nó để tạo ra những dự án tuyệt vời trong tương lai.

Và một điều thú vị cho bạn! iRender là một trong những renderfarm rất được khuyến khích cho Redshift. Chúng tôi cung cấp các máy chủ chuyên dụng cho người dùng Redshift. Bạn có thể sử dụng các máy tính hiệu suất cao để tăng tốc độ kết xuất trên Redshift. Đặc biệt, chúng tôi có các máy chủ với nhiều card  RTX 3090 đi kèm với các thông số cấu hình sau:

Cấu hình máy chủ của iRender không chỉ vượt qua các yêu cầu phần cứng tối thiểu của Redshift mà còn vượt quá các yêu cầu được khuyến nghị. Redshift hỗ trợ nhiều GPU trên một máy, giúp tăng hiệu suất hiển thị lên nhiều lần. Đây là một trong những lý do chính mà chúng tôi đề xuất 4 gói này để các nhà thiết kế có sự lựa chọn linh hoạt dựa trên ngân sách và thời gian của mình. Hơn nữa, gói này sử dụng thẻ GPU Nvidia với dung lượng VRAM tối thiểu từ 10GB lên đến 24 GB. Ngoài ra, với NVLink có sẵn, VRAM giờ đây sẽ lên đến 48GB (RTX3090), giúp bạn lưu trữ và giải quyết các cảnh hoặc dữ liệu lớn và phức tạp.

Vì vậy, đừng ngần ngại trở thành thành viên của cộng đồng iRender ngay hôm nay để nhận COUPON MIỄN PHÍ để không lãng phí những giờ render vô nghĩa, và trực tiếp trải nghiệm dịch vụ. Luôn đi đầu trong công nghệ đồ họa tiên tiến, chúng tôi kết xuất, sáng tạo là của bạn!

Thank you & Happy Rendering!

Nguồn tham khảo:Redshift documentation
, , , , , , , , , , , , ,
Contact

INTEGRATIONS

Autodesk Maya
Autodesk 3DS Max
Blender
Cinema 4D
Houdini
Maxwell
Nvidia Iray
Lumion
KeyShot
UE4
Twinmotion
Redshift
Octane
And many more…

iRENDER TEAM

MONDAY – SUNDAY
9:00 AM – 8:00 PM
Hotline: 0916 806 116
Zalo: 0916 806 116
Skype: iRender Support
Email: [email protected]
CÔNG TY CỔ PHẦN CÔNG NGHỆ IRENDER VIỆT NAM
MST: 0108787752
Office: 5/82 Dịch Vọng Hậu, Cầu Giấy, Hà Nội.

Contact
0916806116