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

ไทล์แมปเป็นเทคนิคการใช้ชิ้นส่วนกราฟิกขนาดเล็กไทล์ซ้ำแล้วซ้ำอีกเพื่อกำหนดฟิลด์เกม

3
วิธีรับไทล์ทั้งหมดจากไทล์แมป
ฉันได้ลองใช้TileMapระบบใหม่ใน Unity นิดหน่อยแล้วและฉันกำลังมองหาวิธีในการเข้าถึงไทล์เป็นรายการหรืออาเรย์สองมิติ แต่ฉันไม่พบสิ่งใดนอกจากGetTile(Vector3Int vector)ที่ส่งคืนไทล์เดียวเท่านั้น ... มีวิธีใดบ้าง เพื่อทำสิ่งนี้ ?
13 unity  tilemap 

2
ไทล์แม็พใน Entity System Framework
ฉันอ่านกรอบ Entity System เป็นพิเศษโดยเฉพาะอาร์ทิมิส ฉันพยายามตัดสินใจว่ามันเหมาะสมกับฉันหรือไม่ ฉันทำงานบนเกมอาร์ตพิกเซล 2d อย่างเคร่งครัดและฉันไม่คิดว่าพวกเขาจะต้องใช้ทรัพยากรมากนัก ฉันเคยใช้ OOP มาตรฐานมาแล้วและมีมรดกมากมายในอดีต ความเข้าใจของฉันเกี่ยวกับ Entity System Framework ตอนนี้ (ฉันไม่แน่ใจว่าฉันเข้าใจทั้งหมดหรือไม่) คือ: เอนทิตีเป็นอะไรนอกจาก ID ส่วนประกอบคืออะไร แต่ข้อมูลที่เป็นใบ้เพิ่มไปยังกลุ่มส่วนประกอบเอนทิตี ระบบคือฟังก์ชั่นอัปเดตที่เชื่อมต่อกับโลกเพื่อจัดการทุกเอนทิตีที่ตรงกับลายเซ็นองค์ประกอบของระบบ หากความเข้าใจของฉันถูกต้องฉันก็มีปัญหานิดหน่อยที่จะเพิ่มแนวความคิดในการเพิ่ม tilemaps และ AI Behavioral Trees ในกรอบนี้ ฉันจะถามเกี่ยวกับ AI ในอนาคต ควรมีการสร้าง tilemap ในเฟรมเวิร์กนี้หรือไม่? หรือควรแยกไว้ต่างหากเพื่อให้ง่ายต่อการสร้างด้วยโปรแกรมแก้ไข tilemap? ถ้า tilemap ควรสร้างไว้ในเฟรมเวิร์กนี้แต่ละไทล์เป็นเอนทิตีที่แตกต่างกันหรือไม่? และ tilemap เป็นระบบ? หรือเป็น tilemap เองเอนทิตีเดียวที่มีการสืบทอดสร้างขึ้นจากมัน? หาก tilemap กระจายตัวอะไรจะเป็นวิธีที่ดีที่สุดในการตรวจจับการชนกันของเอนทิตีเทียบกับ …

3
การสร้างถนน / แม่น้ำบนแผนที่ตาราง 2d
นี่เป็นคำถามที่มือใหม่ แต่ที่นี่มันไป: แผนที่ของฉันเป็นตาราง 2d และฉันต้องการสร้างถนนและแม่น้ำ เส้นทางจากจุดเริ่มต้นไปยังจุดสิ้นสุดต้องไม่เป็นเส้นทางที่ดีที่สุดในจำนวนไพ่ แต่ควรมีการสุ่มในระดับหนึ่ง (รอบ) มีอัลกอริธึมมาตรฐานสำหรับสิ่งนี้หรือไม่? ไชโย! UPDATE: นี่คือผลลัพธ์ของการเล่นกับน้ำหนักบนกริดและใช้อัลกอริธึมพา ธ สั้นที่สุด (Bellman-Ford) โดยใช้ไลบรารี jgrapht ฉันไปกับคำตอบของ Donutz หลังจากทั้งหมด http://pastebin.com/AGQGK5ik

