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

6
ฉันจะแก้ไขข้อบกพร่อง GLSL ได้อย่างไร
เมื่อเขียนเฉดที่ไม่สำคัญ (เช่นเดียวกับเมื่อเขียนโค้ดอื่นที่ไม่ใช่เรื่องไร้สาระ) ผู้คนทำผิดพลาด [อ้างอิงที่จำเป็น]อย่างไรก็ตามฉันไม่สามารถแก้จุดบกพร่องเช่นเดียวกับรหัสอื่น ๆ - คุณไม่สามารถแนบ gdb หรือดีบักเกอร์ Visual Studio หลังจากทั้งหมด คุณไม่สามารถทำการดีบัก printf ได้เนื่องจากไม่มีรูปแบบเอาต์พุตคอนโซล สิ่งที่ฉันมักจะทำคือการแสดงข้อมูลที่ฉันต้องการดูเป็นสี แต่นั่นเป็นวิธีแก้ปัญหาขั้นพื้นฐานและชำนาญ ฉันแน่ใจว่าผู้คนจะคิดวิธีแก้ปัญหาที่ดีกว่า ดังนั้นฉันจะแก้ไขข้อบกพร่องของ shader ได้อย่างไร มีวิธีก้าวผ่านตัว Shader หรือไม่? ฉันสามารถดูการดำเนินการของ shader บนจุดสุดยอด / ดั้งเดิม / ชิ้นส่วนที่เฉพาะเจาะจงได้หรือไม่ (คำถามนี้เกี่ยวกับวิธีการดีบักโค้ด shader โดยเฉพาะคล้ายกับวิธีที่จะดีบั๊กโค้ด "ปกติ" ไม่ใช่เกี่ยวกับการดีบักสิ่งต่าง ๆ เช่นการเปลี่ยนแปลงสถานะ)
45 opengl  glsl  debugging 

3
ฉันจะดีบักสิ่งที่แสดงผลกับ Frame Buffer Object ใน OpenGL ได้อย่างไร
ฉันมีคลาวด์จุดที่กำลังแสดงผลบนหน้าจอ แต่ละจุดมีตำแหน่งและสีรวมถึงรหัส ฉันถูกขอให้เรนเดอร์ ID สำหรับแต่ละจุดของพื้นผิวดังนั้นฉันจึงสร้าง FBO และแนบสองพื้นผิวหนึ่งสำหรับสีและหนึ่งสำหรับความลึก ฉันสร้าง VAO และ VBO ที่จำเป็นสำหรับการเรนเดอร์นอกจอและอัปโหลดตำแหน่งและ ID ของแต่ละจุด เมื่อทำการเรนเดอร์ไปยัง FBO เสร็จแล้วฉันอ่านพิกเซลของพื้นผิวสีด้วยglReadPixels()เพื่อดูว่าค่าคือglClearColor()อะไร มีวิธีที่ฉันสามารถดีบักสิ่งที่มันถูกแสดงกับพื้นผิวสีของ FBO ของฉัน? คำแนะนำใด ๆ ที่คุณอาจให้จะยินดีมาก
17 opengl  debugging 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.