Saya tidak mengerti arti dari istilah "2.5D." Saya secara khusus bingung tentang perbedaan antara lingkungan 2.5D dan 3D, meskipun saya telah membaca definisi dan artikel yang berbeda tentang keduanya. Saya mengerti bagian di mana 2.5D seperti 3D tetapi saya tidak mendapatkan bagian di mana 2.5D berbeda.
Jadi, apa artinya game menjadi 2.5D? Misalnya, apakah game yang ditampilkan di sini 2.5D?
2.5d
terminology
ahli matematika
sumber
sumber
Jawaban:
Istilah 2D dan 3D (seperti yang mungkin sudah Anda ketahui) merujuk pada jumlah dimensi spasial dalam ruang-dunia Euclidean. Dimensi ini harus berupa angka urut; tidak ada yang namanya setengah dimensi , jadi istilah 2.5D benar-benar istilah yang tidak masuk akal, dan tidak memiliki makna intrinsik. Yang mengatakan, 2.5 adalah "di suatu tempat antara" 2 dan 3, jadi 2.5D umumnya berarti sesuatu di sepanjang garis "di suatu tempat antara 2D dan 3D".
Secara pribadi, saya menggunakan istilah ini untuk merujuk pada kasus di mana ruang dunia grafis dan logis game memiliki dimensi yang berbeda. Secara khusus, ada dua varian berbeda di sini:
Penggunaan lain yang umum dari istilah (meskipun tidak satu yang saya gunakan) mengacu pada game yang memanfaatkan kombinasi 3D dan billboarded 2D grafis. Dalam hal ini istilah tersebut sama sekali tidak menggambarkan dimensi logis permainan. Hampir semua game 3D menggunakan papan reklame dengan beberapa cara, termasuk sistem partikel, proxy objek jauh, dan overlay UI di dunia. Oleh karena itu, istilah ini biasanya hanya digunakan ketika sebagian besar objek non-latar belakang menggunakan grafis 2D, dan batas antara 2.5D dan 3D agak buram.
sumber
Gim pertama yang saya ketahui yang menerapkan istilah "2.5D" adalah Doom (meskipun Wolfenstein 3D juga memenuhi syarat dalam beberapa hal).
Wolfenstein 3D pada dasarnya adalah game 2D dengan presentasi 3D. Anda menavigasi labirin 2D, semua lantainya rata, semua langit-langitnya sama tingginya, tidak ada jendela, pintu dari lantai ke langit-langit dan membuka ke samping, dan Anda tidak akan pernah bisa berada di atas atau di bawah objek lain. Permainan menggunakan raycasting untuk mencari tahu, untuk setiap kolom layar, seberapa jauh dinding itu ke arah itu, dan apa tekstur dinding itu; kemudian sebuah kolom tekstur dinding digambar dengan ketinggian berbanding terbalik dengan jarak, dan ruang di atas dan di bawah dicat dengan isi lantai dan langit-langit. Musuh dan objek adalah sprite, dengan jumlah aspek yang terbatas, dan ukurannya lagi sebanding dengan jarak.
Doom menggunakan teknologi yang sangat mirip dengan Wolfenstein 3D, tetapi menyalahgunakannya untuk mendapatkan pengalaman yang lebih 3D. Peta-peta itu diam2D, direpresentasikan menggunakan partisi ruang biner 2D (dengan demikian nama file .BSP map). Apa yang Anda lihat di automap ketika Anda menekan tab hanyalah rendering 2D langsung dari peta. Tetapi setiap sektor memiliki "tinggi lantai" dan "tinggi langit-langit" yang independen, dan ujung-ujungnya memiliki tekstur sisi atas dan bawah (digunakan ketika mereka memiliki ketinggian langit-langit yang lebih rendah, atau ketinggian lantai yang lebih tinggi, daripada bagian dari lingkungan mereka). Ini memungkinkan tangga, jendela, platform, kolam, dan efek lainnya - mesin hanya harus mampu membuat daftar beberapa sektor yang dilewati sebelum akhirnya menabrak dinding, dan tekstur masing-masing. Tetapi Anda masih belum bisa memiliki arsitektur 3D nyata - Anda bisa membuat "jembatan" di beberapa lendir menggunakan bagian lantai yang terangkat, tetapi tidak mungkin ada sesuatu di bawahjembatan. Posisi dalam permainan masih hanya X dan Y. Satu-satunya kontrol pemain terhadap tinggi badan mereka adalah jatuh dari hal-hal, dan lift, yang hanya sektor yang ditulis untuk mengubah ketinggian lantai mereka. Musuh masih sprite (meskipun saya pikir mereka memiliki lebih banyak aspek), tembakan "auto-bertujuan" tingginya karena deteksi tabrakan hanya 2 dimensi, dan tidak ada model 3D yang dapat ditemukan dalam permainan.
Bidat dan Hexen menggunakan mesin Doom-turunan yang mengambil langkah lebih jauh, ke titik bahwa mereka kadang-kadang disebut "2.75D"; mereka memiliki sebagian besar keterbatasan arsitektur yang sama dan musuh berbasis sprite, tetapi menambahkan kemampuan bagi pemain untuk melihat ke atas dan ke bawah (memiringkan pandangan, tetapi hanya sejauh ini atau jika mesin akan rusak) dan untuk melompat, terbang, dan berjongkok (mengubah tinggi badan mereka secara mandiri).
sumber
2.5D
2.5D ("dua setengah dimensi"), ¾ perspektif, dan istilah pseudo-3D, terutama dalam industri video game, digunakan untuk menggambarkan proyeksi grafis 2D dan teknik serupa yang digunakan untuk menyebabkan serangkaian gambar (atau adegan) untuk mensimulasikan penampilan menjadi tiga dimensi (3D) padahal sebenarnya tidak, atau gameplay dalam gim video tiga dimensi yang terbatas pada bidang dua dimensi.
Dalam pengalaman saya definisi mana yang ditekankan tergantung pada usia orang yang Anda ajak bicara.
Gamer yang lebih tua cenderung menggunakan definisi pertama " proyeksi grafis 2D dan teknik serupa yang digunakan untuk menyebabkan serangkaian gambar (atau adegan) untuk mensimulasikan penampilan menjadi tiga dimensi (3D) padahal sebenarnya tidak "
Gamer yang lebih muda menggunakan definisi 2 " gameplay dalam gim video tiga dimensi yang terbatas pada pesawat dua dimensi ".
Secara pribadi saya menggunakan definisi ke-2. Trine, Donkey Kong, dan Super Mario Bros Wii U semuanya akan menjadi 2.5D menurut saya. Selain itu tag Steam 2.5D menggunakan definisi kedua. Saya pikir ini adalah tes lakmus yang baik untuk bagaimana seorang gamer tipikal mendefinisikan konsep) dan karena itu saya percaya definisi ke-2 lebih tepat .
3D
Setiap video game dengan grafik game 3D, yang dihitung dalam 3 dimensi. Catatan ini menjadikannya super-set definisi 2.5D kedua.
sumber
2.5D hanyalah cara yang ramah untuk mengatakan 2D yang terlihat 3D.
Saya kira Anda benar-benar bisa mengaburkan garis definisi jika, misalnya, Anda menggunakan mesin 3D tetapi membatasi gameplay hanya untuk bidang 2D, tetapi secara pribadi saya akan mempertimbangkan sesuatu 2.5D apakah itu terlihat 3D tetapi bertindak 2D.
sumber
Tangkapan layar game yang Anda poskan adalah game 3D.
Dalam game 3D, objek digambar menggunakan simpul untuk menggambar objek 3D yang sebenarnya, yang kemudian diwarnai, bertekstur, dan sebagainya.
Dalam game 2D, objek diambil dari sprite / sprite sheet, dll.
Perbedaan antara keduanya adalah bagaimana Anda bisa melihatnya. Sprite seperti selembar kertas pipih. Anda tidak dapat melihatnya di nada atau sudut yang berbeda atau sprite akan miring. Pada objek 3D, saat kamera bergerak, Anda dapat melihat berbagai bagian objek karena objeknya adalah 3D.
Dalam gim 2.5D, Anda menggabungkan kedua dunia ini. Perlu diingat hanya karena Anda tidak dapat menggerakkan kamera untuk melihat sudut yang berbeda, tidak membuat game bukan 3D. Benda-benda yang ada di dalamnya yang menentukan ini.
Contoh bagus dari game 2.5D adalah Ragnarok Online. Apa yang membuatnya 2.5D adalah bahwa dunia sebagian besar dikompromikan dengan objek 3D. Bangunan, lansekap, dll adalah objek 3D bertekstur. Anda dapat memutar kamera kepala atas dan melihat sisi yang berbeda dari objek-objek ini secara bersamaan. Anda dapat melihat sisi depan bangunan serta area kiri / kanan / atap. Namun para pemain, adalah sprite 2D yang diposisikan tampak berdiri ke atas. Jika Anda memutar kamera terlalu banyak, gim harus memuat sel sprite sheet yang berbeda agar karakter tersebut mengubah bagaimana tampaknya berdiri. Anda tidak dapat melihat sudut berbeda dari karakter karena itu bukan 3D. Sudut dimuat secara dinamis tergantung pada tampilan kamera.
http://sprites.technoized.com/images/sprite/ro/gm_m.png
Ini adalah sprite sheet dari game. Jika Anda hanya melihatnya, Anda akan menganggapnya dari game 2D. Sendiri, Anda akan benar. Tapi begitu itu ditempatkan ke dunia 3D, Anda memiliki game 2.5D.
sumber
2.5D
itu menyesatkan karena hanya interpretasi manusia dll. Bukan sesuatu yang teknis tentang ini. Misalnya apa permainan Anda jika Anda menggunakan teknik Billboard untuk semuanya (dll. Paha bertekstur) pada lingkungan 3D, jika mereka diputar selalu di depan Anda? Beberapa mungkin mengatakan 2.5D tetapi sebagian besar paket akan mengatakan 3D karena ada Z-depth. Secara teknis, jika menggunakan simpul 3D (dengan demikian, z-dimensi) itu 3D, jika hanya menggunakan X / Y (katakanlah, bros Super Mario ) maka itu 2D. Tetapi jika hanya menggunakan 2D (x / y) pada lingkungan 3D (termasuk karakter), maka itu masih 3D tetapi 2.5D dengan interpretasi .2.5D sering merupakan cara lain untuk mengatakan "isometrik" - grafik 2D yang digambar dengan cara memberikan tampilan 3D, tetapi tidak benar-benar mensimulasikan koordinat 3D. Lihat artikel wikipedia pada grafik isometrik: http://en.wikipedia.org/wiki/Isometric_graphics_in_video_games_and_pixel_art
Intinya adalah bahwa dalam 2.5D / isometrik, Anda masih menggunakan sistem koordinat 2D - dengan sumbu x dan y hanya untuk menghitung grafik Anda. Grafik Anda mungkin berupa sprite 2D, yang biasanya digambar sedemikian rupa sehingga Anda dapat melihat tiga wajah, dan kemudian ditempatkan di layar menggunakan koordinat (x, y). Kadang-kadang sprite bahkan dibuat oleh pemodelan dalam 3D, kemudian membuat sprite 2D dari model 3D dari berbagai sudut.
Bergerak objek secara karakteristik hanya memiliki beberapa sudut mereka dapat dilihat. Jika Anda memutar karakter dalam tampilan isometrik, itu tidak akan berputar dengan lancar, tetapi Anda akan melihat beberapa sudut berbeda, seperti depan, 3/4, samping, dan sebagainya. Ini karena setiap sudut pandang unik membutuhkan set sprite yang sama sekali baru.
Permainan isometrik biasanya hanya mendukung satu sudut kamera, karena keterbatasan sistem jenis ini. Fitur lain yang membedakan gim isometrik adalah gim tersebut biasanya tidak memiliki titik hilang. Saat melihat suatu objek dalam kehidupan nyata, jika objek itu lebih dekat dengan Anda, objek itu akan tampak lebih besar dalam visi Anda. Jika objek lebih jauh, itu akan tampak lebih kecil. Dalam permainan isometrik, semua objek biasanya memiliki ukuran yang sama di mana pun mereka berada di ruang angkasa.
Game 3D sebagai perbandingan, simulasikan semua 3 sumbu - x, y, dan z. Pada level yang sangat rendah, komputer menerjemahkan x, y, dan z ke x, y untuk ditampilkan pada monitor, tetapi pada level yang lebih tinggi, seniman sebenarnya memanipulasi titik pada 3 sumbu untuk mewakili objek. Karena komputer memiliki semua informasi tentang bentuk objek, ia dapat secara dinamis menghitung objek apa yang dilihat dilihat dari sudut mana pun, dan itu bisa tampak lebih kecil atau lebih besar ketika Anda semakin dekat atau lebih jauh darinya.
Beberapa game merupakan campuran 2.5D dan 3D sejati. Contoh yang bisa saya pikirkan adalah seri Disgaea, yang menampilkan latar belakang 3D dan sprite 2D.
sumber
Saya tidak yakin apa yang akan menjadi definisi yang lebih diterima, tetapi saya dan orang-orang di perusahaan saya sebelumnya menganggap "permainan apa pun yang tampak seperti 3D isometrik, tetapi diterjemahkan melalui sprite 2D" menjadi 2,5D.
Sekarang izinkan saya menjelaskan mengapa kami melakukan itu. Secara umum rendering dunia 3D dengan banyak objek di dalamnya akan membuat terlalu banyak tekanan pada pemrosesan, menurunkan jumlah FPS. Jadi untuk mengatasi hal ini, kami umumnya membuat objek dalam perangkat lunak render 3D seperti Maya dan menjadikannya sebagai sprite. Yang bisa digunakan dalam game. Belum lagi sudut dipertimbangkan saat rendering. Jadi untuk berbicara tentang teknologi ini dengan penerbit, kami biasanya menggunakan istilah ini. Dunia 3D yang sepertinya dunia 2D masih secara teknis 3D bagi kita. Jadi kami biasanya tidak menggunakan istilah untuk metode ini. Saya pikir saya harus membagikan bagian saya di sini.
sumber
Biasanya istilah "2.5-D" mengacu pada salah satu dari dua gaya permainan yang sangat berbeda.
Ini bisa berarti:
1) Sebuah game yang menggunakan teknik rendering 2-D, tetapi kontrol dalam 3 dimensi spasial. Biasanya menggunakan trik grafis untuk muncul seolah-olah itu sebenarnya diberikan dalam 3-D. Ini sangat umum di tahun 90-an, tetapi tidak begitu banyak hari ini. (Contoh: "DOOM", "Duke Nukem 3D", "Wolfenstein 3D")
2) Sebuah game yang seluruhnya dibuat dalam 3-D, tetapi itu mengendalikan secara eksklusif sepanjang satu atau lebih pesawat 2-D. Gaya ini tetap sangat populer hingga hari ini. (Contoh: "Little Big Planet", "New Super Mario Bros", "Trials HD")
Satu hal yang perlu diperhatikan adalah bahwa ketika menggunakan pola arsitektur model-view-controller, gaya permainan pertama memiliki "model" yang mewakili data dalam 3 dimensi tetapi "tampilan" yang hanya menampilkannya kepada pengguna dalam 2 dimensi; gaya permainan yang kedua adalah sebaliknya.
sumber
Dalam 2.5D Anda menggunakan aset 2D / teknik rendering untuk memberikan sensasi lingkungan 3D.
Sekarang, dengan definisi itu, dalam skenario yang berpotensi ambigu berikut ini, diperlukan beberapa elaborasi:
Game A
Menggunakan grafik 3D, GPU dipercepat dan semua (objek game adalah jerat, bukan gambar), dengan sudut kamera tetap. Mari kita membuatnya lebih buruk, proyeksi adalah ortografis, klasik 63,43 derajat. Satu-satunya cara untuk memperhatikan pada pandangan pertama bahwa grafik bukan 2D adalah karena 3DGC, kecuali bahwa Anda membuatnya dengan sangat hati-hati, mudah dibedakan dari sprite gambar tangan, tidak masalah proyeksi yang digunakan untuk membuatnya. Anda dapat bereksperimen dengan berbagai teknik render, parameter, shader, dll, dan Anda akan kesulitan untuk menyembunyikan fakta bahwa itu adalah jerat 3D.
Game B
Sebuah port dari Game A, tetapi platform penargetan yang dikenal memiliki perangkat keras yang tidak menangani grafik 3D dengan sangat baik atau tidak menanganinya sama sekali. Kemudian port menggantikan jerat dengan sprite. Itu masih menggunakan Kotak Bounding 3D untuk tabrakan, misalnya, dan objek memiliki properti posisi dengan nilai x, y dan z, karena logika permainan sebagian besar tidak disentuh atau tidak disentuh sama sekali, hanya kode render yang diubah.
Karena sprite Game B adalah render dari aset 3D Game A dan, untuk membuat segalanya lebih ambigu, Game A tidak melakukan apa pun yang membutuhkan shader rumit, di 99% dari semua GPU di luar sana Anda tidak dapat membedakan bingkai dari Game B bingkai dari Game A.
Dalam 2.5D, interaksi antara objek game terbatas pada serangkaian situasi di mana ilusi 3D tidak dapat dikompromikan. Untuk mewakili dua karakter pelukan, misalnya, Anda harus membuat file gambar tunggal dengan dua karakter yang berinteraksi, karena mencoba untuk mewakili tindakan pelukan hanya menggunakan satu gambar per karakter akan terlalu sulit atau tidak mungkin. Mungkin Anda bisa datang dengan tubuh karakter yang dibagi menjadi beberapa bagian dan menggambarnya dalam urutan yang benar. Dalam 3D masalah ini tidak ada (ada yang lain, yaitu menempatkan dua karakter dengan benar sehingga mereka tidak menembus mesh karakter lain).
Sekarang, untuk memvisualisasikan ini, bayangkan bahwa Game A dan B memiliki bug yang dalam beberapa situasi memungkinkan karakter pemain untuk melewati objek permainan lain, memungkinkan kita untuk membedakan antara yang 2.5D dan yang 3D dengan mudah.
Game B, 2.5D Render, sprite diurutkan berdasarkan nilai z dari vektor posisinya. Dalam contoh ini z positif turun dan negatif z naik. sumbu z dan sumbu y adalah paralel tetapi z diskalakan dengan faktor 0,5 dari y. Jadi jika area yang terlihat adalah dari 10y hingga -10y, di area yang sama kita memiliki dari 20z hingga -20z. Objek dengan z yang lebih besar akan ditarik belakangan, sehingga mereka akan terlihat berada di depan objek dengan z yang lebih rendah. Bayangan karakter pemain terlihat aneh karena bayangan berada di lapisan yang lebih unggul dari lantai, tetapi di lapisan yang lebih rendah itu semua benda lain, sehingga bayangan karakter pemain tidak pernah ada di atas kubus.
Game A, 3D Render. Buffer kedalaman (juga dikenal sebagai z-buffer) digunakan untuk pengujian kedalaman piksel presisi. Jadi, suatu objek tidak perlu sepenuhnya menyumbat yang lain, bahkan sebuah segitiga tidak perlu sepenuhnya menyumbat yang lain, kami memiliki tes kedalaman piksel presisi. Kami dapat memutar objek game dengan cara apa pun dan tetap mendapatkan hasil yang realistis saat mereka berinteraksi.
Dalam resume: dalam 2.5D sebuah sprite berada di depan atau di belakang sprite lain. Dalam 3D, sebuah mesh terbuat dari segitiga, tetapi segitiga bukanlah unit minimal saat menguji kedalaman, Anda dapat memiliki ketepatan piksel. Tentu saja, rotasi kamera dalam 2.5D tidak dimungkinkan karena aset dibuat untuk sudut kamera tetap, sedangkan dalam 3D adalah wajar, jika sudut kamera dibatasi oleh desain dalam game 3D adalah subjek lain.
Ada beberapa trik yang berbeda untuk memberikan sensasi berada di dunia 3D ketika Anda hanya dapat membuat grafik 2D, saya hanya menyajikan contoh yang dibuat dengan cepat menggunakan beberapa aset dari proyek tambang yang ditinggalkan.
Mengapa tidak selalu menggunakan 3D dan melupakan 2.5D?
Yah, saya dapat berpikir dalam beberapa contoh mengapa pengembang mungkin lebih suka pendekatan 2.5D:
Seberapa banyak Anda dapat memperkirakan hasil grafik 3D menggunakan 2.5D?
Ada cakrawala kinerja dan kompleksitas pemrograman. Ketika Anda mendekati cakrawala itu, Anda mulai ragu apakah proyek Anda benar-benar mungkin pada 2.5D atau jika Anda harus menggunakan 3D penuh. Misalnya, Anda dapat menggunakan z-buffering dalam 2.5D (secara teori), tetapi dapatkah Anda membayar biaya memori video (komputer desktop lama dengan grafis onboard, bukan perangkat seluler yang kuat)? Apakah Anda ingin membayar biaya penyimpanan karena memiliki gambar ekstra untuk menghemat z-mask setiap sprite?
Kandidat yang baik untuk 2.5D adalah game RPG, pikirkan seri Gerbang Baldur, atau RTS, berpikir Age of Empires 1 dan 2 (AoE 3 sepenuhnya 3D dan mudah dibedakan).
Referensi yang berguna:
Z-Buffering: http://en.wikipedia.org/wiki/Z-buffering
Proyeksi ortografis: http://glasnost.itcarlow.ie/~powerk/GeneralGraphicsNotes/projection/orthographicprojection.html
sumber