根據redbook的解釋,在自動紋理座標生成中,gl_object_linear模式不需要使用模型檢視矩陣,gl_eye_linear模式需要使用模型檢視矩陣。那麼我們可以做一系列試驗驗證上述結論:
1 使用gl_eye_linear模式生成紋理座標。設定模型檢視矩陣與投影矩陣,讓ogl用固定渲染管線進行座標變換。
2 使用gl_eye_linear模式生成紋理座標。將模型檢視矩陣置為單位矩陣,自己進行模型檢視變換,僅讓ogl在固定管線中做投影變換。
試驗結果:程式結果正常。
3 使用gl_object_linear模式生成紋理座標。設定模型檢視矩陣與投影矩陣,讓ogl用固定渲染管線進行座標變換。
4 使用gl_object_linear模式生成紋理座標。將模型檢視矩陣置為單位矩陣,自己進行模型檢視變換,僅讓ogl在固定管線中做投影變換。
試驗結果:程式結果異常,效果同gl_eye_linear模式。
結論:gl_eye_linear模式不需要使用模型檢視矩陣;gl_object_linear模式需要使用模型檢視矩陣。
另外,如果我們假設redbook確實弄反了,那麼gl_object_linear模式下的自動紋理座標生成的公式就是:
t = (p * m-1) * vt;
在試驗4中我們將模型檢視矩陣設定為單位矩陣,那麼就又有:
t = (p * m-1) * vt = p * vt;
結果同gl_eye_linear模式。這和我們實際觀察到的結果相同。
也許redbook真的錯了。
乙個難看的證明和乙個漂亮的證明
matrix67.com 北大出的那本 離散數學教程 是我所見過的最破的教材,裡面頻繁出現一些諸如假設m和n怎麼怎麼樣結果推出了p和q怎麼怎麼樣的印刷錯誤 在短短三頁紙中,peano 被拼寫錯了四次,而且每次錯的都不一樣。離散數學本身是相當科學的。離散數學中的證明,特別是圖論證明,都是相當有趣的。但...
需要乙個證明自己的機會
如果這次沒有找到想要的工作的話,我想我也不會停止學習。工作也好,考試也好,對於目前的我而言,都是急需的鼓勵和證明。也不是證明給別人看,而是給自己乙個交代,給當初的選擇乙個判斷。累了倦了的時候會想,考個博士再回去逍遙幾年算了。可是生活真是由奢入簡難,估計現在過不了不買小熊的生活了。困得腦袋有點兒混,其...
用乙個屬性儲存乙個動態陣列
用乙個屬性儲存乙個動態陣列,可是弄了半天就是存不下來,象imagelist,等可以動態新增的控制項是如何實現儲存的,用動態陣列能實現嗎?請高手指點 如果不需要在設計時賦值,可以用tlist,tstringlist,tobjectlist儲存,然後宣告屬性及訪問方法,以字串為例 private fli...