簡體   English   中英

OpenGL-ES字體渲染(在iOS上)...完整性檢查

[英]OpenGL-ES Font Rendering (on iOS)… Sanity Check

我正在為iOS編寫游戲。 它有一個游戲地圖,我正在使用OpenGL繪制它,因為其他選項太慢了。 我在地圖上有單位,用字母字母表示,是矮人要塞 但是,在OpenGL中渲染文本會受到影響。

我目前正在使用一個性能調整的Texture2D突變體,這個突變體已經足夠原型了,但是它有各種各樣的問題,而且對我來說並沒有產生很好的結果。

似乎這種經過驗證的方法是生成一個“目錄”圖像文件,其中所有字母都以字體呈現,然后在要渲染它們時將它們映射到紋理上(參見此處 )。 但是,我在地圖上放大了很多。 加上Retina Display和iPad將需要多種分辨率。 丑陋。

認為必須有更好的方法,我檢查了FTGLES ,它可以在iOS / OpenGLES上動態渲染TTF / OTF字體。 這不是即插即用。 我已經摔跤了幾天才能讓它接近工作,但我想我現在已經走上了黃金之路。 所以...我瘋了嗎? 我是否為自己創造了比我應有的更多的工作?

是的,這很瘋狂,為自己創造了更多的工作。 對於我的具體案例,Texture2D幾乎掌握了我所需要的所有秘密。 我決定取得Texture2D的所有權,學習它,然后把它變成我自己的。 通過渲染更大的字體(50分)然后縮小,我在OpenGL中獲得了非常好的結果:

替代文字

請注意,我已經通過為每個字母創建一個Texture2D對象進行優化,然后在需要時查看這些對象。 我可以通過收集所有紋理繪制並對每種顏色進行一次OpenGL繪制調用來進一步優化。

這是我使用的一個很好的紋理映射教程 顯然,這使用了在OpenGL ES中無法做到的顯示列表和內容,但是轉換它不應該太難。 您還可以在這里查看一些不同的技術。 一種技術用面部繪制每個角色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM