Lịch sử đồ họa của id Tech: Ba thập kỷ công nghệ đồ họa và công cụ trò chơi tiên tiến

theanh

Administrator
Nhân viên
Doom, Quake & Wolfenstein: 30 năm phát triển đồ họa của id Tech 1993-2025 - YouTube
maxresdefault.jpg


Xem trên Hơn 30 năm trước, vào năm 1992, các nhà phát triển id Software đã tung ra Wolfenstein 3D trên PC. Vào thời điểm đó, không ai biết rằng nó cũng khởi động một cây tiến hóa cho một loạt các công cụ trò chơi không chỉ đồng nghĩa với các thương hiệu Doom và Quake tiếp theo của id Software mà còn nổi tiếng vì đã đẩy lùi ranh giới của kết xuất đồ họa.

Đúng vậy, chúng ta đang nói về id Tech, và với Doom: The Dark Ages, chúng ta hiện đã đạt đến phiên bản thứ tám. Tất nhiên, công cụ trò chơi không chỉ là về đồ họa, nhưng có thể nói đó là điều đã làm cho id Tech trở nên nổi tiếng như vậy.

Vì vậy, chúng ta hãy cùng khám phá từng phiên bản tiếp theo của công cụ trò chơi trường tồn này, xem xét trò chơi đầu tiên sử dụng công cụ này, điều gì khiến nó nổi bật so với những trò chơi khác và xem nhanh qua các tác phẩm của các nhà phát triển khác đã cấp phép id Tech cho các dự án của riêng họ.

Vào năm 1992, nhiệm vụ lập trình của id Software chỉ được đảm nhiệm bởi ba người: John Carmack (đồ họa và thời gian chạy code), John Romero (các công cụ dùng để tạo trò chơi) và Jason Blochowiak (các chương trình con). Họ cùng nhau tạo ra thứ mà sau này được gọi là id Tech 0, mặc dù vào thời điểm đó, nó chỉ được dán nhãn là 'công cụ Wolfenstein 3D'.

Đây không phải là trò chơi đầu tiên mà Carmack mã hóa để sử dụng đồ họa 3D, mặc dù ông đã chọn một phương pháp khác thường để kết xuất thế giới ba chiều: chiếu tia. Theo một số cách, chiếu tia tương tự như dò tia mà chúng ta thấy trong các trò chơi mới nhất, nhưng do những hạn chế của PC chơi game vào những năm 1990, Carmack buộc phải giữ cho nó rất đơn giản.

Trong Wolfenstein 3D, quá trình kết xuất đồ họa bắt đầu bằng việc công cụ tạo trần nhà và sàn nhà thông qua một lớp phủ đầy, dưới dạng hai khối màu. Sau đó, một tia được chiếu hoặc 'diễu hành' cho mỗi dòng pixel dọc—đối với độ phân giải 1080p, tổng cộng sẽ có 1920 tia. Tất nhiên, vào năm 1992, chúng ta chỉ nói về khoảng 320 tia!

Mỗi tia đi qua một bản đồ hai chiều của thế giới và di chuyển cho đến khi chạm tới một vật thể, chẳng hạn như tường hoặc cửa. Dựa trên khoảng cách tia đã di chuyển, kích thước của vật thể được tính toán và điều chỉnh tỷ lệ phù hợp, để tạo ấn tượng về chiều sâu. Một chút toán học thông minh cũng được sử dụng để hiệu chỉnh phối cảnh của các vật thể, nếu không, mọi thứ sẽ trông cong vênh, theo kiểu ống kính mắt cá.

Sau khi hoàn tất tất cả những điều này, công cụ sẽ tô màu và tạo họa tiết cho cột pixel trước khi chuyển sang tia tiếp theo. Sau khi hoàn thành tất cả những điều này, các vật thể như kẻ thù, đạn dược và thức ăn sẽ được hiển thị dưới dạng các sprite 2D.

Chúng tôi đã bỏ qua rất nhiều chi tiết kỹ thuật, nhưng nếu bạn muốn hiểu chính xác cách thức hoạt động của nó, hãy tải xuống một bản sao của Wolfenstein 3D Game Engine Black Book của Fabien Sanglard.

