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

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

4
ขั้นตอน…บ้านพร้อมห้องกำเนิด
ฉันได้ดูอัลกอริธึมและบทความเกี่ยวกับขั้นตอนการสร้างดันเจี้ยน ปัญหาคือฉันพยายามสร้างบ้านที่มีห้องและพวกเขาดูเหมือนจะไม่ตรงกับความต้องการของฉัน สำหรับหนึ่งดันเจี้ยนมีทางเดินที่บ้านมีห้องโถง และในตอนแรกพวกเขาอาจดูเหมือนกัน แต่โถงไม่มีอะไรมากไปกว่าพื้นที่ที่ไม่ใช่ห้องพักในขณะที่ทางเดินได้รับการออกแบบมาเป็นพิเศษเพื่อเชื่อมต่อพื้นที่หนึ่งไปยังอีกพื้นที่หนึ่ง ความแตกต่างที่สำคัญอีกประการหนึ่งของบ้านก็คือคุณมีความกว้างและความสูงที่เฉพาะเจาะจงและคุณต้องเติมสิ่งทั้งปวงด้วยห้องและห้องโถงในขณะที่ในคุกใต้ดินนั้นมีพื้นที่ว่างเปล่า ฉันคิดว่าห้องโถงในบ้านเป็นสิ่งที่อยู่ระหว่างทางเดินดันเจี้ยน (พาคุณไปที่ห้องอื่น) และพื้นที่ว่างในคุกใต้ดิน (มันไม่ได้กำหนดไว้ในรหัสอย่างชัดเจน) โดยเฉพาะอย่างยิ่งข้อกำหนดคือ: มีชุดของห้องที่กำหนดไว้ล่วงหน้า ฉันไม่สามารถสร้างกำแพงและประตูได้ในทันที ห้องสามารถหมุนได้ แต่ไม่สามารถปรับขนาดได้ อีกเพราะฉันมีชุดห้องที่กำหนดไว้ล่วงหน้าฉันสามารถหมุนได้เท่านั้นไม่ปรับขนาด ขนาดของบ้านถูกตั้งค่าและจะต้องเต็มไปด้วยห้อง (หรือห้องโถง) ฉันต้องการเติมบ้านขนาด 14x20 ด้วยห้องว่างเพื่อให้แน่ใจว่าไม่มีพื้นที่ว่าง นี่คือภาพบางส่วนที่จะทำให้ชัดเจนยิ่งขึ้น: อย่างที่คุณเห็นในบ้าน "พื้นที่ว่าง" ยังคงเดินได้และทำให้คุณจากห้องหนึ่งไปอีกห้องหนึ่ง ดังนั้นเมื่อพูดทั้งหมดนี้บางทีบ้านอาจเป็นเพียงคุกใต้ดินที่อัดแน่นจริงๆกับทางเดิน หรือมันเป็นอะไรที่ง่ายกว่าดันเจี้ยน อาจมีบางอย่างที่นั่นและฉันไม่พบเพราะฉันไม่รู้ว่าจะค้นหาอะไร ที่นี่ฉันต้องการความช่วยเหลือของคุณ: คุณช่วยชี้วิธีออกแบบอัลกอริทึมนี้ให้ฉันได้ไหม มีความคิดเห็นเกี่ยวกับขั้นตอนอะไรบ้าง? หากคุณสร้างตัวสร้างดันเจี้ยนคุณจะดัดแปลงมันให้เหมาะกับความต้องการของฉันได้อย่างไร คุณสามารถเจาะจงหรือเจาะจงได้ตามใจชอบ ฉันกำลังมองหาสมองของคุณจริง ๆ

7
A * pathfinding ทำงานอย่างไร
ฉันต้องการที่จะเข้าใจในระดับพื้นฐานว่า A * pathfinding ทำงานอย่างไร การใช้รหัสหรือรหัส psuedo ใด ๆ รวมถึงการสร้างภาพข้อมูลจะเป็นประโยชน์

9
ขั้นตอนวิธีการบรรจุพื้นผิว
อัลกอริทึมการบรรจุพื้นผิวที่ดีคืออะไร ในทางเทคนิคถังขยะนั้นบรรจุยากมากดังนั้นการเรียนรู้ด้วยตนเองจึงเป็นสิ่งที่ฉันต้องการจริงๆ

