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

อัลกอริทึมหรือวิธีการในการผลิตเหตุการณ์หรือพฤติกรรมที่สุ่มในลักษณะ

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

10
เสียงสุ่มบนพื้นฐานของเมล็ด
ฉันกำลังทำงานกับโปรแกรมที่ควรสร้างสัญญาณรบกวนแบบสุ่มบนหน้าจอโดยยึดตาม 'พิกัด' ของพิกเซล พิกัดควรมีสีเดียวกันทุกครั้งที่คุณเริ่มโปรแกรมใหม่ อย่างไรก็ตามการใช้ประโยชน์ของ Java การสุ่มผลลัพธ์ที่ฉันได้รับนั้นไม่ได้สุ่มอย่างที่ฉันต้องการ: ฉันคิดว่าถ้าฉันใช้พิกัดร่วม (เช่นเดียวกับจำนวนเต็มหนึ่งตัวที่เกิดขึ้นจากพิกัดทั้งสองข้างถัดจากแต่ละอื่น ๆ ) แต่ละพิกัดจะมีจำนวนที่แตกต่างกัน โดยการใช้หมายเลขนั้นเป็นเมล็ดฉันคาดว่าจะได้รับตัวเลขสุ่มที่แตกต่างกันสำหรับแต่ละพิกัดเพื่อใช้สำหรับค่า rgb ของพิกัดนั้น นี่คือรหัสที่ฉันใช้: public class Generate { static Random Random; public static int TileColor(int x, int y){ Random = new Random(Integer.valueOf(Integer.toString(x)+Integer.toString(y))); int b = 1 + Random.nextInt(50); int g = 1 + Random.nextInt(50); int r = 1 …
16 java  random 

3
อะไรคือความแตกต่างระหว่าง“ การสร้างแบบไดนามิก” และ“ การสร้างตามขั้นตอน”?
เมื่อฉันคิดถึงเกมที่สร้างขึ้นแบบไดนามิกฉันคิดถึงสิ่งต่าง ๆ เช่น Diablo ที่มีระดับที่สร้างแบบสุ่ม เมื่อฉันคิดถึงเกมที่สร้างตามขั้นตอนฉันคิดว่าสิ่งต่าง ๆ เช่น Flappy Bird และนักวิ่งที่ไม่มีที่สิ้นสุดอื่น ๆ แต่ทั้งสองอย่างนี้เป็นการสุ่มระดับ มันเป็นเกมที่สร้างตามขั้นตอนที่ถูกสร้างขึ้นอย่างต่อเนื่องและเกมที่สร้างขึ้นแบบไดนามิกทั้งหมดจะถูกสร้างขึ้นหน้า? หรือข้อกำหนดเหล่านี้ใช้แทนกันได้หรือไม่ ความแตกต่างระหว่างเกมที่สร้างขึ้นแบบไดนามิกและเกมที่สร้างขึ้นแบบขั้นตอนคืออะไร?

3
วิธีการแบ่งตารางฐานสิบหกอย่างเท่าเทียมกันในหมู่ผู้เล่น n?
ฉันกำลังสร้างเกมที่ใช้ฐานสิบหกแบบง่ายและฉันต้องการให้แผนที่แบ่งให้ผู้เล่นเท่า ๆ กัน แผนที่ถูกสร้างแบบสุ่มและฉันต้องการให้ผู้เล่นมีจำนวนเซลล์ที่เท่ากันโดยมีพื้นที่ค่อนข้างเล็ก ตัวอย่างเช่นหากมีผู้เล่นสี่คนและ 80 เซลล์ในแผนที่ผู้เล่นแต่ละคนจะมีประมาณ 20 เซลล์ (ไม่จำเป็นต้องมีจุดเฉพาะ) นอกจากนี้ผู้เล่นแต่ละคนควรมีเซลล์ที่อยู่ติดกันไม่เกินสี่เซลล์ กล่าวคือเมื่อสร้างแผนที่ "ชิ้นที่ใหญ่ที่สุด" ไม่สามารถมีได้มากกว่าสี่เซลล์ต่อเซลล์ ฉันรู้ว่ามันเป็นไปไม่ได้สำหรับผู้เล่นสองหรือสามคน (เช่นนี้คล้ายกับปัญหา "ระบายสีแผนที่") และฉันก็โอเคกับการแก้ปัญหาอื่น ๆ สำหรับพวกเขา (เช่นการสร้างแผนที่ที่แก้ปัญหาแทน) แต่สำหรับผู้เล่นสี่ถึงแปดคนฉันจะแก้ไขปัญหานี้ได้อย่างไร

2
สุ่มหมายเลข hlsl
คุณจะสร้างหมายเลขสุ่มใน HLSL ได้อย่างไร ฉันขอเพราะผมต้องการที่จะลองGPU ray การติดตาม คุณต้องสร้างเส้นทางแบบสุ่มในตัวแบ่งพิกเซล ดังนั้นฉันต้องการrandFloat()ที่ผลคือตัวเลขสุ่มระหว่าง -1 และ +1 นอกจากนี้การจัดการกับคำแนะนำเสียง hlsl คืออะไร? เอกสารบอกว่ามันถูกลบออกจาก HLSL 2.0 ขึ้นไป ทำไม ? ฉันอ่านเกี่ยวกับวิธีการที่คุณเติมพื้นผิวด้วยค่าแบบสุ่มแล้วให้มีการประสานงานพื้นผิวในแต่ละจุดยอดที่มีดัชนีลงในพื้นผิวนั้น แต่นั่นคือจุดสุดยอดต่อฉันต้องการคำแนะนำที่ฉันสามารถโทรหาในส่วนพิกเซลได้ ยิ่งไปกว่านั้นวิธีนี้ต้องใช้ "reseeding" เท็กซัสต่อยอดถ้าคุณต้องการค่าที่แตกต่างกันในแต่ละเฟรมและนั่นต้องใช้การปรับปรุงบัฟเฟอร์เท็กซ์ในแต่ละเฟรม (ซึ่งอาจมีราคาแพง!) ด้วยรายละเอียดคุณจะสร้างตัวเลขสุ่มบน GPU ได้อย่างไร?
13 hlsl  random  gpu 


3
การเดินแบบสุ่มแบบเอนเอียงและอนุรักษ์นิยม
ฉันมีเทพดาซึ่งมีVelocityและทั้งเก็บไว้เป็นPosition Vector2ในแต่ละUpdateรอบความเร็วจะถูกเพิ่มเข้าไปในตำแหน่ง ฉันอยากให้สไปรต์เวกเตอร์ตัวที่สาม, Target. อาจมีการกำหนดเป้าหมายใหม่ในการวนซ้ำใด ๆ ฉันต้องการให้ผีสไปรต์เคลื่อนไหวเป็นหลักในรูปแบบการเดินแบบสุ่ม แต่ต้องมีพารามิเตอร์สองพารามิเตอร์ดังนี้: การเดินสุ่มโดยทั่วไปมีแนวโน้มที่จะเพิ่มหรือลดระยะทางให้เท่ากันTarget(บวกกับโอกาสเล็กน้อยของการเคลื่อนไหวแบบสัมผัส) ฉันต้องสามารถอคติการเดินแบบสุ่มของฉันในขณะที่ยังคงสุ่มทิศทางที่สไปรต์ "ตัดสินใจ" ควรมีแนวโน้มที่จะนำมันเข้ามาใกล้Targetยิ่งขึ้น การเดินแบบสุ่มควร "ราบรื่น" - สไปรต์ไม่ควรเปลี่ยนทิศทางอย่างรวดเร็วเนื่องจากจะดูเหมือนว่า "ริบหรี่" หรือ "สั่น" กับผู้เล่น มันควรค่อย ๆ เปลี่ยนทิศทางด้วยวิธีนี้หรืออย่างนั้นเคลื่อนแบบสุ่มในขณะที่เข้าใกล้อย่างช้า ๆ เมื่อเฉลี่ย อะไรคือวิธีที่ดีและเรียบง่ายในการทำสิ่งนี้? ถ้าเป็นไปได้ให้คำตอบเป็นVector2 RandomWalk(Vector2 target)วิธี ฉันมีNextGaussian(mean, stdev)วิธีที่ใช้ได้อยู่แล้วหากเป็นประโยชน์

2
ตัวเลขสุ่มบน C ++
เมื่อเร็ว ๆ นี้ฉันคุ้นเคยกับภาษาสมัยใหม่ซึ่งรวมถึงตัวสร้างแบบสุ่มที่ดีซึ่งมักจะเป็น Mersenne Twister; ตอนนี้ฉันกลับไปที่ C ++ ฉันต้องตัดสินใจว่าจะใช้อะไร ฉันค้นหาการใช้งานของ Mersenne Twister และฉันสังเกตเห็นว่ามีอยู่มากมาย: มีสิ่งหนึ่งที่ใช้กันอย่างแพร่หลายและแพร่หลายกว่าหรือฉันควรจะเลือกอย่างใดอย่างหนึ่งโดยสมมติว่าพวกเขาทั้งหมดดีพอ ๆ กัน?
12 c++  random 

5
จะปรับปรุงการสร้างตัวเลขสุ่มในบริบทของฉันได้อย่างไร
ในเกมของฉันมีคำที่ด้านบนของหน้าจอตัวอักษรมีฝนตกจากด้านบนและผู้ใช้ต้องสัมผัสตัวอักษรเพื่อให้คำสมบูรณ์ ขณะนี้ฉันกำลังสร้างตัวอักษรแบบสุ่ม (จริง ๆ แล้วตัวเลขและตัวเลขสุ่มเป็นดัชนีสำหรับอาร์เรย์ของตัวอักษรเช่น: 0 = a, 1 = b) แต่ปัญหาคือว่ามันใช้เวลามากเกินไปที่จะได้รับตัวอักษรที่ต้องการทั้งหมด คำ. สิ่งที่ฉันต้องการคือตัวเลขสุ่มที่ฉันกำลังสร้างควรสร้างตัวอักษรที่ต้องการบ่อยขึ้นเพื่อให้ผู้เล่นไม่ต้องใช้เวลาทั้งวันในการกรอกหนึ่งคำ ฉันได้ลองวิธีต่อไปนี้แล้ว: ตรวจจับตัวอักษรทั้งหมดในคำ (คำมีความยาว 6 ตัวอักษรเสมอ) สร้างอาร์เรย์ของดัชนีความยาว 6 กำหนดดัชนีแต่ละชุดของอาร์เรย์ให้เป็นตัวเลขสุ่มจากตัวอักษร -2 ถึงตัวอักษร + 2 และในที่สุดเลือกสุ่มหนึ่งดัชนี จากอาร์เรย์ที่จะแสดง มีตัวแปรตัวเลือกที่มีค่าอยู่ในช่วง [0..2] ซึ่งสร้างแบบสุ่มหากตัวเลือก == 0 จากนั้นตรวจจับตัวอักษรที่ทำให้คำนั้นและสุ่มเลือกตัวอักษรหนึ่งตัวอื่น ๆ จะได้รับตัวอักษรแบบสุ่มจาก az วิธีการทั้งสองนี้ไม่ได้ช่วยอะไรฉัน ฉันจะมีความสุขมากถ้าคุณสามารถช่วยฉันได้ ขอบคุณสำหรับการอ่านนี้ฉันหวังว่าคุณจะเข้าใจคำถามและฉันกำลังรอคำตอบ
11 random 

2
ฝ่ายอักษะในแนวแกน: แบ่งพื้นที่ออกเป็นสี่เหลี่ยมผืนผ้าสุ่ม?
ฉันต้องการวิธีการแบ่งพื้นที่ 3 มิติเป็นรูปร่างกล่องที่จัดแนวแกนแบบสุ่ม ตอนนี้ฉันกำลังแบ่งพื้นที่ 2d สำหรับการทดสอบ วิธีที่ฉับพลันที่สุดที่ฉันคิดขึ้นมาคือการกำหนดขนาดสี่เหลี่ยมผืนผ้า (1, 1) แล้วแบ่งสี่เหลี่ยมที่มีอยู่ทั้งหมดกลับเป็นรูปสี่เหลี่ยมผืนผ้าไม่สม่ำเสมอสองอันสลับกันระหว่างแกน X และ Y ปัญหาที่นี่ชัดเจน วิธีการนี้ส่งผลให้เส้นยืดยาว (ทำเครื่องหมายด้วยสีแดง) สิ่งที่ฉันต้องการคือสิ่งที่ดูเป็นธรรมชาติมากขึ้น (ฉันรวมตัวอย่าง) ดูไม่มีเส้นตรงยาวจากบนลงล่างหรือจากซ้ายไปขวา ข้อ จำกัด เพียงอย่างเดียวคือฉันอาจต้องการ จำกัด ขนาดที่เล็กที่สุดของสี่เหลี่ยมผืนผ้าโดยไม่กระทบกับความละเอียดของขนาด นั่นคือถ้าส่วนที่เล็กที่สุดคือ 1 ตารางเซนติเมตรกว่าห้องที่เล็กที่สุดของวินาทีไม่ควรเป็น 2 ตารางหน่วย ดังนั้นขั้นตอนวิธีควรเป็นไปตามข้อ จำกัด ทั้งสามดังต่อไปนี้: รูปสี่เหลี่ยมผืนผ้ามีขนาดเล็กไม่เล็ก ขนาดของรูปสี่เหลี่ยมไม่ได้เป็นการคูณแบบแยกขนาดที่เล็กที่สุด เช่นถ้า rect ที่เล็กที่สุดคือ 3 square unit มากกว่า rects ที่ใหญ่กว่าจะไม่ถูก จำกัด ให้เป็น 6, 9, 12 และอื่น ๆ …

3
สุ่มวางศัตรูบนตาราง 2d
ฉันต้องการวางไอเท็มและศัตรูแบบสุ่ม (หรือสุ่มให้มากที่สุด) ในขณะนี้ฉันใช้Randomคลาสของ XNA เพื่อสร้างตัวเลขระหว่าง 800 สำหรับ X และ 600 สำหรับ Y มันรู้สึกเหมือนศัตรูวางไข่ไปทางด้านบนของแผนที่มากกว่าตรงกลางหรือด้านล่าง ฉันไม่ได้สร้างเครื่องกำเนิดไฟฟ้าซึ่งอาจเป็นสิ่งที่ต้องพิจารณา มีเทคนิคอื่น ๆ ที่อธิบายซึ่งสามารถปรับปรุงการจัดวางศัตรูแบบสุ่มในตาราง 2d หรือไม่?
11 xna  2d  sprites  random 

6
มี (ครอบครัวของ) ฟังก์ชั่นเสียงรบกวนไม่ลดลง monotonically (s)?
ฉันต้องการฟังก์ชั่นในการเคลื่อนไหววัตถุที่เคลื่อนที่จากจุด A ไปยังจุด B เมื่อเวลาผ่านไปเช่นถึงจุด B ในเวลาที่กำหนด แต่ตำแหน่งของมันในเวลาใดก็ได้จะถูกรบกวนแบบสุ่มอย่างต่อเนื่อง แต่ไม่ย้อนกลับ วัตถุเคลื่อนที่ไปตามเส้นตรงดังนั้นฉันต้องการเพียงมิติเดียว ในทางคณิตศาสตร์นั่นหมายความว่าฉันกำลังมองหา f (x) ต่อเนื่อง, x ∈ [0,1], เช่นนั้น: f (0) = 0 f (1) = 1 x <y → f (x) ≤ f (y) ที่คะแนน "มากที่สุด" f (x + d) - f (x) ไม่มีความสัมพันธ์ที่ชัดเจนกับ d (ฟังก์ชั่นไม่ได้เพิ่มขึ้นอย่างสม่ำเสมอหรือคาดการณ์ได้ฉันคิดว่ามันก็เทียบเท่ากับการบอกว่าไม่มีอนุพันธ์ระดับใดคงที่) โดยหลักการแล้วฉันอยากได้ครอบครัวที่มีฟังก์ชั่นเหล่านี้โดยระบุสถานะเมล็ดพันธุ์ ฉันต้องการเมล็ดพันธุ์อย่างน้อย 4 บิต …

2
วิธีที่ดีในการสร้างขอบระหว่างโหนดกราฟคืออะไร?
ฉันกำลังสร้างตัวสร้างแผนที่แบบสุ่มสำหรับเกมอวกาศ 4X แต่ละโหนดในเกมจะวางที่พิกัดสุ่ม (x, y) บนกริด 2d โหนดสามารถมีขอบสองทิศทางหนึ่งหรือมากกว่านั้นไปยังโหนดอื่น (แทนหนอน) โหนดทั้งหมดต้องมีหนอนอย่างน้อยหนึ่งตัวและโหนดทั้งหมดจะต้องอยู่ในกราฟเดียวกัน ตามหลักการแล้วตัวหนอนไม่ควรยาวเกินความยาวสูงสุดและหากเป็นไปได้ตัวหนอนไม่ควรข้ามกัน การปฏิบัติที่ไร้เดียงสาของฉันคือการวนซ้ำผ่านทุกโหนดและมีลิงค์ของโหนดไปยัง 3 โหนดที่ใกล้เคียงที่สุด อย่างไรก็ตามฉันลงเอยด้วยกราฟย่อยจำนวนมาก เป็นวิธีที่ดีในการสร้างขอบสำหรับโหนดอะไร

3
การสร้างแผนที่แบบสุ่ม - กลยุทธ์สำหรับการกระจาย / การรวมโหนดแบบสุ่ม
ฉันกำลังเล่นเกมกลยุทธ์ 4X ง่ายๆในอวกาศที่แต่ละโหนดเป็นจุดสนใจ (ดาวเคราะห์ดาวเคราะห์น้อยและอื่น ๆ ) ในการสร้างแผนที่แบบสุ่มฉันจะทำตามขั้นตอนด้านล่าง ตัดสินใจว่าจะมีกี่โหนดในแต่ละแผนที่ (อาจจะบอกว่ามีดาวเคราะห์คล้ายโลก 5 ดวงหรือดาวเคราะห์ที่แห้งแล้ง 10 ดวงเป็นต้น) วางแต่ละโหนดบนแผนที่ สำหรับขั้นตอนที่ 2 ฉันต้องการที่จะมีการแพร่กระจายของแต่ละโหนดประเภท ตัวอย่างเช่นฉันจะเริ่มต้นด้วยการวางดาวเคราะห์คล้ายโลกทั้งหมด ถ้าฉันทำแรนด์ (map.width, map.height) เพื่อกำหนดตำแหน่งฉันอาจจะรวมดาวเคราะห์คล้ายโลกทั้งหมดเข้าด้วยกันซึ่งจะให้ประโยชน์กับผู้เล่นที่เริ่มต้นในพื้นที่นั้น มีวิธีการใดบ้างเช่นการใช้ฟังก์ชั่นกราฟที่แตกต่างกันหรือฟังก์ชั่นเสียงรบกวนซึ่งสามารถสร้างลำดับของ (x, y) พิกัดซึ่งกระจายออกจากกัน มีวิธีใดบ้างในการสร้างพิกัดที่ใกล้เคียงกัน?

4
ภูมิประเทศขั้นตอนในแบบ 3 มิติ: สิ่งที่ได้ทำ มีสามัญและ / หรือทฤษฎีเกี่ยวกับมันหรือไม่? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา นอกเหนือจากการเขียนโปรแกรมการสร้างแบบจำลองสภาพแวดล้อมใช้เวลาอย่างมาก ฉันไม่รู้เกี่ยวกับเวลาทำงานที่เกี่ยวข้องเช่นในดันเจี้ยนระดับ WoW หรือเมืองที่สวยงามสภาพแวดล้อมในอนาคตป่าจินตนาการ ฯลฯ แต่งานประเภทนี้สร้างขึ้นโดยศิลปิน เทคนิคใดบ้างที่เกี่ยวข้องกับเครื่องมือสุ่มระดับ TorchLight และชื่ออื่นมีความคล้ายคลึงกับสิ่งนี้หรือไม่? มีชื่อสกุลสำหรับเทคนิคดังกล่าวหรือไม่?

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