ระบบเรขาคณิตของประชากร: การเริ่มต้น [ปิด]


10

ฉันต้องการพัฒนาเกมอย่าง Populous: The Beginning กับเพื่อนของฉัน แต่เราไม่สามารถหารูปทรงเรขาคณิตที่พวกเขาใช้สำหรับโลกนี้ได้

เรารู้ว่า - ไพ่ทั้งหมดมีขนาดเท่ากัน - ไพ่ทั้งหมดเป็นสี่เหลี่ยม

ดังนั้น .. มันไม่สามารถเป็นอิโคซาเฮดรอนได้เพราะมีรูปสามเหลี่ยมและไม่สามารถเป็นรูปทรงกลมทรงมาตรฐานได้เพราะไม่ใช่ว่าทุกแผ่นมีขนาดเท่ากัน

มีคนช่วยฉันได้ไหม


1
เนื่องจากพวกที่ Uber กำลังสร้างเกมในฝันของฉันที่ชื่อ "Planetary Annihilation" พวกเขาก็แบ่งปันความคิดและเทคนิคต่าง ๆ ว่าพวกเขาแก้ปัญหาอย่างไร โพสต์บล็อกของ Mavor นี้จริงๆแล้วเป็นเรื่องจริง: mavorsrants.com/2013/02/planetary-annihilation-engine.html
FlashFan

นี่ไม่ใช่คำตอบสำหรับคำถามของคุณโดยตรง แต่คุณอาจหาข้อมูลที่เป็นประโยชน์ได้ที่นี่: gamedev.stackexchange.com/questions/56231//
DaleyPaley

ฉันลงคะแนนเพื่อปิดคำถามนี้เป็นนอกหัวข้อเนื่องจากเป็นเรื่องเกี่ยวกับวิธีการที่เกมเฉพาะจะประสบความสำเร็จในงานที่เฉพาะเจาะจง

คำตอบ:


6

สามเหลี่ยมคุณเห็นมีแนวโน้มเพียงผลผลิตของระบบการแสดงผลที่ - ทุกอย่างในท้ายที่สุดแล้วมีการแบ่งออกเป็นรูปสามเหลี่ยมสำหรับการแสดงผล

ฉันขอแนะนำให้คุณทำเช่นนี้: ค้นหา google (ภาพ) สำหรับคำว่า "sphere tessellation" คุณจะได้รับความคิดในการทำสิ่งนี้มากมายหลายวิธี เกมของคุณไม่จำเป็นต้องทำการทดลองในลักษณะเดียวกับ Populous: The Beginning (ซึ่งเป็นเกมที่ยอดเยี่ยมที่ฉันชอบ) หมายความว่าคุณไม่จำเป็นต้องใช้แผ่นสี่เหลี่ยมถ้าคุณไม่ต้องการ คุณสามารถใช้รูปหกเหลี่ยมรูปสามเหลี่ยมรูปห้าเหลี่ยมรูปสี่เหลี่ยมใดก็ได้ตามอำเภอใจเช่นว่าวหรือแม้แต่ tessellation voronoi (รูปหลายเหลี่ยมที่ผิดปกติและไม่ซ้ำกัน)

สิ่งสำคัญในการใช้ tessellation ใด ๆ สำหรับตรรกะของเกมคือการเชื่อมต่อนั่นคือความจริงที่ว่า "กริด" ของคุณก่อให้เกิดกราฟที่เชื่อมโยง (บ้าง) เพื่อการเคลื่อนไหว

แก้ไข: อาจเป็นไปได้ว่าสิ่งที่พวกเขาทำคือสิ่งที่คล้ายกับการโต้เถียงกันอย่างสับสนของ StarControl - จริง ๆ แล้วพวกเขามีตาราง 2D ห่อ (โมดูโลใน x และ y) จากนั้นเมื่อคุณดูทรงกลมคุณจะเห็นเพียงซีกโลกเดียวในครั้งเดียวซึ่งทำให้สามารถแมปกระเบื้องได้โดยไม่ผิดเพี้ยนไปมากจนเกินไป และเมื่อซูมเข้าใกล้ทุกคนจะดูสมบูรณ์แบบ


ปัญหาที่เกิดขึ้นกับไทล์ที่ไม่ใช่สแควร์คือ มันยากมากที่จะสร้างภาพพื้นผิวจากนั้นคำนวณยูวีเพื่อทำแผนที่โลก ถ้าฉันมีสี่เหลี่ยมมันจะง่ายที่สุด ฉันรู้ว่าการใช้ A * นั้นช่วยให้มองเห็นเส้นทางได้ง่ายด้วยกระเบื้องทุกประเภท
FlashFan

ปัญหาเกี่ยวกับโครงการมุมมอง 2 มิติของทรงกลม (ตามที่ใช้บนแผนที่โลกของโลก) คือในขณะที่คุณได้รับแผ่นกระเบื้องสี่เหลี่ยม มีความสำคัญต่อคุณมากเพียงใดจัดการกับความยากลำบากในการทำแผนที่ UV ได้อย่างง่ายดายหรือตรวจสอบให้แน่ใจว่าไทล์ของคุณมีการกระจายอย่างทั่วถึงสำหรับวัตถุประสงค์ของเกม หากคุณทราบว่า P: TB ใช้อะไรฉันก็อยากรู้
วิศวกร

