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

ใช้เพื่ออธิบายภูมิศาสตร์ทางกายภาพของสถานที่ ซึ่งอาจรวมถึงระดับความสูงความชันและทิศทางของคุณสมบัติ

1
GPU ไหลคำนวณน้ำ
ฉันมีพื้นฐานด้านวิศวกรรมโยธาและทำการวิเคราะห์ไฮดรอลิกและอุทกวิทยาอย่างสม่ำเสมอ พวกเขาขายดีกรีของสิ่งนั้น แต่มันไม่ใช่วิทยาศาสตร์จรวด ฉันเพิ่งได้รับในใจของฉันเพื่อใช้กระบวนการ hydrologic และไฮดรอลิกทั้งหมดสำหรับภูมิประเทศบน GPU ฉันเพิ่งเรียนรู้การคำนวณเฉดสีเมื่อเร็ว ๆ นี้ดังนั้นฉันจึงติดอยู่กับงานวิศวกรรมได้ดีกว่าการออกแบบเวิร์กโฟลว์ GPU แบบขนาน คุณสามารถคำนวณปริมาณน้ำที่เกิดขึ้นระหว่างเหตุการณ์ปริมาณน้ำฝนโดยใช้สูตร: Q (CF/S) = c * I (in/hr) * A (acres) ฉันมีปัญหาในการเคลื่อนที่เกินกว่าการคำนวณ "พื้นที่" ของพื้นที่แม้แต่ส่วนแรก ภาพรวมการใช้งานปัจจุบัน: ภูมิประเทศเป็นตารางจุดยอดปกติตามช่วงเวลา 1 หน่วย heightmap ประกอบด้วยค่าความสูง R32 หนึ่งค่าสำหรับแต่ละจุดยอด ขณะนี้ฉันอนุญาตให้ไหลใน 4 ทิศทางสำคัญเท่านั้น (ไม่มีเส้นทแยงมุม) ฉันใช้ Texture2D [int] เป็นลายฉลุสำหรับจุดยอดที่ฉันได้วิเคราะห์ไปแล้ว อัลกอริทึมปัจจุบัน: เมื่อเครื่องมือภูมิประเทศทำงานอยู่และเป็นตอนนี้ไม่ใช่ ... ล้าง "stencil" สแกนภูมิประเทศทั้งหมดเพื่อหาระดับความสูงต่ำสุด จุดเดียวนั้นคืออินพุตเริ่มต้นสำหรับ CS_Flood …

2
ความสูงแผนผัง Voxel ภูมิประเทศรูปหลายเหลี่ยม (เรขาคณิต)
ในความสัมพันธ์กับ Heightmap, Voxel และ polygon (เรขาคณิต) ภูมิประเทศ: อะไรคือความแตกต่างที่สำคัญระหว่างทั้งสามนี้? คุณสามารถสร้างภูมิประเทศที่“ ราบรื่น” ด้วย Voxels ได้หรือไม่ตัวอย่างเช่นคุณจะได้ภูเขาที่ราบรื่นด้วย Voxels หรือ Voxels ถูก จำกัด อยู่ที่ลูกบาศก์หรือไม่? ผลการปฏิบัติงานที่ชาญฉลาดหน่วยโลก 2000x2000 สิ่งที่จะเร็วกว่าภูมิประเทศ Heightmap ภูมิประเทศ Voxel หรือรูปหลายเหลี่ยมตามภูมิประเทศเรขาคณิต? (สมมติว่ามี "สมควร" ประสิทธิภาพการเพิ่ม / การเพิ่มประสิทธิภาพที่ทำเพื่อการแสดงผลสำหรับทุกโอกาส) มีเทคนิคใด ๆ เพิ่มเติมที่ใช้สำหรับการสร้างภูมิประเทศหรือไม่? มีชื่อเรื่องอะไรที่ดีที่เป็นตัวแทนของแต่ละประเภท? ภูมิประเทศที่ยึดตาม PS Polygon ควรได้รับการฝึกอย่างเต็มที่

