void FramebufferManager::RecreateEFBFramebuffer() { DestroyEFBFramebuffer(); if (!CreateEFBRenderPasses()) PanicAlert("Failed to create EFB render pass"); if (!CreateEFBFramebuffer()) PanicAlert("Failed to create EFB textures"); }
bool FramebufferManager::Initialize() { if (!CreateEFBRenderPasses()) { PanicAlert("Failed to create EFB render pass"); return false; } if (!CreateEFBFramebuffer()) { PanicAlert("Failed to create EFB textures"); return false; } if (!CompileConversionShaders()) { PanicAlert("Failed to compile EFB shaders"); return false; } if (!CreateReadbackRenderPasses()) { PanicAlert("Failed to create readback render passes"); return false; } if (!CompileReadbackShaders()) { PanicAlert("Failed to compile readback shaders"); return false; } if (!CreateReadbackTextures()) { PanicAlert("Failed to create readback textures"); return false; } if (!CreateReadbackFramebuffer()) { PanicAlert("Failed to create readback framebuffer"); return false; } CreatePokeVertexFormat(); if (!CreatePokeVertexBuffer()) { PanicAlert("Failed to create poke vertex buffer"); return false; } if (!CompilePokeShaders()) { PanicAlert("Failed to compile poke shaders"); return false; } return true; }
void FramebufferManager::ResizeEFBTextures() { DestroyEFBFramebuffer(); if (!CreateEFBFramebuffer()) PanicAlert("Failed to create EFB textures"); }