1
Raymarch shaders ทำงานอย่างไร
ฉันได้ดู shaders พบที่นี่ shadertoy.com และส่วนใหญ่ที่เย็นมีเสียงและ raymarch เหมือนกัน ฉันไม่เข้าใจซอร์สโค้ด แต่ฉันต้องการจริงๆ เฉดสีเหล่านี้ทำงานอย่างไรและอัลกอริทึม raymarch ทำงานอย่างไร ฉันค้นหาทั่วและไม่พบสิ่งใดในหัวข้อ ขอบคุณ

3
ฉันจะสร้างภูมิประเทศสไตล์ Worms ได้อย่างไร
ฉันกำลังทำงานกับเกมสไตล์ Worms และต้องการที่จะสร้างภูมิประเทศบางขั้นตอน ก่อนหน้านี้ฉันเคยสร้างภูมิประเทศมามากมายโดยใช้เสียงเพอร์ลินและนี่คือสิ่งที่ฉันเริ่มใช้สำหรับเกมนี้ ปัญหาเดียวของมันคือมันง่ายเกินไปและน่าเบื่อทำให้ฉันมีเนินเขาบ้าง แต่ไม่ใช่ความซับซ้อนที่ฉันต้องการ ฉันต้องการมีคุณสมบัติเช่นถ้ำและภูเขาที่แขวนและฉันไม่สนใจเกาะลอยและเช่นนั้น บางอย่างเช่นนี้ แต่แม้จะเป็นคนบ้าคลั่งก็โอเค: ฉันคิดว่าการสร้างภูมิประเทศครั้งแรกด้วยเสียงเพอร์ลินคลาสสิคจากนั้นก็เอาชิ้นส่วนออกเพื่อสร้างถ้ำและอะไรที่ไม่ใช่ มีทางเลือกอื่นในการสร้างภูมิประเทศเช่นนี้หรือไม่?

11
เส้นทางการค้นหาอัลกอริทึมนั้นมีอะไรบ้าง [ปิด]
ฉันต้องการอ่านอัลกอริธึมในการค้นหาเส้นทาง มีสีรองพื้นหรือวัสดุหรือแบบฝึกหัดใด ๆ บนอินเทอร์เน็ตที่จะเป็นการเริ่มต้นที่ดีสำหรับฉัน

3
จะสร้างระดับสุ่มจากเมล็ดได้อย่างไร [ปิด]
ฉันจะใช้เมล็ดพันธุ์แบบสุ่มเพื่อสร้างระดับเกมได้อย่างไร เมล็ดเดียวกันควรสร้างระดับเดียวกันแน่นอนเสมอ สำหรับตัวอย่างนี้มันจะเป็นระดับสไตล์Worms ดังนั้นแต่ละระดับจะมีธีม (ทุ่งหญ้าหิมะ ฯลฯ ) ภูมิประเทศพื้นฐานวัตถุต่าง ๆ เช่นต้นไม้ ดังนั้นฉันจะเริ่มสร้างตัวสร้างระดับนี้ได้ที่ไหน สิ่งที่จะมีส่วนร่วม? แนวคิดนี้ใช้อะไร? คะแนนโบนัสสำหรับการเชื่อมโยงใด ๆ ที่ดีใด ๆ ( โบนัสคะแนนโบนัสสำหรับสิ่งที่เกี่ยวข้องกับวิธีการที่จะได้ทำในเวิร์มหรือคล้ายกัน) ขอบคุณ

9
ฉันจะหาปริมาณความตรงของเส้นตรงได้อย่างไร
ฉันกำลังทำงานกับเกมที่ต้องการให้ผู้เล่นวาดเส้นจากจุด A (x1, y1) ไปยังอีกจุด B (x2, y2) บนหน้าจอของอุปกรณ์ Android ฉันต้องการค้นหาว่าการวาดที่เหมาะสมกับเส้นตรงนั้นดีแค่ไหน ตัวอย่างเช่นผลลัพธ์ 90% จะหมายถึงการวาดเส้นนั้นเหมาะกับเส้น หากผู้เล่นลากเส้นโค้งจาก A ถึง B ก็ควรได้คะแนนต่ำ ไม่ทราบจุดสิ้นสุดล่วงหน้า ฉันจะทำสิ่งนี้ได้อย่างไร

