Năm 1985, một đứa trẻ nhìn vào màn hình và thấy mười mấy ô vuông đỏ-xanh. Nhưng trong mắt nó, đó là một người thợ sửa ống nước đang nhảy qua những con rùa. Bốn mươi năm sau, một đứa trẻ khác nhìn vào một khuôn mặt có lỗ chân lông, có nếp nhăn khi cười, có ánh sáng len qua vành tai. Kỳ lạ là cảm xúc của đứa trẻ năm 1985 trước vài chục điểm ảnh đôi khi lại mãnh liệt hơn.
Khoảng cách giữa hai khoảnh khắc đó là năm mươi năm — của hàng triệu dòng lệnh và những cỗ máy mạnh lên gấp hàng tỷ lần. Nhưng ẩn dưới đường cong công nghệ ấy là một nghịch lý rất con người: mỗi khi công nghệ phá vỡ một giới hạn, các nghệ sĩ lại tìm ra một rào cản mới để vượt qua — hoặc, thú vị hơn, họ biến chính giới hạn đó thành phong cách.
Bài viết này không liệt kê các mốc thời gian. Endiplay muốn dùng lịch sử đồ họa game như một lăng kính để trả lời một câu hỏi lớn hơn: điều gì thực sự làm nên vẻ đẹp của một thế giới ảo — những con số, hay cách con người sáng tạo bên trong những con số đó?
Khi đồ họa game chưa phải là đồ họa
Trước Mario, trước cả Pong, đồ họa game chỉ là một đường kẻ và một đốm sáng.
Năm 1958, nhà khoa học William Higinbotham tại Phòng thí nghiệm Quốc gia Brookhaven nối một máy tính tương tự vào một máy hiện sóng, tạo ra Tennis for Two: một đường kẻ làm lưới, một đốm sáng chạy theo vật lý cơ bản. Không điểm số, không nhân vật, không màu sắc — nhưng người ta xếp hàng để chơi. Bốn năm sau, Spacewar! ra đời ở MIT với đồ họa vector, nơi máy tính vẽ thẳng các đường nối giữa những tọa độ. Hai con tàu lượn trong không gian đầy sao và bắn nhau bằng những chấm trắng. Đó là tựa game đầu tiên có một cộng đồng người chơi thực thụ.
Đến năm 1972, máy chơi game gia đình đầu tiên — Magnavox Odyssey — bước vào các phòng khách ở Mỹ. Nhưng nó không có vi xử lý, không có bộ nhớ phần mềm, chỉ hiển thị được ba hình vuông trắng trên nền đen. Để có “bối cảnh”, nhà sản xuất tặng kèm những lớp nhựa màu để người chơi tự dán lên màn hình tivi: muốn đá bóng thì dán sân bóng, muốn đua xe thì dán đường đua.
Nghe buồn cười, nhưng nó hé lộ một nguyên lý mà ngành game đã nắm được ngay từ ngày đầu: đồ họa không cần hoàn hảo, nó chỉ cần khiến người chơi tin vào thứ họ nhìn thấy.
Nghệ thuật trong những ô vuông
Hỏi một nghệ sĩ pixel hôm nay điều gì làm nên vẻ đẹp của kỷ nguyên 8-bit, câu trả lời thường không phải “sự dễ thương” mà là “sự ngặt nghèo”.
Hệ máy Nintendo (1983) chỉ hiển thị được khoảng 25 màu cùng lúc, từ một bảng màu gốc 52 màu; mỗi sprite chỉ được dùng ba màu cộng một màu trong suốt. Bộ quần yếm đỏ và áo xanh của Mario không phải lựa chọn thẩm mỹ ngẫu nhiên: chiếc mũ đỏ giúp người chơi không lạc mắt khi Mario di chuyển trên nền trời xanh, còn quần yếm tương phản giúp nhà thiết kế không phải vẽ tay chân nhân vật — đơn giản vì họ không đủ màu để làm việc đó. Đây là điểm cốt lõi: ràng buộc kỹ thuật trực tiếp định hình ngôn ngữ hình ảnh.
Đến thế hệ 16-bit với Super Nintendo và Sega Genesis, các kỹ sư có thêm không gian thở. Và họ dùng nó để làm một việc mà phần cứng chưa thực sự sẵn sàng: giả lập chiều sâu ba chiều trong một thế giới phẳng.
Parallax scrolling: đánh lừa con mắt
Kỹ thuật cuộn song song (parallax scrolling) chia bối cảnh thành nhiều lớp, lớp ở xa cuộn chậm hơn lớp ở gần. Chính trò đánh lừa thị giác này đã biến những khu rừng phẳng lì trong Sonic the Hedgehog thành thế giới có chiều sâu.
Mode 7: dùng toán học để giả lập 3D
Đỉnh cao của sáng tạo-trong-giới-hạn có lẽ là Mode 7 của Super Nintendo — về bản chất là một thủ thuật toán học. Nó dùng các phép biến đổi ma trận để xoay và thu phóng một lớp nền theo thời gian thực, dòng quét này qua dòng quét khác. Người chơi tưởng mình đang bay trên một bản đồ ba chiều, dù tất cả chỉ là một tấm ảnh hai chiều bị kéo méo một cách thông minh. F-Zero và Super Mario Kart — những viên gạch đầu cho thể loại đua xe — đều ra đời từ đúng thủ thuật này.
Giới hạn không giết chết sáng tạo. Nó định hình sáng tạo.
Khi hình khối bước vào không gian ba chiều
Giữa thập niên 1990 là ranh giới lớn nhất trong lịch sử đồ họa game: từ sprite sang polygon, từ hai chiều sang ba chiều. Điều ít người để ý là hai cỗ máy dẫn đầu cuộc cách mạng đã chọn hai triết lý trái ngược.
PlayStation 1 của Sony được thiết kế để chạy đa giác thật nhanh và thật rẻ. Để giữ giá thành, Sony bỏ đi hai thứ: Z-buffer (hệ thống quản lý độ sâu của điểm ảnh) và phép tính dấu phẩy động (cần để định vị chính xác đỉnh đa giác). Hệ quả là hai “đặc sản” mà bất kỳ ai từng chơi Final Fantasy VII đều nhớ — vân bề mặt rung lắc khi camera xoay (do PlayStation ánh xạ texture theo kiểu tuyến tính thay vì theo phối cảnh), và mô hình nhân vật nhảy giật khi di chuyển (do tọa độ đa giác bị làm tròn về lưới pixel gần nhất).
Nintendo 64 thì chọn làm đúng: có phối cảnh chính xác, có bộ lọc song tuyến tính làm mịn vân bề mặt, có khử răng cưa toàn màn hình. Trên lý thuyết, nó vượt trội. Nhưng hộp băng quá nhỏ và bộ nhớ đệm texture chỉ 4 KB buộc nhà phát triển phải nén texture đến mức nhòe nhoẹt. Cuộc tranh cãi vẫn còn đến hôm nay: PlayStation sắc nhưng rung, Nintendo mượt nhưng mờ.
Trớ trêu thay, hai hạn chế đó nay lại thành hai dạng hoài niệm. Thẩm mỹ PlayStation 1 — vân bề mặt giật cục, polygon thô ráp — đang được giới làm game indie tôn vinh như một phong cách nghệ thuật. Một lần nữa, hạn chế kỹ thuật biến thành ngôn ngữ thẩm mỹ.
Khi ánh sáng bắt đầu có quy luật
Bước sang thập niên 2000, các game engine như Unreal, id Tech và CryEngine trở thành sản phẩm thương mại mà studio nào cũng thuê được — không ai phải xây lại bánh xe từ đầu cho mỗi dự án. Nhưng cuộc cách mạng quan trọng hơn lại diễn ra âm thầm ở tầng ánh sáng.
Shader: trả quyền kiểm soát ánh sáng cho lập trình viên
Trước đây, GPU xử lý ánh sáng qua một đường ống cố định do nhà sản xuất phần cứng định sẵn. Khi shader lập trình được xuất hiện, nhà phát triển có thể viết những đoạn mã nhỏ chỉ định chính xác cách ánh sáng tương tác với từng điểm ảnh. Muốn da người có ánh sáng xuyên qua vành tai, hay kim loại phản chiếu đúng ở góc nghiêng? Viết một shader.
PBR: dựng hình dựa trên vật lý
Cuối thập niên 2000, một triết lý mới đổi vĩnh viễn ngành đồ họa: Physically Based Rendering (PBR — dựng hình dựa trên vật lý). Thay vì để nghệ sĩ vẽ sẵn độ sáng và phản xạ vào bề mặt, PBR yêu cầu họ định nghĩa thuộc tính thật của vật liệu — độ nhám bao nhiêu, có phải kim loại không, phản xạ màu gì — rồi engine tự tính ánh sáng nảy bật theo quy luật vật lý.
Nguyên tắc cốt lõi nghe như vật lý phổ thông nhưng có hệ quả sâu xa: năng lượng phải được bảo toàn, một vật không thể phản xạ ra nhiều ánh sáng hơn lượng nó nhận. Chính nguyên tắc này là lý do các bom tấn mười lăm năm nay trông nhất quán đến vậy, dù bối cảnh là sa mạc cháy nắng hay hầm tối lạnh lẽo.
Ray tracing: mô phỏng đường đi thật của ánh sáng
Đỉnh cao của mô phỏng ánh sáng là dò tia (ray tracing). Thay vì dùng các thủ thuật cũ, nó lần theo đường đi thật của hàng triệu tia sáng — từ nguồn đến mắt người xem, qua mọi lần phản xạ và khúc xạ. Để chạy được trong thời gian thực, GPU thế hệ mới tích hợp các nhân chuyên dụng cùng một cấu trúc dữ liệu giúp hạ độ phức tạp tính toán xuống mức chấp nhận được. Nhưng kể cả GPU mạnh nhất cũng không kham nổi mọi thứ cùng lúc — và đó là chỗ trí tuệ nhân tạo bước vào.
Unreal Engine 5: phá nốt rào cản cuối cùng
Năm 2022, Epic Games ra mắt Unreal Engine 5, và ngành công nghiệp gần như nín thở trước hai công nghệ cốt lõi.
Nanite: xóa bỏ giới hạn polygon
Suốt ba mươi năm, nghệ sĩ 3D phải sống với một nghịch lý: điêu khắc mô hình cực chi tiết trong phần mềm chuyên nghiệp, rồi lại phải nén và tạo nhiều cấp độ chi tiết để game chạy nổi. Nanite xóa bỏ toàn bộ quy trình đó. Nó cho phép đưa thẳng mô hình hàng triệu, thậm chí hàng tỷ đa giác vào game; engine tự chia chúng thành các cụm tam giác và chỉ dựng những cụm thực sự nhìn thấy được, ở độ phân giải vừa khít mật độ điểm ảnh.
Lumen: chiếu sáng toàn cục theo thời gian thực
Trước đây, để có ánh sáng gián tiếp đẹp, studio phải “bake” — tính toán trước rồi lưu vào các bản đồ tĩnh, một quá trình mất hàng giờ đến hàng ngày, và một khi bake xong thì không thể di chuyển đèn. Lumen làm mọi thứ theo thời gian thực: dời một ngọn đèn, cả căn phòng đổi ánh sáng phản xạ ngay lập tức.
Đến bản 5.5, Epic bổ sung MegaLights — đặt được hàng nghìn nguồn sáng đổ bóng động trong một cảnh mà hiệu suất không sụp đổ, nhờ lấy mẫu theo xác suất: chỉ bắn tia tới những nguồn có khả năng đóng góp nhiều nhất cho độ sáng của điểm ảnh đang xét.
Song song là công nghệ nâng độ phân giải bằng AI, dùng mạng nơ-ron học sâu để nội suy hình ảnh từ độ phân giải thấp lên cao, đẩy tốc độ khung hình lên gấp hai, gấp ba mà chất lượng gần như không đổi. Nói cách khác, AI đang giúp GPU làm nhiều hơn với ít hơn — đúng tinh thần của những nghệ sĩ pixel art bốn mươi năm trước.
Vậy đâu mới thực sự là vẻ đẹp của đồ họa game?
Nếu chỉ nhìn vào phần cứng, có vẻ như chúng ta đã rất gần điểm cuối. Thế giới ảo hôm nay mô phỏng vật lý ánh sáng gần như hoàn hảo, và mô phỏng khuôn mặt người đến mức chạm vào hiệu ứng uncanny valley — nhân vật trông quá thật, nhưng vẫn lệch những chi tiết nhỏ khiến ta bất an. Vài năm nữa, có thể mắt thường sẽ không còn phân biệt được.
Nhưng câu chuyện thú vị nhất lại nằm ở chiều ngược lại. Song song với cuộc đua tới chủ nghĩa siêu thực là một làn sóng quay đầu. Hades, Hollow Knight, Breath of the Wild chọn định hướng nghệ thuật thay vì độ chân thực kỹ thuật. Các nghệ sĩ indie chủ động hồi sinh thẩm mỹ PlayStation 1, pixel low-fi, vector wireframe — tức là tự nguyện quay về chính những giới hạn mà công nghệ đã bỏ lại phía sau.
Vẻ đẹp của đồ họa game chưa bao giờ nằm ở số polygon hay số tia sáng. Nó nằm ở tầm nhìn — ở cách một nghệ sĩ chọn nhìn thế giới, chọn kể một câu chuyện, chọn đặt người chơi vào một cảm xúc cụ thể.
Và có lẽ đó là lý do một nhân vật mười mấy ô vuông năm 1985 vẫn có thể chạm vào ta sâu hơn một khuôn mặt được dựng từ hàng tỷ đa giác. Trong tất cả những kỷ nguyên vừa đi qua, kỷ nguyên nào để lại dấu ấn đậm nhất trong ký ức bạn?
