光照:
再次修改了公式,把鏡面反射的點(diǎn)積值也映射到了0~1的范圍內(nèi),這樣就不會(huì)再出現(xiàn)有一團(tuán)黑的情況了:I = Ia * Ka + Id * Kd * (L dot N + 1.0) * 0.5 + Is * Ks * pow((R dot V + 1.0) * 0.5,n),另外加上了之前一直沒加的聚光燈光源,基于頂點(diǎn)的光照強(qiáng)度計(jì)算,效果不是很好。。目前場(chǎng)景中有三種類型的光源:點(diǎn)光源、平行光、聚光燈
文字渲染:
采用了trueType字體,文件結(jié)構(gòu)還是挺簡(jiǎn)單的,12個(gè)字節(jié)的文件頭,包含字體的版本和大小等信息,字符按編碼作為順序,每個(gè)字符在文件中占32個(gè)字節(jié),即是16 X 16的點(diǎn)陣字體
骨骼動(dòng)畫:
有限度地支持.x格式,說有限度支持是因?yàn)槲也]有很仔細(xì)地研究.x動(dòng)畫格式,因此很難說在我的解析程序中是不是漏掉了對(duì).x文件一些規(guī)范的支持,目前想干脆把它剝離出來作為一個(gè)自定義的動(dòng)畫格式算了。。不過這樣還得寫個(gè)導(dǎo)出工具才有意義
alpha混合:
沒什么好說的,簡(jiǎn)單的混合:(1 - alpha) * srcColor + alpha * destColor
霧效:
基于頂點(diǎn)的計(jì)算,采用這個(gè)公式:f = exp( -d * c ),其中d為定點(diǎn)到視點(diǎn)的距離,c為霧化因子,在頂點(diǎn)比較密集的情況下能取得比較好的效果
基本上,不打算再繼續(xù)寫下去了,接下來需要整理下代碼,寫一個(gè)看起來不是很cool的DEMO,然后再把demo連同引擎的代碼一起發(fā)出去。
release版的,debug版的FPS慘不忍睹。
posted on 2009-09-26 20:23
清風(fēng) 閱讀(2031)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
圖形