void VideoBackend::Shutdown() { s_BackendInitialized = false; // TODO: should be in Video_Cleanup if (g_renderer) { s_efbAccessRequested = FALSE; s_FifoShuttingDown = FALSE; s_swapRequested = FALSE; // VideoCommon Fifo_Shutdown(); CommandProcessor::Shutdown(); PixelShaderManager::Shutdown(); VertexShaderManager::Shutdown(); OpcodeDecoder_Shutdown(); VertexLoaderManager::Shutdown(); // internal interfaces D3D::ShutdownUtils(); PixelShaderCache::Shutdown(); VertexShaderCache::Shutdown(); delete g_perf_query; delete g_vertex_manager; delete g_texture_cache; delete g_renderer; g_renderer = nullptr; g_texture_cache = nullptr; } }
void VideoBackend::Shutdown() { s_BackendInitialized = false; // TODO: should be in Video_Cleanup if (g_renderer) { // VideoCommon Fifo_Shutdown(); CommandProcessor::Shutdown(); PixelShaderManager::Shutdown(); VertexShaderManager::Shutdown(); GeometryShaderManager::Shutdown(); HullDomainShaderManager::Shutdown(); OpcodeDecoder_Shutdown(); VertexLoaderManager::Shutdown(); // internal interfaces D3D::ShutdownUtils(); PixelShaderCache::Shutdown(); GeometryShaderCache::Shutdown(); HullDomainShaderCache::Shutdown(); VertexShaderCache::Shutdown(); BBox::Shutdown(); delete g_perf_query; delete g_vertex_manager; delete g_texture_cache; delete g_renderer; g_renderer = nullptr; g_texture_cache = nullptr; } }
void VideoBackend::Video_Cleanup() { if (!g_renderer) return; Fifo_Shutdown(); // The following calls are NOT Thread Safe // And need to be called from the video thread Renderer::Shutdown(); BoundingBox::Shutdown(); TextureConverter::Shutdown(); VertexLoaderManager::Shutdown(); g_sampler_cache.reset(); g_texture_cache.reset(); ProgramShaderCache::Shutdown(); VertexShaderManager::Shutdown(); PixelShaderManager::Shutdown(); GeometryShaderManager::Shutdown(); g_perf_query.reset(); g_vertex_manager.reset(); OpcodeDecoder_Shutdown(); g_renderer.reset(); GLInterface->ClearCurrent(); }
void VideoBackend::Shutdown() { s_BackendInitialized = false; if (g_renderer) { s_efbAccessRequested = FALSE; s_FifoShuttingDown = FALSE; s_swapRequested = FALSE; // VideoCommon DLCache::Shutdown(); Fifo_Shutdown(); CommandProcessor::Shutdown(); PixelShaderManager::Shutdown(); VertexShaderManager::Shutdown(); OpcodeDecoder_Shutdown(); VertexLoaderManager::Shutdown(); // internal interfaces PixelShaderCache::Shutdown(); VertexShaderCache::Shutdown(); delete g_texture_cache; delete g_renderer; delete g_vertex_manager; g_renderer = NULL; g_texture_cache = NULL; } D3D::Shutdown(); }
void VideoBackend::Video_Cleanup() { if (g_renderer) { Fifo_Shutdown(); // The following calls are NOT Thread Safe // And need to be called from the video thread Renderer::Shutdown(); TextureConverter::Shutdown(); VertexLoaderManager::Shutdown(); delete g_sampler_cache; g_sampler_cache = nullptr; delete g_texture_cache; g_texture_cache = nullptr; ProgramShaderCache::Shutdown(); VertexShaderManager::Shutdown(); PixelShaderManager::Shutdown(); delete g_perf_query; g_perf_query = nullptr; delete g_vertex_manager; g_vertex_manager = nullptr; OpcodeDecoder_Shutdown(); delete g_renderer; g_renderer = nullptr; GLInterface->ClearCurrent(); } }
void VideoBackend::Shutdown() { s_BackendInitialized = false; if (g_renderer) { s_efbAccessRequested = false; s_FifoShuttingDown = false; s_swapRequested = false; DLCache::Shutdown(); Fifo_Shutdown(); PostProcessing::Shutdown(); // The following calls are NOT Thread Safe // And need to be called from the video thread TextureConverter::Shutdown(); VertexLoaderManager::Shutdown(); VertexShaderCache::Shutdown(); VertexShaderManager::Shutdown(); PixelShaderManager::Shutdown(); PixelShaderCache::Shutdown(); delete g_vertex_manager; delete g_texture_cache; OpcodeDecoder_Shutdown(); delete g_renderer; g_renderer = NULL; g_texture_cache = NULL; } GLInterface->Shutdown(); }