Skip to content
cccskills
FreePublished on GitHub

sdl3

SDL3 API reference and documentation. Use when working with SDL3, SDL3_image, SDL3_mixer, SDL3_ttf, or SDL3_net code. Provides function signatures, parameters, return values, remarks, code examples, and related functions.

The English summary is being prepared. Showing the original description.

See how to install

Files included (200)

  • SKILL.md2.6 KB
  • docs/SDL3_image/CategoryAPI.md9.6 KB
  • docs/SDL3_image/CategoryAPICategory.md246 B
  • docs/SDL3_image/CategoryAPIDatatype.md348 B
  • docs/SDL3_image/CategoryAPIEnum.md290 B
  • docs/SDL3_image/CategoryAPIEnumerators.md439 B
  • docs/SDL3_image/CategoryAPIFunction.md4.9 KB
  • docs/SDL3_image/CategoryAPIMacro.md4.4 KB
  • docs/SDL3_image/CategoryAPIStruct.md266 B
  • docs/SDL3_image/CategorySDLImage.md6.3 KB
  • docs/SDL3_image/FrontPage.md1.8 KB
  • docs/SDL3_image/IMG_AddAnimationEncoderFrame.md1.2 KB
  • docs/SDL3_image/IMG_AddAnimationFrame.md1.2 KB
  • docs/SDL3_image/IMG_Animation.md632 B
  • docs/SDL3_image/IMG_AnimationDecoder.md357 B
  • docs/SDL3_image/IMG_AnimationDecoderStatus.md817 B
  • docs/SDL3_image/IMG_AnimationEncoder.md359 B
  • docs/SDL3_image/IMG_AnimationStream.md367 B
  • docs/SDL3_image/IMG_CloseAnimationDecoder.md1002 B
  • docs/SDL3_image/IMG_CloseAnimationEncoder.md1002 B
  • docs/SDL3_image/IMG_CloseAnimationStream.md987 B
  • docs/SDL3_image/IMG_CreateAnimatedCursor.md978 B
  • docs/SDL3_image/IMG_CreateAnimationDecoder_IO.md1.5 KB
  • docs/SDL3_image/IMG_CreateAnimationDecoder.md1.3 KB
  • docs/SDL3_image/IMG_CreateAnimationDecoderWithProperties.md3.7 KB
  • docs/SDL3_image/IMG_CreateAnimationEncoder_IO.md1.5 KB
  • docs/SDL3_image/IMG_CreateAnimationEncoder.md1.2 KB
  • docs/SDL3_image/IMG_CreateAnimationEncoderWithProperties.md4.2 KB
  • docs/SDL3_image/IMG_CreateAnimationStream_IO.md1.4 KB
  • docs/SDL3_image/IMG_CreateAnimationStream.md1.1 KB
  • docs/SDL3_image/IMG_CreateAnimationStreamWithProperties.md3.7 KB
  • docs/SDL3_image/IMG_DECODER_STATUS_COMPLETE.md192 B
  • docs/SDL3_image/IMG_DECODER_STATUS_FAILED.md190 B
  • docs/SDL3_image/IMG_DECODER_STATUS_INVALID.md191 B
  • docs/SDL3_image/IMG_DECODER_STATUS_OK.md186 B
  • docs/SDL3_image/IMG_FreeAnimation.md1.0 KB
  • docs/SDL3_image/IMG_GetAnimationDecoderFrame.md2.0 KB
  • docs/SDL3_image/IMG_GetAnimationDecoderMetadata.md1.3 KB
  • docs/SDL3_image/IMG_GetAnimationDecoderPresentationTimestampMS.md931 B
  • docs/SDL3_image/IMG_GetAnimationDecoderProperties.md1.9 KB
  • docs/SDL3_image/IMG_GetAnimationDecoderStatus.md896 B
  • docs/SDL3_image/IMG_GetClipboardImage.md627 B
  • docs/SDL3_image/IMG_GetNextAnimationDecoderFrame.md1.3 KB
  • docs/SDL3_image/IMG_isANI.md1.8 KB
  • docs/SDL3_image/IMG_isAVIF.md1.8 KB
  • docs/SDL3_image/IMG_isBMP.md1.8 KB
  • docs/SDL3_image/IMG_isCUR.md1.8 KB
  • docs/SDL3_image/IMG_isGIF.md1.8 KB
  • docs/SDL3_image/IMG_isICO.md1.8 KB
  • docs/SDL3_image/IMG_isJPG.md1.8 KB
  • docs/SDL3_image/IMG_isJXL.md1.8 KB
  • docs/SDL3_image/IMG_isLBM.md1.8 KB
  • docs/SDL3_image/IMG_isPCX.md1.8 KB
  • docs/SDL3_image/IMG_isPNG.md1.8 KB
  • docs/SDL3_image/IMG_isPNM.md1.8 KB
  • docs/SDL3_image/IMG_isQOI.md1.8 KB
  • docs/SDL3_image/IMG_isSVG.md1.8 KB
  • docs/SDL3_image/IMG_isTIF.md1.8 KB
  • docs/SDL3_image/IMG_isWEBP.md1.8 KB
  • docs/SDL3_image/IMG_isXCF.md1.8 KB
  • docs/SDL3_image/IMG_isXPM.md1.8 KB
  • docs/SDL3_image/IMG_isXV.md1.8 KB
  • docs/SDL3_image/IMG_Load_IO.md2.6 KB
  • docs/SDL3_image/IMG_Load.md2.1 KB
  • docs/SDL3_image/IMG_LoadANIAnimation_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadAnimation_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadAnimation.md1.2 KB
  • docs/SDL3_image/IMG_LoadAnimationTyped_IO.md2.0 KB
  • docs/SDL3_image/IMG_LoadAPNGAnimation_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadAVIF_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadAVIFAnimation_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadBMP_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadCUR_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadGIF_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadGIFAnimation_IO.md1.3 KB
  • docs/SDL3_image/IMG_LoadGPUTexture_IO.md2.5 KB
  • docs/SDL3_image/IMG_LoadGPUTexture.md1.9 KB
  • docs/SDL3_image/IMG_LoadGPUTextureTyped_IO.md2.9 KB
  • docs/SDL3_image/IMG_LoadICO_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadJPG_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadJXL_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadLBM_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadPCX_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadPNG_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadPNM_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadQOI_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadSizedSVG_IO.md1.2 KB
  • docs/SDL3_image/IMG_LoadSVG_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadTexture_IO.md2.3 KB
  • docs/SDL3_image/IMG_LoadTexture.md1.8 KB
  • docs/SDL3_image/IMG_LoadTextureTyped_IO.md2.8 KB
  • docs/SDL3_image/IMG_LoadTGA_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadTIF_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadTyped_IO.md3.1 KB
  • docs/SDL3_image/IMG_LoadWEBP_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadWEBPAnimation_IO.md1.3 KB
  • docs/SDL3_image/IMG_LoadXCF_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadXPM_IO.md1.5 KB
  • docs/SDL3_image/IMG_LoadXV_IO.md1.5 KB
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_INCREMENTAL_BOOLEAN.md257 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_PROGRESSIVE_BOOLEAN.md257 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_AVIF_MAX_THREADS_NUMBER.md250 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_FILENAME_STRING.md242 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_GIF_NUM_COLORS_NUMBER.md248 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_GIF_TRANSPARENT_COLOR_INDEX_NUMBER.md261 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN.md253 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_IOSTREAM_POINTER.md243 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER.md254 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_TIMEBASE_NUMERATOR_NUMBER.md252 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_CREATE_TYPE_STRING.md238 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_METADATA_FRAME_COUNT_NUMBER.md247 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_DECODER_METADATA_LOOP_COUNT_NUMBER.md246 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_AVIF_KEYFRAME_INTERVAL_NUMBER.md256 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_AVIF_MAX_THREADS_NUMBER.md250 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_FILENAME_STRING.md242 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_GIF_USE_LUT_BOOLEAN.md246 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN.md253 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_POINTER.md243 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_QUALITY_NUMBER.md241 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER.md254 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_NUMERATOR_NUMBER.md252 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_ENCODER_CREATE_TYPE_STRING.md238 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_FILENAME_STRING.md239 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN.md250 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_IOSTREAM_POINTER.md240 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_QUALITY_NUMBER.md238 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_TIMEBASE_DENOMINATOR_NUMBER.md251 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_TIMEBASE_NUMERATOR_NUMBER.md249 B
  • docs/SDL3_image/IMG_PROP_ANIMATION_STREAM_CREATE_TYPE_STRING.md235 B
  • docs/SDL3_image/IMG_PROP_METADATA_AUTHOR_STRING.md210 B
  • docs/SDL3_image/IMG_PROP_METADATA_COPYRIGHT_STRING.md213 B
  • docs/SDL3_image/IMG_PROP_METADATA_CREATION_TIME_STRING.md217 B
  • docs/SDL3_image/IMG_PROP_METADATA_DESCRIPTION_STRING.md215 B
  • docs/SDL3_image/IMG_PROP_METADATA_FRAME_COUNT_NUMBER.md215 B
  • docs/SDL3_image/IMG_PROP_METADATA_IGNORE_PROPS_BOOLEAN.md217 B
  • docs/SDL3_image/IMG_PROP_METADATA_LOOP_COUNT_NUMBER.md214 B
  • docs/SDL3_image/IMG_PROP_METADATA_TITLE_STRING.md209 B
  • docs/SDL3_image/IMG_ReadXPMFromArray.md1007 B
  • docs/SDL3_image/IMG_ReadXPMFromArrayToRGB888.md985 B
  • docs/SDL3_image/IMG_ResetAnimationDecoder.md1.2 KB
  • docs/SDL3_image/IMG_Save.md1.1 KB
  • docs/SDL3_image/IMG_SaveANIAnimation_IO.md1.3 KB
  • docs/SDL3_image/IMG_SaveAnimation.md1.1 KB
  • docs/SDL3_image/IMG_SaveAnimationTyped_IO.md1.5 KB
  • docs/SDL3_image/IMG_SaveAPNGAnimation_IO.md1.3 KB
  • docs/SDL3_image/IMG_SaveAVIF_IO.md1.2 KB
  • docs/SDL3_image/IMG_SaveAVIF.md914 B
  • docs/SDL3_image/IMG_SaveAVIFAnimation_IO.md1.4 KB
  • docs/SDL3_image/IMG_SaveBMP_IO.md1.1 KB
  • docs/SDL3_image/IMG_SaveBMP.md809 B
  • docs/SDL3_image/IMG_SaveCUR_IO.md1.1 KB
  • docs/SDL3_image/IMG_SaveCUR.md809 B
  • docs/SDL3_image/IMG_SaveGIF_IO.md1.1 KB
  • docs/SDL3_image/IMG_SaveGIF.md809 B
  • docs/SDL3_image/IMG_SaveGIFAnimation_IO.md1.3 KB
  • docs/SDL3_image/IMG_SaveICO_IO.md1.1 KB
  • docs/SDL3_image/IMG_SaveICO.md809 B
  • docs/SDL3_image/IMG_SaveJPG_IO.md1.2 KB
  • docs/SDL3_image/IMG_SaveJPG.md928 B
  • docs/SDL3_image/IMG_SavePNG_IO.md1.1 KB
  • docs/SDL3_image/IMG_SavePNG.md809 B
  • docs/SDL3_image/IMG_SaveTGA_IO.md1.1 KB
  • docs/SDL3_image/IMG_SaveTGA.md809 B
  • docs/SDL3_image/IMG_SaveTyped_IO.md1.6 KB
  • docs/SDL3_image/IMG_SaveWEBP_IO.md1.3 KB
  • docs/SDL3_image/IMG_SaveWEBP.md1.1 KB
  • docs/SDL3_image/IMG_SaveWEBPAnimation_IO.md1.5 KB
  • docs/SDL3_image/IMG_Version.md461 B
  • docs/SDL3_image/QuickReference.md24.8 KB
  • docs/SDL3_image/QuickReferenceNoUnicode.md24.1 KB
  • docs/SDL3_image/SDL_IMAGE_MAJOR_VERSION.md344 B
  • docs/SDL3_image/SDL_IMAGE_VERSION_ATLEAST.md595 B
  • docs/SDL3_image/SDL_IMAGE_VERSION.md444 B
  • docs/SDL3_image/Undocumented.md81 B
  • docs/SDL3_mixer/CategoryAPI.md7.4 KB
  • docs/SDL3_mixer/CategoryAPICategory.md246 B
  • docs/SDL3_mixer/CategoryAPIDatatype.md548 B
  • docs/SDL3_mixer/CategoryAPIFunction.md4.3 KB
  • docs/SDL3_mixer/CategoryAPIMacro.md2.9 KB
  • docs/SDL3_mixer/CategoryAPIStruct.md272 B
  • docs/SDL3_mixer/CategorySDLMixer.md11.4 KB
  • docs/SDL3_mixer/FrontPage.md1.8 KB
  • docs/SDL3_mixer/INTRO-androidstudio.md407 B
  • docs/SDL3_mixer/INTRO-cmake.md1.7 KB
  • docs/SDL3_mixer/INTRO-emscripten.md1.6 KB
  • docs/SDL3_mixer/INTRO-visualstudio.md1.5 KB
  • docs/SDL3_mixer/INTRO-xcode.md1.5 KB
  • docs/SDL3_mixer/MIX_Audio.md900 B
  • docs/SDL3_mixer/MIX_AudioDecoder.md859 B
  • docs/SDL3_mixer/MIX_AudioFramesToMS.md1.2 KB
  • docs/SDL3_mixer/MIX_AudioMSToFrames.md1.0 KB
  • docs/SDL3_mixer/MIX_CreateAudioDecoder_IO.md2.0 KB
  • docs/SDL3_mixer/MIX_CreateAudioDecoder.md1.8 KB
  • docs/SDL3_mixer/MIX_CreateGroup.md1.6 KB
  • docs/SDL3_mixer/MIX_CreateMixer.md1.5 KB
  • docs/SDL3_mixer/MIX_CreateMixerDevice.md2.4 KB
  • docs/SDL3_mixer/MIX_CreateSineWaveAudio.md1.9 KB
  • docs/SDL3_mixer/MIX_CreateTrack.md1.2 KB
  • docs/SDL3_mixer/MIX_DecodeAudio.md1.3 KB
  • docs/SDL3_mixer/MIX_DestroyAudio.md1.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