id Tech 0 sẽ được cấp phép bởi một số ít nhà phát triển khác, đáng chú ý nhất là Apogee Software, công ty đã tạo ra Rise of the Triad, một trò chơi mà chúng tôi cho rằng mọi người nên chơi ít nhất một lần.

Đối với phiên bản tiếp theo của id Software vào năm 1993, Doom, Carmack đã tạo ra một thuật toán kết xuất cải tiến mà ông phát triển cho phiên bản SNES của Wolfenstein 3D. Thay vì sử dụng ray casting để tính toán những gì cần hiển thị, engine của Doom (hay còn gọi là id Tech 1) xử lý tất cả những điều này thông qua cây BSP hoặc cây phân vùng không gian nhị phân.

Giống như người tiền nhiệm của nó, tất cả các cấp độ của Doom đều là bản đồ 2D và thuật toán BSP được sử dụng để chia chúng thành một cấu trúc dữ liệu giúp xác định cực kỳ nhanh chóng xem có thứ gì đó có thể nhìn thấy hay không.

Các bề mặt thẳng đứng được kết xuất trước, chẳng hạn như tường và cửa, bằng cách xử lý thông qua cây BSP. Tiếp theo là tất cả các bề mặt nằm ngang—trần nhà và sàn nhà—không được kết xuất trong giai đoạn 'dọc'. Các sprite 2D được xử lý tiếp theo, để lấp đầy thế giới bằng quái vật, vũ khí và đạn dược, trước hiệu ứng cuối cùng—màn hình hiển thị thông tin đầu của trò chơi.

Cũng giống như Wolfenstein 3D, Fabien Sanglard đã viết một bài phân tích tuyệt vời về quá trình tạo ra Doom và cách thức hoạt động cơ bản của nó. Nếu bạn muốn biết chính xác cách sử dụng BSP trong trò chơi, thì Doom Game Engine Black Book là một cuốn sách phải đọc.

Tác động của Doom lên thế giới trò chơi là rất khó để nói quá—không chỉ về mặt định hình thể loại và thiết kế trò chơi, mà còn về cách thức engine của nó được các nhà phát triển khác cấp phép để tạo ra những trò chơi rất thành công. Các engine của Wolfenstein 3D và Doom chỉ được sử dụng trong một số ít trò chơi khác, mặc dù engine sau này đã được sử dụng để tạo ra Heretic tuyệt vời và phần tiếp theo của nó, Hexen.

Nhưng mọi thứ thực sự đã thay đổi đối với bản phát hành lớn tiếp theo của id Software.

Với thành công vang dội của Doom, việc đưa ra một thứ gì đó tốt hơn luôn là một thách thức. May mắn thay, Quake năm 1996 đã có sức ảnh hưởng không kém gì phiên bản tiền nhiệm của nó. Điều này phần lớn là do công cụ trò chơi mới mà Carmack và cộng sự đã tạo ra, vì id Tech 2 đã sử dụng một trình kết xuất hoàn toàn mới.

Thay vì các bản đồ phẳng được vẽ để mô phỏng ba chiều, sau đó phủ lên các sprite được kết xuất trước 2D, công cụ của Quake xử lý mọi thứ ở chế độ 3D thực sự. Giống như hầu hết các trò chơi ngày nay, các mảng đỉnh được sử dụng để tạo ra các lưới đa giác, trong đó công cụ biến đổi và chiếu sáng chúng, trước khi quét chúng thành các pixel.

Sau đó, các kết cấu được áp dụng cho từng đa giác trong một lần kết xuất, với các bản đồ ánh sáng được kết xuất trước được pha trộn trong lần thứ hai.

Kết quả là một thế giới mà bạn có thể nhìn vào và di chuyển theo bất kỳ hướng nào, với các bề mặt không còn bị giới hạn theo chiều dọc hoặc chiều ngang hoàn toàn. Những bản đồ ánh sáng được dựng sẵn đó đã làm rất tốt trong việc mang lại cảm giác về ánh sáng và bóng đổ chân thực—tất nhiên là cho năm 1996!

Công cụ của Quake 2 năm 1997 vẫn giống như vậy (tức là về cơ bản vẫn là Tech 2), chỉ có những cải tiến hợp lý ở mọi khía cạnh, chẳng hạn như sử dụng OpenGL API để dựng hình, cho phép đồ họa và hiệu suất tốt hơn trên các card đồ họa hỗ trợ công cụ này.

