มุมไหนและอัตราส่วนด้านยาว / สั้นด้านใดให้ค่า hex เท่ากันหมดที่น่าพอใจและเป็นภาพกราฟิกปกติ (แบนและแบนด้านบน) hexes ซึ่งแก้ไขเพิ่มเติมขนาดพิกเซลทั้งหมดสำหรับขนาดต่างๆเมื่อแสดงผล?
มุมไหนและอัตราส่วนด้านยาว / สั้นด้านใดให้ค่า hex เท่ากันหมดที่น่าพอใจและเป็นภาพกราฟิกปกติ (แบนและแบนด้านบน) hexes ซึ่งแก้ไขเพิ่มเติมขนาดพิกเซลทั้งหมดสำหรับขนาดต่างๆเมื่อแสดงผล?
คำตอบ:
เนื่องจากคุณแสดง hexmap ผ่านมุมมองภาพวาดสามมิติที่เลื่อนสิ่งต่าง ๆ
นี่คือเวอร์ชันดั้งเดิมที่มี hexes แนวนอนที่ถูกบีบอัดอย่างมีประสิทธิภาพในแกนตั้งเพื่อสร้างลุคแบบหลอกเทียม
วิธีนี้ใช้วิธีที่แตกต่างกับ hexes ที่หมุนเพื่อแสดงเส้นแนวตั้งหรือแนวนอน
สไตล์ใดก็ได้สามารถใช้งานได้ขึ้นอยู่กับสิ่งที่คุณต้องการผู้เล่นหลักจะเคลื่อนที่ไปทั่วโลกและคุณต้องการหลีกเลี่ยงการเคลื่อนที่เป็นรูปซิกแซก
โดย "แบนด้านขึ้น" ฉันถือว่าคุณหมายถึง "แนวนอนด้านแบน" (ขณะที่ "ขึ้น" อาจหมายถึงว่าขอบตัวเองชี้ขึ้นหรือ "หน้า" ขึ้นนั่นคือจุดปกติของมันขึ้นไป)
ฉันทดลองกับทั้งสองทิศทางสำหรับเกมที่ฉันพัฒนาในวิทยาลัย โดยส่วนตัวแล้วฉันพบว่ารูปหกเหลี่ยม"แนวราบด้านแนวตั้ง" เป็นที่ชื่นชอบมากขึ้นในสายตา ฉันอาจอยู่ในชนกลุ่มน้อยที่นี่ แต่ฉันเชื่อว่า Civilization V ใช้การวางแนวเดียวกันดังนั้นฉันจึงไม่ได้อยู่คนเดียว หากคุณยังไม่ตายโดยใช้การวางแนวเดียวกับอีกแนวฉันแนะนำให้คุณลองทดสอบทั้งสองแบบ เนื่องจากทรัพยากรออนไลน์ส่วนใหญ่ที่ฉันพบเกี่ยวกับกริดฐานสิบหกใช้การวางแนว "แนวนอนด้านแบน" สมการจำนวนมากที่คุณเจออาจต้องปรับเปลี่ยน เว็บไซต์นี้ควรช่วย
ฉันสร้างโครงการของฉันด้วยกรอบความละเอียด UI ที่ไม่ขึ้นกับความละเอียดซึ่งทำให้พิกเซลของอุปกรณ์โดยอัตโนมัติดังนั้นฉันไม่ได้ใช้เวลาปรับแต่งมุมและอัตราส่วนมากนัก ฉันเชื่อว่าแต่ละ hexes ของฉันมีกล่องขอบเขตของพิกเซลอิสระ 96 อุปกรณ์ที่ยกกำลังสอง (96 พิกเซลของอุปกรณ์บนจอแสดงผล 96dpi มาตรฐานที่มีสเกล = 1.0) คุณควรจะได้รับส่วนที่เหลือจากสกรีนช็อต :)
เหล่านี้สำหรับแนวนอนด้านแบน คำศัพท์ที่ฉันใช้มาจากความคิดของ Amit ในหน้ากริดด้วยภาษาเพิ่มเติมของ "ความยาวด้านแคบ" หมายถึงความยาวของด้านที่ไม่ใช่แนวนอนที่ถูกบีบ
http://www-cs-students.stanford.edu/~amitp/game-programming/grids/hex-grid-metrics-labeled.png
ด้านเท่ากันหมด (การฉายภาพ 0 องศา):
"ความสูง" = L√3
"ความกว้างกว้าง" = L
"ความกว้างที่แคบ" = L√3
ความยาวด้านที่แคบ = L การ
ฉายมุม 45 องศา:
"ความสูง" = L
"ความกว้าง" = L
"แคบ width "= 2 * √ (3/8) L
ความยาวด้านแคบ = √ (2) การ
ฉายภาพL 60 องศา:
" height "= (3/2) L
" ความกว้าง "= L
" ความกว้างแคบ "= 2 * √ ( 3/4)
ความยาวด้านแคบL = √ (13/16) L
ฉันคำนวณสิ่งเหล่านี้ด้วยมือดังนั้นโปรดตรวจสอบงานของฉัน