Screen Space Global Illumination Cho Real Time Và Một Phiên Bản Dành Cho Blender EEVEE

Screen Space Global Illumination dành cho EEVEE được một tác giả implement trong một build của Blender, cung cấp miễn phí trên EEVEE, real-time baking indirect lighting.

https://gumroad.com/n0451?recommended_by=library#PgyXc

Tác giả đã phát triển và thể hiện qua demo này: https://www.instagram.com/hirokazu_yokohara/

Đây là đoạn video tác giả demo về chức năng real-time indirect lighting từ Screen Space Global Illumination chạy trên Blender EEVEE

Tức là các bồ sẽ có lighting hiệu ứng indirect light ngay trong real-time qua các mesh phát sáng từ emissive material hoặc light object. Tuy nhiên cần có nhiều samples hơn để render (tức cần dùng GPU mạnh để chạy cho kịp – cũng tùy vào khối lượng và phức tạp của scene)

Nhiều người dùng chạy 500 sample cho giống cycles cho đẹp luôn. Thường những scene thế này bake real-time thi nếu trong phòng, trong hộp, trong hang sẽ là sướng nhất khi dùng vì lúc đó sẽ thấy rõ nhất indirect light scattering trong môi trường tối, hoặc render làm 3D kiến trúc nội thất.

Đây là một cái hình minh họa đường đi của các ray ánh sáng từ nguồn sáng (mặt trời) đi đến chạm bề mặt (direct bounce) và sau đó sẽ tiếp tục phản xạ bật (indirect bounce) vào các surface theo hướng tiếp tục, các bounce này càng nhiều thì cần số lượng sampler tính càng nhiều để bớt noise, để sạch hình. Như vậy thấy rõ là nếu trong một không gian nội thất thì kiểu lighting này sẽ rất long lanh, đẹp, cũng như bản thân không gian sẽ làm cho scene nhanh hơn chứ chơi một cái cảnh vĩ đại ngoại thất thì rõ ràng là tiêu tốn rất nhiều tài nguyên GPU.

hình ảnh minh họa từ Internet

Hiện tại chức năng này có trên các engine game như Unreal Engine 4.26: https://docs.unrealengine.com/4.26/en-US/BuildingWorlds/LightingAndShadows/ScreenSpaceGlobalIllumination/

Và cũng như Unity https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@10.2/manual/Override-Screen-Space-GI.html

Global Illumination (GI) So Với Ray Tracing Thì Sao ?

Theo như có thể hiểu thì bản thân GI luôn sẽ thật hơn, là cao cấp và tiên tiến hơn kỹ thuật ray tracing, đây là mô hình phản xạ ánh sáng xung quanh bề mặt vật thể. Một mô hình GI sẽ luôn phức tạp, chuẩn vật lý hơn về ánh sáng và cho ra các hình ảnh thực hơn.

Một kỹ thuật khác hiện đang dùng trong các video game nhiều năm gần đây để tạo ra ánh sáng môi trường hấp dẫn trông thực, tức là lighting trong môi trường chính là: Screen-Space Ambient Occlusion (SSAO). Bản thân EA Games cũng có rất nhiều nghiên cứu với các kỹ thuật này cho engine game Frostbite của hãng, nhằm mục tiêu trông hình ảnh chân thực hơn, realtime ổn định hơn. Liên kết: https://www.ea.com/frostbite/news/stable-ssao-in-battlefield-3-with-selective-temporal-filtering 

Về bản chất, trong video game Day Gone đã có ứng dụng kỹ thuật Screen Space Ray Tracing Global Illumination, tuy nhiên khi so với SSAO thì việc thiếu đi một lớp Ambient Occlusion cũng cảm thấy hơi thiếu, nhưng về hình ảnh vẫn mướt và chân thực. Đây là video

NVIDIA RTX GLOBAL ILLUMINATION

Dĩ nhiên là Nvidia từ lâu đã tham gia cuộc chơi, họ liên tục đưa ra các công nghệ mới phục vụ cho việc real-time ngày càng có hình ảnh trông thực tế hơn, đẹp hơn, ánh sáng phản xạ như thực, bề mặt vật liệu sẽ càng ngày có các shader tính toán real-time càng tiệm cận với các khả năng của render engine path tracing hiện nay dành cho môi trường phim ảnh, có thể nói trong tương lai hoàn toàn có thể thấy các hình ảnh đồ họa real-time như trong phim ảnh ngày nay.

Liên kết tới GDC bài talk của Nvidia nói về RTX GI https://www.gdcvault.com/play/1026722/RTXGI-Scalable-Ray-Traced-Global

Post Author: Vu Pham