游戏中汉字显示的实现与技巧(1)

游戏中汉字显示的实现与技巧

游戏中汉字显示的实现与技巧(1)

绪言

在游戏中,因为我们是中国人麻,通常都需要显示汉字,比方说交待剧情。而对于文字的显示,英文的显示要较其简单得多,因为只有26个字母,就算再加一些标点、符号什么的,用一张位图,就可以足以显示所有的单词了,而相关实现技巧,也比较轻松。

游戏中汉字显示的实现与技巧(1)

而中文的显示方法,要复杂得许多。记得原来在DOS下,汉字的显示都是读的UCDOS 的点阵字库,而点阵字库的读取方法,在UCDOS SDK中都有源代码可以参考。但是自从Windows操作系统开始,我们开始了解到一种更好的字库,它就是TTF。

注:以下我所指的开发环境,除非明确说明,默认的平台是VC6.0+DirectX8.1,使用D3D来加速2D。然后使用的STL是用的SGI实现的那一套STL。

点阵字库

包括现在,有很多游戏都还是使用的点阵字库。因为操作起来比较方便,加上这方面的经验已经积累了好几年了。通常如果只是一种字体就可以满足需要的话,它会是一个比较好、快的解决办法。但是它有3个缺点:

1.如果放大显示,不做处理的话,显示出来的汉字,是很难看的。

2.像是UCDOS所提供的点阵字库,只有24点阵的有几种字体,如:宋体、黑体、揩

体…,而16点阵的好象就只有宋体一种。

3.点阵字库,通常是有版权的,尤其是第三方制作的汉字库(如:方正)。

在这样的情况下,当我们写好这样的一个显示函数,就算是解决了如:放大、快速显示等问题的话,可供选择的字体还是太过于局限了。所以,在字体的要求比较强的情况下,点阵字库并不是一个好的解决方法,他不够灵活。尽管我们对于它的操作是如此得熟练,可以写出优美的代码来展示我们的编程技巧。

TTF

TTF是True Type Font的简称。在Windows\Fonts目录下面,我们可以看到许多后缀

相关推荐
相关主题
热门推荐