Nhưng có lẽ điều khiến công cụ này thực sự nổi bật là số lượng các nhà phát triển khác đã cấp phép và sử dụng công cụ này để tạo ra một số trò chơi nổi bật. Hexen 2 và Heretic 2, Malice, SiN, Kingpin, Soldier of Fortune và Anachronox đều là những trò chơi tuyệt vời theo cách riêng của chúng, mặc dù ngôi sao thực sự phải là Half-Life.

Phải thừa nhận rằng Valve đã viết lại rất nhiều id Tech 2 cho kiệt tác của mình, cũng như tạo ra các công cụ và chương trình con bổ sung của riêng mình, nhưng nếu nó không tồn tại ngay từ đầu, liệu Half-Life có hay như vậy không?

Với Doom bị gạt sang một bên của Quake, id Software đã chọn tập trung vào chế độ nhiều người chơi cho Quake 3 Arena năm 1999, nhưng điều đó không có nghĩa là Carmack từ bỏ việc đưa đồ họa lên một tầm cao mới.

Công cụ của Quake 3 Arena (lúc này chúng vẫn chưa được gắn nhãn là id Tech) đã giới thiệu ba cải tiến lớn về đồ họa: bề mặt cong dựa trên spline, trình đổ bóng và hàm căn bậc hai nghịch đảo nhanh.

Cải tiến đầu tiên giải quyết vấn đề mà các trò chơi đa giác 3D gặp phải vào thời điểm đó: làm thế nào để làm cho bề mặt trông cong thay vì góc cạnh. Điều này được thực hiện bằng cách sử dụng các bản vá Bézier để ghép hoặc chia lưới thành hàng chục hình tam giác nhỏ hơn, cùng nhau tạo ra ấn tượng về một bề mặt cong.

Các card đồ họa ngày nay có thể xử lý hàng tỷ hình tam giác, nhưng vào thời điểm đó, đây là một bước đột phá lớn trong việc tạo ra đồ họa ngày càng chân thực hơn ở tốc độ khung hình có thể chơi được. Nói như vậy, Quake 3 Arena vẫn có thể hạ gục những cỗ máy chơi game mạnh nhất khi độ phân giải và cài đặt đồ họa đạt mức tối đa.

Hệ thống đổ bóng được sử dụng trong Quake 3 Arena thực chất là tiền thân của các trình đổ bóng được sử dụng trong các trò chơi ngày nay. Thay vì chỉ áp dụng kết cấu cơ bản và bản đồ ánh sáng cho một đa giác, công cụ này đã sử dụng các tập lệnh nhỏ để mô tả các đặc tính của một bề mặt. Trong tệp này, sẽ có thông tin về kết cấu, pha trộn, khối lượng, độ phát xạ và thậm chí cả các tệp âm thanh nào sẽ được phát nếu người chơi tương tác với bề mặt.

Mặc dù ông không phải là người phát minh ra kỹ thuật này, nhưng việc Carmack triển khai tính toán nghịch đảo căn bậc hai của một số - tức là một chia cho căn bậc hai của một số nào đó - đã trở nên nổi tiếng trong giới lập trình vì là một kiệt tác về tối ưu hóa và tốc độ.

Nhưng điều thực sự khiến id Tech 3 trở nên nổi bật chính là số lượng lớn các trò chơi được tạo ra bằng công cụ này, và danh sách này giống như một danh sách 'Ai là ai?' của ngành game vậy. Hai game bắn súng Star Trek: Elite Force, hai game Medal of Honor, Call of Duty gốc, bộ đôi Star Wars Jedi Knight, phần tiếp theo của Soldier of Fortune, Return to Castle Wolfenstein và Alice của American McGee, chỉ kể tên một vài game!

Tuy nhiên, đối với bản phát hành lớn tiếp theo, id Software quyết định đã đến lúc quay trở lại với một tác phẩm kinh điển cũ.