4
เกมเก่า ๆ อย่าง Golden Axe หรือ Street หรือ Rage ใช้ tilemaps ไหม [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันสงสัยว่าเกมเก่า ๆ อย่าง Golden Axe (กำเนิด) หรือถนนของ Rage (แหล่งกำเนิด) ใช้ tilemaps หรือบิตแมปพื้นหลังสำหรับระดับ ฉันไม่พบทรัพยากรใด ๆ ที่อธิบายสิ่งนี้และค้นหาในเว็บฉันสามารถค้นหาภาพพื้นหลังได้ แต่ฉันไม่เคยพบ tilemap สำหรับระดับ หลักสูตรนอกหลักสูตรนี้ไม่ตอบคำถาม แต่ดูเหมือนว่าพวกเขาใช้บิตแมปพื้นหลังสำหรับระดับทั้งหมด แต่ฉันไม่แน่ใจว่ามันเป็นประโยชน์หรือไม่สำหรับคอนโซลเก่าเหล่านั้นในการจัดเก็บภาพ "ใหญ่" ดังกล่าวและแสดงภาพเหล่านั้น ไม่มีใครรู้บ้างเกี่ยวกับการเขียนโปรแกรมบนระบบเก่าเหล่านั้นและรู้ว่าระดับ "มุมมอง" เหล่านั้นถูกสร้างขึ้นได้อย่างไร?
12 tilemap 

2
ฉันจะสุ่มสร้างภูมิประเทศที่ใช้แผ่นพื้นด้านข้างแบบสุ่มได้อย่างไร
ฉันต้องการสร้างแผนที่แบบสุ่มสำหรับเกม 2D sidescroller โดยใช้ชุดไพ่ต่อไปนี้: ฉันได้พบบทความที่ดีเกี่ยวกับกระบวนการ Bitmasking เช่น: http://www.angryfishstudios.com/2011/04/adventures-in-bitmasking/ http://www.saltgames.com/2010/a-bitwise -method สำหรับใช้-tilemaps / ฉันชอบความคิดในการใช้ bitmask / tilemask แทนที่จะทำประโยคคำสั่งหรือ switch ขนาดใหญ่ อย่างไรก็ตามฉันมีปัญหาในการแสดงภาพกระบวนการทั้งหมดและไม่มีบทความใดที่พูดถึงการสุ่ม ไทล์ของฉันเข้าด้วยกันในหลาย ๆ แบบไม่ใช่แค่ทางเดียวเพราะไทล์ในตัวอย่างที่ฉันเชื่อมโยงดูเหมือนจะ ตัวอย่างเช่นนี่เป็นเพียงตัวอย่างไม่กี่: เนื่องจากกระเบื้องของฉันเข้ากันได้หลายวิธีฉันไม่คิดว่าหน้ากาก 8 บิตจะทำงานได้ ดังนั้นฉันคิดว่าจะใช้ bitmask ที่ใหญ่กว่านี้ บางอย่างเช่นถ่าน [8] หรือถ่าน4 หากใครบางคนสามารถแสดง pseudocode / ตัวอย่างของอัลกอริธึมทั่วไปที่ดูเหมือนฉันจะขอบคุณมันมาก

2
ฉันจะใช้ไทล์ที่สร้างตามขั้นตอนใน libgdx ได้อย่างไร
ฉันกำลังสร้างเกม Zelda-esque บนลงล่างแบบง่าย ๆ ใน libgdx และฉันต้องการใช้ดันเจี้ยนแบบเรียงต่อกันที่สร้างตามขั้นตอนคล้ายกับสิ่งนี้ Libgdx มีคลาสที่เรียกว่า TiledMap ซึ่งดูเหมือนว่าจะเหมาะกับความต้องการของฉันอย่างไรก็ตามเอกสารนอกเอกสารอย่างเป็นทางการแสดงให้เห็นว่า TiledMaps สามารถใช้ร่วมกับไฟล์. tmx หรือในคำอื่น ๆ ที่ออกแบบไว้ล่วงหน้าแผนที่ ฉันทำ Googling ในปริมาณที่พอใช้แล้วฉันก็เลยขอให้ที่นี่เป็นทางเลือกสุดท้ายหวังว่าจะมีใครบางคนมีประสบการณ์การใช้ libgdx เพื่อสร้างแผนที่ย่อยแบบไดนามิก แก้ไข: ฉันสามารถใช้StaticTiledMapTiles ได้หรือไม่ร่วมกับบทช่วยสอนที่ฉันเชื่อมโยงกับข้างต้นเพื่อบรรลุเป้าหมายได้หรือไม่ ขอบคุณ!

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

2
การใช้แผนที่ / ภูมิประเทศแบบเรียงต่อกันที่มีความสูงแตกต่างกันของแผ่นกระเบื้องข้างเคียง
Ahoy! ฉันกำลังมองหาข้อมูลบางอย่างเกี่ยวกับแผนที่ย่อยหรือค่อนข้างที่เรียกว่าแผนที่ประเภทเฉพาะ ฉันสนใจชนิดของการใช้งานที่ใช้ในเกม tycoon หรือเกมการขนส่งที่มีผู้ประกอบการและได้รับการดูลงในภูมิประเทศเวกเตอร์ฟิลด์และภูมิประเทศแผนที่ความสูง แต่ฉันไม่แน่ใจว่าพวกเขาเหมาะสมกับสิ่งที่ฉันต้องการ พัฒนา. มันเป็นการยากที่จะหาข้อมูลที่เหมาะสมเพราะคนส่วนใหญ่อ้างถึงเป็นแผนที่เรียงภาพสามมิติ แต่ฉันต้องการสร้างบางสิ่งในรูปแบบสามมิติด้วยมุมมองแบบออโธกราฟแบบคงที่ ฉันเข้าใจว่าที่เก็บข้อมูลพื้นฐานของแผนที่ย่อยไม่มีส่วนเกี่ยวข้องกับวิธีการแสดงผล แต่ฉันไม่ต้องการสร้างแผนที่ย่อยแบบสองมิติเช่นเกมโปเกมอน / เกมเซลด้าของโรงเรียนเก่ามากขึ้นตามแนวของ diablo ที่มีความสามารถในการรวม หน้าผาที่ยื่นออกมาและภูมิประเทศที่ลาดชัน ฉันแค่พยายามค้นหาคำศัพท์ที่เหมาะสมเพื่อค้นหา google และ stackoverflow เพื่อหาแหล่งข้อมูลเพื่อช่วยฉันตัดสินใจเลือกเส้นทางที่จะดำเนินการต่อไป จนถึงตอนนี้ฉันได้จัดการแผนที่แบบพื้นฐานโดยไม่ใช้ส่วนประกอบความสูง / y ที่เก็บไว้ใน VBO และแสดงผลเป็นแบบโครงลวด สิ่งนี้ดูดีมาก แต่ฉันคิดว่าฉันจะพบปัญหาเมื่อพยายามใช้จุดสุดยอดเดียวเพื่อสร้างหน้าผาและเนินเขาโดยไม่กระทบกับกระเบื้องข้างเคียง มีการใช้งานเฉพาะประเภทที่ฉันควรพิจารณาหรือไม่ ฉันคิดว่าฉันแคร็กมันเมื่อฉันพบว่ามีจำนวนที่ยุติธรรมถ้าข้อมูลในพื้นที่ทุ่งเวกเตอร์ แต่ฉันไม่แน่ใจว่าสิ่งนี้จะให้ผลลัพธ์ที่ถูกต้องเช่นกัน หากใครก็ตามที่สามารถปลดปล่อยแสงนี้ให้ฉันได้โปรดความช่วยเหลือจะได้รับการชื่นชมอย่างมาก :) ปรับปรุง ฉันได้รวมรูปภาพเพื่อการชี้แจงเพิ่มเติมเกี่ยวกับสิ่งที่ฉันต้องการบรรลุ: ภาพที่ยืมมาจากวิธีสร้างภาพวาดสามมิติแบบเอียง (สูง) ภาพนี้แสดงประเภทของภูมิประเทศที่ฉันต้องการสร้าง แต่ไม่รวมถึง "หน้าผา" หรือภูมิประเทศที่ยื่นออกมาที่ฉันสนใจในการสร้างแบบจำลอง อย่างไรก็ตามจะเพิ่มคำถามอื่นอีกสองสามข้อที่ฉันไม่ได้พิจารณาคือ 'เลเยอร์' เช่นน้ำ (มุมบนซ้ายของภาพ) จะถูกจัดการอย่างไรเพื่อรวมพื้นดินที่มองเห็นใต้น้ำ "ขอบ" ของแผนที่จะได้รับการจัดเตรียมอย่างไรเพื่อที่ว่าโลก / …

