Ví dụ về giả mạo 3D


17

Có ai biết bất kỳ ví dụ hay nào về 3D được làm giả trong 2D (không nhất thiết phải là mã, nhưng các trò chơi tôi có thể tra cứu)? Người chơi có viễn cảnh rằng họ đang đi vào màn hình và mọi thứ sẽ xuất hiện ở họ. Hiện tại, tôi chỉ đơn giản là phóng to những kẻ thù 2D để tạo ảo giác rằng chúng đang đến gần hơn, nhưng nó vẫn cảm thấy khá phẳng. Có bất cứ lời khuyên nào về cách cung cấp cho nó nhiều ảo ảnh 3D hơn mà không thực sự sử dụng công cụ 3D không?

Chỉnh sửa : Chỉ xuất hiện thuật ngữ 'Mode7' và video này cho thấy khá nhiều những gì tôi đang cố gắng tìm ra. (đặc biệt là các trò chơi lúc 0h13 và 1:03). Cách tốt để thực hiện một cái gì đó như thế này là gì?


1
Nhiều game máy tính trước giữa thập niên 90 "giả mạo" 3d, và hầu hết tất cả các game console trước thời đại thế hệ thứ năm (Playstation / N64) đã làm. Nó có thể giúp làm rõ những gì bạn đang làm bây giờ với một ảnh chụp màn hình hoặc một cái gì đó ...
thedaian

1
Tôi đã cập nhật bài viết với một video tôi vừa tìm thấy.
XSL

2
Tất cả 3D trong trò chơi máy tính được làm giả 3D. Không có thứ gì thực sự tồn tại! (Tôi có nghĩa này theo nghĩa là bất kỳ 'giả mạo' của công nghệ 3D trong một trò chơi chỉ là một thân nhân của những gì bạn đang suy nghĩ là 'thực tế' Mode7 chỉ là một mặt đất giữa giữa chúng Cùng toán học cơ bản...)
DampeS8N

Câu trả lời:


13

Một trong những game arcade cổ điển yêu thích của tôi cũng tình cờ làm 3D giả: Space Harrier

Trong video đó, bạn có thể thấy một vài thủ thuật họ đã sử dụng, nhưng một trong những hiệu ứng hình ảnh hiệu quả nhất là liền mạch đến mức bạn có thể không nhận thấy nó xảy ra: khi trình phát (hoặc quan trọng là máy ảnh) di chuyển, họ sử dụng thị sai để đưa các vật vào cảnh tượng một chiều sâu.

Đó là, các vật thể gần nhau di chuyển sang bên nhanh hơn các vật ở xa. Ví dụ kinh điển về thị sai là nhìn ra cửa sổ của một chiếc ô tô đang di chuyển: những thứ gần đó như biển báo đường phố bị mờ đi, cây cối càng di chuyển chậm hơn, trong khi những thứ xa xôi như những ngọn núi dường như không thể di chuyển.

Ngoài ra, các đối tượng không mở rộng tuyến tính khi chúng tiến gần hơn. Đó là, các vật thể chỉ mở rộng ra một chút ở xa và tăng quy mô nhanh hơn khi đóng; nhân rộng tuyến tính sẽ là nếu họ tăng tỷ lệ với cùng một tỷ lệ toàn bộ thời gian. Bạn nói rằng bạn đã nhân rộng các đối tượng của mình khi chúng đến gần hơn, nhưng bạn có thể thu nhỏ chúng theo tuyến tính và trông có vẻ phẳng.

BỔ SUNG: Afterburner là một game arcade cổ điển khác sử dụng nhiều thủ thuật đồ họa tương tự.


1
Bóng cũng là những phần rất quan trọng để khiến mọi thứ 'dường như trở thành' 3D. Tùy thuộc vào phong cách trò chơi, điều này có thể dễ thực hiện hay không, nhân vật của bạn có thể tạo bóng trên mặt đất hay con tàu của bạn đủ lớn để tạo bóng trên một hành tinh? Đây là khái niệm chung đằng sau vết sưng hoặc ánh xạ bình thường. (Không gợi ý rằng đã được thực hiện, giống như một ví dụ cao cấp) Bóng của nhân vật của bạn đi trên cây một chút ở phía sau nhưng không phải là ngọn đồi ở phía xa chỉ có thể thêm một cạnh bạn đang tìm kiếm.
James

