
Với sự đa dạng của phần cứng máy tính ngày nay, các nhà phát triển game luôn cung cấp nhiều tùy chọn đồ họa để người chơi có thể tinh chỉnh hiệu suất và trải nghiệm game một cách tốt nhất.Cài đặt đồ họa mặc định:
Có những trường hợp đặc biệt như CS:GO hoặc một số trò chơi eSports khác, khi game thủ chuyên nghiệp giảm độ phân giải và chất lượng đồ họa xuống cực thấp để đạt tốc độ khung hình cao nhất, phù hợp với màn hình 240Hz mà họ sử dụng khi thi đấu. Tuy nhiên, điều này không phải ai cũng muốn và không phải trò chơi nào cũng phù hợp với phong cách này.Khử răng cưa - Anti-aliasing
Màn hình máy tính và TV của chúng ta là một bàn cờ với hàng triệu pixel vuông. Vì thế, khi vẽ một đường chéo trên màn hình, hiệu ứng răng cưa sẽ xuất hiện do các điểm ảnh phải sắp xếp để hiển thị đường chéo. Tình trạng này gọi là aliasing. Để giảm thiểu hiện tượng này, các công nghệ khử răng cưa sử dụng hai giải pháp chính.
Cơ bản là như vậy, nhưng nếu sử dụng SSAA thì trò chơi sẽ trở nên rất nặng, vì độ phân giải ở đây đã vượt xa cả độ phân giải 4K, không phải phần cứng nào cũng đủ mạnh để xử lý. Do đó, chúng ta có nhiều lựa chọn khác để khử răng cưa theo từng giai đoạn phát triển của ngành game:
Multisampling (MSAA): Đây là một phương pháp hiệu quả và nhẹ nhàng hơn so với supersampling, nhưng vẫn có thể gây nặng máy một chút. MSAA vẫn được sử dụng phổ biến trong các game thuộc thế hệ cũ.Fast Approximate (FXAA): Đây là một phương pháp khử răng cưa nhanh chóng và dễ dàng áp dụng trong các trò chơi.
Morphological (MLAA): Đây là công nghệ được sử dụng trên các card đồ họa của AMD. Giống như FXAA, MLAA được áp dụng sau khi khung hình đã được render, nhằm mục đích làm mờ các đường răng cưa. Nicholas Vining, giáo sư khoa học máy tính tại Đại học British Columbia, Canada, đã giải thích MLAA một cách rất thú vị: “Morphological anti-aliasing tập trung vào hình dạng của các đường răng cưa trên mỗi vật thể, sau đó tính toán để làm mịn chúng sao cho phù hợp nhất với mắt người nhìn. Nó thực hiện điều này bằng cách chia nhỏ từng góc cạnh của răng cưa thành các hình dạng cụ thể như hình gạch, sau đó trộn màu cho từng hình dạng đó để tạo ra hình ảnh mượt mà nhất.”
Temporal (TAA/TXAA): Công nghệ này được sử dụng rộng rãi trên PS4 và Xbox One. Ban đầu, nó được phát triển cho các GPU Kepler của Nvidia trở đi. Tuy nhiên, khi các kỹ sư của Sony hoặc Microsoft nghiên cứu về khử răng cưa để tích hợp vào API làm game trên console của họ, giải pháp của họ cũng được gọi là TAA. TAA so sánh giữa khung hình trước và sau để xác định răng cưa, sau đó tự động loại bỏ chúng thông qua các bộ lọc khác nhau để giảm thiểu hiện tượng “kiến bò”. Nicholas Vining giải thích: “TAA hoạt động tốt nhất khi không có sự di chuyển nhiều trong khung hình và góc nhìn. Khi vật thể trong khung hình di chuyển ít, GPU có nhiều dữ liệu hơn để tính toán khử răng cưa.” Đây cũng là lý do tại sao các trò chơi sử dụng TAA trên PS4 thường đi kèm với hiệu ứng mờ chuyển động hoặc thậm chí là nhiễu phim để tạo ra cảm giác hình ảnh điện ảnh nhất có thể.
Multi-Frame (MFAA): Công nghệ này được giới thiệu cùng với card đồ họa Maxwell của Nvidia. MSAA có thể giảm thiểu răng cưa dựa trên một số điểm mẫu cố định, nhưng nó cũng tạo ra gánh nặng cho hệ thống. MFAA cho phép các nhà phát triển tự tạo thuật toán để xác định điểm mẫu nào là chính xác nhất để trò chơi vừa nhẹ vừa đẹp, và các điểm mẫu có thể thay đổi qua từng khung hình. Nvidia đã tạo ra một đoạn video dễ hiểu để minh họa sự khác biệt giữa MSAA và MFAA như sau:Deep Learning Super-Sampling (DLSS): Xuất hiện cùng với thế hệ card đồ họa RTX của Nvidia, GPU được trang bị một nhân tensor riêng để chạy mã AI, từ đó render game ở độ phân giải thấp hơn so với độ phân giải xuất hình ảnh, nhưng vẫn giữ được chất lượng đồ họa ban đầu. DLSS sử dụng dữ liệu từ các khung hình đã được render trước đó để tạo ra những khung hình kết hợp chi tiết của các mô hình vật thể, giúp người chơi thấy hình ảnh hoàn chỉnh với chất lượng cao. Nhờ sử dụng ít mẫu hơn so với các kỹ thuật như TAA, DLSS có thể tránh được các vấn đề liên quan đến thuật toán khi xử lý các khung hình phức tạp. Điều này giải thích tại sao khi bật DLSS lần đầu tiên, hình ảnh trong game có vẻ nhòe, nhưng sau đó lại trở nên rất rõ nét.
Những con số 2x, 4x, 8x có ý nghĩa gì? Các con số này đề cập đến số điểm mẫu màu sắc được tính toán trên mỗi điểm ảnh để xác định màu sắc, dựa trên màu của các đa giác mà điểm ảnh đó đại diện trên màn hình. Quá trình này gọi là sampling. Số lớn hơn biểu thị cho việc có nhiều lựa chọn màu sắc, giúp mô tả thế giới ảo một cách mượt mà và chi tiết hơn, giảm thiểu hiện tượng răng cưa khi chơi game. Tuy nhiên, số lớn hơn cũng đồng nghĩa với việc GPU phải xử lý nhiều hơn trong mỗi khung hình, làm giảm tốc độ FPS. Do đó, các công nghệ như MFAA hoặc TAA hiện được ưa chuộng hơn MSAA.Texture filtering
Cái này không có liên quan gì đến việc khử răng cưa, mà nó liên quan đến cách máy tính của mọi người xử lý trò chơi, biến các hình ảnh 3D từ các vector đồ họa thành hình ảnh 2D hiển thị trên màn hình. Một pixel trên màn hình không tương ứng với một điểm ảnh trên mô hình 3D (gọi là texel). Quá trình rasterization mà tôi đã đề cập trong bài trước là những gì phần cứng phải thực hiện trong quá trình “filtering”, xác định màu sắc của từng pixel trên màn hình để thế giới ảo hiển thị chính xác nhất có thể.
Bilinear filtering là phương pháp đơn giản nhất. Khi một pixel có quá nhiều texel xung quanh, màu của điểm ảnh đó sẽ được xác định từ 4 texel gần nhất. Tuy nhiên, vấn đề xuất hiện khi chúng ta áp dụng mipmaping, một kỹ thuật mà các nhà phát triển game sử dụng. Đối với bilinear filtering, bạn sẽ thấy rõ sự chênh lệch giữa texture chất lượng cao và thấp, đặc biệt khi di chuyển. Đây là một ví dụ:

