У меня есть простое приложение поворота блоков (в основном, 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));
Кто-нибудь знает, что может вызвать этот слышимый шум?
Я заметил это на некоторых видеокартах, когда частота кадров действительно высока. Включение vsync обычно избавляет от этого звука.
http://www.techpowerup.com/forums/threads/whine-from-gpu-under-high-frame-rate.157681/
Трудно услышать в видео, но это заметно
Других решений пока нет …