คำถามติดแท็ก tiles

วัตถุที่มีรูปร่างเหมือนกัน (มักเป็นรูปสี่เหลี่ยมหรือรูปหกเหลี่ยม) ที่แสดงข้อมูลเชิงพื้นที่

2
สายตาในแนวทแยงมุมมีสองมุม
ตอนนี้ฉันกำลังใช้อัลกอริธึมของ Bresenham สำหรับการมองเห็น ปัญหาคือฉันได้พบเคสที่ผู้เล่นสามารถมองทะลุกำแพงได้ เกิดขึ้นเมื่อผู้เล่นดูระหว่างสองมุมของกำแพงที่มีช่องว่างในอีกด้านหนึ่งในมุมที่เฉพาะเจาะจง ผลลัพธ์ที่ฉันต้องการคือการเรียงต่อกันระหว่างผนังทั้งสองจะมีการทำเครื่องหมายไม่ถูกต้องเช่นกัน วิธีใดที่เร็วที่สุดในการแก้ไขอัลกอริทึมของ Bresenham เพื่อแก้ปัญหานี้ หากไม่มีทางออกที่ดีจะมีอัลกอริทึมที่เหมาะสมกว่าหรือไม่ ยินดีต้อนรับความคิดใด ๆ โปรดทราบว่าการแก้ปัญหาควรจะรองรับ 3d ได้ด้วย แก้ไข: ทางออกที่ง่ายของฉันคือการตรวจสอบว่าทั้งสองมุมถูกปิดหรือไม่เมื่อพิกัด x และ y เปลี่ยนไป สำหรับซอร์สโค้ดที่ใช้งานได้และการสาธิตเชิงโต้ตอบของผลิตภัณฑ์ที่สมบูรณ์โปรดดูที่http://ashblue.github.io/javascript-pathfinding/

1
gluLookAt ทำงานอย่างไร
จากความเข้าใจของฉัน gluLookAt( eye_x, eye_y, eye_z, center_x, center_y, center_z, up_x, up_y, up_z ); เทียบเท่ากับ: glRotatef(B, 0.0, 0.0, 1.0); glRotatef(A, wx, wy, wz); glTranslatef(-eye_x, -eye_y, -eye_z); แต่เมื่อฉันพิมพ์ModelViewเมทริกซ์การเรียกเพื่อglTranslatef()ดูเหมือนจะทำงานไม่ถูกต้อง นี่คือข้อมูลโค้ด: #include <stdlib.h> #include <stdio.h> #include <GL/glut.h> #include <iomanip> #include <iostream> #include <string> using namespace std; static const int Rx = 0; static const int …

8
ฉันจะป้องกันไม่ให้ตัวละครของ platformer ของฉันจากการตัดบนกระเบื้องบุผนัง?
ปัจจุบันฉันมี platformer ที่มีแผ่นกระเบื้องสำหรับภูมิประเทศ (กราฟิกที่ยืมมาจาก Cave Story) เกมดังกล่าวเขียนขึ้นโดยใช้ XNA ดังนั้นฉันไม่ได้ใช้เอ็นจิ้นหรือเครื่องยนต์ฟิสิกส์ที่มีอยู่แล้ว การชนกันของกระเบื้องมีการอธิบายค่อนข้างตรงตามที่อธิบายไว้ในคำตอบนี้ (ด้วย SAT แบบง่ายสำหรับสี่เหลี่ยมและวงกลม) และทุกอย่างทำงานได้ดี ยกเว้นเมื่อผู้เล่นวิ่งชนกำแพงขณะล้ม / กระโดด ในกรณีนั้นพวกเขาจะติดกระเบื้องและเริ่มคิดว่าพวกเขาชนพื้นหรือเพดานที่ไม่มีอยู่จริง ในภาพหน้าจอนี้ผู้เล่นเคลื่อนไปทางขวาและตกลงมา ดังนั้นหลังจากการเคลื่อนไหวจะมีการตรวจสอบการชน - และก่อนอื่นมันจะเปิดออกตัวละครของผู้เล่นจะชนกับไทล์ที่ 3 จากพื้นและผลักขึ้นไป ประการที่สองเขาพบว่าชนกับกระเบื้องข้างเขาและผลักไปด้านข้าง - ผลลัพธ์สุดท้ายคือตัวละครของผู้เล่นคิดว่าเขาอยู่บนพื้นและไม่ล้มและ 'จับ' บนไทล์ตราบเท่าที่เขาวิ่งเข้าไป . ฉันสามารถแก้ปัญหานี้ได้ด้วยการกำหนดกระเบื้องจากบนลงล่างแทนซึ่งทำให้เขาล้มลงอย่างราบรื่น แต่แล้วกรณีผกผันก็เกิดขึ้นและเขาจะชนเพดานที่ไม่มีเมื่อกระโดดขึ้นไปบนกำแพง ฉันจะแก้ไขปัญหานี้อย่างไรเพื่อให้ผู้เล่นสามารถตกไปตามกำแพงได้อย่างที่ควร

