我使用C ++进行编程,并使用DirectXTK附带的SpriteFont工具。我在班上宣布了一个变量:
std::unique_ptr<DirectX::SpriteFont> m_SpriteFont;
我像这样初始化它:
m_SpriteFont = std::unique_ptr<SpriteFont>(new SpriteFont(m_d3dDevice.Get(), L"Assets\\TNR.spritefont"));
它给出了一个未处理的异常。通过该程序进行调试,似乎在读取文件时出现问题。该文件是使用工具包附带的MakeSpriteFont.exe生成的。字体是Times New Roman,大小为12.我已经使用Visual Studio Solution Explorer将此文件添加到assets文件夹,文件本身位于正确的文件夹中。
这里有什么问题?我错过了什么吗?
任何帮助都将不胜感激。
答案 0 :(得分:1)
问题解决了。真的很简单,但我会在这里发布,提醒大家不要犯下我犯的愚蠢错误。
使用Visual Studio中的解决方案资源管理器添加现有项目时,请检查其属性并确保它参与构建(即,项类型标记未设置为“不参与构建”)。我将项目类型设置为“字体”并且它有效。
谢谢大家的帮助。