Ejemplo n.º 1
0
void tcache_close() {
    DEBUG("Texture cache:");
    DEBUG(" * Misses:    %d", cache->misses);
    DEBUG(" * Hits:      %d", cache->hits);
    DEBUG(" * Old frees: %d", cache->old_frees);
    tcache_clear();
    hashmap_free(&cache->entries);
    free(cache);
}
Ejemplo n.º 2
0
void video_reinit_renderer() {
    // Clear old texture cache entries
    tcache_clear();

    // Kill old renderer
    SDL_DestroyRenderer(state.renderer);

    // Create a new renderer
    int renderer_flags = SDL_RENDERER_ACCELERATED;
    if(state.vsync) {
         renderer_flags |= SDL_RENDERER_PRESENTVSYNC;
    }
    state.renderer = SDL_CreateRenderer(state.window, -1, renderer_flags);
    SDL_RenderSetLogicalSize(state.renderer,
                             NATIVE_W * state.scale_factor,
                             NATIVE_H * state.scale_factor);
    tcache_reinit(state.renderer, state.scale_factor, &state.scaler);

     // Reset rendertarget
    reset_targets();
}
Ejemplo n.º 3
0
void tcache_reinit(SDL_Renderer *renderer, int scale_factor, scaler_plugin *scaler) {
    cache->renderer = renderer;
    cache->scaler = scaler;
    cache->scale_factor = scale_factor;
    tcache_clear();
}