Khi sử dụng trilinear filtering, nó có thể lấy dữ liệu từ cả hai gói texture, tạo ra hình ảnh mượt mà nhất có thể. So sánh giữa trilinear và anisotropic filtering, bạn sẽ thấy rõ sự chia thành 3 lớp với 3 chất lượng khác nhau:

Tuy nhiên, so với anisotropic filtering (lọc bất đẳng hướng), trilinear filtering không thể sánh kịp về chất lượng. Anisotropic filtering phù hợp với các góc nhìn chéo, tạo ra hình ảnh chân thực hơn. Đây là một so sánh giữa ba giải pháp:
Tinh chỉnh mức độ làm mịn vật thể: Bạn có thể điều chỉnh độ mịn màng của các vật thể trong trò chơi để tạo ra hình ảnh mịn màng và sắc nét hơn. Nó giúp cải thiện chất lượng hình ảnh mà không ảnh hưởng đến hiệu suất máy tính của bạn.

Đa dạng cảnh nền: Một số game cung cấp tùy chọn để thay đổi cảnh nền, từ cảnh nền mùa đông lạnh lẽo đến cảnh nền mùa hè sôi động. Việc thay đổi cảnh nền không chỉ làm cho trò chơi trở nên mới mẻ mà còn tạo ra cảm giác hòa mình vào không gian game một cách hoàn hảo hơn.
Chế độ ghi hình:
Chất lượng ánh sáng bổ sung (Ambient Occlusion): Kỹ thuật này giúp tạo ra ánh sáng tự nhiên hơn trong trò chơi bằng cách xác định các vùng bị che khuất và làm tối đi để tạo ra hiệu ứng bóng râm. Điều này giúp tạo ra không khí thực tế và sâu sắc hơn cho thế giới ảo.

