กลับไปหน้าบทความ

อ่าน 4 นาที

ไม่มีชื่อบทความ

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

ตาข่ายรูปหลายเหลี่ยม

ตัวอย่างโมเดลสามเหลี่ยม โพลี ต่ำ ที่แสดงถึงปลาโลมา

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

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

มีวิธี การสร้างตาข่ายหลายวิธีรวมถึงอัลกอริทึมmarching cubes [ 1 ]

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

องค์ประกอบ

องค์ประกอบของการสร้างแบบจำลองตาข่ายรูปหลายเหลี่ยม

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

จุดยอด

แผนภาพคลาส UML
แผนภาพคลาส UML

ในทางกราฟิกคอมพิวเตอร์ จุดยอด (vertex) คือโครงสร้างข้อมูลที่อธิบายตำแหน่งของจุดในพื้นที่ 2, 3 หรือ 4 มิติ บนพื้นผิวพร้อมด้วยคุณลักษณะเพิ่มเติม (ค่าอื่นๆ ที่ใช้ในการแสดงผลวัตถุอย่างถูกต้อง) คุณลักษณะส่วนใหญ่ของจุดยอดแสดงถึงเวกเตอร์ในพื้นที่ที่จะแสดงผลเวกเตอร์เหล่านี้โดยทั่วไปจะมี 2 มิติ ( x, y ) หรือ 3 มิติ ( x, y, z ) และอาจรวมถึงพิกัดเอกพันธุ์ ที่สี่ ( w ) ด้วย ในการแสดงผลแบบเรียล ไทม์ คุณสมบัติเหล่านี้จะถูกใช้โดยเช เดอร์ จุดยอด (vertex shader)หรือ ไปป์ไลน์จุด ยอด (vertex pipeline )

คุณลักษณะต่างๆ อาจรวมถึง ตำแหน่ง สี การสะท้อนแสงความมันวาวพิกัด การแมปพื้นผิวเวกเตอร์ปกติและ การแม ปการเคลื่อนที่

การนำเสนอ

ตาข่ายรูปหลายเหลี่ยมสามารถแสดงได้หลายวิธี โดยใช้วิธีการจัดเก็บข้อมูลจุดยอด ขอบ และหน้าตัดที่แตกต่างกัน ซึ่งได้แก่:

แต่ละรูปแบบมีข้อดีและข้อเสีย ดังที่ได้กล่าวไว้ใน Smith (2006) [ 2 ]

ตาข่ายจุดต่อจุด

รูปที่ 2. ตาข่ายจุดต่อจุด
รูปที่ 2. ตาข่ายจุดต่อจุด

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

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

สำหรับคำอธิบายที่สมบูรณ์ของตาข่าย VV โปรดดู Smith (2006) [ 2 ]

ตาข่ายจุดยอดหน้า

รูปที่ 3. ตาข่ายจุดยอดของหน้า
รูปที่ 3. ตาข่ายจุดยอดของหน้า

แบบจำลองตาข่ายหน้า-จุดยอด (Face-vertex meshes) แสดงวัตถุโดยใช้ชุดของหน้าและชุดของจุดยอด นี่คือรูปแบบการแสดงตาข่ายที่ใช้กันอย่างแพร่หลายที่สุด เนื่องจากเป็นรูปแบบอินพุตที่ฮาร์ดแวร์กราฟิกสมัยใหม่ยอมรับได้โดยทั่วไป