5
ใน 2D ฉันจะหาวัตถุที่ใกล้ที่สุดถึงจุดได้อย่างมีประสิทธิภาพได้อย่างไร
ฉันมีเอ็นจิ้นเกมขนาดใหญ่และฉันต้องการคุณสมบัติในการค้นหาจุดที่ใกล้ที่สุด ฉันสามารถใช้ทฤษฎีบทพีทาโกรัสในการค้นหาแต่ละระยะทางและเลือกหนึ่งขั้นต่ำ แต่นั่นต้องใช้การวนซ้ำทั้งหมด ฉันยังมีระบบการชนกันโดยที่ฉันจะเปลี่ยนวัตถุให้เป็นวัตถุขนาดเล็กบนกริดที่เล็กกว่า (เช่น minimap) และถ้าวัตถุมีอยู่ในกริดสเปซเดียวกันฉันจะตรวจสอบการชนกัน ฉันสามารถทำได้เพียงทำให้ระยะห่างของกริดใหญ่ขึ้นเพื่อตรวจสอบความใกล้ชิด (แทนที่จะตรวจสอบทุก ๆ ออบเจ็กต์) อย่างไรก็ตามมันจะทำการเซ็ตอัพเพิ่มเติมในคลาสฐานของฉัน มันคุ้มหรือไม่ มีบางสิ่งที่มีประสิทธิภาพและแม่นยำฉันสามารถใช้เพื่อตรวจจับวัตถุใดที่อยู่ใกล้ที่สุดโดยอิงจากรายการคะแนนและขนาด
35 c++  2d  algorithm  vector  picking 

7
วิธีที่ยอดเยี่ยมในการจำลองเอนทิตีจำนวนมากภายในโลกของเกม
สมมติว่าคุณมีเกมที่มีเอนทิตีจำนวนมาก (จำนวนมาก) ที่ให้บริการฟังก์ชั่นบางอย่างซึ่งไม่จำเป็นต้องพิจารณาอย่างต่อเนื่องหรือจำเป็นต้องพิจารณาในทุกเฟรม ปัญหาที่เป็นรูปธรรมที่ฉันกำลังดำเนินการซึ่งปัญหานี้มีอยู่คือการจำลองรายละเอียดของร่างกายรวมถึงอวัยวะของมัน ในเกมสิ่งมีชีวิตแต่ละตัวมีร่างกายของตัวเองซึ่งแบ่งออกเป็นส่วนเล็ก ๆ (ลำตัวขา ฯลฯ ) และบางครั้งส่วนเหล่านี้มีอวัยวะซึ่งทำหน้าที่เฉพาะในร่างกาย ไม่ว่าอวัยวะในปัจจุบันจะมีจุดประสงค์หรือไม่ก็ตามไม่ชัดเจน ท้ายที่สุดสัตว์อาจมีท้องว่างซึ่งไม่จำเป็นต้องย่อยอะไร มันจะค่อนข้างไร้สาระที่จะตรวจสอบหรือจำลองวัตถุทุกชิ้นในแต่ละเฟรมและมีราคาแพงมากทันทีที่คุณมีสิ่งมีชีวิตมากมายในโลก ดังนั้นฉันจึงคิดหาวิธีที่จะแยกความแตกต่างระหว่างวัตถุที่จำเป็นต้องได้รับการอัปเดตและสิ่งที่ไม่ทำอย่างชาญฉลาด สิ่งที่ฉันคิดขึ้นมาดูเหมือนจะเป็นทางออกอย่างน้อยที่สุด มันสร้างคิว / สแต็กอย่างง่าย (ที่สำคัญคือแต่ละองค์ประกอบจะถูกลบออกทันทีที่อ่านคำสั่งนั้นไม่เกี่ยวข้อง) เรียกว่า "สนใจสแต็ก" ซึ่งมีวัตถุที่ต้องจำลองอยู่ วัตถุที่ต้องการความสนใจเพียงแค่วางลงบนสแต็กหรือถูกใส่โดยวัตถุอื่น วัตถุเหล่านี้อาจใช้ส่วนต่อประสานแบบง่าย ๆ กับฟังก์ชันจำลอง () - นำไปใช้กับตัวอย่างการย่อยก่อนหน้าของฉันซึ่งหมายความว่า: ผู้เล่นเลือกที่จะกิน (สมมติว่าเป็นขนมปัง) จากสินค้าคงคลังและใส่เข้าไปในปากของตัวละครของเขาและปากจะถูกวางลงบนกองความสนใจ ในเฟรมถัดไปปากจะถูกนำออกจากสแต็กและจำลอง () - ฟังก์ชันถูกเรียก เนื่องจากเป็นปากจึงเป็นการสมเหตุสมผลที่จะจำลองการเคี้ยวที่นี่ สิ่งนี้สามารถดำเนินต่อไปในไม่กี่เฟรมที่ปากวางตัวเองลงบนสแต็คจนกว่าจะตัดสินใจว่าอาหารพร้อมที่จะกลืน ในกรณีนี้ปากใส่ขนมปังที่เคี้ยวเข้าไปในกระเพาะอาหาร (ฉันรู้ว่ามันไม่ได้ไปที่นั่นโดยตรง แต่หลอดอาหารจะถูกปล่อยออกมาเพื่อให้เข้าใจง่าย) ซึ่งจากนั้นก็ใส่ลงไปในความสนใจ - สแต็ก ในเฟรมถัดไปการจำลองของกระบวนการย่อยเริ่มต้น และส่วนอื่น ๆ ของอวัยวะที่จำเป็น ปัญหาที่คาดการณ์ได้จากสิ่งนี้คือวัตถุที่ไม่ทำงาน สัตว์นอนหลับเป็นตัวอย่างที่ดีของสิ่งนี้ …

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