6

Hầu hết các trò chơi này sử dụng thủ thuật "Chế độ 7" nổi tiếng. Nó chỉ là một rotozoom. Hoạt động này được thực hiện bởi bộ đồng xử lý trên bàn điều khiển nên nó rất nhanh trên các phần cứng này. Hoạt động 3d thực sự là quá tốn kém. Nhưng với phần cứng thực tế, việc mô phỏng với 3D thực sự dễ dàng hơn.

Một rotozoom là một vòng quay và phóng to trên một sprite. Xem giải thích này hoặc thực hiện SDL này .

Tìm kiếm trên google "MODE-7 floormap" để tìm mẫu và mã.

F-Zero Mode 7 là một trong những game đầu tiên sử dụng nó trên snes.


5

Tôi tìm thấy một đánh giá tuyệt vời về các kỹ thuật này, với các ví dụ và giải thích, vài năm trước. Câu hỏi của bạn đã thôi thúc tôi tìm kiếm lại: Trang 3d giả của Lou . Anh ta đã từng có một công cụ Outrun hoạt động nhưng đã gỡ bỏ nó vì một số lý do ( Máy Wayback nếu bạn của bạn ở đây )

Để trả lời thêm câu hỏi của bạn, đây là danh sách các trò chơi từ trang của anh ấy:

  • Street Fighter II (arcade) ("hiệu ứng raster" trên sàn võ đường)
  • Vượt lên (arcade)
  • Space Harrier (arcade)
  • Siêu treo (arcade)
  • Enduro (Atari 2600)
  • Vị trí cực (arcade, Atari 2600)
  • Phát ban trên đường (3DO)
  • Power Drift (arcade)
  • Racin 'Force (arcade)
  • Hydra (giải trí)
  • Người vượt trội (arcade)
  • Turbo (arcade)
  • Spy Hunter II (arcade)
  • Pitstop II (Hàng hóa 64)
  • Tay đua Enduro (arcade)
  • Hoa sen (Hàng hóa Amiga)
  • Lái thử II (Hàng hóa Amiga?)
  • Lỗi tốc độ

Một lần nữa, không phải danh sách của tôi, tất cả các khoản tín dụng nên đến Louis Gorenfeld vì nghiên cứu tuyệt vời của ông.


4

Tất cả các trò chơi 3d đều là 3d giả: P Tôi nói đùa, tôi biết ý của bạn là '3d giả' ..

Vâng, 8 / 16bit có một số ví dụ về một kỹ thuật rất phổ biến là trình bày nền trong các lớp chuyển động với các vận tốc khác nhau, để bắt chước thị sai. Nó cũng rất phổ biến để thấy .. thực sự, việc nhìn vào bất kỳ trò chơi đua xe nào được tạo ra cho những bàn giao tiếp đó dễ dàng hơn là giải thích, điều mà tôi tin là những gì bạn đang cố gắng làm.

Tôi đang nhìn thấy một số thứ mới trong cùng một tinh thần xuất hiện trong kịch bản flash. Hãy xem 3d trò chơi tên lửa .

Tôi không biết bạn muốn đi theo con đường nào để đạt được hiệu ứng này, nhưng có vẻ như bạn đang gợi ý rằng bạn đã bắt đầu một số chương trình và có quyền truy cập vào đồ họa (có thể là API?). Vì vậy, đó chỉ là vấn đề tìm kiếm các thông số phù hợp cho chuyển động trên màn hình và chia tỷ lệ thành một hàm của thời gian. Tôi không nghĩ rằng bạn sẽ tìm thấy các phương trình cụ thể cho điều đó, vì nó có thể sẽ phụ thuộc nhiều vào tình huống cụ thể của trò chơi của bạn (tốc độ thông thường, đua xe, máy bay, đường hầm, v.v.) Thử nghiệm và lỗi bạn đang làm là đặt cược tốt nhất của bạn, để tìm quy mô chức năng và quỹ đạo trên màn hình liên quan đến thời gian.


3

Jazz Jackrabbit và các trò chơi Sonic cũ có các Thế giới Tiền thưởng là giả 3d.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.