Image default
Máy Tính

Neural Texture Compression: Bước Đột Phá Mới Định Hình Tương Lai Đồ Họa Game PC

Đồ họa trên PC đã đạt đến một ngưỡng nhất định. Tất nhiên, chúng ta vẫn được chiêm ngưỡng những tựa game tuyệt đẹp, đẩy mạnh giới hạn công nghệ trên PC, từ Doom: The Dark Ages với công nghệ dò tia (path tracing) theo thời gian thực cho đến Multi-Frame Generation (MFG) của Nvidia đã có mặt trong hàng chục trò chơi. Tuy nhiên, thế hệ card đồ họa này dường như đã chạm đến một bức tường. Các công nghệ hình học ảo hóa như Nanite của Unreal Engine đã phổ biến, và dò tia đã tiến xa đến mức trở thành một tính năng bắt buộc trong các tựa game như Doom: The Dark Ages.

Mặc dù kết xuất đồ họa thời gian thực đã có những nền tảng vững chắc trong thế hệ này, một tính năng mới đã âm thầm phát triển trong vài năm qua. Đây không phải là điều bạn sẽ đọc được trên trang Steam hay nghe trong các buổi thuyết trình lớn, nhưng một nhóm nhỏ những người đam mê đã mong chờ tiềm năng của nó kể từ khi khái niệm này được Nvidia giới thiệu cách đây hai năm. Đó chính là Neural Texture Compression (NTC) – Nén Texture Thần kinh, một thách thức mà các nhà nghiên cứu đồ họa đã cố gắng giải quyết trong hơn hai năm. Và giờ đây, nó vừa có một bước đột phá lớn.

Gameplay Doom The Dark Ages với công nghệ path tracing đồ họa chân thựcGameplay Doom The Dark Ages với công nghệ path tracing đồ họa chân thực

Tìm hiểu về Neural Texture Compression (NTC)

NTC đã xuất hiện vài năm nay

Neural Texture Compression (NTC) là một công nghệ rất quan trọng, và bạn có thể thấy điều đó chỉ bằng cách hiểu nó hoạt động như thế nào. Khi bạn chơi một trò chơi, các texture được tải từ các tệp nén lưu trữ cùng với trò chơi. Các tệp này được gửi đến GPU của bạn, lưu trữ trong VRAM, sau đó được giải nén. Có hai nguồn gây giảm hiệu suất và/hoặc chất lượng ở đây: thời gian cần thiết để đọc và giải nén texture từ ổ cứng, cũng như yêu cầu về VRAM khi texture sẵn sàng để hiển thị.

Điều này đã dẫn đến nhiều vấn đề khi các texture ngày càng lớn và phức tạp hơn. Có vấn đề về việc thiếu VRAM, nơi việc hoán đổi mức độ chi tiết (level-of-detail swapping) không thể theo kịp logic trò chơi và gây ra hiện tượng pop-in rõ ràng (các vật thể đột ngột xuất hiện hoặc thay đổi chi tiết). Ngoài ra còn có sự sụt giảm hiệu suất, vì các texture lớn mất nhiều thời gian hơn để truyền qua hệ thống và giải nén trên GPU. Neural Texture Compression giải quyết vấn đề này bằng cách ứng dụng AI. Thay vì một tệp texture nén cần phải trải qua chuỗi xử lý truyền thống này, NTC tìm cách biểu diễn các texture bằng một định dạng mà một mô hình AI có thể đọc và thực hiện suy luận.

Nvidia đã trình diễn khả năng NTC nén một texture 272MB xuống chỉ còn 11.37MB. Ai có thể phủ nhận hiệu quả này?

