ทำไมเราไม่ใช้แผนที่แปดเหลี่ยมแทนแผนที่หกเหลี่ยม?


41

ฉันเข้าใจถึงข้อดีของกระเบื้องหกเหลี่ยมที่อยู่เหนือสี่เหลี่ยมจัตุรัส แต่ทำไมไม่ใช้ octagons แทน? ฉันคิดว่าพวกเขาจะให้การเคลื่อนไหวที่ดีขึ้นเป็นธรรมชาติมากขึ้นในแปดทิศทาง

ฉันกำลังคิดเกี่ยวกับการใช้แผนที่ชนิดนั้นในบางเกม แต่ฉันไม่เคยเห็นเกมใด ๆ ที่ใช้มันดังนั้นฉันสงสัยว่าฉันพลาดบางสิ่งบางอย่างที่เห็นได้ชัดเกี่ยวกับการใช้งานหรือไม่?


59
Octagons ไม่เรียงต่อกัน
jmegaffin

2
ฉันสงสัยว่ามีรูปทรงอื่น ๆ ที่เรียงต่อกันเป็นรูปสี่เหลี่ยมและรูปหกเหลี่ยม
Azaral

12
@Azaral: มีเพียงสามเหลี่ยมสามเหลี่ยมและ hexes เท่านั้น สิ่งนี้ได้รับการพิสูจน์แล้ว
Nicol Bolas

9
นั่นทำให้ฉันรู้สึกเศร้าเล็กน้อยภายใน
Azaral

11
ที่จริงแล้วมีการเอียงด้วยรูปหลายเหลี่ยมปกติอื่น ๆ แต่มีเฉพาะในรูปทรงเรขาคณิตที่ไม่ใช่ยูคาลิเดียน คุณสามารถรับเพนตากอนแบบเรียงต่อกันเป็นทรงกลมได้เช่น
TonioElGringo

คำตอบ:


68

Octogons:

ป้อนคำอธิบายรูปภาพที่นี่

หกเหลี่ยม:

ป้อนคำอธิบายรูปภาพที่นี่

ช่องว่างใน octogons สร้างขึ้นมาเพื่อโลกแห่งเกมที่น่าดึงดูด

โดยทั่วไปหากคุณต้องการอนุญาตการเคลื่อนไหวแปดทิศทางคุณจะต้องใช้กำลังสอง


43
อีกทางเลือกหนึ่งคือให้เกมของคุณเกิดขึ้นบนระนาบไฮเพอร์โบลิกซึ่งคุณสามารถจับคู่กับ octogons ได้ที่: roguetemple.com/z/hyper.php
MartianInvader

3
@MartianInvader วิธีที่น่าสนใจ!
คลิกตกลง

"ช่องว่างใน octogons สร้างขึ้นเพื่อโลกแห่งเกมที่ไม่น่าสนใจ" ฉันจะไม่พูดเช่นนั้นแน่นอนฉันเห็นการใช้งานของรูปแบบเช่นนั้น
API-Beast

1
จริงพอ "ไม่น่าสนใจ" เป็นคำที่ผิด ฉันควรจะบอกว่าโครงสร้างที่ไม่สม่ำเสมอนั้นมีความซับซ้อนเพิ่มขึ้นสำหรับผู้ใช้ปลายทาง (ซึ่งอาจมีความยากลำบากในการคุ้นเคยกับโครงสร้างดังกล่าว) และสำหรับนักพัฒนาซอฟต์แวร์ซึ่งมีแนวโน้มว่าจะท้าทายให้ใช้รหัสมากขึ้น
MichaelHouse

