C++ 为什么WgluseFontBitmap会在某些计算机上消耗太多内存?

C++ 为什么WgluseFontBitmap会在某些计算机上消耗太多内存?,c++,c,winapi,opengl,graphics,C++,C,Winapi,Opengl,Graphics,我正在用OpenGL创建一个游戏,在加载时加载整个Arial Unicode MS字体。该程序在我的计算机上使用了平均10兆的内存(op sys是WinXP SP2),运行时没有问题,但当我将该程序移动到笔记本电脑(带Vista)时,wglUseFontBitmaps会挂起并流畅地分配内存,而且永远不会返回。这个问题最近发生了,我不知道为什么,以前也从未有过这样的问题。为什么wglUseFontBitmaps会这样做,以及如何修复它 更新:我尝试了一个旧版本,但它运行时占用了400兆内存(因此这

我正在用OpenGL创建一个游戏,在加载时加载整个Arial Unicode MS字体。该程序在我的计算机上使用了平均10兆的内存(op sys是WinXP SP2),运行时没有问题,但当我将该程序移动到笔记本电脑(带Vista)时,wglUseFontBitmaps会挂起并流畅地分配内存,而且永远不会返回。这个问题最近发生了,我不知道为什么,以前也从未有过这样的问题。为什么wglUseFontBitmaps会这样做,以及如何修复它


更新:我尝试了一个旧版本,但它运行时占用了400兆内存(因此这不是一个新问题)

您试图用wglUseFontBitmaps()生成多少字形显示列表?你能给我们看看你的祈祷吗?也许Vista正在尝试一次性完成所有60000个字符,而XP正在进行某种按需构建


我在FreeType2和MS Arial Unicode方面运气不错,不过要跟上API的速度确实需要一些时间。可以C++化,效果非常好。

您试图用wglUseFontBitmaps()生成多少字形显示列表?你能给我们看看你的祈祷吗?也许Vista正在尝试一次性完成所有60000个字符,而XP正在进行某种按需构建


我在FreeType2和MS Arial Unicode方面运气不错,不过要跟上API的速度确实需要一些时间。可以C++化,效果非常好。

我只加载了整个字体#定义UnicentSize 65535。。。选择对象(hdc、hfontArialUnicodeStuff);wglUseFontBitmapsW(hdc,0,UNICODEFONTSIZE,ListBase)。。。请注意,这不会在XP上造成任何问题。我听说Vista有一些OpenGL问题。这可能是其中之一。对于XP,10MB内存使用量或内存使用量+虚拟机大小?这两台机器的DPI是否相同?机器有不同的ClearType设置吗?我只加载了整个字体#定义UnicentSize 65535。。。选择对象(hdc、hfontArialUnicodeStuff);wglUseFontBitmapsW(hdc,0,UNICODEFONTSIZE,ListBase)。。。请注意,这不会在XP上造成任何问题。我听说Vista有一些OpenGL问题。这可能是其中之一。对于XP,10MB内存使用量或内存使用量+虚拟机大小?这两台机器的DPI是否相同?机器是否有不同的ClearType设置?