/** * @file dx.h * * Interface of functions setting up the graphics pipeline. */ #pragma once #ifdef USE_SDL3 #include #include #else #include #endif #include "engine/surface.hpp" namespace devilution { /** Whether we render directly to the screen surface, i.e. `PalSurface == GetOutputSurface()` */ extern bool RenderDirectlyToOutputSurface; extern SDL_Surface *PalSurface; Surface GlobalBackBuffer(); void dx_init(); void dx_cleanup(); void CreateBackBuffer(); void BltFast(SDL_Rect *srcRect, SDL_Rect *dstRect); void Blit(SDL_Surface *src, SDL_Rect *srcRect, SDL_Rect *dstRect); void RenderPresent(); } // namespace devilution