看板 GameDesign 關於我們 聯絡資訊
函式大概長這樣 void DrawTextW(...){ ..... for(....){ wglUseFontBitmapsW(hDC, w_string[i], 1, list); glCallList(list); } ..... } //////main.cpp .......(矩陣轉換)..... glColor4f(1.0f, 0.0f, 0.0f, 1.0f); glRasterPos2f(0.0f, 0.0f); DrawTextW(L"繁體字測試"); 貼出文字沒什麼大問題,但問題在於glRasterPos2f這函數, 給值如果有負數或者大於視野範圍,就會整串貼不出來,而非正確的保留部分文字。 換言之,變成文字只能從左下座標0,0貼起, 要做往左跑馬燈離開的效果就會失敗(整串字瞬間消失,而非跑出)。 我知道這硬一點就用RTT的方式把文字轉成texture再偏移座標可以達成, 但碰到寬度大於螢幕寬的字串也不太好處理, 想確認一下是否有更簡單的方式可以達成。 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.194.146.19 ※ 編輯: xtxml 來自: 123.194.146.19 (02/28 12:01)
Bencrie:C++的話看你要不要用 FTGL,用 texture 畫效能比較好 02/29 16:56
Bencrie:純 C 又跨平台的話可以用 pango 把字串畫到 pixmap 02/29 16:57
Bencrie: pango-cairo 02/29 16:58
Bencrie:個人推pango-cairo 的原因是它支援 pango markup 樣式 XD 02/29 16:59
Bencrie:不過在 Windows 上用的話 dependency 應該會肥不少 02/29 17:02