2
ทำไมต้นไม้จึงเปล่งประกายเป็นฉากหลัง?
ขณะนี้ฉันกำลังสร้างฉากป่าในที่มืดและต้นไม้ก็ส่องแสงอยู่ไกล แต่เมื่อฉันเข้าใกล้พวกเขาก็สบายดี ฉันให้เฉดสีตั้งไว้ที่ "Nature / Tree Soft Occlusion [bark / leaves]" แต่พวกมันยังคงแสดงผลแปลก ๆ อยู่ไกลออกไป แต่พวกเขาก็ใกล้ดี ฉันพยายามวางต้นไม้ในโฟลเดอร์ชื่อ "Ambient-Occlusion" อย่างที่กล่าวไว้ที่นี่แต่ไม่มีโชค ยังมีหมอกปิดอยู่ ขอบคุณล่วงหน้า. UPDATE เมื่อฉันดูต้นไม้โดยใช้กล้อง "เส้นทางการแสดงผล" พวกเขาปรากฏเป็นสีแดงในขณะที่ทุกอย่างเป็นสีเขียว อัพเดท 2 ฉันลองติดตั้งแพ็กเกจที่ฉันดาวน์โหลดมาใหม่ แต่ก็ยังไม่มีโชค อัพเดท 3 ฉันได้เพิ่มต้นไม้บางต้นด้วยตนเองและมันทำงานได้ดี แต่เมื่อเพิ่มด้วยการวาดภาพบนภูมิประเทศฉันพบปัญหา ปรับปรุงครั้งสุดท้าย ฉันพยายามสร้างเกมเพื่อดูว่าสิ่งนี้มีผลกับ. exe หรือไม่และไม่ได้ ดังนั้นฉันจะต้องเพิกเฉยเมื่อฉันทำการดีบั๊กเพราะมันทำงานได้ดีในการสร้าง ขอบคุณสำหรับความช่วยเหลือทั้งหมดดูเหมือนว่าจะเป็นข้อผิดพลาดพร้อมความสามัคคี รูปภาพของงานสร้าง:
14 unity  shaders  terrain  tree 

3
อัลกอริธึมการกระจัดกลาง
คำถามนี้ส่วนใหญ่มาจากความสิ้นหวังที่แท้จริงหลังจากใช้เวลาหลายชั่วโมงพยายามที่จะเข้าใจปัญหา หากคุณละสายตาไปที่รูปภาพด้านบนคุณจะเห็นว่าอัลกอริทึมการแทนที่ตำแหน่งกลางของฉันทำงานได้สำเร็จ ในการผลิตรูปแบบเสียงค่อนข้างสอดคล้องกัน อย่างไรก็ตามมันทิ้งไว้ข้างหลังจุดประสีดำบนภาพและฉันก็ไม่รู้ว่าทำไม ฉันคาดการณ์ได้ว่านี่เป็นปัญหาในวิชาคณิตศาสตร์ แต่ฉันมองไม่เห็น และนี่ไม่ได้ชี้ให้เห็นในแหล่งข้อมูลออนไลน์ใด ๆ ว่าเป็นปัญหาที่เป็นไปได้; ดังนั้นความช่วยเหลือใด ๆ จะได้รับการชื่นชมว่าจะตามล่าข้อผิดพลาดนี้ unsigned char** mdp(unsigned char** base, unsigned base_n, unsigned char r) { size_t n = (2 * base_n) - 1; unsigned char** map = new unsigned char*[n]; for (unsigned i = 0; i < n; ++i) map[i] = new …

1
วิธีการใช้กลไกของความเครียด / ความเครียดในภูมิประเทศ voxel?
ฉันอยู่ในขั้นตอนการพัฒนาโลกที่เหมือน Minecraft ซึ่งภูมิประเทศแบ่งออกเป็น voxels อย่างไรก็ตามฉันยังต้องการให้การกำหนดค่าของภูมิประเทศที่ไม่เสถียรลดลงอย่างไม่แน่นอน ยกตัวอย่างเช่นแขวนที่หนักเกินไปจะแตกหักและทำลายปิดที่ชุ 'ความเครียดสูง'ราวกับจะก่อเสาที่มีฐานการกัดเซาะไม่สมมาตร ฉันกำลังคิดที่จะเพิ่มฟิลด์ 'stress vector' ลงในแต่ละ voxel ในภูมิประเทศและทำสิ่งต่อไปนี้ (pseudocode): foreach voxel in terrain foreach neighbor in voxel.neighbor_voxels() if magnitude(voxel.stress - neighbor.stress) > stressThreshold detach_voxels(voxel, neighbor) แต่ปัญหาคือฉันไม่รู้ว่าจะคำนวณความเค้นเหล่านี้อย่างไร มีอัลกอริธึมที่ใช้ FEA แบบพิเศษสำหรับการแยกย่อยด้วย voxel ที่ฉันสามารถใช้ในการคำนวณความเค้นบนพื้นฐานของต่อ voxel หรือไม่? หรือฉันกำลังเข้าใกล้สิ่งนี้ผิดทั้งหมดและมีวิธีอื่นที่จะทำเช่นนี้?

1
ภูมิประเทศเรียบ Voxel
ในโครงการส่วนบุคคลฉันพยายามสร้างตัวสร้างภูมิประเทศที่จะสร้างภูมิประเทศที่ดูคล้ายกับภูมิประเทศที่ราบเรียบของ Castle Story หากคุณไม่เคยเห็นมาก่อนนี่: อย่างที่คุณเห็นมันคือการรวมกันของบล็อกและบล็อก "ราบรื่น" สิ่งที่ฉันพยายามทำเพื่อเลียนแบบรูปลักษณ์นี้คือให้แผนผังความสูงขนาดเล็กแต่ละบล็อก โดยทั่วไปแล้วใช้งานได้ แต่มีบางประเด็นที่ให้ภูมิประเทศเช่นนี้: ปัญหาคือว่าแต่ละบล็อกมี 1x1x1 แต่บางครั้งความสูงของตำแหน่งใดตำแหน่งหนึ่งเป็นค่าลบหรือ> 1 ในกรณีนี้ฉันคลิปมันและตั้งค่าความสูงเป็น 0 หรือ 1 เพื่อแสดงให้เห็นถึงสิ่งที่ฉันหมายถึงนี่คือแผนภาพ: เพื่อสร้างความสูงฉันโดยทั่วไปทำ: genColumn(int x, int z) { int highestBlockY = (int)noise2d(x, z); bool is_surface = true; for(int y = max_height - 1; y >= 0; y--) { Block b; if(is_surface) { b = …

1
จะแสดงใบหน้าหน้าผาในภูมิประเทศได้อย่างไร
ฉันกำลังพยายามหาวิธีที่ดีที่สุดในการแสดงภูมิประเทศโดยทางโปรแกรมในเกมของฉัน ฉันกำลังพิจารณาใช้heightmap (หรือตารางของจุดยอดที่เว้นระยะเท่ากัน) เพื่อแสดงพื้นผิวของภูมิประเทศและsplatmapเพื่อให้พื้นผิวเรียบ สิ่งนี้จะใช้ได้กับภูมิประเทศที่ราบเรียบโดยสิ้นเชิง แต่ปัญหาคือวิธีการแสดงหน้าผาและหน้าผาที่คมชัด หน้าผาเองนั้นต้องถูกทำให้แตกต่างจากภูมิประเทศที่เหลือ ตัวอย่างเช่นพวกเขาจะต้องมีพื้นผิวที่แตกต่างกัน (ไม่ยืด) ที่ด้านหน้าของหน้าผา แต่ถ้าฉันใช้ splatmap สำหรับสิ่งนี้มันคงเป็นไปไม่ได้ที่จะมีใบหน้าหน้าผาชันพอที่พื้นผิวของหน้าผา แยกจากพื้นดินโดยสิ้นเชิง รูปภาพบอกหนึ่งพันคำดังนั้น ... อะไรคือวิธีทั่วไปในการเก็บและ / หรือแสดงหน้าผาและความแตกต่างที่คมชัดในความสูงของภูมิประเทศ

2
การแยกภูมิประเทศ Quadtree - ฉันไม่เข้าใจ
เอกสารส่วนใหญ่ที่ฉันได้อ่านภูมิประเทศของพวกเขาในบางรูปแบบหรืออื่น ๆ ในรูปสี่เหลี่ยม ดูสิ่งนี้ได้ที่หน้า 38 : http://www.slideshare.net/repii/terrain-rendering-in-frostbite-using-procedural-shader-splatting-presentation?from=ss_embed จุดแรกไม่ขัดแย้งกับสองด้านล่างหรือไม่ คุณจะมีตารางจุดยอดคงที่ 33x33 ต่อใบได้อย่างไรพูดคุยเกี่ยวกับการแบ่งการปรับตัวในต้นไม้รูปสี่เหลี่ยม คำศัพท์มีความสับสนและฉันขอขอบคุณความชัดเจนใด ๆ ในเรื่องนี้! นี่คือสมมติฐานของฉัน: วางแพทช์ใหม่ทุกครั้งที่การเปลี่ยนแปลงควอดทรีจะเป็นที่นิยม Quadtree เริ่มต้นที่ขอบเขตของภูมิประเทศ ทำซ้ำลงไปที่ตำแหน่งผู้สังเกตการณ์ รุ่นที่ จำกัด (ไม่เกิน 1 ระดับที่แตกต่างระหว่างเพื่อนบ้าน) เฟรลัมคัด วางแพทช์ภูมิประเทศในแต่ละใบไม้ที่ได้ซึ่งระดับแตกต่างกัน แต่ความละเอียดจะอยู่ที่ 33x33 เสมอ

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

3
ฉันจะสร้างภูมิประเทศแบบนั้นได้จาก Scorched Earth ได้อย่างไร
ฉันเป็นนักพัฒนาเว็บและฉันกระตือรือร้นที่จะเริ่มเขียนเกมของตัวเอง เพื่อความคุ้นเคยฉันได้เลือก JavaScript และcanvasองค์ประกอบสำหรับตอนนี้ ฉันต้องการสร้างภูมิประเทศแบบนั้นใน Scorched Earth ความพยายามครั้งแรกของฉันทำให้ฉันรู้ว่าฉันไม่สามารถสุ่มyค่าได้ จะต้องมีสติในยอดเขาและราง ฉันใช้ Googled สักหน่อย แต่ไม่สามารถหาอะไรที่ง่ายพอสำหรับฉันหรือฉันใช้คำหลักผิด คุณช่วยแสดงให้ฉันดูว่าอัลกอริทึมแบบไหนที่ฉันจะใช้สร้างบางอย่างในตัวอย่างโดยจำไว้ว่าฉันยังใหม่กับการเขียนโปรแกรมเกม (ตั้งแต่สร้าง Breakout ในปี 2003 ด้วย Visual Basic ต่อไป)

2
การสร้างถ้ำที่มีหนอน Perlin
ขณะนี้ฉันกำลังพยายามสร้าง Minecraft เช่นภูมิประเทศ voxel ด้วย 3D Simplex Noise และยังต้องการใช้ถ้ำ ฉันพบวิธีการของ Perlin Worms ในชุดข้อความนี้ซึ่งสร้างผลลัพธ์ที่ดีจริงๆ อย่างไรก็ตามฉันไม่มีเงื่อนงำเกี่ยวกับวิธีสร้างเป็นชิ้นโดยพื้นฐาน เป็นไปได้หรือมีทางเลือกอื่นใดที่สร้างเวิร์มที่คล้ายกันเช่นถ้ำบนก้อนโดยพื้นฐาน? แก้ไข: นี่คือปัญหาที่ฉันไม่ทราบวิธีการแก้ไข แก้ไข 2: นี่เป็นผลมาจากการรวมสัญญาณรบกวน Multifractal 2 มิติกับความสูงของสัญญาณรบกวนแบบ Simplex ยังคงต้องการการปรับแต่ง แต่นี่เป็นผลลัพธ์ที่ฉันต้องการ ขอบคุณ Byte56

2
ปัญหาการสร้างภูมิประเทศแบบสี่เหลี่ยมจัตุรัส
ฉันใช้อัลกอริทึม Diamond-Square ตามบทความนี้: http://www.lighthouse3d.com/opengl/terrain/index.php?mpd2 ปัญหาคือฉันได้หน้าผาที่สูงชันเหล่านี้ไปทั่วแผนที่ มันเกิดขึ้นที่ขอบเมื่อภูมิประเทศถูกแบ่งย่อยซ้ำแล้วซ้ำอีก: นี่คือแหล่งที่มา: void DiamondSquare(unsigned x1,unsigned y1,unsigned x2,unsigned y2,float range) { int c1 = (int)x2 - (int)x1; int c2 = (int)y2 - (int)y1; unsigned hx = (x2 - x1)/2; unsigned hy = (y2 - y1)/2; if((c1 <= 1) || (c2 <= 1)) return; // Diamond stage …

1
เทคนิคใดบ้างในปัจจุบันสำหรับการเรนเดอร์ทิวทัศน์ที่ผิดรูป
เทคนิคใดในปัจจุบันที่สามารถใช้ในการแสดงภาพภูมิประเทศที่ปรับเปลี่ยนได้ตามแผนที่ความสูง 3 มิติได้อย่างมีประสิทธิภาพ ตัวอย่างเช่นในปัญหาภูมิทัศน์ที่ไม่สามารถแยกออกได้ ROAM เคยเป็นทางไปสู่ทิวทัศน์เหล่านี้ แต่เมื่อ GPUs ขั้นสูงแล้วมันก็ไม่ได้รับความนิยมจาก geomipmapping / clipmaps ที่ใหม่กว่า GPU รุ่นปัจจุบัน) มีความก้าวหน้าใด ๆ ในแง่ของการเรนเดอร์ภูมิประเทศที่ผิดรูปหรือไม่? ไม่เพียง แต่ในแง่ของการเรนเดอร์ แต่ยังให้ปริมาณงานระหว่างการดำเนินการผิดรูป แม้ว่าฉันจะกำหนดเป้าหมายเป็นการส่วนตัว SM3.0 / DirectX 9.0c โปรดอย่า จำกัด คำตอบของคุณ

1
วิธีการเรนเดอร์ภูมิประเทศขนาดใหญ่อย่างมีประสิทธิภาพได้อย่างไร
เมื่อเร็ว ๆ นี้ฉันติดปัญหาที่คิดเกี่ยวกับวิธีที่ดีที่สุดในการสร้างภูมิประเทศในเกมของฉัน ในโครงการอื่นฉันมักใช้ความสูงของแผนที่ดังนั้นงานหลักทั้งหมดจึงขึ้นอยู่กับเครื่องยนต์ที่ใช้ แต่ตอนนี้ไม่สามารถทำได้เพราะภูมิประเทศมีรูปหลายเหลี่ยมหลายล้านที่ต้องวาดอย่างแม่นยำ นอกจากนี้หลายคนไม่สามารถแยกวิเคราะห์จากเวกเตอร์ Y (เนื่องจากรูปหลายเหลี่ยมที่ซ่อนอยู่ด้านล่าง) นั่นคือแผนผังความสูงไม่เป็นประโยชน์ที่นี่ ในกรณีนี้ฉันต้องใช้วัตถุ COLLADA บางคนบอกให้ฉันแบ่งโมเดลด้วยตัวเองภายในซอฟต์แวร์อย่าง Blender แต่น่าเสียดายที่มันไม่สามารถทำได้เพราะภูมิประเทศเหล่านี้ถูกสร้างขึ้นเป็นชิ้น ๆ ในซอฟต์แวร์อื่นและโหลดหลังจากเข้าสู่เกม ดังนั้นนี่จะเป็นงานที่ยิ่งใหญ่ที่จะต้องหั่นมันด้วยตนเองทุกครั้ง ดังนั้นตั้งแต่สัปดาห์ที่ฉันได้ศึกษาเกี่ยวกับวิธีที่ฉันสามารถแก้ปัญหานี้และขั้นตอนการโหลดตาข่ายนี้ภูมิประเทศภูมิประเทศตาม frustrum กล้องบันทึกประสิทธิภาพมากที่สุดเท่าที่เป็นไปได้ ฉันพบเอกสารจำนวนมากเกี่ยวกับการสร้างตาข่ายโพรซีเดอร์และฉันคิดว่าปัญหาของฉันสามารถแก้ไขได้โดยการแมปตาข่ายเข้ากับแปด นี่คืองานที่ยิ่งใหญ่อย่างน้อยสำหรับฉันและนั่นคือเหตุผลที่ฉันมาที่นี่เพราะฉันไม่ต้องการเสี่ยงที่จะไปในเส้นทางที่ผิดโดยไม่ได้ยินจากคนที่มีประสบการณ์ กล่าวโดยย่อฉันมีจุดยอดและดัชนีนับล้านที่รวมกันเป็นภูมิประเทศ แต่ด้วยเหตุผลที่ชัดเจนว่าฉันไม่สามารถวาดมันได้ในเวลาเดียวกัน จำเป็นต้องมีขั้นตอนบางอย่าง วิธีที่ดีที่สุดในการทำเช่นนั้นคือการรักษาตาข่ายขนาดใหญ่เป็นภูมิประเทศ? มีหนังสือเฉพาะเกี่ยวกับเรื่องนั้นไหม? มีวิธีที่ดีที่สุดที่จะใช้หรือไม่ ขออภัยสำหรับข้อผิดพลาดใด ๆ ฉันเป็นสามเณรมากในพื้นที่นี้

2
การทำแผนที่พื้นผิวมีวิธีใดบ้าง
ฉันทำงานกับ XNA ในเกม 3 มิติและฉันพยายามมีสภาพแวดล้อมที่เหมาะสมและดี ฉันติดตามการกวดวิชาเพื่อสร้างภูมิประเทศจากแผนที่ความสูง เพื่อทำพื้นผิวฉันแค่ใช้พื้นผิวหญ้าบนมันและเรียงมันหลาย ๆ ครั้ง แต่สิ่งที่ฉันต้องการทำคือมีพื้นผิวที่เหมือนจริงมาก ๆ แต่ก็สร้างมันขึ้นมาโดยอัตโนมัติ (เช่นถ้าฉันต้องการใช้เสียง Perlin เพื่อสร้างภูมิประเทศ ฉันเรียนรู้เกี่ยวกับการทำพื้นผิวหลายแบบการโหลดไฟล์แผนที่ที่มีสีแตกต่างกันสำหรับพื้นผิวที่แตกต่างกัน แต่ฉันไม่คิดว่ามันจะมีประสิทธิภาพจริง ๆ เช่นหน้าผาหรือพื้นที่สูงชันมากมันจะเรียงพื้นผิวไม่ดี ด้านบน (นอกจากนี้ฉันไม่รู้ว่าฉันจะวาดถนนหรือทางดินด้วยวิธีนั้นได้อย่างไร) ฉันกำลังมองหาโซลูชันที่มีประสิทธิภาพในการทำแผนที่พื้นผิวที่สร้างขึ้นตามขั้นตอนจริง

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