4
รูปแบบแปดเหลี่ยมที่มีช่องว่างเทียบเท่ากับรูปแบบสี่เหลี่ยมจัตุรัสโดยไม่มีการเคลื่อนไหวในแนวทแยงหมุนด้วยสายตา 45 องศา! (และถ้าคุณเติมเต็มช่องว่างด้วยกระเบื้องสี่เหลี่ยมมันเป็นรูปแบบสี่เหลี่ยมจัตุรัสที่มีการเคลื่อนไหวในแนวทแยง แต่
กำจัดได้ง่าย

64

เพื่อสรุปและอธิบายรายละเอียดตามสิ่งที่ได้รับการกล่าวในคำตอบอื่น ๆ และในความคิดเห็น, สามเหลี่ยมสี่เหลี่ยมและรูปหกเหลี่ยมเป็นคนเดียวที่เป็นไปได้ในทางคณิตศาสตร์tilings ปกติ aka tessellations ปกติของเครื่องบินแบบยุคลิด ดังนั้นใช่สิ่งนี้ดูด สามเหลี่ยมไม่มีประโยชน์อย่างสมบูรณ์ที่นี่กำลังดูดสี่เหลี่ยมเพราะคุณไม่สามารถเคลื่อนที่ในแนวทแยงมุมได้โดยไม่ต้องมีปัจจัยที่ค่อนข้างไม่แน่นอนของ 1.41421356237309504880168872420969807856980785696718753769480 ... ให้หรือรับ และรูปหกเหลี่ยมดูดเนื่องจากคุณไม่สามารถเคลื่อนไหวได้ทั้งสองทิศทาง อย่าเข้าใจฉันผิดฉันยังคงชอบพวกมันมากกว่ากำลังสองภายในข้อ จำกัด ของคณิตศาสตร์จริง ๆ ที่ทิ้งเราไว้และไปที่ Civ5 เพื่อเปลี่ยนเป็นกริดฐานสิบหก แต่ก็ยังถ้าเป็น เป็นไปได้ที่จะ tessellate กับ octagons ไม่มีใครเคยดูที่สองรูปหกเหลี่ยม

คุณสามารถพูดว่า "อืมฉันไม่สนหรอกว่าจะมีช่องว่างหรือเปล่าฉันแค่แกล้งทำเป็นว่าพวกเขาไม่อยู่ที่นั่น" คุณจะได้รับการปูกระเบื้องสี่เหลี่ยมที่ถูกตัดทอนซึ่งเรียกว่าการปูกระเบื้องสี่เหลี่ยมไม่ใช่เพราะมีช่องว่างสี่เหลี่ยมจัตุรัสเล็ก ๆ น้อย ๆ แต่เป็นเพราะ octagons เหล่านั้นอันที่จริงเป็นเพียงการยกกำลังสองสี่เหลี่ยมจัตุรัสในแง่ของการปูกระเบื้องเครื่องบิน สี่เหลี่ยมจัตุรัสเล็ก ๆ เหล่านั้นคือสิ่งที่เหลือจากการตัดทอนมุมที่แตกออกจากสี่เหลี่ยมจัตุรัสซึ่งจะเรียงเป็นแนวระนาบและในแง่ของเกมเหตุผลที่ไม่ใช้สี่เหลี่ยมในตอนแรกก็คือการมีระยะทางเท่ากันสำหรับการเคลื่อนที่แบบตรงและแนวทแยงและนี่คือสิ่งที่คุณไม่มี การเคลื่อนที่ในแนวทแยงต้องเชื่อมสะพานในระยะห่างเท่ากันระหว่างศูนย์กลางของกระเบื้องเหมือนกับที่ใช้กับสี่เหลี่ยมจัตุรัส ในทางกลับกันถ้าคุณแกล้งพื้นที่ดิจิตอลเวทมนตร์ของคุณมีรูที่แท้จริงคุณสามารถทำเช่นนั้นได้ แต่สิ่งที่แตกต่างจากการใช้กระเบื้องสี่เหลี่ยมและการเคลื่อนที่ในแนวทแยงนั้นมีราคาแพงเท่ากับแนวตรง

การปูกระเบื้องสี่เหลี่ยมที่ถูกตัดทอน

ตอนนี้ทุกคนจะไม่เลวร้ายดังนั้นหากมีทางเลือกที่ดีจริงๆที่ไม่ได้เป็นแบบยุคลิด บ่อยครั้งที่กริดของเราอยู่บนดาวเคราะห์บางชนิดอยู่แล้วดังนั้นทำไมไม่ใช้เรขาคณิตรูปไข่นั่นคือพื้นผิวของทรงกลม น่าเสียดายที่ทรงกลมยิ่งเลวร้ายลงมากเมื่อพูดถึงการเอียงปกติ อย่างน้อยในเครื่องบินคุณสามารถใช้ไพ่ได้มากหรือน้อยตามที่คุณต้องการบนดาวฤกษ์มีการเตรียมห้าแบบคือของแข็งพลาโทนิก แค่นั้นแหละ. มีเพียงสองคนเท่านั้นที่ไม่ใช้รูปสามเหลี่ยม https://en.wikipedia.org/wiki/Spherical_polyhedra

อย่างไรก็ตามเครื่องบินไฮเพอร์โบลิกเครื่องบินถึงก้อนหินจริง ๆ เมื่อมันมาถึง tessellations ในความเป็นจริงมันมีไม่เพียงแค่สามข้อเท่านั้น

การปูกระเบื้องแปดเหลี่ยมในระนาบการผ่อนชำระ

ปัญหาเดียวก็คือว่าเครื่องบินผ่อนชำระไม่ได้เป็นสิ่งดีเป็นพื้นผิวเรียบหรือทรงกลม แต่พื้นผิวของ Pringle คุณจะต้องมีหนึ่งนรกของเบ็ดเรื่องราวเพื่อปรับเกมใน Pringle;)