ฉันคิดว่าทั้งสองวิธีเป็นไปไม่ได้สำหรับฉัน ... มีตัวแก้ไขแผนที่สำหรับ P: TB ที่คุณสามารถเปิดใช้งานกริดได้ มีสี่เหลี่ยมที่ใช้อย่างแน่นอนเป็นกระเบื้อง แต่สิ่งที่แปลกใน P: TB คือคุณสามารถมองเห็นดาวเคราะห์ที่สมบูรณ์หรือเห็นบางส่วนของมัน ไม่มีอะไรระหว่าง ฉันคิดว่าพวกเขาอาจแกล้งทำเพื่อที่ว่ามันจะดูเหมือน Sphere ในที่สุดเท่านั้น แต่ฉันไม่แน่ใจ ...
FlashFan

ฉันแค่คิดอย่างนั้น อาจเป็นไปได้ว่าสิ่งที่พวกเขาทำคือสิ่งที่คล้ายกับการโต้เถียงกันอย่างสับสนของ StarControl - จริง ๆ แล้วพวกเขามีตาราง 2D ห่อ (โมดูโลใน x และ y) จากนั้นเมื่อคุณดูทรงกลมคุณจะเห็นเพียงซีกโลกเดียวในครั้งเดียวซึ่งทำให้สามารถแมปกระเบื้องได้โดยไม่ผิดเพี้ยนไปมากจนเกินไป และเมื่อซูมเข้าใกล้ทุกคนจะดูสมบูรณ์แบบ
วิศวกร

^^ โอเคฉันคิดว่ามันเป็นของปลอมจริงๆ ความจริงที่ว่าดาวเคราะห์นั้นกลมอย่างสมบูรณ์ (ไม่มีเนินเขา) เมื่อดูที่ดาวเคราะห์เต็มดวงแสดงว่ามีการใช้รูปทรงกลมทรงกลมปกติสำหรับมัน เราสามารถดูได้ที่นี่: s.uvlist.net/l/y2008/09/53528.jpg
FlashFan

14

ปัญหาที่นี่คือแผนที่ที่มีประชากรไม่ได้เป็นทรงกลมเลย พวกมันเป็นระนาบ Real Projectiveซึ่งคล้ายกับพรูแบนที่ถูกควบคุมบนหน้าจอให้ดูเหมือนทรงกลมมากกว่าทรงกลมจริง

ตัวอย่างเช่น:

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

เป็นเกมที่เล่นจากมุมมองบุคคลที่สาม 3D ด้วยกล้องที่มีความสูงตัวแปรและสามารถหมุนได้ 360 องศาช่วยให้ผู้เล่นที่จะได้อย่างรวดเร็วย้ายข้ามภูมิประเทศของโลกที่เป็นจริง projective เครื่องบินจริงแทนที่จะเป็นทรงกลมปกติ ; บนแผนที่ที่ไม่มีหมอกแห่งสงครามผู้เล่นสามารถเห็นสิ่งที่คู่ต่อสู้กำลังทำอยู่ตลอดเวลา การสนับสนุนอย่างกว้างขวางสำหรับการเร่งความเร็ว 3 มิติช่วยให้ผู้เล่นดูเกมในสี 16 บิตหรือ 32 บิต [10] แนวนอนและการสร้างโครงสร้างแบบเรียลไทม์และการเคลื่อนไหวของผู้ติดตามจะปรากฏขึ้น

นอกจากนี้แจ้งให้ทราบที่นี่:

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

หากภาพรวมของดาวเคราะห์ครึ่งโลกในขณะที่มันเป็นแผนที่ย่อทำไมมินิแผนที่จึงแสดงน้ำมากขึ้น? และทำไมเนื้อน้ำจึงไม่สะท้อนสัดส่วนที่แท้จริงของทรงกลมโดยแสดงมุมมองเกือบที่ขอบ?

นอกจากนี้ตามที่ระบุไว้ในความคิดเห็นเกี่ยวกับคำถามอื่น ๆ ให้สังเกตในภาพหน้าจอนี้ว่าดาวเคราะห์รอบอย่างสมบูรณ์แบบ:

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

ถ้ามันเป็นทรงกลมที่แท้จริงเราจะสามารถเห็นภูเขาและวัตถุที่พุ่งขึ้นมาจากขอบของดาวเคราะห์ ตัวอย่างเช่นการทำลายล้างของดาวเคราะห์นี่คือต้นไม้และหน้าผาที่ยื่นออกมาเหนือขอบฟ้า:

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

สำหรับเกมทันสมัยฉันขอแนะนำให้ใช้ tessellating icosahedron คุณจะพบคำถามมากมายเกี่ยวกับ SO เกี่ยวกับวิธีการทำเช่นนั้นในภาษาการเขียนโปรแกรมที่คุณเลือก

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