Doom 3 xuất hiện vào năm 2004 và một lần nữa, id Software đã sử dụng một công cụ mới, id Tech 4, để nâng cao tiêu chuẩn đồ họa lên một cấp độ mới. Kết cấu hiện đã tiên tiến hơn nhiều, hỗ trợ việc sử dụng bản đồ bình thường và phản chiếu để cải thiện mức độ chi tiết tốt trên bề mặt.

Tuy nhiên, để làm cho điều này thậm chí còn tốt hơn, trình kết xuất của Doom 3 đã tính toán tất cả ánh sáng trên cơ sở từng pixel, thay vì chỉ tô màu góc của một hình tam giác (một đỉnh) rồi nội suy nó trên phần còn lại của đa giác.

Doom 3 cũng sử dụng bộ đệm khuôn cho các khối bóng của nó và cùng với ánh sáng trên từng pixel, hình ảnh của trò chơi là không gì sánh bằng. Tuy nhiên, hiệu suất của trò chơi không được tốt như vậy.

Doom gốc là tất cả về hành động điên cuồng, nhịp độ nhanh, trong khi Doom 3 chậm hơn đáng kể—gần giống như một trò chơi hành động, kinh dị sinh tồn. Nhưng ngay cả như vậy, việc sử dụng bộ đệm stencil và thuật toán chiếu sáng đòi hỏi các tính năng GPU mới nhất, khiến nhiều phần cứng cũ không thể chạy trò chơi và ngay cả với card đồ họa cao cấp, hiệu suất cũng không bao giờ tuyệt vời.

id Tech 4 cũng ít được các nhà phát triển khác ưa chuộng hơn và so với Quake 3 Arena, chỉ một số ít studio sử dụng nó cho trò chơi của họ. Tuy nhiên, nó đã mang đến cho chúng ta Quake 4 bị chỉ trích rất nhiều, Prey gốc, Enemy Territory: Quake Wars và Brink bị đánh giá thấp.

Năm năm sau khi ra mắt Doom 3, id Software đã được ZeniMax Media, công ty cũng sở hữu Bethesda Softworks, mua lại và kể từ thời điểm đó, các công cụ của id Software sẽ chỉ được sử dụng bởi chính nó và các studio khác của ZeniMax.

Công cụ của Doom 3 cũng sẽ là công cụ cuối cùng mà id Software từng phát hành mã nguồn.

Vào năm 2011, id Software một lần nữa giới thiệu một công cụ mới với tên mới và thậm chí là một IP trò chơi mới. Rage được hỗ trợ bởi id Tech 5 (các công cụ cũ hơn sau đó được đổi tên theo cùng một cách) và tính năng kết xuất nổi bật chính của nó là một công nghệ có tên là MegaTexture.

Về mặt kỹ thuật, nó được gọi là kết cấu ảo (cảnh báo pdf), phương pháp này liên quan đến việc sử dụng các kết cấu cực lớn, lên đến 128.000 pixel vuông, trong đó các phần sẽ được lấy mẫu để áp dụng cho lưới đa giác. Ý tưởng đằng sau điều này là kết cấu chính, đồ sộ sẽ nằm trong bộ nhớ hệ thống và chỉ những phần cần thiết mới được truyền vào bộ nhớ cục bộ của GPU.

Lợi ích của điều này là id Software có thể tạo ra một trình kết xuất hoạt động chính xác như nhau, bất kể nền tảng phần cứng nào. Thật không may, thực tế là có rất nhiều lỗi và trục trặc kết xuất khi ra mắt, mặc dù khi mọi thứ hoạt động tốt, chất lượng kết cấu chắc chắn tốt hơn nhiều trò chơi PC khác vào thời điểm đó.

Điều hữu ích là id Tech 5 đã tích hợp một loạt các thủ thuật đồ họa khác, chẳng hạn như bóng mềm, kết xuất HDR, ánh sáng thể tích, phản chiếu không gian màn hình, độ sâu trường ảnh và làm mờ chuyển động. ZeniMax Media đã có hai nhà phát triển sử dụng id Tech 5.

MachineGames đã tạo ra các bản khởi động lại Wolfenstein của The New Order và The Old Blood, và Tango Gameworks đã tạo ra loạt The Evil Within, mặc dù đã viết lại rất nhiều id Tech 5 cho tựa game thứ hai.

