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

2
บัฟเฟอร์ดัชนีคืออะไรและเกี่ยวข้องกับบัฟเฟอร์จุดสุดยอดอย่างไร
ฉันมีบัฟเฟอร์จุดสุดยอดเช่นนี้ 0.0, 0.0, 1.0, 0.0, 0.0, 0.6, 1.0, 0.6, 0.5, 1.0 ฉันมีบัฟเฟอร์ดัชนีต่อไปนี้: 0, 2, 2, 4, 4, 3, 3, 2, 2, 1, 1, 0, 0, 3, 3, 1 ฉันรู้ว่าฉันต้องการวาดgl.LINESโดยใช้ WebGL หมายถึงหลายส่วนของบรรทัดที่คั่น gl.drawElements(gl.LINES, 16, gl.UNSIGNED_SHORT, indexBuffer); ดูเหมือนว่าจะเปิดใช้งานการวาดภาพของส่วนของเส้นหลาย ๆ อันในการเรียกใช้การดึงครั้งเดียวใน WebGL ใครบางคนสามารถ ELI5 ให้ฉันสิ่งที่บัฟเฟอร์ดัชนีและวิธีการที่เกี่ยวข้องกับจุดสุดยอดบัฟเฟอร์? จะสร้างบัฟเฟอร์ดัชนีจากพื้นฐานได้อย่างไร

1
ปัญหาการแมปเงาของ WebGL รอบทิศทาง
ก่อนอื่นฉันอยากจะบอกว่าฉันได้อ่านบทความมากมายเกี่ยวกับการทำแผนที่เงาโดยใช้แผนที่ความลึกและ cubemaps และฉันเข้าใจว่ามันทำงานอย่างไรและฉันมีประสบการณ์การทำงานกับพวกเขาด้วยการใช้ OpenGL แต่ฉันมีปัญหาในการใช้งาน เทคนิคการทำแผนที่เงารอบทิศทางโดยใช้แหล่งกำเนิดแสงจุดเดียวในเครื่องมือกราฟิก 3 มิติของฉันชื่อ "EZ3" เอ็นจิ้นของฉันใช้ WebGL เป็น API กราฟิก 3D และ JavaScript เป็นภาษาการเขียนโปรแกรมสำหรับวิทยานิพนธ์ปริญญาตรีสาขาวิทยาศาสตร์คอมพิวเตอร์ โดยทั่วไปนี่คือวิธีที่ฉันใช้อัลกอริทึมการแมปเงาของฉัน แต่ฉันจะเน้นเฉพาะกรณีไฟจุดเพราะพวกเขาสามารถเก็บการแมปเงารอบทิศทาง ครั้งแรกที่ฉันใช้งานการเลือกสรรด้านหน้าแบบนี้: if (this.state.faceCulling !== Material.FRONT) { if (this.state.faceCulling === Material.NONE) gl.enable(gl.CULL_FACE); gl.cullFace(gl.FRONT); this.state.faceCulling = Material.FRONT; } ประการที่สองฉันสร้างโปรแกรมความลึกเพื่อบันทึกค่าความลึกสำหรับใบหน้า cubemap แต่ละอันนี่คือรหัสโปรแกรมความลึกของฉันใน GLSL 1.0: Vertex Shader: precision highp float; attribute vec3 position; uniform …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.