Mengapa kita tidak menggunakan peta octogonal alih-alih peta hexagonal?


42

Saya mengerti keuntungan dari ubin heksagonal lebih dari yang persegi. Tapi mengapa octagons tidak digunakan? Saya pikir mereka akan memberikan gerakan yang lebih baik, lebih alami di delapan arah.

Saya berpikir untuk menggunakan peta semacam itu di beberapa game, tapi saya belum melihat ada game yang menggunakannya, jadi saya bertanya-tanya apakah saya melewatkan sesuatu yang jelas salah dalam menggunakannya?


59
Segi delapan tidak ubin.
jmegaffin

2
Saya ingin tahu apakah ada bentuk lain yang ubin seperti kotak dan segi enam
Azaral

12
@Azaral: Hanya ada segitiga, bujur sangkar, dan heksa. Ini sudah terbukti.
Nicol Bolas

9
Itu membuat saya sedikit sedih di dalam
Azaral

11
Sebenarnya ada tilings dengan poligon reguler lainnya, tetapi hanya pada geometri non-euclidian. Misalnya, Anda bisa mendapatkan ubin segi lima biasa pada bola.
TonioElGringo

Jawaban:


69

Octogons:

masukkan deskripsi gambar di sini

Segi enam:

masukkan deskripsi gambar di sini

Kesenjangan dalam octogon membuat dunia game tidak menarik.

Biasanya, jika Anda ingin memungkinkan delapan arah gerakan, Anda hanya akan menggunakan kotak.


43
Alternatifnya adalah agar permainan Anda berlangsung di pesawat hiperbolik, tempat Anda dapat memasang octogons: roguetemple.com/z/hyper.php
MartianInvader

3
@MartianInvader Sungguh Menarik!
Klik OK

"Kesenjangan dalam octogon membuat dunia game tidak menarik." Saya tidak akan mengatakannya, saya pasti melihat penggunaan untuk pola seperti itu untuk ubin yang kurang terlihat.
API-Beast

1
Cukup benar, "tidak menarik" adalah kata yang salah. Saya harus mengatakan, struktur non-seragam memperkenalkan kompleksitas tambahan untuk pengguna akhir (yang mungkin mengalami kesulitan membiasakan diri dengan struktur seperti itu) dan untuk pengembang, yang kemungkinan akan merasa lebih sulit untuk dikodekan.
MichaelHouse

4
Pola segi delapan dengan celah setara dengan pola persegi tanpa gerakan diagonal, diputar secara visual 45 derajat! (Dan jika Anda mengisi celah dengan ubin persegi, itu adalah pola persegi dengan gerakan diagonal, tapi lebih aneh)
user253751

64

Untuk meringkas dan menguraikan apa yang telah dikatakan dalam jawaban lain dan dalam komentar, segitiga, bujur sangkar, dan segi enam adalah satu-satunya tilings reguler yang mungkin secara matematis alias tessellations reguler dari pesawat Euclidean . Jadi ya, ini menyebalkan. Segitiga benar-benar tidak berguna di sini, kotak menghisap karena Anda tidak dapat bergerak secara diagonal tanpa memiliki faktor yang agak sulit di 1,4142135623730950488016887242096980785696718753769480 ... memberi atau menerima; dan segi enam payah karena Anda bahkan tidak bisa bergerak lurus ke dua arah. Jangan salah paham, saya masih lebih suka mereka daripada kuadrat dalam batasan-batasan dari realitas matematika jelek yang tersisa bagi kita dan pergi Civ5 untuk akhirnya beralih ke hex grid. Tapi tetap saja, jika itu benar mungkin untuk tessellate dengan octagon, tidak ada yang akan melihat hexagon.