Năm 2013, John Carmack rời id Software để tham gia các dự án mới, là người cuối cùng trong nhóm ban đầu rời đi, gia nhập Oculus VR để giúp phát triển phần cứng và phần mềm thực tế ảo của công ty.

Đó là một động thái táo bạo khi khởi động lại một thương hiệu nổi tiếng như vậy, nhưng đó chính xác là những gì id Software đã làm, và vào năm 2016, Doom đã trở lại và với một công cụ tuyệt vời.

Khi vẫn còn làm việc tại id Software, John Carmack đã khám phá việc sử dụng công nghệ dò tia và voxel cho lần lặp lại id Tech tiếp theo, nhưng khi ông rời đi, các nhà phát triển đã gắn bó với trình kết xuất lưới đa giác truyền thống với quá trình quét điểm ảnh tiêu chuẩn để tạo ra id Tech 6.

MegaTextures vẫn còn trong sử dụng đầy đủ nhưng chất lượng cao hơn, và cùng với toàn bộ từ điển các kỹ thuật dựng hình hiện đại, Doom mới không chỉ trông cực kỳ đẹp mà còn chạy rất tốt.

Nó cũng có một số thủ thuật mới, chẳng hạn như khử răng cưa tạm thời hay TAA. Tính năng này đã có từ lâu, nhưng id Tech 6 đã bổ sung thêm việc sử dụng siêu lấy mẫu dữ liệu chuyển động để loại bỏ hiện tượng lấp lánh và mờ nhòe mà TAA nổi tiếng.

Mặc dù có vẻ như id Tech 6 không mang lại điều gì đáng kể cho thế giới kết xuất, nhưng Phân tích đồ họa của Adrian Courrèges trong Doom (2016) cho thấy mọi thứ phức tạp và đa dạng như thế nào đằng sau cảnh.

Thật đáng buồn, id Tech 6 chỉ được MachineGames sử dụng thêm hai lần nữa, một lần nữa, cho hai trò chơi Wolfenstein nữa —The New Colossus và Youngblood. Sau này, bản vá đã được vá để hỗ trợ công nghệ RTX của Nvidia, tuy nhiên, vì đây là bản triển khai đầu tiên của công nghệ dò tia nên kết quả không biện minh cho sự sụt giảm hiệu suất.

Đối với Doom Eternal năm 2020, id Software đã sử dụng id Tech 6 và tiến hành đại tu toàn diện, loại bỏ mã OpenGL để chuyển sang chỉ sử dụng Vulkan, cũng như loại bỏ MegaTextures.

Đến thời điểm này, id Tech đã chạy như một công cụ đa luồng nặng và thay vì sử dụng một luồng chính để xử lý kết xuất, nhiều luồng được giao nhiệm vụ hoạt động song song, xử lý shader, truyền phát nội dung (hình học và kết cấu) và giải nén dữ liệu.

Kết quả cuối cùng là một trò chơi có nhiều chi tiết hơn so với phiên bản trước và ánh sáng và bóng tối thậm chí còn chính xác hơn, cùng vô số hạt cho các vụ nổ và máu me. Và đáng chú ý là nó chạy thậm chí còn nhanh hơn id Tech 6.


9Jwf3rM5ee9L4Pe36THGfK-1200-80.jpg



Một năm sau khi ra mắt, Doom Eternal đã được cập nhật để hỗ trợ công nghệ tăng cường DLSS AI của Nvidia và công nghệ tạo khung hình, cùng với phản xạ theo dõi tia, để cho phép tất cả các bề mặt phản chiếu môi trường một cách chính xác.

Dò tia sẽ được sử dụng riêng cho ánh sáng và bóng đổ trong trò chơi duy nhất khác sử dụng id Tech 7, Indiana Jones và Great Circle—MachineGames, một lần nữa—và điều này gần như chắc chắn đã đặt nền móng cho lần lặp lại tiếp theo của id Tech.

Và vì vậy chúng ta đến với Doom: The Dark Ages và engine id Tech 8 của nó—một phần tiền truyện của trò chơi Doom năm 2016 nhưng với tất cả các cải tiến đồ họa mà Indiana Jones của MachineGames cung cấp.