3
การนำทางอัตโนมัติที่สง่างาม
ฉันกำลังมองหาข้อมูลเกี่ยวกับวิธีที่ผู้คนใช้การทำให้เป็นอัตโนมัติในเกมแบบเรียงต่อกัน จนถึงตอนนี้ฉันมักจะพูดโพล้เพล้ด้วยประโยค "hardcoded" if ... else ... "และตอนนี้ฉันตัดสินใจแล้วว่าถึงเวลาที่จะหาคำตอบที่ดีกว่านี้แล้ว ฉันไปค้นหาบนอินเทอร์เน็ตเพื่อดูตัวอย่างการใช้งานอัตโนมัติและการอภิปรายหัวข้อ แต่ฉันมีบทความสามบทความเท่านั้น: http://www.codeproject.com/Articles/106884/Implementing-Auto-tiling-Functionality-in-a-Tile-M http://blog.rpgmakerweb.com/tutorials/anatomy-of-an-autotile http://web.archive.org/web/20130927193449/http://www.squidi.net/mapmaker/musings/m091016.php (โดยเฉพาะอย่างยิ่งสุดท้ายคือครอบคลุมและเป็นประโยชน์มาก) ฉันได้ดูการใช้งานต่างๆและเอกสารประกอบของห้องสมุดที่นำมาใช้เช่น flixel: http://www.flixel.org/features.html#tilemaps น่าเศร้าที่วิธีแก้ปัญหาทั้งหมดที่ฉันสามารถหาได้นั้นเป็นวิธีการที่ได้รับการปรับแต่งและส่งเดชตรงตามที่ฉันเริ่มต้นและแทบไม่เคยครอบคลุมกรณีที่เป็นไปได้ทั้งหมด ฉันกำลังมองหาตัวอย่างอันงดงามของการติดตั้งระบบอัตโนมัติที่ฉันเรียนรู้ได้