Anda bisa mengatakan, "Yah, saya tidak peduli jika ada celah. Saya hanya berpura-pura tidak ada." Anda akan mendapatkan ubin persegi terpotong yang disebut ubin persegi bukan karena ada sedikit celah persegi tetapi karena octagon itu sebenarnya hanya kotak dimuliakan dalam hal ubin pesawat. Kotak kecil itulah yang tersisa dari pemotongansudut-sudut kotak yang benar-benar akan membentuk bidang dan dalam hal permainan, alasan untuk tidak menggunakan kotak di tempat pertama adalah memiliki jarak yang sama untuk gerakan lurus dan diagonal dan ini adalah apa yang tidak Anda miliki di sini. Pergerakan diagonal harus menjembatani jarak yang sama antara pusat ubin seperti halnya dengan ubin persegi. Sebaliknya, jika Anda berpura-pura ruang digital ajaib Anda memiliki lubang yang sebenarnya, tentu saja Anda bisa melakukan itu, tetapi apa bedanya hanya menggunakan ubin persegi dan membuat gerakan diagonal sama mahalnya dengan yang lurus?

ubin persegi terpotong

Sekarang ini semua tidak akan terlalu buruk jika ada alternatif yang benar-benar bagus yang bukan Euclidean . Seringkali, grid kita ada di beberapa jenis planet, jadi mengapa tidak menggunakan geometri elips, yaitu permukaan bola? Sayangnya, bola bahkan jauh, jauh lebih buruk ketika datang ke tilings biasa. Di mana di pesawat Anda setidaknya dapat menggunakan sebanyak atau sesedikit ubin yang Anda suka, pada bola ada lima pengaturan, padatan Platonis. Itu dia. Dan hanya dua dari mereka yang tidak menggunakan segitiga. https://en.wikipedia.org/wiki/Spherical_polyhedra

Namun, bidang hiperbolik benar-benar batu ketika datang ke tessellations. Bukan hanya tiga, sebenarnya ada jumlah tak terbatas dari tessellations biasa, termasuk yang segi delapan .

ubin segi delapan di bidang hiperbolik

Satu-satunya masalah adalah bahwa bidang hiperbolik bukanlah sesuatu yang sebaik permukaan datar atau bola tetapi pada dasarnya permukaan Pringle . Anda akan membutuhkan satu pengait cerita untuk membenarkan permainan pada Pringle;)

paraboloid hiperbolik