Với việc sử dụng tính năng dò tia mọi lúc và không có hệ thống dự phòng dựa trên shader cho GPU không có phần cứng dò tia, id Tech 8 sẽ không bao giờ nhanh như người tiền nhiệm, nhưng nó vẫn chạy khá tốt, xét cho cùng.

Chúng tôi vẫn đang tìm hiểu thêm về những gì id Tech 8 có bên trong, vì id Software khá im lặng về công cụ mới của mình, nhưng chúng tôi biết rằng Doom: The Dark Ages sẽ được vá trong tương lai gần để hỗ trợ theo dõi đường đi.

Đây là phương pháp theo dõi tia tạo ra ánh sáng, bóng đổ, phản chiếu và khúc xạ chính xác nhất về mặt vật lý, nhưng như bất kỳ game thủ PC nào đã thử sẽ cho bạn biết, nhu cầu về phần cứng là cực kỳ cao.

Tất nhiên, điều này có nghĩa là việc nâng cấp—và thậm chí là tạo khung hình—sẽ là điều bắt buộc tuyệt đối, và điều này cũng có nghĩa là id Software sẽ cần đảm bảo thuật toán khử nhiễu của id Tech 8 cũng phải đạt chuẩn hàng đầu.

Tốc độ chậm hơn của Doom: The Dark Ages so với Doom 2016 và Doom Eternal có nghĩa là tốc độ khung hình thực tế sẽ không quá quan trọng như trong các trò chơi đó, nhưng xét đến thành tích phát triển các công cụ cực kỳ hiệu quả gần đây của id Software, chúng tôi khá tự tin rằng tính năng theo dõi đường dẫn sẽ đáng để bật.

Tất nhiên là giả sử bạn có phần cứng PC phù hợp!


CGBTFUshk37BV2FpVrCEYA-1200-80.jpg



Với khoảng cách bốn đến năm năm giữa mỗi lần phát hành một công cụ id Tech mới, rõ ràng là chúng ta sẽ không thấy một công cụ nào khác cho đến cuối thập kỷ này. Khoảng thời gian đó đủ để cho phép ra mắt thêm hai thế hệ GPU mới và nếu bạn so sánh bộ xử lý đồ họa hiện nay với những bộ xử lý từ năm 2020, có lẽ chúng ta có thể đánh giá được id Tech 9 sẽ mang lại những gì.

Các chip mới nhất của AMD và Nvidia sử dụng trực tiếp AI để cải thiện hiệu suất và chất lượng hình ảnh, thông qua việc nâng cấp, tạo khung hình và khử nhiễu, nhưng Nvidia cũng đã giới thiệu khái niệm kết xuất thần kinh với việc ra mắt dòng RTX 50.

Năm năm trước, AMD đã ra mắt GPU có khả năng dò tia đầu tiên của mình—dòng Radeon RX 6000—và Nvidia đã phát hành thế hệ chip RTX thứ hai, dòng 30. Vào thời điểm đó, không có khả năng tạo khung hình, không có khả năng khử nhiễu dựa trên AI. Kết xuất thần kinh vẫn còn trong giai đoạn đầu của quá trình nghiên cứu.

Điều này cho thấy rằng vào năm 2030, id Tech 9 có thể sử dụng AI để cải thiện chất lượng đồ họa của mình, giúp chúng trở nên chân thực hơn bao giờ hết, đồng thời vẫn duy trì hiệu suất ở mức cao nhất có thể. Trò chơi Doom hoặc Quake tiếp theo có thể được theo dõi đường dẫn vĩnh viễn, có lẽ luôn sử dụng tính năng nâng cấp.

Nhưng bất kể chúng ta có nhận được gì, lịch sử lâu đời của id Software trong việc tạo ra các trò chơi có đồ họa chuyên sâu có nghĩa là chúng ta có thể chắc chắn rằng chúng ta sẽ được thưởng thức một bữa tiệc thị giác.

Mặc dù công cụ id Tech không còn là công cụ đáng chú ý đối với các công nghệ dựng hình mới nữa—mọi thứ trong Doom: The Dark Ages đã được thực hiện trước đó—nhưng nó vẫn đặt ra tiêu chuẩn khi nói đến hiệu suất được tối ưu hóa.

Bây giờ, bạn có thể nói điều đó về bao nhiêu công cụ trò chơi?
 
Back
Bên trên