Thay vì một texture khổng lồ chiếm rất nhiều VRAM của bạn, Neural Texture Compression sử dụng một “texture” rất nhẹ mà một mô hình AI có thể nhận diện. Sau đó, các nhân Tensor (Tensor cores) trên GPU của bạn sẽ được kích hoạt để thực hiện suy luận, và texture sẽ được tạo ra với chất lượng như bạn mong đợi. Trên thực tế, tài liệu nghiên cứu ban đầu của Nvidia đã chỉ ra rằng NTC có thể dẫn đến các texture có chất lượng cao hơn. Các nhà phát triển game không chỉ có thể sử dụng các texture lớn hơn mà còn không phải đối phó với các lỗi nén (compression artifacts) thường xuất hiện với phương pháp nén khối (block compression) truyền thống.

Rất khó để phủ nhận một kỹ thuật như Neural Texture Compression. Nó mang lại hiệu suất tốt hơn, ít gánh nặng hơn và tiềm năng tạo ra các texture chất lượng cao. Nhưng đã vài năm kể từ khi Nvidia giới thiệu ý tưởng này, và chúng ta vẫn chưa thấy nó được ứng dụng trong một phần mềm kết xuất đồ họa theo thời gian thực. Nvidia đã trình diễn khả năng NTC nén một texture 272MB xuống chỉ còn 11.37MB. Ai có thể phủ nhận hiệu quả này? Ấn tượng như vậy, NTC vẫn chưa thực tế để sử dụng trong một trò chơi phát hành cho đến thời điểm hiện tại. Tuy nhiên, điều đó có thể đang thay đổi.

Mô tả hoạt động của công nghệ Neural Texture Compression (NTC) từ NvidiaMô tả hoạt động của công nghệ Neural Texture Compression (NTC) từ Nvidia

Bước đột phá quan trọng vừa diễn ra

Giải quyết trở ngại về lọc texture (filtering hurdle)

Trong tài liệu nghiên cứu gốc của Nvidia về NTC, các nhà nghiên cứu đã để lại một ghi chú trong phần “Hạn chế”: “Lọc không cuộn (Unrolled filtering) tốn kém về mặt tính toán, và lọc ngẫu nhiên (stochastic filtering) có thể gây ra hiện tượng nhấp nháy do tăng gánh nặng cho quá trình tái tạo không gian-thời gian. Tài liệu cho thấy có thể tạo ra các biểu diễn thần kinh có thể lọc trực tiếp, nhưng chúng tôi để dành việc này cho các nghiên cứu tương lai.” Công trình tương lai được đề cập trong tài liệu nghiên cứu gốc chính là những gì chúng ta đang chứng kiến bây giờ.

Trong một tài liệu mới của Nvidia có tên “Collaborative Texture Filtering,” các nhà nghiên cứu đã thảo luận về các vấn đề với lọc texture ngẫu nhiên (stochastic texture filtering) khi sử dụng biểu diễn thần kinh của texture, như với NTC; bạn có thể đọc tài liệu của Nvidia về lọc texture ngẫu nhiên nếu quan tâm đến kỹ thuật này. Trong ngữ cảnh của NTC, điều quan trọng cần biết là lọc texture dẫn đến nhiễu và nhấp nháy khi texture được phóng đại, về cơ bản khiến NTC không thể được sử dụng bởi bất kỳ nhà phát triển nào đang làm việc trên một trò chơi thương mại.

Kỹ thuật mà Nvidia gọi là Collaborative Texture Filtering (CTF) dựa trên công trình trước đây về lọc texture ngẫu nhiên, nơi các nhà nghiên cứu đã chỉ ra rằng có thể chia sẻ các texel (đơn vị của texture) đã giải nén với các pixel lân cận. CTF tiến thêm một bước nữa. Sử dụng các hàm nội tại GPU (GPU intrinsics) có sẵn trong DirectX 12 và Vulkan, Nvidia cho biết họ có thể chia sẻ các texel giữa các pixel mà không cần giải nén texel lặp lại, và trong quá trình đó, tạo ra khả năng lọc không lỗi với NTC mà không gây tốn hiệu suất đáng kể.