พาราโบโลอยเกินความจริง

ยังคงมีการปูกระเบื้องแปดเหลี่ยมเพื่อให้เป็นสง่าและPoincaréดิสก์รูปลักษณ์ที่น่ากลัวว่าฉันประหลาดใจจริงๆก็เกือบจะไม่เคยทำมา (ก่อนหน้านี้ผมบอกว่า "ไม่เคยทำมา" ที่นี่ แต่แล้วผมอ่านMartianInvader 's ความคิดเห็นที่ชี้ไปยังHyperRogue )

การดำเนินการที่ชาญฉลาดในขณะที่ผมไม่เคยทำมันเองก็ควรจะค่อนข้างตรงไปตรงมาในการดำเนินการนี้กับวันนี้สถาปัตยกรรม 3D เนื่องจากมุมมองแผ่นดิสก์Poincaréสามารถถูกสร้างขึ้นโดยการวางทุกอย่างบนพื้นผิวของที่hyperboloidและการทำประมาณการมุมมอง (ดูเกี่ยวข้องกับโมเดลไฮเปอร์โบออยด์ )

โครงสร้างของดิสก์ Poincare

อีกสิ่งหนึ่งที่จะสรุปได้ในกรณีที่คุณคิดจะทำเกมอวกาศตามกริดและไปถึงสามมิติโดยหวังว่าสิ่งต่างๆ ไม่เพียง แต่คุณจะต้องการรูปทรงหลายเหลี่ยมนูนปกติที่มี 14 ใบหน้าที่ไม่มีอยู่วิธีเดียวที่จะทำให้พื้นที่ Euclidean 3D แบบ Tessellate ด้วยรูปทรงโพลีเฮดราแบบปกติมีลูกบาศก์ Booooring อย่างน้อยในพื้นที่ไฮเพอร์โบลิกคุณสามารถหาอะไรบางอย่างที่คล้ายกับแอนะล็อกไปยังตารางฐานสิบหกด้วย tessellating กับ dodecahedra (เช่น 12-polyhedra polyhedra ที่เกือบ 14 ใช่ไหม) แต่ตอนนี้คุณอยู่ในพื้นที่รวมสมองและยังไม่มี คู่กับกระเบื้องแปดเหลี่ยม:

รังสีวิทยา

สวยเหมือนนรกใช่ไหม โอ้พระเจ้าใช่! ฉันจะตื่นตระหนกเกินกว่าที่คาดการณ์ไว้หรือไม่ถ้ายานอวกาศของมนุษย์ต่างดาวมาหลังจากฉันในเรื่องนี้และฉันคาดว่าจะตอบโต้ด้วยวิธีที่สมเหตุสมผล คุณเดิมพันฉันจะ นี่อาจจะเป็นเหตุผลที่ว่าทำไมคนส่วนใหญ่ก็ใช้ก้อนหรือกองเหลี่ยมหกเหลี่ยม

ลูกบาศก์รังผึ้ง รังผึ้งปริซึมหกเหลี่ยม


10
เคล็ดลับสำหรับมืออาชีพ: ถ้าคุณรู้สึกว่าได้รับเลือกเป็นผู้ปกครองอย่างเป็นทางการให้สร้างป้อมปราการคนแคระในรังผึ้งสิบสองตาในพื้นที่ซึ่งเกินความจริง หากคุณไม่ต้องการให้ใครท้าทายชื่อของคุณอีกครั้งและทำให้ดินแดน Vulcans และเสนอผลงานภายใต้การปกครองของคุณก่อนที่เราจะประดิษฐ์ไดรฟ์วาร์ปเขียนมันในภาษา Funge ตาม ( quadium.net/funge/) spec98.html )
คริสเตียน

3
3D มีอะนาล็อกปกติของตารางฐานสิบหก ได้แก่โครงตาข่าย FCCซึ่งหน่วยเซลล์รูปสี่เหลี่ยมขนมเปียกปูน dodecahedronเป็นคาตาลันแข็ง (เช่นใบหน้าทั้งหมดมีความเหมือนกันและสมมาตรแม้ว่าจะไม่ใช่ทุกมุม) ไม่เคยเห็นหลาย ๆ เกมที่ใช้มัน
Ilmari Karonen