Namun, ubin segi delapan yang begitu elegan dan disc Poincaré terlihat begitu mengagumkan bahwa aku benar-benar terkejut itu hampir tidak pernah dilakukan (sebelumnya saya mengatakan "tidak pernah dilakukan" di sini tapi kemudian saya membaca MartianInvader 's komentar menunjuk ke HyperRogue ).

Dari segi implementasi, walaupun saya belum pernah melakukannya sendiri, seharusnya cukup mudah untuk mengimplementasikannya dengan arsitektur 3D saat ini, karena tampilan disc Poincaré dapat dibuat dengan meletakkan segala sesuatu di permukaan hiperboloid dan melakukan proyeksi perspektif (lihat Kaitannya dengan model hiperboloid ).

pembangunan disk Poincare

Hanya satu hal lagi untuk menyimpulkan ini, jika Anda berpikir tentang melakukan permainan ruang berbasis grid dan pergi ke tiga dimensi, berharap hal-hal mungkin terlihat lebih cerah di sana ... lebih baik menyerah saja. Anda tidak hanya memerlukan polyhedron cembung biasa dengan 14 wajah yang tidak ada , satu-satunya cara untuk men-tessellate ruang Euclidean 3D dengan polyhedra cembung biasa adalah dengan kubus. Booooring. Di ruang hiperbolik Anda setidaknya bisa mendapatkan sesuatu yang samar-samar seperti analog ke hex grid dengan men-tessellating dengan dodecahedra (yaitu polyhedra berwajah 12; itu hampir 14, kan?) Tapi sekarang Anda berada di tanah brainfuck total dan masih belum punya pasangan ke ubin segi delapan:

Honeycomb ortogonal hiperbolik dodecahedral

Cantik sekali? Ya Tuhan, ya! Akankah saya panik tak terkira jika pesawat ruang angkasa alien datang setelah saya dalam hal ini dan saya diharapkan untuk bereaksi dengan cara yang masuk akal? Anda pasti akan melakukannya. Ini mungkin alasan mengapa kebanyakan orang hanya menggunakan kubus atau tumpukan prismatik heksagonal .

sarang lebah kubik sarang lebah prismatik heksagonal


10
Kiat pro: jika Anda merasa ingin menjadi penguasa resmi nerdiverse, buatlah Benteng Kerdil di sarang lebah dodecahedral di ruang hiperbola. Jika Anda tidak ingin ada orang yang menantang Anda untuk gelar itu lagi dan juga membuat Vulcans mendarat dan menawarkan pengajuan mereka di bawah kekuasaan Anda sebelum kami bahkan menciptakan drive warp, tulis dalam dialek Funge yang sesuai ( quadium.net/funge/ spec98.html ).
Christian

3
3D memang memiliki analog reguler dari kisi heks, yaitu kisi FCC , yang sel unitnya, rhombic dodecahedron , adalah padatan Catalan (yaitu semua wajahnya identik dan simetris, meskipun tidak semua sudutnya). Belum pernah melihat banyak game menggunakannya.
Ilmari Karonen

1
@TobiasKienzler Meskipun apa yang saya katakan dalam jawabannya, itu akan sangat luar biasa. Jika sebuah game tidak dapat mengubah otak kita untuk memahami ruang hyberbolik 3D, lalu apa itu? :)
Christian

1
@TobiasKienzler Bukankah kubus 4D Rubik hilang dari daftar itu? Bagaimanapun, Adanaxis terdengar sangat gila. Adapun dimensi yang lebih tinggi, geometri menjadi sangat membosankan di dimensi yang lebih tinggi: en.wikipedia.org/wiki/List_of_regular_polytopes#Tessellations Ini benar-benar mengejutkan pikiran saya. Saya berharap akan ada lebih banyak derajat kebebasan sehingga lebih banyak polytopes dan lainnya. Tapi tidak. Bahkan ruang hiperbolik yang memiliki jumlah tessellations yang tak terbatas dalam ruang 2D turun ke 0 dalam dimensi> 5. Ruang Euclidean mempertahankan tessellation kubiknya di semua dimensi.
Christian

4
+1 untuk "Anda akan membutuhkan satu kait cerita untuk membenarkan permainan di Pringle."
CaptainRedmuff

27

Penulis HyperRogue di sini.

HyperRogue sebenarnya menggunakan tesselation yang terbuat dari segi enam dan heptagon, di sini adalah alasan mengapa tesselation khusus ini telah dipilih, bukan hanya octagons atau heptagons, misalnya: Geometri hiperbolik dalam Rogue Hiperbolik Pada dasarnya, octagons terlalu besar.

Tangkapan layar HyperRogue Screenshot bernomor

Juga beberapa konsekuensi menggunakan geometri hiperbolik dalam permainan (yang berfungsi dalam hiperbolik dan tidak bekerja di Euclidean, dan sebaliknya) tercantum dalam posting itu.

Dan ya, seperti dugaan Christian, HyperRogue secara internal menggunakan model hiperboloid.

Saya tidak diizinkan untuk mengomentari jawaban Christian, tetapi ada tesselation ruang 3D dengan 14-polyhedra berwajah: Bitruncated Cubic Honeycomb (mengapa 14 wajah, sih?)


Sial, baru sekarang melihat posting Anda. Ya, saya mengabaikan sarang lebah kubik bitruncated tetapi Ilmari Karonen juga cukup baik untuk mengarahkan saya ke sana. Pekerjaan yang sangat bagus yang Anda lakukan dengan HyperRogue BTW. Apakah Anda akan menambahkan kontrol Ouya ke sana? :)
Christian