2
มีชื่อสำหรับเทคนิคนี้เพื่อวางกระเบื้องที่มุมของระดับหรือไม่?
แนวทางทั่วไปในการพัฒนาเกมเก่าคือการวางไทล์ไว้ที่มุมหนึ่งของระดับเพื่อใช้เป็นข้อมูลอ้างอิง ตัวอย่างเช่น: ในระดับนี้ผู้พัฒนาวางชุดไพ่ที่มุมบนซ้าย แต่มีชื่อสำหรับเทคนิคนี้หรือไม่? ฉันเขียนคู่มือเกี่ยวกับสิ่งนั้นและฉันต้องการตั้งชื่อ

4
LibGDX เก็บกล้องไว้ในขอบเขต TiledMap
ฉันมี TiledMap ง่าย ๆ ซึ่งฉันสามารถปรับได้ ฉันมีผู้เล่นกระโดด (พร้อม Box2D) ไปรอบ ๆ และกล้องของฉันติดตามผู้เล่นรอบ ๆ : cam.position.set( player.position().x * Game.PPM + Game.V_WIDTH / 4, player.position().y * Game.PPM, 0 ); cam.update(); อย่างไรก็ตามกล้องจะย้าย "ปิด" TiledMap ฉันจะเก็บกล้องของฉันไว้บน TiledMap ได้อย่างไรเมื่อฉันใกล้ขอบแผนที่ของฉันกล้องหยุดการเลื่อนและผู้เล่นเคลื่อนที่ไปทางขอบของกล้อง

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