1
@TobiasKienzler แม้จะมีสิ่งที่ฉันพูดในคำตอบที่จะสวยน่ากลัว หากเกมไม่สามารถเชื่อมต่อสมองของเราเพื่อทำความเข้าใจพื้นที่ไฮเปอร์โบลิก 3 มิติได้อีกแล้วจะเป็นอย่างไร :)
คริสเตียน

1
@TobiasKienzler ลูกบาศก์รูบิค 4D หายไปจากรายการนั้นหรือไม่? อย่างไรก็ตาม Adanaxis ฟังดูบ้าคลั่ง ในฐานะที่เป็นมิติที่สูงขึ้นเรขาคณิตกลายเป็นที่น่าแปลกใจที่น่าเบื่อในมิติที่สูงขึ้น: en.wikipedia.org/wiki/List_of_regular_polytopes#Tessellationsจริงๆมัน boggles ใจของฉัน ฉันคาดหวังว่าจะมีระดับความอิสระมากขึ้น แต่ไม่มี. แม้แต่พื้นที่ไฮเพอร์โบลิกที่มีจำนวนเทสเซลเลชั่นในอนันต์ 2 มิติลดลงเหลือ 0 ในมิติ> 5 ปริภูมิแบบยุคลิดยังคงรักษาลูกบาศก์แบบเทสเซลเลชันทุกมิติ
Christian

4
+1 สำหรับ "คุณจะต้องมีหนึ่งนรกของเบ็ดเรื่องราวเพื่อปรับเกมใน Pringle"
CaptainRedmuff

27

ผู้เขียน HyperRogue ที่นี่

HyperRogue ใช้ tesselation ที่ทำจาก hexagons และ heptagons จริง ๆ แล้วนี่คือเหตุผลว่าทำไมจึงเลือก tesselation นี้โดยเฉพาะแทนที่จะเป็น octagons หรือ heptagons เช่นเรขาคณิตไฮเพอร์โบลิกใน Hyperbolic Rogueโดยทั่วไปแล้ว octagons มีขนาดใหญ่เกินไป

ภาพหน้าจอ HyperRogue ภาพหน้าจอที่มีหมายเลข

นอกจากนี้ผลบางประการของการใช้เรขาคณิตไฮเพอร์โบลิกในเกม (สิ่งที่ใช้ได้ในไฮเปอร์โบลิกและไม่ทำงานใน Euclidean และในทางกลับกัน) แสดงอยู่ในโพสต์นั้น

และใช่อย่างที่คริสเตียนเดาไว้ว่า HyperRogue ใช้โมเดลไฮเปอร์โบลด์ภายใน

ฉันไม่ได้รับอนุญาตให้แสดงความคิดเห็นเกี่ยวกับคำตอบของคริสเตียน แต่มีคำจำกัดความของพื้นที่ 3 มิติที่มีรูปหลายเหลี่ยม 14 หน้า: รังผึ้ง Cubic แบบ Bitruncated (ทำไมมี 14 หน้าใช่ไหม)


ประณามเพียงเห็นตอนนี้โพสต์ของคุณ ใช่ฉันมองข้ามรังผึ้งรูปสี่เหลี่ยมขนมเปียกปูนบิต แต่ Ilmari Karonen ก็ดีพอที่จะชี้ให้ฉันเห็น งานที่ดีจริงๆที่คุณทำกับ HyperRogue BTW โอกาสใดที่คุณจะเพิ่มการควบคุม Ouya ไปหรือไม่ :)
คริสเตียน

1
ฉันสับสนอีกครั้ง รังผึ้งลูกบาศก์บิตที่ถูกแยกส่วนนั้นไม่ได้สร้างจากโพลีเฮดราแบบปกตินั่นคือไม่ใช่ว่าทุกใบหน้าจะเหมือนกัน รังผึ้ง Ilmari Karonen ที่กล่าวถึงนั้นประกอบด้วย dodecahedra นั่นคือของแข็ง 12 หน้าซึ่งเป็นสาเหตุว่าทำไมมันจึงเป็นแบบอะนาล็อกถึงเรียงกันหกเหลี่ยม: มันทำงานได้ แต่ไม่มีทิศทาง 14 อันที่คุณต้องการ (ทิศทางหก "ตรง" สำหรับแต่ละหน้าของลูกบาศก์และแปด "แนวทแยง" สำหรับแต่ละจุดยอด) รังผึ้งลูกบาศก์บิตที่ถูกแยกเป็นแบบอะนาล็อกกับกระเบื้องแปดเหลี่ยมแบน: มันใช้งานได้ แต่มันไม่มีประโยชน์ใด ๆ เหนือรังผึ้งลูกบาศก์ลูกบาศก์สำหรับกริดเกม
Christian

