OS4 DepotLogo by McFly 
(anonymous IP: 54.196.13.210,1212) 
 HomeRecentStatsSearchSubmitUploadsMirrorsContactInfoDisclaimerConfigAdmin
 Menu

 Features
   Crashlogs
   Bug tracker
   Locale browser
 

 Categories

   o Audio (328)
   o Datatype (47)
   o Demo (184)
   o Development (534)
   o Document (21)
   o Driver (88)
   o Emulation (142)
   o Game (860)
   o Graphics (460)
   o Library (94)
   o Network (202)
   o Office (57)
   o Utility (810)
   o Video (61)

Total files: 3888

Full index file
Recent index file

 Links

  Amigans.net
  OpenAmiga
  Aminet
  IntuitionBase


Support the site


 Readme for:  Library » Misc » sdl2.lha

SDL2

Description: Simple DirectMedia Layer 2
Download: sdl2.lha       (TIPS: Use the right click menu if your browser takes you back here all the time)
Size: 10Mb
Version: 2.0.8
Date: 15 Sep 2018
Author: Sam Lantinga + others
Submitter: Juha Niemimaki
Homepage: https://github.com/AmigaPorts/sdl2-amigaos4
Requirements: AmigaOS 4.1 Final Edition, MiniGL, (OGLES2)
Category: library/misc
Replaces: library/misc/sdl2.lha
License: Other
Distribute: yes
Min OS Version: 4.1
FileID: 10690
 
Comments: 1
Snapshots: 0
Videos: 0
Downloads: 63  (Current version)
748  (Accumulated)
Votes: 10 (2/2)  (30 days/7 days)

Show comments Show snapshots Show videos Show content Show crashlogs Replace file 
================================================================================
SDL 2.0 requirements
================================================================================

AmigaOS 4.1 Final Edition
MiniGL (optional from SDL2 point of view, but OpenGL context might still be
        required by the SDL2 application)
OpenGL ES 2.0 (optional)

================================================================================
Building SDL 2.0 library
================================================================================

    sh configure --disable-altivec --prefix=/SDK/local/newlib/
    make

After building, "make install" should work. Optionally you can also build tests:

    cd test
    sh configure
    make

================================================================================
Using SDL 2.0 in your projects
================================================================================

    #include "SDL2/SDL.h"
    ...do magical SDL2 things...


    gcc helloworld.c -use-dynld -lSDL2 -lpthread

================================================================================
About SDL_Renderers
================================================================================

A renderer is a subsystem that can do 2D drawing. We have 4 renderers:
software, OpenGL, OpenGL ES 2.0 and compositing.

Software renderer is always available. Pixels are plotted by the CPU so this is
usually a slow option.

OpenGL renderer uses MiniGL (and Warp3D) for accelerated drawing. Drawing is
done in immediate mode, there is no batching. This should be fairly fast if
textures are static.

OpenGL ES 2.0 renderer uses ogles2.library (and Warp3D Nova).

Compositing renderer uses AmigaOS 4 graphics.library for accelerated drawing.
However, blended lines and points are not accelerated since compositing doesn't
support them. Compositing renderer supports only 32-bit bitmaps. If (Workbench)
screen mode is 16-bit, color format conversion can slow things down.

It's possible to select the preferred renderer before its creation, like this:

    SDL_SetHint(SDL_HINT_RENDER_DRIVER, name);

where name is "software", "opengl" or "compositing".

It's possible to enable VSYNC with:

    SDL_SetHint(SDL_HINT_RENDER_VSYNC, "1");

There is a benchmark tool called sdl2benchmark which was written to test
available renderers.

================================================================================
About OpenGL
================================================================================

If you want to draw accelerated 3D graphics or use explicitly OpenGL functions,
you have to create an OpenGL context, instead of a SDL_Renderer.

If you would like to create an OpenGL ES 2.0 context, you need to specify the
version before window creation, for example:

    SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);
    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 2);
    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0);

MiniGL context can be created using major version 1 and minor version 3. This is
also the default setup.

    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 1);
    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3);

================================================================================
WinUAE
================================================================================

Because WinUAE doesn't support hardware-accelerated compositing or 3D, you need
to install the following software:

-
http://os4depot.net/index.php?function=showfile&file=graphics/misc/patchcomposit
etags.lha
-
http://os4depot.net/index.php?function=showfile&file=library/graphics/wazp3d.lha

================================================================================
Tips
================================================================================

If you are already familiar with SDL 1.2, or porting SDL 1.2 code, it's worth
checking the migration guide at:

https://wiki.libsdl.org/MigrationGuide

Always check the return values of functions and in error case you can get more
information using SDL_GetError() function!

================================================================================
Limitations
================================================================================

Altivec support is disabled. It should be possible to enable in private builds
but it hasn't been tested so far.

Unsupported subsystems include Haptic and Power. There is no Vulkan backend for
AmigaOS either.

OpenGL renderer doesn't support render targets and blend modes "ADD" or "MOD".
This is due to missing features in MiniGL.

================================================================================
Project page and bug tracker
================================================================================

https://github.com/AmigaPorts/SDL


Copyright (c) 2004-2018 by Björn Hagström All Rights Reserved