ตาข่ายแบบหน้า-จุดยอด (Face-vertex mesh) พัฒนาต่อยอดจากตาข่ายแบบจุดยอด-จุดยอด (VV mesh) ในการสร้างแบบจำลอง เนื่องจากช่วยให้สามารถค้นหาจุดยอดของหน้าและหน้าต่างๆ ที่อยู่รอบจุดยอดได้อย่างชัดเจน รูปด้านบนแสดงตัวอย่าง "กล่อง-ทรงกระบอก" ในรูปแบบตาข่ายแบบหน้า-จุดยอด (FV mesh) จุดยอด v5 ถูกไฮไลต์เพื่อแสดงหน้าที่ล้อมรอบ สังเกตว่าในตัวอย่างนี้ ทุกหน้าจะต้องมีจุดยอด 3 จุดพอดี อย่างไรก็ตาม นี่ไม่ได้หมายความว่าทุกจุดยอดจะมีจำนวนหน้าที่ล้อมรอบเท่ากัน

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

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

ตาข่ายขอบปีก

รูปที่ 4. ตาข่ายขอบปีก
รูปที่ 4. ตาข่ายขอบปีก

นำเสนอโดย Baumgart ในปี 1975 [ 3 ]ตาข่ายขอบปีกแสดงจุดยอด หน้า และขอบของตาข่ายอย่างชัดเจน การแสดงผลนี้ใช้กันอย่างแพร่หลายในโปรแกรมสร้างแบบจำลองเพื่อให้มีความยืดหยุ่นสูงสุดในการเปลี่ยนแปลงรูปทรงเรขาคณิตของตาข่ายแบบไดนามิก เนื่องจากสามารถดำเนินการแยกและรวมได้อย่างรวดเร็ว ข้อเสียหลักคือความต้องการพื้นที่จัดเก็บขนาดใหญ่และความซับซ้อนที่เพิ่มขึ้นเนื่องจากการรักษาดัชนีจำนวนมาก การอภิปรายที่ดีเกี่ยวกับปัญหาการใช้งานของตาข่ายขอบปีกสามารถพบได้ในหนังสือGraphics Gems II [ 4 ]

ตาข่ายขอบปีก (Winged-edge meshes) ช่วยแก้ปัญหาการเดินทางจากขอบหนึ่งไปยังอีกขอบหนึ่ง และการจัดเตรียมชุดของหน้าตัดที่เรียงลำดับรอบขอบนั้น สำหรับขอบใดๆ จำนวนขอบที่ออกไปอาจมีจำนวนเท่าใดก็ได้ เพื่อให้ง่ายขึ้น ตาข่ายขอบปีกจึงจัดเตรียมเพียงสี่ขอบ คือ ขอบที่อยู่ใกล้ที่สุดในทิศทางตามเข็มนาฬิกาและทวนเข็มนาฬิกาที่ปลายแต่ละด้าน ขอบอื่นๆ อาจเดินทางผ่านได้ทีละน้อย ดังนั้น ข้อมูลสำหรับแต่ละขอบจึงคล้ายกับผีเสื้อ จึงเรียกว่าตาข่าย "ขอบปีก" รูปด้านบนแสดง "กล่องทรงกระบอก" ในรูปแบบตาข่ายขอบปีก ข้อมูลทั้งหมดสำหรับขอบประกอบด้วยจุดยอด 2 จุด (จุดปลาย) หน้าตัด 2 หน้า (ในแต่ละด้าน) และขอบ 4 ขอบ (ขอบปีก)

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

แสดงผลโมเดลแบบไดนามิก

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

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

ดู Tobler & Maierhofer ( WSCG 2006) สำหรับรายละเอียดเพิ่มเติม[ 5 ]

ประสิทธิภาพ

ในตารางต่อไปนี้explicitแสดงว่าการดำเนินการสามารถทำได้ในเวลาคงที่ เนื่องจากข้อมูลถูกจัดเก็บโดยตรงlist compareแสดงว่าต้องทำการเปรียบเทียบรายการระหว่างสองรายการเพื่อให้การดำเนินการสำเร็จ และpair searchแสดงว่าต้องทำการค้นหาในสองดัชนี สัญลักษณ์avg(V,V)หมายถึงจำนวนเฉลี่ยของจุดยอดที่เชื่อมต่อกับจุดยอดที่กำหนดavg(E,V)หมายถึงจำนวนเฉลี่ยของขอบที่เชื่อมต่อกับจุดยอดที่กำหนด และavg(F,V)คือจำนวนเฉลี่ยของหน้าที่เชื่อมต่อกับจุดยอดที่กำหนด

