首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用OpenGL和C#在屏幕上显示文本

如何使用OpenGL和C#在屏幕上显示文本
EN

Stack Overflow用户
提问于 2011-12-15 05:47:19
回答 3查看 2.7K关注 0票数 3

场景:简单的3D游戏项目- OpenGL + C#我读到OpenGL函数不支持在屏幕上轻松打印文本。有谁知道怎么做吗?我不需要任何太复杂的解决方案。例如,我只需要在一个角落中显示FPS速率,或者在另一个角落中显示拾取对象的数量。谢谢。

EN

回答 3

Stack Overflow用户

发布于 2011-12-15 05:58:55

一种很好的文本渲染方法是对字体字符使用纹理,并使用良好的纹理坐标为每个字符绘制一个四边形。这通常会产生良好的结果,并且是独立于平台的。然而,这是相当繁重的实现。

票数 1
EN

Stack Overflow用户

发布于 2011-12-15 06:16:11

在windows上使用Opengl32.dll的wgl函数来渲染文本。示例如下:http://www.pinvoke.net/default.aspx/opengl32.wglusefontoutlines#

基本过程是,您必须预先构建字形的显示列表(将Windows字体呈现到OpenGL上下文中),然后可以在OpenGL显示表面上绘制字符,将字符作为索引绘制到预先呈现的显示列表中。

有关预打包的托管解决方案,请查看Mono的Tao库:http://www.mono-project.com/Tao

票数 0
EN

Stack Overflow用户

发布于 2011-12-16 12:14:43

http://nehe.gamedev.net/tutorial/freetype_fonts_in_opengl/24001/这应该能满足你的所有需求。这是在C++中,但我猜这应该不是问题。它基本上阐述了neodelphi提出的建议。

虽然你说你不需要太多的复杂性,只需要FPS,但有一个很好的字体渲染系统是非常方便的。

HTH

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8512133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档