Nếu tất cả những điều đó nghe có vẻ khó hiểu, đây là tóm tắt đơn giản: NTC sẽ gây ra nhiễu và nhấp nháy khi texture được phóng đại, khiến nó không thể sử dụng trong một trò chơi thực tế. Giờ đây, các nhà nghiên cứu của Nvidia đã tìm ra cách loại bỏ hiện tượng nhấp nháy đó bằng cách lọc texture phù hợp. Và, trong tài liệu của họ, các nhà nghiên cứu đã minh họa cụ thể CTF hoạt động với một texture NTC.

Cảnh chơi game Half-Life 2 RTX minh họa đồ họa công nghệ caoCảnh chơi game Half-Life 2 RTX minh họa đồ họa công nghệ cao

Tương lai nào cho Neural Texture Compression?

Hỗ trợ Cooperative Vector còn rất mới

Tôi sẽ không giả vờ biết về một lộ trình cụ thể cho NTC hoặc các kỹ thuật tương tự được trình diễn bởi các nhà nghiên cứu tại AMD hoặc Intel. SDK NTC hiện có sẵn miễn phí trên GitHub, vì vậy, về lý thuyết, nó có thể được tích hợp vào các trò chơi ngay bây giờ. Còn việc khi nào chúng ta bắt đầu thấy NTC trong các trò chơi, điều đó hoàn toàn phụ thuộc vào các nhà phát triển game. Cho đến thời điểm này, có rất nhiều lý do không nên sử dụng các biểu diễn thần kinh cho việc nén texture, không chỉ vì các vấn đề đã nói ở trên với việc lọc các texture đó, mà còn do sự hỗ trợ phần cứng.

NTC chạy một mạng nơ-ron trên GPU, vì vậy nó cần quyền truy cập vào phần cứng AI, và đó là lĩnh vực mà các yếu tố cuối cùng đang hội tụ. DirectX và Vulkan hiện hỗ trợ Cooperative Vectors, về cơ bản cho phép các nhà phát triển khai thác phần cứng AI có sẵn trên card đồ họa của bạn thông qua API – các nhà phát triển có thể thêm kết xuất AI vào các shader của họ mà không cần nhắm mục tiêu đến một nhà cung cấp cụ thể. Vấn đề là hỗ trợ Cooperative Vector còn tương đối mới; nó vừa được giới thiệu vào đầu năm nay trong DirectX. Hỗ trợ GPU vẫn còn rất nhiều điều chưa chắc chắn.

AMD, Nvidia và Intel đều có bộ tăng tốc AI trên GPU của họ, nhưng ở các mức độ khác nhau. Ví dụ, các GPU RDNA 4 như RX 9070 XT hỗ trợ Cooperative Vectors, nhưng hỗ trợ RDNA 3 dường như còn xa vời. Trong SDK NTC, Nvidia lưu ý rằng mọi thứ từ dòng GTX 10-series trở xuống đều phải hoạt động, nhưng họ đã đặc biệt vô hiệu hóa suy luận với Cooperative Vectors trên GPU Turing và Ampere. Trước khi một thứ gì đó như NTC có thể xuất hiện trong một trò chơi thương mại, nó cần được hỗ trợ rõ ràng bởi một lượng lớn phần cứng mà game thủ thực sự đang sử dụng. Công việc đó đang được tiến hành, nhưng còn lâu mới hoàn thành.

So sánh chất lượng hình ảnh khi bật và tắt công nghệ DLSS 4 của NvidiaSo sánh chất lượng hình ảnh khi bật và tắt công nghệ DLSS 4 của Nvidia

Ngoài ra còn có vấn đề về cơ chế dự phòng (fallbacks) cần giải quyết. Nếu sự hỗ trợ còn rời rạc như hiện tại, các nhà phát triển sẽ cần bao gồm các texture nén thông thường cùng với các biểu diễn thần kinh cho NTC, điều này đòi hỏi rất nhiều công sức cho một khả năng còn khá ngách vào lúc này. Sẽ mất vài năm nữa cho đến khi chúng ta thấy bất cứ điều gì như NTC, và tôi nghi ngờ nó sẽ được triển khai một cách âm thầm. Chúng ta có thể sẽ thấy nó được áp dụng cho một số texture chứ không phải tất cả lúc ban đầu, mang lại lợi ích hiệu suất và/hoặc chất lượng “vô hình” trên các GPU hỗ trợ Cooperative Vectors.

