<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>My Project: SDL_blendmode.h File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">My Project </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */</script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#enum-members">Enumerations</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">SDL_blendmode.h File Reference</div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><code>#include "<a class="el" href="begin__code_8h_source.html">begin_code.h</a>"</code><br /> <code>#include "<a class="el" href="close__code_8h_source.html">close_code.h</a>"</code><br /> </div> <p><a href="SDL__blendmode_8h_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> <tr class="memitem:a850d3c67a878fd6698a1c8dbb1eabf1e"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1e">SDL_BlendMode</a> { <br />   <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1ea417f2736f69e38ae734e75afa04c57ac">SDL_BLENDMODE_NONE</a> = 0x00000000, <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1eae421984ebfeedd59dfea21e1bdda1883">SDL_BLENDMODE_BLEND</a> = 0x00000001, <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1ea4af39da8d41a1765fb26425a3ca4391e">SDL_BLENDMODE_ADD</a> = 0x00000002, <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1eaf7714323757a614d3e506be37cd28c43">SDL_BLENDMODE_MOD</a> = 0x00000004, <br />   <b>SDL_BLENDMODE_INVALID</b> = 0x7FFFFFFF <br /> }</td></tr> <tr class="memdesc:a850d3c67a878fd6698a1c8dbb1eabf1e"><td class="mdescLeft"> </td><td class="mdescRight">The blend mode used in <a class="el" href="SDL__render_8h.html#a4b6c2353384c7b7128fd5960b24f2ae6" title="Copy a portion of the texture to the current rendering target.">SDL_RenderCopy()</a> and drawing operations. <a href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1e">More...</a><br /></td></tr> <tr class="separator:a850d3c67a878fd6698a1c8dbb1eabf1e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a54ae8d3f832db7354f4fda522835f502"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">SDL_BlendOperation</a> { <br />   <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502a79c1a3992734df94dc21b0dd2eaf9cc3">SDL_BLENDOPERATION_ADD</a> = 0x1, <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502acd41cbbe8ee275638a8c9ef97de2eae5">SDL_BLENDOPERATION_SUBTRACT</a> = 0x2, <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502a6f55ae40255c3d8c9927a85ea836d518">SDL_BLENDOPERATION_REV_SUBTRACT</a> = 0x3, <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502a49762d60e4bf6edcf42c7f7aa3c51fbd">SDL_BLENDOPERATION_MINIMUM</a> = 0x4, <br />   <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502a236541634d3e80b4932b6c8a6b278f2a">SDL_BLENDOPERATION_MAXIMUM</a> = 0x5 <br /> }</td></tr> <tr class="memdesc:a54ae8d3f832db7354f4fda522835f502"><td class="mdescLeft"> </td><td class="mdescRight">The blend operation used when combining source and destination pixel components. <a href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">More...</a><br /></td></tr> <tr class="separator:a54ae8d3f832db7354f4fda522835f502"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae7649e376a461512af328b39f3d9605c"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> { <br />   <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca1729e63b0e2643241b7fb83b5e00a618">SDL_BLENDFACTOR_ZERO</a> = 0x1, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605caf2f9f66f01b413de3802f6764125a273">SDL_BLENDFACTOR_ONE</a> = 0x2, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca2ae2717da790b7616c9512cd5a031b06">SDL_BLENDFACTOR_SRC_COLOR</a> = 0x3, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca0ef57a3ec7cfbe5a4b6d7e6aab3d7612">SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR</a> = 0x4, <br />   <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca6709090055ddc6033c4ce7a63ac26fe5">SDL_BLENDFACTOR_SRC_ALPHA</a> = 0x5, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca99342bc66f17946d8b6ef26452a8b010">SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA</a> = 0x6, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605cadcd2cc1da2d79b0f696a2f79350c96fc">SDL_BLENDFACTOR_DST_COLOR</a> = 0x7, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca7238a9b5d18911b67ca3e6975bc66f73">SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR</a> = 0x8, <br />   <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605cabb3330092906beea2a5d1e275f338e42">SDL_BLENDFACTOR_DST_ALPHA</a> = 0x9, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605ca7419eb5c0c94094f26f1f5183438c9e2">SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA</a> = 0xA <br /> }</td></tr> <tr class="memdesc:ae7649e376a461512af328b39f3d9605c"><td class="mdescLeft"> </td><td class="mdescRight">The normalized factor used to multiply pixel components. <a href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">More...</a><br /></td></tr> <tr class="separator:ae7649e376a461512af328b39f3d9605c"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:a68566100acaa096e94f213a9768c6b6d"><td class="memItemLeft" align="right" valign="top">DECLSPEC <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1e">SDL_BlendMode</a> SDLCALL </td><td class="memItemRight" valign="bottom"><a class="el" href="SDL__blendmode_8h.html#a68566100acaa096e94f213a9768c6b6d">SDL_ComposeCustomBlendMode</a> (<a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> srcColorFactor, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> dstColorFactor, <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">SDL_BlendOperation</a> colorOperation, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> srcAlphaFactor, <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> dstAlphaFactor, <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">SDL_BlendOperation</a> alphaOperation)</td></tr> <tr class="memdesc:a68566100acaa096e94f213a9768c6b6d"><td class="mdescLeft"> </td><td class="mdescRight">Create a custom blend mode, which may or may not be supported by a given renderer. <a href="#a68566100acaa096e94f213a9768c6b6d">More...</a><br /></td></tr> <tr class="separator:a68566100acaa096e94f213a9768c6b6d"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Header file declaring the SDL_BlendMode enumeration </p> </div><h2 class="groupheader">Enumeration Type Documentation</h2> <a id="ae7649e376a461512af328b39f3d9605c"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae7649e376a461512af328b39f3d9605c">◆ </a></span>SDL_BlendFactor</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a></td> </tr> </table> </div><div class="memdoc"> <p>The normalized factor used to multiply pixel components. </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca1729e63b0e2643241b7fb83b5e00a618"></a>SDL_BLENDFACTOR_ZERO </td><td class="fielddoc"><p>0, 0, 0, 0 </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605caf2f9f66f01b413de3802f6764125a273"></a>SDL_BLENDFACTOR_ONE </td><td class="fielddoc"><p>1, 1, 1, 1 </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca2ae2717da790b7616c9512cd5a031b06"></a>SDL_BLENDFACTOR_SRC_COLOR </td><td class="fielddoc"><p>srcR, srcG, srcB, srcA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca0ef57a3ec7cfbe5a4b6d7e6aab3d7612"></a>SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR </td><td class="fielddoc"><p>1-srcR, 1-srcG, 1-srcB, 1-srcA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca6709090055ddc6033c4ce7a63ac26fe5"></a>SDL_BLENDFACTOR_SRC_ALPHA </td><td class="fielddoc"><p>srcA, srcA, srcA, srcA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca99342bc66f17946d8b6ef26452a8b010"></a>SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA </td><td class="fielddoc"><p>1-srcA, 1-srcA, 1-srcA, 1-srcA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605cadcd2cc1da2d79b0f696a2f79350c96fc"></a>SDL_BLENDFACTOR_DST_COLOR </td><td class="fielddoc"><p>dstR, dstG, dstB, dstA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca7238a9b5d18911b67ca3e6975bc66f73"></a>SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR </td><td class="fielddoc"><p>1-dstR, 1-dstG, 1-dstB, 1-dstA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605cabb3330092906beea2a5d1e275f338e42"></a>SDL_BLENDFACTOR_DST_ALPHA </td><td class="fielddoc"><p>dstA, dstA, dstA, dstA </p> </td></tr> <tr><td class="fieldname"><a id="ae7649e376a461512af328b39f3d9605ca7419eb5c0c94094f26f1f5183438c9e2"></a>SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA </td><td class="fielddoc"><p>1-dstA, 1-dstA, 1-dstA, 1-dstA </p> </td></tr> </table> </div> </div> <a id="a850d3c67a878fd6698a1c8dbb1eabf1e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a850d3c67a878fd6698a1c8dbb1eabf1e">◆ </a></span>SDL_BlendMode</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1e">SDL_BlendMode</a></td> </tr> </table> </div><div class="memdoc"> <p>The blend mode used in <a class="el" href="SDL__render_8h.html#a4b6c2353384c7b7128fd5960b24f2ae6" title="Copy a portion of the texture to the current rendering target.">SDL_RenderCopy()</a> and drawing operations. </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a850d3c67a878fd6698a1c8dbb1eabf1ea417f2736f69e38ae734e75afa04c57ac"></a>SDL_BLENDMODE_NONE </td><td class="fielddoc"><p>no blending dstRGBA = srcRGBA </p> </td></tr> <tr><td class="fieldname"><a id="a850d3c67a878fd6698a1c8dbb1eabf1eae421984ebfeedd59dfea21e1bdda1883"></a>SDL_BLENDMODE_BLEND </td><td class="fielddoc"><p>alpha blending dstRGB = (srcRGB * srcA) + (dstRGB * (1-srcA)) dstA = srcA + (dstA * (1-srcA)) </p> </td></tr> <tr><td class="fieldname"><a id="a850d3c67a878fd6698a1c8dbb1eabf1ea4af39da8d41a1765fb26425a3ca4391e"></a>SDL_BLENDMODE_ADD </td><td class="fielddoc"><p>additive blending dstRGB = (srcRGB * srcA) + dstRGB dstA = dstA </p> </td></tr> <tr><td class="fieldname"><a id="a850d3c67a878fd6698a1c8dbb1eabf1eaf7714323757a614d3e506be37cd28c43"></a>SDL_BLENDMODE_MOD </td><td class="fielddoc"><p>color modulate dstRGB = srcRGB * dstRGB dstA = dstA </p> </td></tr> </table> </div> </div> <a id="a54ae8d3f832db7354f4fda522835f502"></a> <h2 class="memtitle"><span class="permalink"><a href="#a54ae8d3f832db7354f4fda522835f502">◆ </a></span>SDL_BlendOperation</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">SDL_BlendOperation</a></td> </tr> </table> </div><div class="memdoc"> <p>The blend operation used when combining source and destination pixel components. </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a54ae8d3f832db7354f4fda522835f502a79c1a3992734df94dc21b0dd2eaf9cc3"></a>SDL_BLENDOPERATION_ADD </td><td class="fielddoc"><p>dst + src: supported by all renderers </p> </td></tr> <tr><td class="fieldname"><a id="a54ae8d3f832db7354f4fda522835f502acd41cbbe8ee275638a8c9ef97de2eae5"></a>SDL_BLENDOPERATION_SUBTRACT </td><td class="fielddoc"><p>dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES </p> </td></tr> <tr><td class="fieldname"><a id="a54ae8d3f832db7354f4fda522835f502a6f55ae40255c3d8c9927a85ea836d518"></a>SDL_BLENDOPERATION_REV_SUBTRACT </td><td class="fielddoc"><p>src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES </p> </td></tr> <tr><td class="fieldname"><a id="a54ae8d3f832db7354f4fda522835f502a49762d60e4bf6edcf42c7f7aa3c51fbd"></a>SDL_BLENDOPERATION_MINIMUM </td><td class="fielddoc"><p>min(dst, src) : supported by D3D11 </p> </td></tr> <tr><td class="fieldname"><a id="a54ae8d3f832db7354f4fda522835f502a236541634d3e80b4932b6c8a6b278f2a"></a>SDL_BLENDOPERATION_MAXIMUM </td><td class="fielddoc"><p>max(dst, src) : supported by D3D11 </p> </td></tr> </table> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a id="a68566100acaa096e94f213a9768c6b6d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a68566100acaa096e94f213a9768c6b6d">◆ </a></span>SDL_ComposeCustomBlendMode()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">DECLSPEC <a class="el" href="SDL__blendmode_8h.html#a850d3c67a878fd6698a1c8dbb1eabf1e">SDL_BlendMode</a> SDLCALL SDL_ComposeCustomBlendMode </td> <td>(</td> <td class="paramtype"><a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> </td> <td class="paramname"><em>srcColorFactor</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> </td> <td class="paramname"><em>dstColorFactor</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">SDL_BlendOperation</a> </td> <td class="paramname"><em>colorOperation</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> </td> <td class="paramname"><em>srcAlphaFactor</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="SDL__blendmode_8h.html#ae7649e376a461512af328b39f3d9605c">SDL_BlendFactor</a> </td> <td class="paramname"><em>dstAlphaFactor</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="SDL__blendmode_8h.html#a54ae8d3f832db7354f4fda522835f502">SDL_BlendOperation</a> </td> <td class="paramname"><em>alphaOperation</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Create a custom blend mode, which may or may not be supported by a given renderer. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">srcColorFactor</td><td>source color factor </td></tr> <tr><td class="paramname">dstColorFactor</td><td>destination color factor </td></tr> <tr><td class="paramname">colorOperation</td><td>color operation </td></tr> <tr><td class="paramname">srcAlphaFactor</td><td>source alpha factor </td></tr> <tr><td class="paramname">dstAlphaFactor</td><td>destination alpha factor </td></tr> <tr><td class="paramname">alphaOperation</td><td>alpha operation</td></tr> </table> </dd> </dl> <p>The result of the blend mode operation will be: dstRGB = dstRGB * dstColorFactor colorOperation srcRGB * srcColorFactor and dstA = dstA * dstAlphaFactor alphaOperation srcA * srcAlphaFactor </p> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.15 </small></address> </body> </html>