OpenTK的glutBitmapCharacter的替代方法
由于openTK并没有打包集成GLUT,字体显示就成了一个问题。
办法1:采用QuickFont
优点:可以使用系统自带的字体
缺点:代码尚未成熟、只能2D显示,无法随物体旋转、平移
办法2:同时调用OpenTK和Tao Framework,后者集成了freeglut
优点:直接使用glutbitmapcharacter
缺点:xp 64bit下无法加载Tao的DLL,Tao重新编译后也不行
在下载glut的源码后,发现这个问题解决并不麻烦,但是耗费体力。
glutbitmapcharacter的工作原理是:
首先,将ASCII码表对应的某某字体的位图数据存入byte数组中;
接着,根据用户的输入,调用glbitmap进行绘图
那么解决的思路很简单也很折腾,把freeglut_font_data.c中的字体位图数据写入到C#文件中,然后封装调用glbitmap进行绘制。
新建2个文件,一个是fontData.cs,用于存储字符位图信息,另一个是fontRender.cs,用于字符绘制。