Scroll to navigation

SDL_Init(3) SDL3 FUNCTIONS SDL_Init(3)

NAME

SDL_Init - Initialize the SDL library.

SYNOPSIS

#include "SDL3/SDL.h"
int SDL_Init(Uint32 flags);

DESCRIPTION

SDL_Init () simply forwards to calling

SDL_InitSubSystem (). Therefore, the two may be used interchangeably. Though for readability of your code

SDL_InitSubSystem () might be preferred.

The file I/O (for example: SDL_IOFromFile ) and threading ( SDL_CreateThread ) subsystems are initialized by default. Message boxes ( SDL_ShowSimpleMessageBox ) also attempt to work without initializing the video subsystem, in hopes of being useful in showing an error dialog when SDL_Init
fails. You must specifically initialize other subsystems if you use them in your application.

Logging (such as SDL_Log ) works without initialization, too. flags may be any of the following OR'd together:

SDL_INIT_TIMER : timer subsystem

SDL_INIT_AUDIO : audio subsystem

SDL_INIT_VIDEO : video subsystem; automatically
initializes the events subsystem

SDL_INIT_JOYSTICK : joystick subsystem;
automatically initializes the events subsystem

SDL_INIT_HAPTIC : haptic (force feedback) subsystem

SDL_INIT_GAMEPAD : gamepad subsystem; automatically
initializes the joystick subsystem

SDL_INIT_EVENTS : events subsystem

SDL_INIT_SENSOR : sensor subsystem

Subsystem initialization is ref-counted, you must call

SDL_QuitSubSystem () for each

SDL_InitSubSystem () to correctly shutdown a subsystem manually (or call SDL_Quit () to force shutdown). If a subsystem is already loaded then this call will increase the ref-count and return.

FUNCTION PARAMETERS

subsystem initialization flags

RETURN VALUE

Returns 0 on success or a negative error code on failure; call

SDL_GetError () for more information.

AVAILABILITY

This function is available since SDL 3.0.0.

SEE ALSO

SDL_InitSubSystem(3), SDL_Quit(3), SDL_SetMainReady(3), SDL_WasInit(3)

SDL 3.1.0 SDL