สัญลักษณ์ "V → f1, f2, f3, ... → v1, v2, v3, ..." อธิบายว่าจำเป็นต้องมีการสำรวจข้ามหลายองค์ประกอบเพื่อดำเนินการ ตัวอย่างเช่น ในการหา "จุดยอดทั้งหมดรอบจุดยอด V ที่กำหนด" โดยใช้ตาข่ายหน้า-จุดยอด จำเป็นต้องค้นหาหน้าต่างๆ รอบจุดยอด V ที่กำหนดก่อนโดยใช้รายการจุดยอด จากนั้น จากหน้าเหล่านั้น ให้ใช้รายการหน้าเพื่อค้นหาจุดยอดรอบๆ หน้าเหล่านั้น ตาข่ายขอบปีกจะเก็บข้อมูลเกือบทั้งหมดไว้อย่างชัดเจน และการดำเนินการอื่นๆ จะสำรวจไปยังขอบก่อนเสมอเพื่อรับข้อมูลเพิ่มเติม ตาข่ายจุดยอด-จุดยอดเป็นรูปแบบการแสดงผลเพียงรูปแบบเดียวที่เก็บข้อมูลจุดยอดข้างเคียงของจุดยอดที่กำหนดไว้อย่างชัดเจน

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

โดยทั่วไปแล้ว เมชแบบหน้า-จุดยอด (face-vertex meshes) จะถูกใช้เมื่อต้องแสดงผลวัตถุบนฮาร์ดแวร์กราฟิกที่ไม่เปลี่ยนแปลงรูปทรงเรขาคณิต (การเชื่อมต่อ) แต่รูปร่างอาจบิดเบี้ยวหรือเปลี่ยนรูป (ตำแหน่งจุดยอด) เช่นการแสดงผลวัตถุแบบคงที่หรือแบบเปลี่ยนรูปแบบเรียลไทม์ เมชแบบขอบปีก (winged-edge meshes) หรือเมชแบบไดนามิก (render dynamic meshes) จะถูกใช้เมื่อรูปทรงเรขาคณิตเปลี่ยนแปลง เช่น ในโปรแกรมสร้างแบบจำลองเชิงโต้ตอบ หรือสำหรับการคำนวณพื้นผิวแบบแบ่งย่อย เมชแบบจุดยอด-จุดยอด (vertex-vertex meshes) เหมาะอย่างยิ่งสำหรับการเปลี่ยนแปลงรูปทรงเรขาคณิตหรือโทโพโลยีที่ซับซ้อนและมีประสิทธิภาพ ตราบใดที่การแสดงผลด้วยฮาร์ดแวร์ไม่ใช่ปัญหา

