- 熟悉FreeType字型處理運作的原理,可以看這篇:managing glyphs。
- Font Texture Cache處理,可以參考OgreFont.cpp裡的Font::loadResource及MyGUI_ResourceTrueTypeFont.cpp裡的ResourceTrueTypeFont::initialise()。
- 為了達到不改到MyGUI的任何Code,自己繼承了EditText,重寫了TextView…等,並跟MyGUI的FactoryManager註冊。
- 將MyGUI_CommonSkins.xml的"EditText"改成自己的ClassName,比方
BasisSkin type="DynamicEditText" offset="0 0 16 16" align="Stretch"
- 雖然可以用Plugin來擴充MyGUI,但是流程有點麻煩,就直接把EditText給取代掉了…
- Ogre對於UV的換算方式,跟MyGUI不一樣(Ogre是把BearingX及BearingY內含在字的UV中,而MyGUI則是拆開來的,在Render字的時候才利用這些參數來設定相關資料)
- MyGUI沒有處理全形空白,筆者有將這個功能加進入。
夢想還在持續中…
沒有留言:
張貼留言