Tìm hiểu về Lumen, Ray Tracing và Path Tracing trong Unreal Engine 5

Cùng tìm hiểu tất tần tật những điểm cơ bản và cần ghi nhớ nhất về Path-tracer, Ray-tracing và Lumen trong Unreal Engine.

Tìm hiểu về Lumen, Ray Tracing và Path Tracing trong Unreal Engine 5

Trong những năm gần đây, ray tracingpath tracing đã trở thành hai công nghệ quan trọng trong pipeline render của Unreal Engine. Nhờ sự phát triển của GPU hiện đại, Unreal không chỉ còn là một game engine phục vụ realtime visualization, mà còn có thể đảm nhiệm vai trò của một render engine cho hình ảnh chất lượng cao.

Tuy nhiên, ray tracing và path tracing không phải là hai công nghệ cạnh tranh nhau. Chúng được thiết kế để phục vụ những mục tiêu khác nhau trong quá trình sản xuất hình ảnh, từ realtime visualization cho đến render marketing hoặc cinematic có độ chân thực cao.

Trong bài viết này, hãy cùng nhau tìm hiểu tất tần tật những điểm cơ bản và cần ghi nhớ nhất về chúng.

1. Giới thiệu về Ray-tracing

1.1. Khái niệm

Ray Tracing là kỹ thuật mô phỏng đường đi của ánh sáng bằng cách bắn tia (ray) từ camera vào scene.

Hình 1. Mô phỏng nguyên lý hoạt động của Ray-tracing

Quy trình đơn giản như sau:

  • Camera bắn một tia vào pixel trên màn hình
  • Tia đó chạm vào bề mặt vật thể
  • Engine tính toán: ánh sáng trực tiếp, phản xạ, khúc xạ, bóng đổ
  • Sau đó ray có thể bật tiếp sang các hướng khác để tính thêm ánh sáng.

1.2. Đặc điểm của Ray Tracing

  • Chính xác hơn rasterization
  • Cho reflection và shadow rất đẹp
  • Nhưng giới hạn số bounce ánh sáng để giữ hiệu năng

Hình 2. Ray-tracing mang lại trải nghiệm thị giác khác biệt

1.3. Cách bật Ray-tracing trong Unreal Engine

  • Ray tracing trong Unreal cần GPU hỗ trợ DXR (DirectX Ray Tracing).
  • Vào Project Setting → Rendering → Hardware Ray Tracing → Support Hardware Ray Tracing → Restart Editor

 

2. Giới thiệu về Path-tracing (Path tracer trong Unreal)

2.1. Khái niệm

Path Tracing là một dạng ray tracing nhưng mô phỏng toàn bộ đường đi của ánh sáng một cách vật lý chính xác hơn.

Computer Graphics Learning - Global Illumination

Hình 3. Mô phỏng nguyên lý hoạt động của Path-tracing

Thay vì tính một vài bounce ánh sáng, path tracing sẽ:

  • Bắn hàng nghìn ray cho mỗi pixel
  • Cho phép ánh sáng bounce nhiều lần trong scene
  • Sử dụng Monte Carlo sampling để ước lượng ánh sáng toàn cục

Điều này giúp mô phỏng được: Global illumination chính xác, Color bleeding, Caustics, ánh sáng gián tiếp phức tạp

Hình 4. "Virtual tour in Unreal Engine" by ARCHVYZ. Design by Toledano Architects.

2.2. Nhược điểm

  • Path tracing cực kỳ tốn thời gian tính toán.
  • Do đó nó thường dùng trong offline rendering như: V-Ray, Corona, Arnold, Redshift (hybrid)

2.3. Cách bật Path-tracing trong Unreal Engine

  • Enable Hardware Ray Tracing trong Project Settings
  • Enable Path Tracer trong Project Settings
  • Trong viewport chọn View Mode → Path Tracing
  • Khi render, chọn: Movie Render Queue → Path Tracer

Một số thiết lập quan trọng:

  • Samples Per Pixel, Max Bounces (hai mục này chỉnh trong PostprocessVolume hoặc trong Camera)
  • Denoiser, Anti-aliasing (Hai mục này chỉnh trong Render setting của Movie Render queue)

2.4. Path-tracing trong Unreal Engine Khác gì so với V-Ray hay Corona?

Về nguyên lý vật lý thì khá giống nhau. Nhưng workflow lại khác.

Unreal Path Tracer

V-Ray / Corona

GPU realtime engine

offline renderer

Scene interactive

render tĩnh

ánh sáng preview realtime

phải render lại

tích hợp animation realtime

animation nặng

Điểm mạnh của Unreal là workflow cực nhanh:

  • thay đổi vật liệu
  • thay đổi ánh sáng
  • update ngay lập tức

Điều này đặc biệt hữu ích khi duyệt phương án với khách hàng. Về điểm này UE giống với Chaos Vantage, D5, Lumion hoặc TwinMotion.