ประสิทธิภาพของการแสดงผลแบบตาข่าย
การดำเนินการจุดยอด-จุดยอดจุดยอดหน้าขอบปีกแสดงผลแบบไดนามิก
วีวีจุดยอดทั้งหมดรอบจุดยอดชัดเจนวี → f1, f2, f3, ... → v1, v2, v3, ...วี → e1, e2, e3, ... → v1, v2, v3, ...วี → e1, e2, e3, ... → v1, v2, v3, ...
อีเอฟขอบทุกด้านของใบหน้าF(a,b,c) → {a,b}, {b,c}, {a,c}F → {a,b}, {b,c}, {a,c}ชัดเจนชัดเจน
วีเอฟจุดยอดทั้งหมดของหน้าF(a,b,c) → {a,b,c}ชัดเจนF → e1, e2, e3 → a, b, cชัดเจน
เอฟวีทุกหน้าโดยรอบจุดยอดการค้นหาคู่ชัดเจนวี → e1, e2, e3 → f1, f2, f3, ...ชัดเจน
อีวีขอบทั้งหมดรอบจุดยอดวี → {วี,v1}, {วี,v2}, {วี,v3}, ...วี → f1, f2, f3, ... → v1, v2, v3, ...ชัดเจนชัดเจน
เอฟอีทั้งสองด้านของขอบรายการเปรียบเทียบรายการเปรียบเทียบชัดเจนชัดเจน
วีอีจุดยอดทั้งสองของขอบE(a,b) → {a,b}E(a,b) → {a,b}ชัดเจนชัดเจน
ฟลุคค้นหาหน้าตัดที่มีจุดยอดที่กำหนดให้(a,b,c) → F{a,b,c}กำหนดจุดตัดของ v1, v2, v3กำหนดจุดตัดของ v1, v2, v3กำหนดจุดตัดของ v1, v2, v3
ขนาดพื้นที่จัดเก็บV*avg(V,V)3F + V*avg(F,V)3F + 8E + V*avg(E,V)6F + 4E + V*avg(E,V)
ตัวอย่างที่มี 10 จุดยอด 16 หน้า และ 24 ขอบ:
10 * 5 = 503*16 + 10*5 = 983*16 + 8*24 + 10*5 = 2906*16 + 4*24 + 10*5 = 242

การนำเสนอแบบอื่น

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

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

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

รูปแบบไฟล์

มีรูปแบบไฟล์ มากมาย สำหรับการจัดเก็บข้อมูลตาข่ายรูปหลายเหลี่ยม แต่ละรูปแบบจะมีประสิทธิภาพสูงสุดเมื่อใช้ตามวัตถุประสงค์ที่ผู้สร้างกำหนดไว้ รูปแบบที่นิยมใช้ ได้แก่.fbx , .dae , .objและ.stlตารางแสดงรูปแบบอื่นๆ เพิ่มเติมบางส่วนแสดงอยู่ด้านล่าง:

