目前我只想使用FreeType和DirectX 11呈现单个字符。 但是我怎么能创建一个" ID3D11ShaderResourceView"来自FT_Bitmap? 我已经尝试过" D3DX11CreateShaderResourceViewFromFile"和" D3DX11CreateTextureFromFile"但两者都不起作用。
有人为我提供了很好的教程或代码片段吗?
答案 0 :(得分:0)
由于FT_Bitmap
是已经加载到内存中的位图,因此您无法使用从文件创建纹理的函数。相反,您将要使用函数从内存创建纹理。
您可以使用D3DXCreateShaderResourceViewFromMemory
,但不推荐使用D3DX库。如该页面所述,您可能希望使用DirectXTK或DirectXTex库从内存创建纹理。
或者,您可以使用ID3D11Device::CreateTexture2D
和ID3D11Device::CreateShaderResourceView
手动创建D3D纹理和着色器资源视图。
唯一棘手的部分是确定使用哪个DXGI_FORMAT
。您需要将其与位图的FT_Pixel_mode
匹配。