1
Saya bingung lagi. Sarang lebah kubik bitruncated tidak terdiri dari polyhedra biasa, yaitu tidak semua wajah adalah sama. Honeycomb yang disebutkan Ilmari Karonen terdiri dari dodecahedra, yaitu benda padat berwajah 12, itu sebabnya analog dengan ubin heksagonal: ia bekerja tetapi tidak memiliki 14 arah yang Anda inginkan (enam arah "lurus") untuk setiap permukaan kubus dan delapan "diagonal" untuk setiap simpul). Honeycomb kubik bitruncated adalah analog dengan ubin segi delapan datar: ini berfungsi, tetapi tidak memiliki keunggulan dibandingkan sarang lebah kubik untuk kisi-kisi game.
Christian

Saya menambahkan tangkapan layar sehingga Anda bisa memahami ubinnya. Namun, mungkin hanya saya, tetapi saya merasa sangat sulit untuk melihat berapa banyak simpul yang dimiliki setiap ubin. Jadi saya menempatkan jumlah simpul di setiap ubin (well, sebenarnya tidak semuanya ) dan tiba-tiba polanya menjadi jelas: lingkaran heksagon yang tumpang tindih dengan heptagon di tengah. Semoga tidak apa-apa saya mengacaukan jawaban Anda, @ZenoRogue dan maaf jika saya lambat dengan hal-hal ini dan kalian langsung mendapatkannya.
Christian

Terima kasih! Apa yang diperlukan untuk menambahkan kontrol Ouya? Sudah ada port Android, dan kontrol joystick (untuk konsol Pandora), jadi kontrol Ouya harus mudah ditambahkan, meskipun sulit untuk saya uji.
Zeno Rogue

1
Saya pikir kita benar-benar memerlukan 26 arah, bukan 14 (6 "arah" murni, 12 kombinasi dari dua arah murni (tidak berlawanan), dan 8 kombinasi dari tiga arah murni). Honeycomb kubik bitruncated menggunakan 6 + 8 (sesuai dengan wajah dan simpul), dan belah ketupat mengambil 12 lainnya (sesuai dengan tepi).
Zeno Rogue

9

Pada dasarnya yang Anda inginkan adalah tesselation monohedral (atau ubin), yaitu cakupan seluruh bidang (dengan asumsi 2d) dengan bentuk tunggal di mana ubin tidak bertumpang tindih atau meninggalkan celah.

Ada banyak bentuk yang dapat digunakan untuk melakukan ini, tetapi ketika kita memperkenalkan batasan lain, biasanya orientasi harus tetap sama atau mereka harus sesuai dengan arah pergerakan alami, pada dasarnya hanya kotak dan segi enam yang tersisa.

Ambil segitiga sebagai contoh (yang mungkin Anda ketahui dari tesselation objek 3d). Untuk mengisi celah di antara dua segitiga, segitiga lain harus dimasukkan, tetapi dibalik terbalik. Ini jelas merepotkan untuk menghasilkan ketika berhadapan dengan sprite misalnya karena koneksi yang mulus adalah penting. Gerakan segitiga juga menyebalkan.

Yang paling alami, berkenaan dengan gerakan setidaknya, adalah kuadrat yang kebetulan paling sering digunakan. Segi enam adalah hal terbaik berikutnya dan memungkinkan pendekatan yang lebih langsung ke jumlah arah gerakan yang lebih tinggi, yaitu tidak di atas gerakan sudut seperti yang dilakukan oleh gerakan 8 arah pada bujur sangkar. Biasanya mereka digunakan dalam permainan yang lebih taktis di mana peningkatan gerakan penting.

Bagaimanapun, jika Anda ingin membaca lebih lanjut, lihat di http://euler.slu.edu/escher/index.php/Tessellations_by_Polygons .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.