นามสกุลไฟล์ชื่อรูปแบบองค์กรต่างๆโปรแกรม(ต่างๆ)คำอธิบาย
.ดิบตาข่ายดิบไม่ทราบหลากหลายรูปแบบเปิดที่ใช้เฉพาะ ASCII เท่านั้น แต่ละบรรทัดประกอบด้วยจุดยอดสามจุด คั่นด้วยช่องว่าง เพื่อสร้างรูปสามเหลี่ยม ดังนี้: X1 Y1 Z1 X2 Y2 Z2 X3 Y3 Z3
.blendรูปแบบไฟล์ Blenderมูลนิธิ BlenderBlender 3Dโอเพนซอร์ส รูปแบบไบนารีเท่านั้น
.fbxรูปแบบไฟล์ Autodesk FBXออโต้เดสก์หลากหลายเป็นข้อมูลเฉพาะของบริษัท มีข้อกำหนดทั้งแบบไบนารีและ ASCII
.3dsไฟล์ 3ds Maxออโต้เดสก์3ds Maxรูปแบบที่ใช้กันทั่วไปแต่ล้าสมัย มีข้อจำกัดที่เข้มงวดคือ 16 บิตสำหรับจำนวนจุดยอดและหน้า ไม่มีการกำหนดมาตรฐานหรือเอกสารอธิบายอย่างละเอียด แต่เคยเป็น "มาตรฐานโดยพฤตินัย" สำหรับการแลกเปลี่ยนข้อมูล
.daeการแลกเปลี่ยนสินทรัพย์ดิจิทัล (COLLADA)โซนี่ คอมพิวเตอร์ เอนเตอร์เทนเมนต์ , โครโนส กรุ๊ปไม่มีข้อมูลย่อมาจาก " COLLABorative SIGN ACTIVE " ซึ่ง เป็นรูปแบบสากลที่ออกแบบมาเพื่อป้องกันปัญหาความเข้ากันไม่ได้
.dgnไฟล์ไมโครสเตชั่นเบนท์ลีย์ ซิสเต็มส์ไมโครสเตชั่นไฟล์ DGN มีสองรูปแบบ ได้แก่ รูปแบบก่อนเวอร์ชัน 8 และรูปแบบเวอร์ชัน 8 (V8)
0.3 ดม.ไฟล์ Rhinoโรเบิร์ต แม็คนีล แอนด์ แอสโซซิเอทส์แรด 3 มิติ
.dxf , .dwgรูปแบบการแลกเปลี่ยนภาพวาดออโต้เดสก์ออโต้ซีเอดี
.objเวฟฟรอนท์ OBJเทคโนโลยีเวฟฟรอนท์หลากหลายรูปแบบ ASCII ที่อธิบายรูปทรงเรขาคณิต 3 มิติ จุดยอดของทุกหน้าจะเรียงลำดับทวนเข็มนาฬิกา ทำให้เวกเตอร์ตั้งฉากของหน้าเป็นค่าโดยปริยาย ส่วนเวกเตอร์ตั้งฉากแบบเรียบจะถูกกำหนดต่อจุดยอด
.ชั้นรูปแบบไฟล์รูปหลายเหลี่ยมมหาวิทยาลัยสแตนฟอร์ดหลากหลายเลขฐานสองและ ASCII
.pmdข้อมูลจาก Polygon Movie Makerยู ฮิกุจิมิกุมิกุแดนซ์รูปแบบไฟล์ไบนารีเฉพาะสำหรับจัดเก็บรูปทรงเรขาคณิตของโมเดลมนุษย์ พร้อมข้อมูลการจัดโครงสร้าง วัสดุ และฟิสิกส์
.stlรูปแบบสเตอริโอลิโทกรา ฟีระบบ 3 มิติมากมายรูปแบบไบนารีและ ASCII ถูกออกแบบมาเพื่อช่วยในการทำงานของเครื่อง CNCโดย เฉพาะ
.amfรูปแบบไฟล์การผลิตแบบเพิ่มเนื้อวัสดุ (Additive Manufacturing File Format)เอเอสทีเอ อินเตอร์เนชั่นแนลไม่มีข้อมูลเหมือนกับไฟล์รูปแบบ STL แต่เพิ่มการรองรับสี วัสดุ และกลุ่มดาวแบบดั้งเดิมเข้ามาด้วย
.wrlภาษาสร้างแบบจำลองความเป็นจริงเสมือนกลุ่มความร่วมมือเว็บ3Dเว็บเบราว์เซอร์มาตรฐาน ISO 14772-1:1997
.wrzVRML บีบอัดกลุ่มความร่วมมือเว็บ3Dเว็บเบราว์เซอร์
.x3d, .x3db, .x3dv3 มิติที่ขยายได้กลุ่มความร่วมมือเว็บ3Dเว็บเบราว์เซอร์เป็นซอฟต์แวร์โอเพนซอร์สที่ใช้ XML ไม่เสียค่าลิขสิทธิ์ ขยายได้ และใช้งานร่วมกันได้ นอกจากนี้ยังรองรับข้อมูลสี พื้นผิว และฉาก ตามมาตรฐาน ISO 19775/19776/19777
.x3dz, .x3dbz, .x3dvzX3D ไบนารีบีบอัดกลุ่มความร่วมมือเว็บ3Dเว็บเบราว์เซอร์
.c4dไฟล์ Cinema 4Dแม็กซอนโรงภาพยนตร์ 4 มิติ
.lwoไฟล์วัตถุ LightWave 3Dนิวเทคไลท์เวฟ 3 มิติ
.smbสกอร์เรค เอพีเอฟคะแนน RPIปูมี่โซลูชันโอเพนซอร์สสำหรับสร้างตาข่าย 3 มิติแบบขนานที่ปรับเปลี่ยนได้สำหรับเวิร์กโฟลว์การจำลองโดยใช้สมการอนุพันธ์ย่อย (PDE)
.mshจีเอ็มเอสเอ็ม เมชนักพัฒนา GMshโครงการ GMshซอฟต์แวร์โอเพนซอร์สที่ให้คำอธิบายตาข่าย ASCII สำหรับองค์ประกอบเชิงเส้นและเชิงพหุนามในหนึ่งถึงสามมิติ
.meshOGRE XMLทีมพัฒนา OGREOGRE, purebasicโอเพนซอร์ส มีไฟล์ไบนารี (.mesh) และไฟล์ ASCII (.mesh.xml) ให้เลือกใช้งาน ประกอบด้วยข้อมูลสำหรับการสร้างแอนิเมชั่นจุดยอดและการสร้างแอนิเมชั่นเป้าหมายการเปลี่ยนแปลงรูปร่าง (blendshape) ข้อมูล แอนิเมชั่นโครงกระดูกอยู่ในไฟล์แยกต่างหาก (.skeleton)
มังสวิรัติตาข่ายทรงสี่เหลี่ยมด้านเท่า Vega FEMเยอร์เนจ บาร์บิชเวก้า เอฟเอ็มซอฟต์แวร์โอเพนซอร์ส จัดเก็บโครงสร้างตาข่ายทรงสี่เหลี่ยมด้านเท่าและคุณสมบัติวัสดุสำหรับการจำลองด้วยวิธีไฟไนต์เอเลเมนต์ (FEM) มีไฟล์ให้เลือกทั้งแบบ ASCII (.veg) และไบนารี (.vegb)
.z3dแซด3ดโอเลก เมลาเชนโกZanoza Modeler-
.vtkVTK meshVTK , KitwareVTK , Paraviewรูปแบบเปิด ไม่ว่าจะเป็น ASCII หรือไบนารี ที่มีฟิลด์ข้อมูลหลากหลายประเภท รวมถึงข้อมูลจุด ข้อมูลเซลล์ และข้อมูลฟิลด์
.l4dการวาดภาพ LAI4Dห้องปฏิบัติการปัญญาประดิษฐ์เพื่อการออกแบบแอลไอ4ดีรูปแบบข้อมูล ASCII ที่อธิบายโครงสร้างลำดับชั้นของเอนทิตี

