MCPcopy Create free account
hub / github.com/Apress/Ray-Tracing-Gems-II / ScreenCapture

Function ScreenCapture

Chapter_14/src/Graphics.cpp:962–971  ·  view source on GitHub ↗

* Save the back buffer to disk using DirectxTk library. */

Source from the content-addressed store, hash-verified

960* Save the back buffer to disk using DirectxTk library.
961*/
962bool ScreenCapture(D3D12Global& d3d, std::string filename)
963{
964 HRESULT hr = CoInitialize(NULL);
965 Utils::Validate(hr, L"Error: failed to initialize screen capture!");
966
967 hr = SaveWICTextureToFile(d3d.cmdQueue, d3d.backBuffer[d3d.frameIndex], GUID_ContainerFormatPng, (std::wstring(filename.begin(), filename.end()) + L".png").c_str(), D3D12_RESOURCE_STATE_PRESENT, D3D12_RESOURCE_STATE_PRESENT, nullptr, nullptr, false);
968 if (FAILED(hr)) return false;
969
970 return true;
971}
972
973/**
974 * Release D3D12 resources.

Callers 1

RenderMethod · 0.85

Calls 4

ValidateFunction · 0.85
c_strMethod · 0.80
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected