Я пишу базовую программу, используя direct3d и DXUT.Функция DXUTSetD3D11Device отсутствует в DXUT
Я создаю устройство direct3d вручную с помощью D3D11CreateDeviceAndSwapChain()
и передавая его в DXUT с помощью функции DXUTSetD3D11Device()
, которая в соответствии с документацией должна быть правильной.
Что меня смущает, так это то, что я вызываю ошибку LNK2019: unresolved external symbol
при вызове DXUTSetD3D11Device()
. Я могу назвать другие функции DXUT, такие как DXUTCreateWindow()
, просто отлично, также я сам создал DXUT и связался с ним должным образом.
Когда я смотрю в DXUT.h, я могу найти объявление DXUTSetD3D11Device()
, но когда я смотрю в DXUT.cpp, я не могу найти ссылки на эту функцию, поэтому я думаю, что это может быть поэтому, я получаю этот компоновщик ошибка.
This похоже на ту же проблему, что и мой.
Я оставлю соответствующие куски кода здесь, на всякий случай:
bool DXUTEngine::Initialise()
{
HR(DXUTCreateWindow(m_appname));
if(!m_pDirect3D->Initialise(DXUTGetHWND(), m_width, m_height))
{
OutputDebugString(L"\n\n Failed to initialise Direct3D\n\n");
return false;
}
HR(DXUTSetD3D11Device(m_pDirect3D->GetDevice(), m_pDirect3D->GetSwapChain()));
return true;
}
Вот где я создаю устройство:
result = D3D11CreateDeviceAndSwapChain(NULL, driverType, NULL, 0, &featureLevel, 1,
D3D11_SDK_VERSION, &swapChainDesc, &m_pSwapChain, &m_pDevice, NULL, &m_pContext);
На данный момент я думаю, что либо я делаю что-то очень неправильное или что эта функция просто не существует. Я бы очень признателен за любую помощь.
Заранее спасибо.
Прежде всего, я сам создал код в файлах lib, поэтому я подумал, что может быть ошибка ссылки. Спасибо за ответ в любом случае, я просто подумал, что странно, что казалось бы важная функция не будет реализована. – orangeocelot
Также было бы здорово, если бы вы могли дать источник нашей ссылки для функции, не имеющей реализации. Я просто не знаю, почему они это сделают. Возможно, я не понимаю, что делает эта функция? – orangeocelot
Примечание. Эта проблема покрыта потоком на [CodePlex] (https://dxut.codeplex.com/discussions/531081) для DXUT11. –