Для отладчика следует включить «исключение прерывания на C ++», как указано в инструкциях здесь для std::exception
, чтобы вы могли точно видеть, какой код вызвал исключение.
Обратите внимание, что более поздние версии DirectX Tool Kit предоставляют больше выходных данных отладки для тех типов сбоев, которые, вероятно, "файл не найден" или похожая проблема.
DirectX Tool Kit также реализует метод what для своих исключений C ++, поэтому вы можете использовать этот код для получения более подробной информации:
try
{
m_model = Model::CreateFromCMO(m_d3dDevice.Get(), L"model.cmo", *m_fxFactory);
}
catch (std::exception& ex)
{
std::cout << ex.what();
// Do some error handling here or call throw to re-throw it
}