2
การทำความเข้าใจเสียงเพอร์ลิน
ฉันกำลังเล่นกับ Perlin Noise หลังจากทำงานกับ Diamond Square ฉันติดตามการใช้งานโดย Hugo Eliasซึ่งโดยทั่วไปสร้างชุดฟังก์ชันด้วย x, y เพื่อป้อนค่าแต่ละค่าพิกัด รหัส PHP ของฉันอยู่ที่นี่ : ฉันมีสองคำถาม: ฉันจะใช้อัลกอริทึมเพื่อสร้างแผนที่ความสูงในอาร์เรย์ได้อย่างไร ฉันไม่เข้าใจอย่างเต็มที่และเพิ่งส่งไปยัง PHP รหัสเทียม แต่ทำฟังก์ชั่นสุดท้าย (map_perlined) หลังจากอ่านที่ไหนสักแห่งว่าอัลกอริธึม "น่าอัศจรรย์" ให้ค่าการเปลี่ยนสำหรับแต่ละ x, y ชี้ให้ (ชัดโดยไม่ต้องอ่าน ค่าติดกัน) ฉันเพิ่งได้สิ่งนี้เมื่อใช้เป็นฟังก์ชั่นแบบสุ่มmt_rand(-100,100)/100; และสิ่งนี้เมื่อใช้การเข้ารหัสลับ: 1.0-(($n*($n*$n*15731+789221)+1376312589)&0x7fffffff)/1073741824.0;(อันไหน BTW สามารถดำเนินการ "ตามที่เป็น" ใน PHP?): ดังนั้นสรุปคำถามที่สาม: รหัสของฉันถูกต้องหรือไม่ ฟังก์ชั่นแบบสุ่มสามารถย้ายไปยัง PHP ตามที่อธิบายไว้ในรหัสได้หรือไม่ มันไม่มีข้อผิดพลาด แต่ผลลัพธ์ไม่ได้อยู่ที่นั่น ฉันจะใช้อัลกอริทึมจริงได้อย่างไร UPDATE ตกลงทำพอร์ต PHP …
31 algorithm  php 

12
ฉันจะทำให้ A * เสร็จเร็วขึ้นได้อย่างไรเมื่อปลายทางไม่สามารถใช้ได้
I am making a simple tile-based 2D game, which uses the A* ("A star") pathfinding algorithm. I've got all working right, but I have a performance problem with the search. Simply put, when I click an impassable tile, the algorithm apparently goes through the entire map to find a route …

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

5
ฉันจะหลีกเลี่ยง "เกินไป" โชคดี / โชคไม่ดีในการสร้างเลขสุ่มได้อย่างไร
ขณะนี้ฉันกำลังจัดการกับระบบการต่อสู้แบบผู้เล่นหลายคนซึ่งความเสียหายที่ผู้เล่นทำนั้นจะถูกคูณด้วยปัจจัยสุ่มระหว่าง 0.8 และ 1.2 ในทางทฤษฎีการสุ่ม RNG อย่างแท้จริงในที่สุดอาจให้ผลจำนวนเดียวกันหลายครั้ง (ดูTetris ขึ้นเขียง ) ซึ่งอาจส่งผลในการแข่งขันที่ผู้เล่นจะได้เสมอทำให้เกิดความเสียหายสูงมากในขณะที่คนอื่น ๆ มักจะทำให้เกิดความเสียหายที่ต่ำมาก ฉันจะทำอย่างไรเพื่อให้แน่ใจว่าสิ่งนี้จะไม่เกิดขึ้น RNG บางตัวดีกว่าตัวอื่นที่หลีกเลี่ยงการทำซ้ำหรือไม่?

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