เพื่อความสนุกสนานฉันกำลังพยายามที่จะทำให้ผู้ชมลวดกรอบสำหรับDCPU-16 ฉันเข้าใจวิธีการทำทุกอย่างยกเว้นวิธีซ่อนเส้นที่ซ่อนอยู่ในโครงลวด คำถามทั้งหมดที่นี่เพื่อให้ทุกคนคิดว่าคุณมีการเข้าถึง OpenGL โชคไม่ดีที่ฉันไม่สามารถเข้าถึงอะไรเช่นนั้นสำหรับ DCPU-16 (หรือการเร่งความเร็วฮาร์ดแวร์ใด ๆ )
ผมพบว่าคำอธิบายที่ดีเป็นธรรมของขั้นตอนวิธีการแตะบนGoogle หนังสือ อย่างไรก็ตามมีปัญหาหนึ่งที่ฉันมีปัญหาในการหา
Appel กำหนดเส้นชั้นความสูงเป็นขอบที่แบ่งปันโดยรูปหน้าด้านหน้าและรูปหลายเหลี่ยมแบบหันหน้าไปทางด้านหลังหรือไม่ใช้ร่วมกันของรูปหลายเหลี่ยมแบบหันหน้าไปทางด้านหน้าที่ไม่ได้เป็นส่วนหนึ่งของรูปหลายเหลี่ยมแบบปิด ขอบที่แบ่งปันกันโดยรูปหลายเหลี่ยมสองหน้าทำให้ไม่มีการเปลี่ยนแปลงในการมองเห็นดังนั้นจึงไม่ใช่เส้นชั้นความสูง ในรูปที่ 8.4 ขอบ AB, EF, PC, GK และ CH เป็นเส้นชั้นความสูงส่วนขอบ ED, DC และ GI ไม่ใช่
ฉันเข้าใจกฎของอัลกอริทึมและวิธีการทำงานเมื่อคุณมีเส้นชั้นความสูงของคุณ แต่ฉันไม่เข้าใจว่าเป็นสิ่งที่ฉันต้องทำเพื่อตรวจสอบว่าขอบเป็น "ใช้ร่วมกันโดยด้านหน้าและรูปหลายเหลี่ยมด้านหลังหรือ ขอบที่ไม่ได้ใช้ร่วมกันของรูปหลายเหลี่ยมด้านหน้าที่ไม่ได้เป็นส่วนหนึ่งของรูปหลายเหลี่ยมปิด "จากมุมมองการเข้ารหัส ฉันสามารถดูรูปร่างและรู้ว่าเส้นใดเป็นเส้นชั้นความสูงในหัวของฉัน แต่ฉันไม่มีเงื่อนงำเกี่ยวกับวิธีการถ่ายโอน "ความเข้าใจ" นั้นไปยังอัลกอริธึมการเข้ารหัส
ปรับปรุง
ฉันมีความคืบหน้าในการกำหนดเส้นชั้นความสูง ฉันพบบันทึกการบรรยายทั้งสองนี้ จากชั้นเรียน University of Buffalo ในคอมพิวเตอร์กราฟิก
พิจารณาขอบ สิ่งเหล่านี้แบ่งออกเป็นสามประเภท
- ขอบที่รวมเข้าด้วยกันสองใบหน้าที่มองไม่เห็นนั้นมองไม่เห็น สิ่งนี้จะถูกลบออกจากรายการและละเว้น
- ขอบที่รวมใบหน้าที่มองเห็นได้สองหน้าเรียกว่า 'ขอบวัสดุ' และจะต้องดำเนินการเพิ่มเติม
- ขอบที่เข้าร่วมกับใบหน้าที่มองเห็นได้และใบหน้าที่มองไม่เห็นเป็นกรณีพิเศษของ 'ขอบวัสดุ' และเรียกอีกอย่างว่า 'เส้นขอบ'
การใช้ข้อมูลสองชิ้นข้างต้นฉันสามารถเข้าใกล้ความสามารถในการเขียนเป็นโค้ดได้ แต่ฉันก็ยังต้องใช้เวลาอีกนาน