ฉันเพิ่มภาพหน้าจอเพื่อให้คุณสามารถเข้าใจการเรียงต่อกัน อย่างไรก็ตามอาจเป็นเพียงฉัน แต่ฉันพบว่ามันยากจริง ๆ ที่จะได้เห็นจำนวนของแต่ละกระเบื้อง ดังนั้นผมจึงใส่หมายเลขของจุดในแต่ละกระเบื้อง (ดีไม่ทั้งหมดของพวกเขาจริง) และก็รูปแบบที่เป็นที่ชัดเจน: มันทับซ้อนกันในแวดวงของรูปหกเหลี่ยมที่มี heptagons ที่อยู่ตรงกลาง หวังว่ามันโอเคที่ฉันจะตอบคำถามของคุณ @ZenoRogue และขอโทษด้วยถ้าฉันทำช้าๆกับสิ่งเหล่านี้และคุณทำได้ทันที
คริสเตียน

ขอบคุณ! การเพิ่มตัวควบคุม Ouya ต้องใช้อะไรบ้าง มีพอร์ต Android อยู่แล้วและตัวควบคุมจอยสติ๊ก (สำหรับคอนโซลแพนโดร่า) ดังนั้นการควบคุม Ouya ควรเพิ่มได้ง่ายแม้ว่าจะยากสำหรับฉันที่จะทดสอบ
Zeno Rogue

1
ฉันคิดว่าเราจะต้องมี 26 เส้นทางไม่ใช่ 14 (6 "บริสุทธิ์" ทิศทางรวมกันสองทิศทาง (ไม่ตรงข้าม) 12 ทิศทางและ 8 ทิศทางจากสามเส้นทางบริสุทธิ์ รังผึ้งลูกบาศก์บิตที่ถูกตัดแบ่งใช้ 6 + 8 (ตรงกับใบหน้าและจุดยอด) และขนมเปียกปูนนั้นใช้อีก 12 (ตรงกับขอบ)
Zeno Rogue

9

โดยทั่วไปสิ่งที่คุณต้องการคือ monessedral tesselation (หรือปูกระเบื้อง) นั่นคือความครอบคลุมของระนาบทั้งหมด (สมมติว่า 2d) ด้วยรูปร่างเดียวที่กระเบื้องไม่ทับซ้อนกันหรือเว้นช่องว่าง

มีรูปร่างจำนวนมากที่สามารถทำได้ แต่เมื่อเราแนะนำข้อ จำกัด อื่น ๆ โดยปกติแล้วการวางแนวควรจะเหมือนเดิมหรือพวกมันควรจะสอดคล้องกับทิศทางการเคลื่อนไหวตามธรรมชาติ

ยกตัวอย่างเป็นรูปสามเหลี่ยม (ซึ่งคุณอาจรู้จักจากการหาคำอธิบายของวัตถุ 3 มิติ) ในการเติมช่องว่างระหว่างสองสามเหลี่ยมจะต้องใส่สามเหลี่ยมอีกอัน แต่พลิกคว่ำ เห็นได้ชัดว่านี่เป็นความยุ่งยากในการสร้างเมื่อต้องรับมือกับสไปรต์เนื่องจากการเชื่อมต่อที่ราบรื่นเป็นสิ่งสำคัญ นอกจากนี้ยังมีการเคลื่อนไหวเป็นรูปสามเหลี่ยมครับ

ธรรมชาติที่สุดในแง่ของการเคลื่อนไหวอย่างน้อยก็คือสี่เหลี่ยมซึ่งเกิดขึ้นเพื่อใช้บ่อยที่สุด Hexagons เป็นสิ่งที่ดีที่สุดถัดไปและอนุญาตให้เข้าใกล้โดยตรงกับทิศทางการเคลื่อนไหวที่สูงขึ้นเช่นไม่เคลื่อนไหวเหนือมุมเช่นการเคลื่อนที่ 8 ทิศทางในสี่เหลี่ยม โดยปกติแล้วจะใช้ในเกมเกี่ยวกับยุทธวิธีที่เพิ่มความเคลื่อนไหวมากขึ้น

อย่างไรก็ตามถ้าคุณต้องการที่จะอ่านข้อมูลเพิ่มเติมโปรดดูที่http://euler.slu.edu/escher/index.php/Tessellations_by_Polygons

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.