ดูเพิ่มเติม

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ไม่มีชื่อบทความ

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

จุดยอด

ในทางกราฟิกคอมพิวเตอร์ จุดยอด (vertex) คือโครงสร้างข้อมูลที่อธิบายตำแหน่งของจุดใน พื้นที่ 2, 3 หรือ 4 มิติ บน พื้นผิว พร้อมด้วยคุณลักษณะเพิ่มเติม (ค่าอื่นๆ ที่ใช้ใน การแสดงผล วัตถุอย่างถูกต้อง) คุณลักษณะส่วนใหญ่ของจุดยอดแสดงถึงเวกเตอร์ในพื้นที่ที่จะ แสดงผล...

การนำเสนอ

ตาข่ายรูปหลายเหลี่ยมสามารถแสดงได้หลายวิธี โดยใช้วิธีการจัดเก็บข้อมูลจุดยอด ขอบ และหน้าตัดที่แตกต่างกัน ซึ่งได้แก่:

ตาข่ายจุดต่อจุด

เมชแบบจุดต่อจุด (Vertex-vertex meshes) แสดงถึงวัตถุในรูปของชุดจุดยอดที่เชื่อมต่อกับจุดยอดอื่นๆ นี่คือการแสดงผลที่ง่ายที่สุด แต่ไม่เป็นที่นิยมใช้กันอย่างแพร่หลาย เนื่องจากข้อมูลเกี่ยวกับหน้าและขอบนั้นเป็นแบบโดยปริยาย...