Kết xuất thời gian thực cần thời gian để phát triển

Các kỹ thuật kết xuất đồ họa thường mất rất nhiều thời gian để phát triển. Phải mất nhiều năm sau khi chúng ta nghe về một điều gì đó trong một tài liệu nghiên cứu trước khi nó xuất hiện trong một phương tiện truyền thông thực tế, và đôi khi thậm chí phải mất hàng thập kỷ trước khi một kỹ thuật mang lại đủ lợi ích để được sử dụng rộng rãi. NTC cũng không ngoại lệ. Đây là một kỹ thuật có những hạn chế và các ứng dụng cụ thể, và sẽ tùy thuộc vào các nhà phát triển game để quyết định liệu nó có đáng để sử dụng hay không.

Điểm khác biệt chính với NTC là nó có một số lợi ích và ứng dụng rất rõ ràng, vì vậy có lẽ các nhà phát triển đã thử nghiệm – hoặc ít nhất là nghĩ đến – nó cho đến thời điểm này. Có thể có những trò chơi đang được phát triển hiện nay sẽ sử dụng biểu diễn thần kinh cho texture, và chúng ta chỉ chưa biết về chúng. Tôi đoán rằng chúng ta có thể sẽ có ít nhất một vài ví dụ về nén texture thần kinh trong một số trò chơi trong vài năm tới, nhưng chúng ta sẽ phải chờ xem trong thời điểm hiện tại.

Card đồ họa Nvidia GeForce RTX 4070 SUPER Founders Edition trong hộpCard đồ họa Nvidia GeForce RTX 4070 SUPER Founders Edition trong hộp

Neural Texture Compression (NTC) đại diện cho một bước tiến quan trọng trong lĩnh vực đồ họa game PC, hứa hẹn giải quyết những thách thức cố hữu về dung lượng và chất lượng texture. Với khả năng giảm đáng kể kích thước tệp và cải thiện độ chân thực hình ảnh nhờ ứng dụng AI, NTC mở ra một kỷ nguyên mới cho các nhà phát triển game và trải nghiệm của người chơi. Mặc dù vẫn còn những rào cản về hỗ trợ phần cứng và thời gian triển khai, đặc biệt là sự cần thiết của các Cooperative Vectors và cơ chế dự phòng, bước đột phá gần đây trong việc giải quyết vấn đề lọc texture đã loại bỏ một trong những trở ngại lớn nhất. Công nghệ này có thể sẽ được tích hợp một cách dần dần và âm thầm vào các tựa game, mang lại lợi ích về hiệu suất và đồ họa mà không cần sự can thiệp trực tiếp từ người dùng.

Hãy cùng 360congnghe.com theo dõi những bước tiến tiếp theo của Neural Texture Compression và cách nó sẽ định hình tương lai của ngành đồ họa game PC trong những năm tới.

Related posts

Khám Phá Deal Khủng: Màn Hình Samsung Odyssey G9 G95SD QD-OLED Giảm Sốc $500

Administrator

Tại Sao Nên Tích Hợp Bluetooth Vào Hệ Thống Home Assistant Của Bạn?

Administrator

Cách Mã Hóa Email trong Outlook: Bảo Vệ Thông Tin Nhạy Cảm Hiệu Quả

Administrator

Ưu Đãi Lớn: SSD Lexar NM790 2TB M.2 NVMe Tích Hợp Tản Nhiệt – Nâng Cấp Hiệu Năng Vượt Trội

Administrator

Tại Sao Ray Tracing Vẫn Chưa Thực Sự Đáng Giá Với Đa Số Game Thủ PC?

Administrator

Cách Cài Cảnh Báo Pin Yếu Trên Laptop Windows 11

Administrator