Tại sao PlayStation 1 có đồ họa lung lay?

Tác giả AI+, T.Sáu 16, 2024, 12:42:44 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Đồ hoạ lung lay xảy ra như thế nào?

  • PlayStation 1 thiếu FLOP do không có FPU.
  • Không có bộ đệm Z dẫn đến lỗi nhỏ và đa giác hiển thị.
  • Ánh xạ kết cấu affine gây ra cong vênh; Sự đánh đổi của PS1 là tốc độ và chi phí so với độ phức tạp.


Gọi tôi là thiên vị, nhưng PlayStation nguyên bản vẫn là máy chơi game yêu thích của tôi mọi thời đại. Mặc dù hiện tại các trò chơi có thể trông hơi thô nhưng chúng vẫn chơi tốt hơn bao giờ hết. Điều đó nói lên rằng, ngay cả vào thời điểm đó, đồ họa PS1 đã có sự chao đảo đặc trưng mà bạn không tìm thấy trong đối thủ cạnh tranh, vậy điều gì mang lại?

1. Đó là tất cả về điểm nổi

Hiệu suất GPU hiện đại thường được đo lường (gây tranh cãi) trong FLOP hoặc Hoạt động điểm nổi. Đây chỉ đơn giản là phép toán liên quan đến các số dấu phẩy động, đến lượt chúng chỉ đơn giản là các số nguyên có dấu thập phân. Bộ xử lý đồ họa của PlayStation không có FLOP vì nó thiếu FPU hoặc Đơn vị dấu phẩy động. Thay vào đó, nó sử dụng các số nguyên điểm cố định để tính vị trí của các đỉnh.

"Đỉnh" là điểm mà hai hoặc nhiều đường gặp nhau. Vì vậy, trong một đa giác, thường (nhưng không phải luôn luôn) là một hình tam giác trong đồ họa 3D, có ba đỉnh. Mô hình 3D bao gồm nhiều đa giác và khi đối tượng đó di chuyển trên màn hình, vị trí của các đỉnh phải được tính toán trong không gian 3D.

Vì bạn chỉ có thể sử dụng số nguyên nên mọi vị trí của đỉnh không phải là số nguyên sẽ bị bỏ qua. Vì vậy, bạn sẽ thấy các đa giác "chớp" giữa các vị trí với một số loại chuyển động nhất định. Ví dụ: một nhân vật đang đứng yên và có hoạt ảnh nhàn rỗi tinh tế sẽ trông giống như họ đang run rẩy một chút.

2. Không tìm thấy bộ đệm Z

Ngoài việc thiếu FPU, PlayStation còn thiếu bộ đệm Z phần cứng. Bạn có thể nhớ tọa độ XYZ ở trường, nơi bạn có thể mô tả bất kỳ điểm nào trong không gian 3D bằng ba số. PlayStation thiếu bộ đệm phần cứng để lưu trữ các giá trị độ sâu hoặc trục Z, được sắp xếp theo thứ tự khoảng cách từ "máy ảnh" đến một vật nào đó.

Điều này có nghĩa là các nhà phát triển trò chơi phải tạo ra giải pháp đệm Z nội bộ của riêng họ và vì nó không được thực hiện bằng phần cứng nên họ phải sử dụng thuật toán sắp xếp theo chiều sâu một cách tiết kiệm. Điều này dẫn đến một tình huống phổ biến trong các trò chơi PS1 là xảy ra một số lỗi sắp xếp nhỏ và các đa giác đáng lẽ phải bị ẩn khỏi tầm nhìn lại xuất hiện và biến mất.

3. Rốt cuộc thì việc lập bản đồ kết cấu Affine không được tốt lắm

Ánh xạ họa tiết là quá trình thêm họa tiết (về cơ bản là hình ảnh kỹ thuật số) vào khung dây đa giác. Về cơ bản nó là "lớp da" của vật thể 3D. PS1 sử dụng một phương pháp được gọi là ánh xạ kết cấu "affine", sử dụng phép toán đơn giản để xác định tọa độ trên đa giác nơi kết cấu sẽ được vẽ. Ánh xạ kết cấu affine không tính đến tọa độ Z và do đó phép chiếu phối cảnh sẽ xuất hiện không chính xác đối với các đối tượng 3D. Hãy nhớ rằng PS1 không có bộ đệm Z!

Các bảng điều khiển như Nintendo 64 có bộ đệm Z và cũng sử dụng một phương pháp được gọi là mipmapping, trong đó nhiều phiên bản của kết cấu được hoán đổi tùy thuộc vào khoảng cách của bạn với đối tượng, cải thiện hơn nữa độ rõ nét và độ ổn định của kết cấu khi chuyển động. Trên PS1, việc thiếu những công nghệ này sẽ dẫn đến hiện tượng cong vênh kết cấu affine.

4. Nhanh, rẻ hoặc phức tạp: Chọn hai

Các nhà phát triển khác nhau đã tìm cách khắc phục những hạn chế này và do đó, một số trò chơi PS1 thể hiện những vấn đề này ở các mức độ khác nhau. Tuy nhiên, việc cố gắng giải quyết những vấn đề này trong phần mềm hầu như luôn đồng nghĩa với việc tiêu tốn sức mạnh xử lý mà lẽ ra có thể dành cho thứ khác. Bất chấp những cắt giảm này, phần cứng của PS1 trên hết vẫn rất nhanh. Nó có thể tạo ra đa giác nhanh hơn bất cứ thứ gì khác vào thời điểm đó.

Nó cũng giúp CRT hiển thị khá tốt hầu hết các vấn đề này và đó có thể là mục đích của bảng điều khiển. Màn hình phẳng hiện đại có tác động tiêu cực đến cách trình bày các trò chơi PS1, khiến đồ họa bây giờ xấu hơn so với thời đó!

Điểm mấu chốt là bảng điều khiển có thể có phần cứng bổ sung đó, nhưng nó sẽ khiến chi phí tăng lên đáng kể mà không mang lại lợi ích rõ ràng nào cho Sony hoặc người chơi của hãng vào thời điểm đó. Công ty đã đi theo hướng "nhanh và rẻ", bỏ lại sự phức tạp trước cửa. Lịch sử đã chứng minh đây là quyết định đúng đắn.

5. Trình giả lập có thể sửa lỗi này nhưng bạn có nên không?


Nếu bạn chơi game PS1 bằng một trong nhiều trình giả lập hiện nay, bạn thường có tùy chọn để "khắc phục" hầu hết các sự cố này. Chúng tôi có thể đưa các giá trị dấu phẩy động vào trò chơi một cách kỳ diệu và làm sạch bản đồ kết cấu để trò chơi tỏa sáng. Tuy nhiên, bạn có nên làm điều đó? Có một lập luận được đưa ra rằng những đặc điểm này là một phần không thể thiếu của trải nghiệm PS1 và cũng giống như mọi người không muốn làm mịn các pixel trong các trò chơi 8 hoặc 16 bit của họ, tôi hiếm khi muốn loại bỏ hiện tượng rung lắc khỏi trò chơi yêu thích của mình. Các tựa game PS1.

Để có lời giải thích tuyệt vời từ một nhà phát triển trò chơi thực tế và lập trình viên mô phỏng, tôi thực sự khuyên bạn nên tìm hiểu sâu về hiện tượng cong vênh đồ họa của PS1.