是否有某種調試模式,OpenGL可以在將信息輸出到控制檯的位置運行?我有一個應用程序在許多機器上工作良好,但它在真正重要的一臺機器上失敗了。我沒有直接訪問那臺機器,所以我想弄清楚它是如何失敗的。目前我在控制檯中看不到任何輸出。請注意,該應用程序最初是一個沒有控制檯的Windows應用程序,我通過項目屬性將它切換到控制檯。此外,如果它很重要一些對象不顯示,另一個卡住,不動畫 - 這對我沒有任何意義。OpenGL調試或詳細信息到控制檯
5
A
回答
7
不是,不是真的。如果你真的需要一些詳細的輸出,你必須爲OpenGL編寫一個鉤子並記錄它所做的所有調用(這是gDEBugger所做的工具),但這需要相當多的工作(你可以使用類似GLIntercept這樣的東西。 )根據個人經驗:最簡單的方法可能是訪問有問題的機器,然後在那裏運行gDEBugger ...或者獲得一個等效的機器,以便您可以使用附加的圖形調試器重現錯誤。
或者,您可以嘗試使用ARB_debug_output
擴展,這在理論上應該爲您提供更多的輸出。實際上,在每個OpenGL API調用之後,您得到的只是一個glGetError
調用,這對您的用例來說可能已經足夠了(也就是說,您只需執行一些打破GL狀態的操作)。爲了使用調試輸出擴展,您必須修改您的應用程序創建一個調試上下文。
相關問題
- 1. Crystal Reports詳細信息詳細信息
- 2. Android主詳細信息詳細信息
- 3. SWF調試的詳細信息
- 4. MVC更新詳細信息控制器
- 5. 在控制檯輸出調試信息
- 6. Firebase控制檯查看包的詳細信息值
- 7. 在控制檯中查看TFS變更集詳細信息
- 8. PushViewController詳細信息?
- 9. 詳細信息sql
- 10. UITableView詳細信息
- 11. IMAP_AirSeatMapService詳細信息
- 12. 用戶詳細信息表中的用戶認證詳細信息或單獨?
- 13. NSIS在顯示詳細信息後隱藏詳細信息
- 14. 嘗試與 - 資源的詳細信息
- 15. 試用版登錄詳細信息
- 16. MS測試.orderedtest文件詳細信息
- 17. harfbuzz-ng或API詳細信息文檔
- 18. 從DataGridViewSelectedRowCollection複製列詳細信息
- 19. phpunit monolog控制檯輸出太詳細
- 20. 指定詳細信息表格信息
- 21. Jenkins插件詳細信息
- 22. 更新詳細信息ci
- 23. 主查詢詳細信息
- 24. 客戶詳細信息
- 25. OutofMemory異常詳細信息
- 26. Facebook的詳細信息
- 27. MasterDetail ToolbarItem詳細信息
- 28. Google Place詳細信息
- 29. 顯示行詳細信息
- 30. ASP.NET詳細信息查看
ARB_debug_output的實用程序取決於OpenGL實現。 NVIDIA基本上做了'glGetError'版本,但AMD的版本更有幫助。它不會簡單地回到你的「GL_INVALID_OPERATION」;它通常會告訴你有用的信息,比如引起它的功能等等。我已經看到它專門識別核心上下文中不推薦使用的函數調用。着色器編譯和鏈接錯誤將在發生故障時轉儲相應的日誌。等等。 –
'ARG_debug_ouput'是版本'4.3'以後的核心規範的一部分。 –