OpenGL进行文字显示的方法.doc

OpenGL进行文字显示的方法.doc

ID:56636280

大小:184.50 KB

页数:13页

时间:2020-07-01

OpenGL进行文字显示的方法.doc_第1页
OpenGL进行文字显示的方法.doc_第2页
OpenGL进行文字显示的方法.doc_第3页
OpenGL进行文字显示的方法.doc_第4页
OpenGL进行文字显示的方法.doc_第5页
资源描述:

《OpenGL进行文字显示的方法.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.任何一个DEMO、仿真项目、游戏,都少不了文字这种媒体。这不可不说是对图形视觉媒体的补充——我们还有一些无法超越文字来向观众表达的心事,或是补充说明,或是感悟,或是感激。—— ZwqXin.一般的文字不属于图形渲染部分,而属于用户界面部分,这在游戏引擎中看或许一目了然,但是在底层的图形渲染API——OPENGL或D3D中,文字的显示“并不是必须”,但它是多么深深地被需要着口牙。所以,把字体设置、文字显示作为一种图形学技术而非单纯的完全我属或他属,我是这么想的。(同样,拾取也算是这样吧?[乱弹OpenGL选择-拾取机制Ⅰ])本文来源于 ZwqXin (.zwqxin

2、./),请注明      原文地址:.zwqxin./archives/opengl/opengl-font-setting-showing.html怎么表达文字呢?在OpenGL中,我们没有什么现成的东西可用,但确实有办法让我们“得到这种技术”。让我最记忆深刻的是NEHE的两三篇教程(貌似都是十几课吧),讲述的就是今天的这个主题。可以到NEHE或者在DANCINGWIND的中文翻译(见[搜集的优良OpenGL教程])看看~。而我所知道的这三种方法,前两种应该就是来自那里吧(记得~~),当时要努力完成课程DEMO,于是胡胡混混地就把相应的那两三课学了,而且把它的文字

3、显示方法应用到自己的程序中(还经历了一段艰辛的探索史...连我当时的MyFont类也记录了这份小辛酸,现在看来,是因为当时的知识水平不够理解吧)。然后后来又一个课程DEMO,老师后来觉得我应该“写中文”,于是我又去探索中文字体显示方法了,并在一个开源DEMO中找到,分析代码段后就拿来主义了,至昨不曾好好考究——这就是我所知的第三种方法。三种方法都是三步曲:在初始化的时候“创建字体”[Build],在渲染阶段“应用字体”(显示文字)[Print],在程序结束或不再需要文字显示的时候“销毁字体”[kill]。其中前两步比较重要,着重讨论讨论哈~1.常规的屏幕字体打印(N

4、ormalFont)应用得比较广,大名鼎鼎的AZURE以前的DEMO就是用这个的。NEHE教程中作为首次出现的字体显示方法,介绍应该比较全面,大家想仔细了解的话请务必从上面网址进入学习(当然还有因为我理解不透不敢乱讲的缘由)。1. /////////一般的英语字体打印2.void MyFont::BuildGLFont(int fontHeight)3.{4.   HDC   hDC =::GetDC(HWND_DESKTOP);    //////就是这里搞晕了半晚5.   6.   int tFontHeight = -1 * fontHeight;7. 8. 

5、  NormalFontBase = glGenLists(96);                         // Storage For 96 Characters9.   HFONT font = CreateFont( -tFontHeight,                   // Height Of Font10.                              0,                            // Width Of Font11.                              0,      

6、                      // Angle Of Escapement..1.                              0,                            // Orientation Angle2.                              FW_BOLD,                      // Font Weight3.                              TRUE,                         // Italic4.         

7、                     FALSE,                        // Underline5.                              FALSE,                        // Strikeout6.                              ANSI_CHARSET,                 // Character Set Identifier7.                              OUT_TT_PRECIS,            

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。