Simple Directmedia Layer
Find a file
Sam Lantinga 981e0d367c Fixed bug 4903 - Lack of color multiply with alpha (SDL_BLENDMODE_MOD + SDL_BLENDMODE_BLEND) blending mode for all renderers
Konrad

This kind of blending is rather quite useful and in my opinion should be available for all renderers. I do need it myself, but since I didn't want to use a custom blending mode which is supported only by certain renderers (e.g. not in software which is quite important for me) I did write implementation of SDL_BLENDMODE_MUL for all renderers altogether.

SDL_BLENDMODE_MUL implements following equation:

dstRGB = (srcRGB * dstRGB) + (dstRGB * (1-srcA))
dstA = (srcA * dstA) + (dstA * (1-srcA))

Background:

https://i.imgur.com/UsYhydP.png

Blended texture:

https://i.imgur.com/0juXQcV.png

Result for SDL_BLENDMODE_MOD:

https://i.imgur.com/wgNSgUl.png

Result for SDL_BLENDMODE_MUL:

https://i.imgur.com/Veokzim.png

I think I did cover all possibilities within included patch, but I didn't write any tests for SDL_BLENDMODE_MUL, so it would be lovely if someone could do it.
2020-01-16 08:52:59 -08:00
acinclude
android-project Added support for claiming individiual interfaces on USB devices on Android 2020-01-13 15:35:52 -08:00
android-project-ant
build-scripts Updated SDL development builds to version 2.0.11 2019-09-22 10:37:16 -07:00
cmake hidapi: Add SDL_hidapi.c, allows support for multiple hidapi backends. 2019-07-31 12:20:55 -04:00
debian Updated SDL development builds to version 2.0.11 2019-09-22 10:37:16 -07:00
docs CMake: tabs to spaces in new parts of README-cmake.md 2019-09-23 18:30:22 -04:00
include Fixed bug 4903 - Lack of color multiply with alpha (SDL_BLENDMODE_MOD + SDL_BLENDMODE_BLEND) blending mode for all renderers 2020-01-16 08:52:59 -08:00
src Fixed bug 4903 - Lack of color multiply with alpha (SDL_BLENDMODE_MOD + SDL_BLENDMODE_BLEND) blending mode for all renderers 2020-01-16 08:52:59 -08:00
test Emscripten: build fix for testoverlay2.c 2020-01-13 11:46:17 -05:00
VisualC Added new HIDAPI driver files to the Visual Studio project 2019-12-19 15:12:36 -08:00
VisualC-WinRT added SDL_strtokr() as a replacement for POSIX strtok_r (bug #4046.) 2019-11-20 20:40:50 +03:00
visualtest test: unify all the command line usage logging. 2019-05-28 17:39:13 -04:00
wayland-protocols
Xcode fix xcode project file permissions 2019-12-20 14:33:37 +03:00
Xcode-iOS fix xcode project file permissions 2019-12-20 14:33:37 +03:00
.hgignore remove test/aclocal.m4 2019-08-03 12:49:50 +03:00
Android.mk fix permissions 2019-09-05 13:21:02 +03:00
autogen.sh
BUGS.txt
cmake_uninstall.cmake.in
CMakeLists.txt Fixed bug 4928 - CMakeLists.txt: put cmake package helpers in proper libdir 2020-01-06 07:06:58 -08:00
configure Fixed bug 4357 - iosbuild.sh broken with SDL 2.0.9 2019-12-31 10:40:30 -08:00
configure.ac Fixed bug 4357 - iosbuild.sh broken with SDL 2.0.9 2019-12-31 10:40:30 -08:00
COPYING.txt
CREDITS.txt
INSTALL.txt
Makefile.in Add public APIs for creating a Metal view attached to an SDL window. Add SDL_metal.h. 2019-08-05 12:35:32 -03:00
Makefile.minimal
Makefile.os2 added SDL_strtokr() as a replacement for POSIX strtok_r (bug #4046.) 2019-11-20 20:40:50 +03:00
Makefile.pandora
Makefile.psp added SDL_strtokr() as a replacement for POSIX strtok_r (bug #4046.) 2019-11-20 20:40:50 +03:00
Makefile.wiz
README-SDL.txt
README.txt
sdl2-config.cmake.in
sdl2-config.in
sdl2.m4 Fixed bug 4544 - SDL2.m4 SDL2.framework patch made it impossible to fail detection 2019-03-16 18:45:10 -07:00
sdl2.pc.in
SDL2.spec.in Fixed bug 4615 - RPM Build fails due to unpackaged files 2019-06-11 19:58:10 -07:00
SDL2Config.cmake
TODO.txt
VisualC.html
WhatsNew.txt Added a helper function SDL_LockTextureToSurface() 2019-09-30 20:58:44 +02:00

                         Simple DirectMedia Layer

                                  (SDL)

                                Version 2.0

---
https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed
to provide low level access to audio, keyboard, mouse, joystick, and graphics
hardware via OpenGL and Direct3D. It is used by video playback software,
emulators, and popular games including Valve's award winning catalog
and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting
with README.md

Enjoy!
	Sam Lantinga				(slouken@libsdl.org)