2014-03-02 25 views
2

我玩弄openGL(OSX小牛3.3),我得到我的屏幕隨機部分渲染到我的窗口。我假設這可能是明確的證據,表明我正在做某些事情......但是什麼?在緩衝區中是否有未初始化的值?我正在使用我沒有創建的緩衝區嗎?一些奇怪的內存管理事情?或類似的東西?正在呈現隨機的屏幕塊opengl-這是什麼錯誤表明?

對不起,如果這個問題有點模糊 - 我只是在打賭,這是openGL獸醫會聽到和去的那些bug之一「當然!這意味着{插入我做錯了的事情}」。

這裏有一個屏幕截圖,以獲得一個想法是什麼我談論:error

黑圈是什麼,我試圖呈現,顛倒谷歌的標誌是什麼,我不明白。而且,每次運行它時,我都會得到不同的隨機紋理。

謝謝!我很樂意提供更多的細節,我只是不知道其他相關信息包括...

+3

聽起來像你沒有正確清除顏色緩衝區。此外,您的像素格式設置如何(例如,單緩衝或雙緩衝,任何阿爾法位)? –

+0

oh gosh duh。萬分感謝!我正在清除默認緩衝區的顏色/深度位,並且我正在渲染紋理,然後顯示該紋理而不清除幀緩衝區的顏色/深度。再次感謝! – Phildo

+0

@ Andon/Phildo:你應該把它作爲答案;) – Kromster

回答

1

感謝@Andon M. Coleman(在上面的評論中),我意識到這一點只是我沒有正確清理顏色緩衝區的結果。

具體而言,我的管道涉及渲染紋理,然後將紋理傳送到屏幕。我正確清除屏幕顏色緩衝區,但是我從未清除中間FB的顏色緩衝區。