3. Giới thiệu về Lumen

3.1. Khái niệm

Lumen là hệ thống dynamic global illumination và reflections được Epic phát triển riêng cho Unreal Engine 5.

Lumen in UE5: Let there be light! - Unreal Engine

Hình 5. Lumen là hệ thống chiếu sáng riêng của Unreal Engine

Thay vì dùng ray tracing hoàn toàn, Lumen sử dụng một hybrid technique gồm:

  • Screen space tracing
  • Software ray tracing (distance fields)
  • Hardware ray tracing (tuỳ chọn)

Điều này giúp Lumen đạt được:

  • ánh sáng bounce tự nhiên
  • thay đổi ánh sáng realtime
  • hiệu năng đủ để chạy trong game

3.2. Đặc điểm của Lumen

Ưu điểm

  • Global illumination realtime
  • Không cần bake lightmap
  • Thay đổi ánh sáng và geometry ngay lập tức
  • Phù hợp với môi trường lớn

Nhược điểm

  • Reflection không chính xác bằng ray tracing
  • Noise hoặc artifact trong một số trường hợp
  • Không đạt mức photoreal như path tracing

Lưu ý: Lumen và Ray Tracing không phải là một.
Chúng liên quan đến nhau nhưng khác mục tiêu và khác cách hoạt động.

Có thể hiểu ngắn gọn:

  • Ray Tracing → một kỹ thuật render ánh sáng
  • Lumen → một hệ thống global illumination của Unreal, có thể dùng ray tracing hoặc không

Tiêu chí

Lumen

Ray Tracing

Path Tracing

Realtime

Global illumination

giới hạn

Reflection accuracy

trung bình

cao

rất cao

Photorealism

khá

cao

rất cao

Performance

tốt

trung bình

rất nặng

Mục tiêu

game / walkthrough

realtime high-end

offline render

 

4. Liệu có Real-time path tracing không?

Câu trả lời thú vị là: có… nhưng chưa phổ biến. Một số hướng nghiên cứu hiện nay gồm:

4.1. Realtime path tracing bằng GPU mạnh

Card như: RTX 4090, RTX 6000 Ada đã có thể chạy interactive path tracing ở mức đơn giản.

4.2. Denoising bằng AI

Các công nghệ như:

  • NVIDIA OptiX Denoiser
  • DLSS Ray Reconstruction

cho phép render với ít sample nhưng vẫn sạch noise.

Điều này khiến path tracing realtime dần khả thi.

4.3. NVIDIA NvRTX

NvRTX (NVIDIA RTX Branch) là một phiên bản Unreal Engine được NVIDIA tùy biến và mở rộng nhằm khai thác tối đa khả năng của GPU RTX.

Có thể hiểu một cách đơn giản:

  • Unreal Engine gốc → do Epic phát triển
  • NvRTX → Unreal Engine + các công nghệ ray tracing tiên tiến của NVIDIA

Các công nghệ nổi bật trong NvRTX

  • RTX Global Illumination (RTXGI) là hệ thống dynamic global illumination của NVIDIA.
  • RTXDI (RTX Direct Illumination) giải quyết một bài toán rất khó trong realtime rendering: hàng nghìn nguồn sáng động trong scene. RTXDI sử dụng kỹ thuật: ReSTIR (Reservoir-based Spatiotemporal Importance Resampling). Kỹ thuật này cho phép: tính toán ánh sáng từ rất nhiều light sources vẫn giữ hiệu năng realtime
  • RTX Caustics giúp render hiệu ứng Caustics bằng ray tracing.
  • NvRTX không giúp Unreal render path tracing realtime. Thay vào đó, nó cung cấp các kỹ thuật ray tracing tiên tiến để đạt chất lượng ánh sáng gần với path tracing trong realtime.

5. Kết luận

Việc lựa chọn ray tracing hay path tracing trong Unreal Engine phụ thuộc chủ yếu vào mục tiêu của dự án và yêu cầu về hiệu năng.

  • Nếu dự án cần trải nghiệm tương tác thời gian thực như walkthrough, game hoặc demo kiến trúc, ray tracing (hoặc các giải pháp realtime như Lumen) thường là lựa chọn hợp lý để cân bằng giữa chất lượng hình ảnh và hiệu suất.
  • Ngược lại, khi mục tiêu là tạo ra hình ảnh cuối cùng với độ chân thực tối đa, chẳng hạn như marketing render, cinematic hoặc still image trong diễn hoạ kiến trúc, path tracing sẽ mang lại kết quả chính xác về mặt vật lý và ánh sáng.

Do đó, thay vì xem ray tracing và path tracing là hai giải pháp thay thế lẫn nhau, có thể hiểu rằng chúng là hai công cụ bổ sung, giúp Unreal Engine đáp ứng nhiều nhu cầu khác nhau trong quy trình sản xuất hình ảnh 3D hiện đại.