必須能處理數量巨大的字型
必須能處理數量巨大的字形
必須最大化地減小紋理浪費
渲染速度必須夠快
在高階和低端機型上必須效果一致
在任何驅動/gpu組合上都必須完美執行
android.text.*,建立風格化文字和文字布局的類集合
android.graphics.paint,文字測量
android.graphics.canvas,文字渲染
安卓硬體加速文字渲染
字形存放在每乙個字型的對映集中(the key is the glyph identifier)
快取紋理用乙個塊鍊錶來追蹤剩餘空間
畫素快取為uint8 或者 uint32_t的陣列(alpha以及rgb快取)
mesh是乙個包含x/y座標和u/v座標的頂點快取
紋理是乙個glunit控制代碼
2048x256 alpha快取
2048x256 alpha快取
2048x512 alpha快取
1024x512 rgba快取
2048x256 rgba快取
glmapbufferrange->把字形寫入快取->glunmapbuffer->glpixlstorei(gl_unpack_row_length)->gltexsubimage2d
指令碼與渲染器
一直以來都想做乙個指令碼驅動的渲染器.就是說可以用指令碼定製渲染器的行為,比如建立多少個渲染佇列,如何渲染.多少rendertarget,每個物體的材質也是一樣.要生成多少個pass,每個pass是立即渲染呢還是放到那個佇列裡 其實我是個很懶的人 這個想法早在去年就有了.一直拖到現在,昨天晚上實在受...
指令碼與渲染器
一直以來都想做乙個指令碼驅動的渲染器.就是說可以用指令碼定製渲染器的行為,比如建立多少個渲染佇列,如何渲染.多少rendertarget,每個物體的材質也是一樣.要生成多少個pass,每個pass是立即渲染呢還是放到那個佇列裡 其實我是個很懶的人 這個想法早在去年就有了.一直拖到現在,昨天晚上實在受...
指令碼與渲染器
一直以來都想做乙個指令碼驅動的渲染器.就是說可以用指令碼定製渲染器的行為,比如建立多少個渲染佇列,如何渲染.多少rendertarget,每個物體的材質也是一樣.要生成多少個pass,每個pass是立即渲染呢還是放到那個佇列裡 其實我是個很懶的人 這個想法早在去年就有了.一直拖到現在,昨天晚上實在受...