这适用于虚幻引擎4.9UE4:输出游戏帧到文件
每个帧,我想将它保存到文件(覆盖现有之一)。
对于我做了一个简单的演示D3D11,我已经能够用做到这一点:
void Engine::CaptureFrame(D3DX11_IMAGE_FILE_FORMAT format, const LPCTSTR fileName){
backbuffer->GetResource(&resource);
ID3D11Texture2D* texture;
HRESULT hResult = resource->QueryInterface(__uuidof(ID3D11Texture2D), reinterpret_cast<LPVOID*>(&texture));
D3DX11SaveTextureToFile(deviceContext, texture, format, fileName);
//Clean up
texture->Release();
resource->Release();
}
我已经这样做了OpenGL的,也用一种叫做“FreeImage”库。
我不想修改UE4信号源,并且正在寻找一种方法来“挂机”进入UE4并“捕获”帧。
我已经设法做到这一点与Open Broadcasting Software,但我想这样做本身,在UE4内,通过c + +或蓝图。
我也知道I can do this from the editor,但那不是我想要做的。我想在运行时自动执行此操作。
我该怎么办?它甚至有可能吗?
从我的问题中应该很明显我已经Google了这个。如果你已经找到更具体的东西来展示如何用代码或蓝图做到这一点,那么请分享它,而不是张贴讽刺意见。 – pookie