ความแตกต่างระหว่างการทำแผนที่การกระจัดและการทำแผนที่ความสูงคืออะไร?


15

ความแตกต่างระหว่างการทำแผนที่การกระจัดและการทำแผนที่ความสูงและการเชื่อมต่อกับการสอนแบบปรับตัวได้คืออะไร?


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

คำตอบ:


10

การแมปการกระจัดและการแมปความสูงเป็นชื่อสองชื่อสำหรับเทคนิคเดียวกัน "เกือบ" พวกเขามุ่งที่จะให้ผลเหมือนกัน แต่ใช้ในบริบทที่แตกต่างกัน

เพื่ออธิบายเพิ่มเติม:

การแมปการกระจัด:เป็นเทคนิคที่มีจุดมุ่งหมายเพื่อให้การกระแทกเป็นรูปทรงเรขาคณิตที่แท้จริงในตาข่ายที่ดีมาก ซึ่งแตกต่างจากการทำแผนที่ bump, พารัลแลกซ์และการทำแผนที่แบบนูนซึ่งพยายามที่จะ "ปลอม" โดยใช้แผนที่ปกติการทำแผนที่ดิสเพลสเมนต์แทนที่ผิวจริงสร้างสามเหลี่ยมระหว่างเท็กซัส .

การแมปความสูง:เป็นสิ่งเดียวกัน แต่โดยปกติจะใช้ในบริบทที่มีการใช้แผนที่การกระจัด (เรียกอีกอย่างว่าแผนที่ความสูง) บนภูมิประเทศที่มีการใช้ค่าเพื่อปรับความสูงของจุดยอดเท่านั้น

มันสามารถนำมาใช้กับ CPU หรือ GPU

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

การเลือกทิศทางสามารถอยู่ในทิศทางขึ้น (โดยปกติในกรณีของภูมิประเทศ) ซึ่งส่งผลให้การปรับค่าจุดสุดยอด Y หรืออาจเป็นไปในทิศทางของใบหน้าปกติที่มักจะใช้กับวัตถุอื่นที่ไม่ใช่ภูมิประเทศ

ทางเลือก GPUคือการใช้คุณสมบัติดึงข้อมูลจุดสุดยอดพื้นผิว (แนะนำใน Shader Model 3.0) เพื่อให้มีการปรับเปลี่ยนภูมิประเทศโดยการเข้าถึงแผนที่การกระจัด / ความสูงความสูงที่ดึงมาจากพื้นผิวถูกใช้โดยโปรแกรมแรเงาจุดสุดยอดเพื่อปรับตำแหน่งของจุดยอด .

การใช้งานอื่น ๆ สำหรับการใช้พื้นผิวช่วยให้การจัดการข้อมูลเร็วขึ้นสำหรับการจำลองคลื่นและภาพเคลื่อนไหวอื่น ๆ เพื่อนำไปใช้กับตาข่าย

เกี่ยวกับการสอนแบบปรับตัว:

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

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

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

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


อย่าลืมส่วนสุดท้ายของคำถาม "และอะไรคือความเชื่อมโยงกับการสอนแบบปรับตัว"
MichaelHouse

@ Byte56 ขอบคุณที่แจ้งให้ฉันทราบฉันได้อัพเดตคำตอบแล้ว
concept3d

12

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

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


นี่คือคำตอบที่ถูกต้องอย่างเป็นกลาง ความแตกต่างที่ละเอียดอ่อนจะมีความสำคัญอย่างมากเมื่อผู้เริ่มต้นค้นหารหัส tessellation เพิ่มเติมเพื่อคัดลอกวาง (การกระจัดเวกเตอร์ขั้นตอนได้รับการจัดแสดงโดย nVidia แล้ว)
MickLH

3

โดยทั่วไปพวกเขาเป็นสิ่งเดียวกัน

การทำแผนที่การกระจัดเป็นเทคนิคสำหรับการเพิ่มรายละเอียดพื้นผิวเช่นการทำแผนที่ชน ซึ่งแตกต่างจากการทำแผนที่ชน แต่การทำแผนที่การกระจัดเป็นจริงเกี่ยวกับการเปลี่ยนรูปเรขาคณิตอยู่บนพื้นฐานของการป้อนข้อมูลบางแผนที่ความสูง (หลักตารางของค่าระดับความสูง)

"การทำแผนที่การเคลื่อนที่" นั้นเป็นอีกสิ่งหนึ่งที่มีความถูกต้องทางเทคนิคมากกว่าคำที่ใช้เรียกขานว่า "การทำแผนที่ความสูง" (การพูดอย่างเคร่งครัด "การทำแผนที่ความสูง") ควรอ้างถึงกระบวนการสร้างตารางข้อมูลระดับความสูงจากแหล่งข้อมูลบางอย่างเช่น ในฐานะที่เป็นสแกนเนอร์สามมิติที่จะใช้ในการทำแผนที่การกระจัด - แต่ในทางปฏิบัติแล้วคนส่วนใหญ่ใช้เงื่อนไขแทนกันถ้าพวกเขาพูดว่า "การทำแผนที่การเคลื่อนที่" เลย)

เทคนิคนี้ไม่ได้เชื่อมโยงโดยตรงกับการปรับตัวแบบ tessellation ซึ่งเป็นเรื่องของการควบคุมการแยกย่อยของคำอธิบายทางคณิตศาสตร์ของตาข่าย (เช่นทรงกลม) ในการรวบรวมคอนกรีตของสามเหลี่ยมที่จะใช้ในการแสดงตาข่ายนั้น บิต "แบบปรับได้" หมายความว่ารายละเอียดของการสอนจะเปลี่ยนไปตามเกณฑ์การป้อนข้อมูลบางอย่างเช่นระยะทางในการดู

ตัวอย่างเช่นในกรณีทรงกลมคุณสามารถ tessellate ที่ทรงกลมมาก crudely (มีประสิทธิภาพเป็นลูกบาศก์) เมื่อทรงกลมนั้นอยู่ไกลมาก แต่ใช้รายละเอียดเพิ่มเติมเมื่อทรงกลมอยู่ใกล้

บ่อยครั้งที่คุณจะเห็นเทคนิคต่าง ๆ เช่นการทำแผนที่การกระจัดที่กล่าวถึงร่วมกับ tessellationเพราะการทำ tessellation จะส่งผลต่อวิธีที่คุณต้องการแผนที่แผนที่ระดับความสูงกับเรขาคณิตเพื่อทำการกระจัด (หรือความละเอียดของแผนที่ความสูงที่คุณต้องการเลือกและอื่น ๆ )


2

พวกเขาเป็นแนวคิดเดียวกัน

แก้ไข: การกำจัดสามารถประกอบด้วยความสูงในมากกว่าหนึ่งมิติ!

อย่าเริ่มสงครามความหมายเกี่ยวกับเรื่องนี้ แต่ในความเป็นจริงแล้วการทำแผนที่ความสูงมักหมายถึงเทคนิคขนาดใหญ่ / เทสเซลเลชันซึ่งการทำแผนที่การกระจัดมักหมายถึงเทคนิคขนาดเล็ก

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