5
เพิ่มความน่าจะเป็นสำหรับไพ่ที่คล้ายกันเพื่อสร้างถัดจากกันและกัน
ฉันกำลังทำงานกับระบบแผนที่ย่อยซึ่งตราบเท่าที่มีลักษณะเช่นนี้ (สีเขียวคือหญ้าอากาศเป็นสีขาวหินเป็นสีเทาและสีน้ำเงินคือน้ำ): มันใช้ตัวสร้างตัวเลขสุ่มอย่างง่ายเพื่อให้มีโอกาส 45% ของกระเบื้องที่เป็นหญ้าโอกาส 30% ของการเป็นน้ำและโอกาส 25% ที่จะเป็นหิน มีอยู่แล้วฉันสามารถเพิ่มแนวโน้มสำหรับบล็อกหญ้า / ก้อนหินให้รวมตัวกันเพื่อก่อให้เกิดมวลบกและทำให้บล็อกน้ำก่อตัวในมหาสมุทร
9 java  algorithm  tiles  maps  lwjgl 

2
.PNG เรียงต่อไปยังแผนที่. PNG
ฉันสงสัยว่าฉันจะได้รับแผ่นแผนที่ขนาด 110+ .png ของฉันอย่างสะดวกในแผนที่ขนาดอัตราส่วนพิกเซล 1: 1 ฉันเลื่อนผ่าน google และเช่นนี้และฟอรัมของเกมฟรีแวร์ที่ฉัน modding แต่แอพ im ใช้รู้จักไฟล์. png เท่านั้นและฉันต้องการมากกว่า 1% ของแผนที่ หากพวกคุณรู้จักโปรแกรมฉันจะขอบคุณมาก
9 tiles  maps 

2
ในเกมที่อิงแบบสองมิติ NPC และไทล์ควรอ้างอิงถึงกันอย่างไร
ฉันกำลังสร้างเอนจินไทล์สำหรับเกม 2D จากบนลงล่าง โดยทั่วไปโลกจะประกอบไปด้วยตารางของกระเบื้อง ตอนนี้ฉันต้องการใส่ NPCs ที่สามารถเคลื่อนที่บนแผนที่ได้ คุณคิดว่าอะไรดีที่สุด: แต่ละไทล์มีตัวชี้ไปยัง NPC ที่อยู่บนไทล์ของมันหรือตัวชี้ NULL มีรายชื่อของ NPC และพวกเขามีพิกัดของไทล์ที่พวกเขาอยู่ อื่น ๆ อีก? ฉันคิด เร็วกว่าสำหรับการตรวจจับการชน แต่จะใช้พื้นที่หน่วยความจำมากขึ้นและช้าลงเพื่อค้นหา NPC ทั้งหมดในแผนที่ ตรงข้าม

1
การค้นหาว่าการคลิกเมาส์แบบเรียงต่อกันใด
ฉันกำลังทำงานกับเกมที่มีตารางแบบสามมิติและฉันประสบปัญหาในการพยายามเชื่อมโยงการคลิกเมาส์จากผู้ใช้กับไทล์ ฉันสามารถแยกปัญหาออกเป็น 2 ส่วน: การค้นหาสี่เหลี่ยมผืนผ้าที่ล้อมรอบไทล์ (ซึ่งฉันทำได้) การหาจากสี่เหลี่ยมผืนผ้าที่มีการคลิกที่ไทล์ (ทำให้ฉันนิ่งงัน) นี่คือตัวอย่างของสี่เหลี่ยมผืนผ้าที่มีแผ่นกระเบื้องด้านใน: สี่เหลี่ยมผืนผ้ามีความยาว 70px และสูง 30px ดังนั้นถ้าฉันใช้อินพุทที่พูดว่า 30x (บนสุด) / 20y (ซ้าย) ฉันจะดูได้อย่างไรว่ากระเบื้องตัวใดที่ตกลงมา?

3
ไฟล์ฟอร์แมทที่ดีสำหรับการจัดเก็บแผนที่ย่อยแบบสองมิติที่สามารถเติบโตได้ไม่ จำกัด ในทิศทางใด?
ฉันกำลังสร้างเอ็นจิ้นแผนที่ง่าย ๆ ที่จะขยายไปในทุกทิศทางโดยอัตโนมัติด้วยเนื้อหาที่สร้างขึ้นตามขั้นตอนตามต้องการ เป็นวิธีที่ดีในการจัดเก็บข้อมูลแผนที่ยึดที่ต้นกำเนิด 0,0 เพื่อให้สามารถโหลดชุดย่อยของข้อมูลแผนที่เป็นรูปสี่เหลี่ยมผืนผ้าได้อย่างรวดเร็วและมีประสิทธิภาพจากทุกจุดบนแผนที่คืออะไร? ฉันมีความคิดว่าบางทีฉันควรทำให้แผนที่เป็นภาคที่แตกต่างกันและใช้รูปแบบส่วนหัวบางส่วนเพื่อระบุตำแหน่งที่เก็บเซกเตอร์เฉพาะในไฟล์ นี่เป็นเทคนิคที่ดีหรือมีเทคนิคที่ดีกว่าและมีประสิทธิภาพมากกว่าที่ฉันสามารถดูได้หรือไม่
9 tiles  maps 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.