Tessellation: Kỹ thuật này tạo ra hiệu ứng chiều sâu cho các đối tượng trong trò chơi bằng cách tăng cường độ phức tạp của chúng. Điều này giúp tạo ra các cảnh vật lý tự nhiên và chân thực hơn.

Kết hợp ánh sáng toàn cầu và ánh sáng bổ sung: Kỹ thuật này tạo ra một hệ thống ánh sáng phức tạp hơn trong trò chơi, giúp tăng tính thẩm mỹ và chân thực của thế giới ảo.

Đây là minh chứng cho sức mạnh của bộ công cụ Enlighten do Silicon Studio Nhật Bản phát triển:

Sau khi áp dụng hai kỹ thuật đó, screen space reflection (phản chiếu không gian màn hình) sẽ được sử dụng để tính toán hình ảnh phản chiếu trên các bề mặt gần kề. Tuy nhiên, cách tiếp cận này phải được thực hiện một cách khéo léo để tránh các vấn đề liên quan đến hiệu suất và hiệu ứng giả mạo.

Nhưng đến một sự thần kỳ, tất cả những vấn đề trên đều được giải quyết bằng ray tracing (phát hiện tia chớp). Nvidia đã phát triển một con chip GPU có khả năng xử lý ray tracing theo thời gian thực, giúp tạo ra hình ảnh chân thực mà không cần đến các kỹ thuật phức tạp khác như global illuminating, ambient occlusion và screen space reflection.

Và cuối cùng là một số bộ lọc để tăng thêm cảm giác điện ảnh cho khung hình. Thứ nhất là độ sâu trường ảnh (depth of field), tạo ra hiệu ứng như việc chúng ta chụp ảnh với ống kính máy ảnh, làm nổi bật một phần của thế giới trong trường nhìn của người chơi. Khác biệt với trường ảnh (field of view) mô tả góc nhìn của nhân vật, hai hiệu ứng này hoàn toàn không liên quan đến nhau.

Thứ hai là hiệu ứng phân cực màu (chromatic aberration), tái tạo cảm giác giống như ảnh phim (ảnh phim thực sự có hiệu ứng tương tự). Thường thì nên tắt nó đi, trừ khi bạn muốn trải nghiệm cảm giác như đang xem một bộ phim bom tấn.

Thứ ba là hiệu ứng hạt phim (film grain), giống như chromatic aberration, tạo ra lớp nhiễu giống như ảnh chụp với ISO cao. Dù ngày xưa, việc có lớp nhiễu như thế trên bộ phim thực sự là một điều tuyệt vời, nhưng hiện nay, nó thường chỉ được sử dụng để làm cho game trở nên điện ảnh hơn, tạo ra một cảm giác cổ điển, nhưng với mình, film grain cũng chỉ giống như tiếng ồn trên đĩa vinyl, khá là phiền phức.
