SDL_Init - Man Page

Initialize the SDL library.

Header File

Defined in SDL3/SDL_init.h

Synopsis

#include "SDL3/SDL.h"

bool SDL_Init(SDL_InitFlags 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_AUDIO : audio subsystem; automatically
 initializes the events subsystem

· SDL_INIT_VIDEO : video subsystem; automatically
 initializes the events subsystem, should be initialized on the main
 thread.

· 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; automatically
 initializes the events subsystem

· SDL_INIT_CAMERA : camera subsystem; automatically
 initializes the events 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.

Consider reporting some basic metadata about your application before calling SDL_Init , using either

SDL_SetAppMetadata () or

SDL_SetAppMetadataProperty ().

Function Parameters

flags

subsystem initialization flags.

Return Value

Returns true on success or false on failure; call

SDL_GetError () for more information.

Availability

This function is available since SDL 3.2.0.

See Also

·(3), SDL_SetAppMetadata(3), ·(3), SDL_SetAppMetadataProperty(3), ·(3), SDL_InitSubSystem(3), ·(3), SDL_Quit(3), ·(3), SDL_SetMainReady(3), ·(3), SDL_WasInit(3)

Referenced By

SDL_InitFlags.3type(3), SDL_InitSubSystem(3), SDL_Quit(3), SDL_SetMainReady(3), SDL_WasInit(3).

SDL 3.2.2 Simple Directmedia Layer SDL3 FUNCTIONS