雖然這個渲染引擎已經(jīng)夠簡短,但是讀Horde3d的時候還是遇到一些問題阻礙學(xué)習(xí)。
(1)shader天生檢查不嚴(yán)。例如在shader聲明的attribute和uniform在沒有被用到或者在cpu程序那邊沒有設(shè)置的時候,沒有報錯。
(2)用int作為對象的handle,在讀代碼的時候很難根據(jù)這個handle去找有關(guān)這個對象的信息。
(3)用了友元,幾個對象之間互相修改成員變量,壓根不知道誰改了誰的,跟蹤代碼的時候非常頭疼。如果用函數(shù)來搞setter跟getter,就能夠打斷點了。