SDL3 Documentation Skill

You have access to the complete SDL3 wiki (4,890 API docs). Use progressive disclosure — start narrow, expand only as needed.

Lookup strategy (follow in order)

1. Specific function/type query → direct lookup

If the user asks about a known symbol (e.g. SDL_CreateWindow, IMG_Load):

  1. Read lookup.md (in this skill directory) — find the symbol's category and one-line description
  2. Read the full doc: docs/SDL3/<SymbolName>.md (or docs/SDL3_image/, SDL3_mixer/, etc.)
  3. Present: signature, parameters, return value, key remarks, code example if available, see-also links

2. Topic/domain query → category drill-down

If the user asks about a topic (e.g. "how does audio work", "window management"):

  1. Read index.md (in this skill directory) — find the matching category and its file path
  2. Read the category file (e.g. docs/SDL3/CategoryAudio.md) — get the overview + full symbol list
  3. Summarize the category, highlight the most relevant functions
  4. Only read individual function docs if the user wants specifics

3. Fuzzy/unknown query → search

If you can't find it in lookup.md or index.md:

  1. Grep for the term across docs/ — check function names, descriptions
  2. Glob for docs/SDL3/*<term>*.md to find matching files
  3. Read the best match

File layout

.claude/skills/sdl3/
├── SKILL.md          ← you are here (always loaded)
├── index.md          ← master topic→category map (read first for topic queries)
├── lookup.md         ← symbol→category+description table (read first for function queries)
└── docs/
    ├── SDL3/         ← 4,282 individual API + category docs
    ├── SDL3_image/   ← image loading library
    ├── SDL3_mixer/   ← audio mixing library
    ├── SDL3_ttf/     ← font rendering library
    └── SDL3_net/     ← networking library

Response guidelines

  • Lead with the function signature in a C code block
  • Include parameter table and return value
  • Mention thread safety and version if relevant
  • Include code examples when available — these are high value
  • Link to related functions the user likely needs next
  • For broad topics, give an overview with the 3-5 most important functions before listing everything

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Use this skill when controlling the AltirraSDL Atari emulator programmatically — driving the simulator from a script, capturing screenshots from a running Atari, injecting joystick/keyboard input, frame-stepping for deterministic testing, reading or writing CPU/memory/chip state, setting breakpoints or watchpoints, profiling 6502 code, loading symbols, or building automated tests against an Atari binary. Triggers on phrases like "AltirraBridge", "AltirraSDL --bridge", "AltirraBridgeServer", "Altirra Python SDK", "headless Atari emulator", "screenshot the Atari", "automate AltirraSDL", "drive the emulator from Python", "Atari debugger over a socket", "altirra_bridge package", as well as on tasks involving the bridge protocol, the Python `altirra_bridge` package, or the C `altirra_bridge.h` SDK.

The English summary is being prepared. Showing the original description.

ilmenit/AltirraSDL66Updated Oct 23, 2026

See all skills by ilmenit

Report a problem with this skill