Direct3D11 издает звук во время работы программы отладки

У меня есть простое приложение поворота блоков (в основном, Hello World!), Но всякий раз, когда я запускаю его, я слышу слышимый шум.

Я попытался пройти по коду, чтобы увидеть вызов, который заставляет шум «произойти», но я не смог найти его ни в одном из D3Dinit.

Это код, который я использую для инициализации:

    HRESULT hr = D3D11CreateDevice(
0,                 // default adapter
md3dDriverType,
0,                 // no software device
createDeviceFlags,
0, 0,              // default feature level array
D3D11_SDK_VERSION,
&md3dDevice,
&featureLevel,
&md3dImmediateContext);

Здесь я присоединяю интерфейс и создаю буфер подкачки (заметьте, что HR () — это просто макрос, который будет отображать HRESULTS, если включена отладка)

    IDXGIDevice* dxgiDevice = 0;
HR(md3dDevice->QueryInterface(__uuidof(IDXGIDevice), (void**)&dxgiDevice));

IDXGIAdapter* dxgiAdapter = 0;
HR(dxgiDevice->GetParent(__uuidof(IDXGIAdapter), (void**)&dxgiAdapter));

IDXGIFactory* dxgiFactory = 0;
HR(dxgiAdapter->GetParent(__uuidof(IDXGIFactory), (void**)&dxgiFactory));

HR(dxgiFactory->CreateSwapChain(md3dDevice, &sd, &mSwapChain));

Кто-нибудь знает, что может вызвать этот слышимый шум?

3

Решение

Я заметил это на некоторых видеокартах, когда частота кадров действительно высока. Включение vsync обычно избавляет от этого звука.

http://www.techpowerup.com/forums/threads/whine-from-gpu-under-high-frame-rate.157681/

Трудно услышать в видео, но это заметно

http://www.youtube.com/watch?v=3ibkMvhMlgs

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]