this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at gh-pages 1512 lines 72 kB view raw
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml"> 3<head> 4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 5<meta http-equiv="X-UA-Compatible" content="IE=9"/> 6<meta name="generator" content="Doxygen 1.8.6"/> 7<title>Shader Interface</title> 8<link href="tabs.css" rel="stylesheet" type="text/css"/> 9<script type="text/javascript" src="jquery.js"></script> 10<script type="text/javascript" src="dynsections.js"></script> 11<link href="search/search.css" rel="stylesheet" type="text/css"/> 12<script type="text/javascript" src="search/search.js"></script> 13<script type="text/javascript"> 14 $(document).ready(function() { searchBox.OnSelectItem(0); }); 15</script> 16<link href="doxygen.css" rel="stylesheet" type="text/css" /> 17</head> 18<body> 19<div id="top"><!-- do not remove this div, it is closed by doxygen! --> 20<!-- end header part --> 21<!-- Generated by Doxygen 1.8.6 --> 22<script type="text/javascript"> 23var searchBox = new SearchBox("searchBox", "search",false,'Search'); 24</script> 25 <div id="navrow1" class="tabs"> 26 <ul class="tablist"> 27 <li><a href="index.html"><span>Main&#160;Page</span></a></li> 28 <li><a href="modules.html"><span>Modules</span></a></li> 29 <li><a href="annotated.html"><span>Classes</span></a></li> 30 <li><a href="files.html"><span>Files</span></a></li> 31 <li> 32 <div id="MSearchBox" class="MSearchBoxInactive"> 33 <span class="left"> 34 <img id="MSearchSelect" src="search/mag_sel.png" 35 onmouseover="return searchBox.OnSearchSelectShow()" 36 onmouseout="return searchBox.OnSearchSelectHide()" 37 alt=""/> 38 <input type="text" id="MSearchField" value="Search" accesskey="S" 39 onfocus="searchBox.OnSearchFieldFocus(true)" 40 onblur="searchBox.OnSearchFieldFocus(false)" 41 onkeyup="searchBox.OnSearchFieldChange(event)"/> 42 </span><span class="right"> 43 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> 44 </span> 45 </div> 46 </li> 47 </ul> 48 </div> 49</div><!-- top --> 50<!-- window showing the filter options --> 51<div id="MSearchSelectWindow" 52 onmouseover="return searchBox.OnSearchSelectShow()" 53 onmouseout="return searchBox.OnSearchSelectHide()" 54 onkeydown="return searchBox.OnSearchSelectKey(event)"> 55<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Groups</a></div> 56 57<!-- iframe showing the search results (closed by default) --> 58<div id="MSearchResultsWindow"> 59<iframe src="javascript:void(0)" frameborder="0" 60 name="MSearchResults" id="MSearchResults"> 61</iframe> 62</div> 63 64<div class="header"> 65 <div class="summary"> 66<a href="#nested-classes">Classes</a> &#124; 67<a href="#typedef-members">Typedefs</a> &#124; 68<a href="#enum-members">Enumerations</a> </div> 69 <div class="headertitle"> 70<div class="title">Shader Interface</div> </div> 71</div><!--header--> 72<div class="contents"> 73<table class="memberdecls"> 74<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> 75Classes</h2></td></tr> 76<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a></td></tr> 77<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr> 78<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a></td></tr> 79<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr> 80<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structGPU__Attribute.html">GPU_Attribute</a></td></tr> 81<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr> 82<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structGPU__AttributeSource.html">GPU_AttributeSource</a></td></tr> 83<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr> 84</table><table class="memberdecls"> 85<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> 86Typedefs</h2></td></tr> 87<tr class="memitem:ga2960dc214fcac43045bf56900b019591"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga2960dc214fcac43045bf56900b019591">GPU_ShaderBlock</a></td></tr> 88<tr class="separator:ga2960dc214fcac43045bf56900b019591"><td class="memSeparator" colspan="2">&#160;</td></tr> 89<tr class="memitem:ga11924d725d1169559a3d21851fddb66e"><td class="memItemLeft" align="right" valign="top">typedef Uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga11924d725d1169559a3d21851fddb66e">GPU_TypeEnum</a></td></tr> 90<tr class="separator:ga11924d725d1169559a3d21851fddb66e"><td class="memSeparator" colspan="2">&#160;</td></tr> 91<tr class="memitem:ga0484770e76872c12dc31d3b5ab6bb9f2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga0484770e76872c12dc31d3b5ab6bb9f2">GPU_AttributeFormat</a></td></tr> 92<tr class="separator:ga0484770e76872c12dc31d3b5ab6bb9f2"><td class="memSeparator" colspan="2">&#160;</td></tr> 93<tr class="memitem:gac9712f1c23bd4cd411e3ea3f4f7fb4e4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gac9712f1c23bd4cd411e3ea3f4f7fb4e4">GPU_Attribute</a></td></tr> 94<tr class="separator:gac9712f1c23bd4cd411e3ea3f4f7fb4e4"><td class="memSeparator" colspan="2">&#160;</td></tr> 95<tr class="memitem:ga7658efdc18a8632491f10c72d207485b"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structGPU__AttributeSource.html">GPU_AttributeSource</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga7658efdc18a8632491f10c72d207485b">GPU_AttributeSource</a></td></tr> 96<tr class="separator:ga7658efdc18a8632491f10c72d207485b"><td class="memSeparator" colspan="2">&#160;</td></tr> 97</table><table class="memberdecls"> 98<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> 99Enumerations</h2></td></tr> 100<tr class="memitem:ga019df2414786f4bbca90dbd9538d53c6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a> { <b>GPU_VERTEX_SHADER</b> = 0, 101<b>GPU_FRAGMENT_SHADER</b> = 1, 102<b>GPU_PIXEL_SHADER</b> = 1, 103<b>GPU_GEOMETRY_SHADER</b> = 2 104 }</td></tr> 105<tr class="separator:ga019df2414786f4bbca90dbd9538d53c6"><td class="memSeparator" colspan="2">&#160;</td></tr> 106<tr class="memitem:gab9a9916a0df123beb01868c563a078f1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gab9a9916a0df123beb01868c563a078f1">GPU_ShaderLanguageEnum</a> { <br/> 107&#160;&#160;<b>GPU_LANGUAGE_NONE</b> = 0, 108<b>GPU_LANGUAGE_ARB_ASSEMBLY</b> = 1, 109<b>GPU_LANGUAGE_GLSL</b> = 2, 110<b>GPU_LANGUAGE_GLSLES</b> = 3, 111<br/> 112&#160;&#160;<b>GPU_LANGUAGE_HLSL</b> = 4, 113<b>GPU_LANGUAGE_CG</b> = 5 114<br/> 115 }</td></tr> 116<tr class="separator:gab9a9916a0df123beb01868c563a078f1"><td class="memSeparator" colspan="2">&#160;</td></tr> 117<tr class="memitem:gab88b885a9c7b69f4ecbc93a091cf827c"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gab88b885a9c7b69f4ecbc93a091cf827c">GPU_CreateShaderProgram</a> (void)</td></tr> 118<tr class="separator:gab88b885a9c7b69f4ecbc93a091cf827c"><td class="memSeparator" colspan="2">&#160;</td></tr> 119<tr class="memitem:gaeb6755d12eed82193e700fd7d7d8855f"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaeb6755d12eed82193e700fd7d7d8855f">GPU_FreeShaderProgram</a> (Uint32 program_object)</td></tr> 120<tr class="separator:gaeb6755d12eed82193e700fd7d7d8855f"><td class="memSeparator" colspan="2">&#160;</td></tr> 121<tr class="memitem:gabc4a192c53e51f563ffe1050c96950cb"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gabc4a192c53e51f563ffe1050c96950cb">GPU_CompileShader_RW</a> (<a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a> shader_type, SDL_RWops *shader_source, GPU_bool free_rwops)</td></tr> 122<tr class="separator:gabc4a192c53e51f563ffe1050c96950cb"><td class="memSeparator" colspan="2">&#160;</td></tr> 123<tr class="memitem:ga5ebb53aa97fe5419df956ba1f5428dea"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga5ebb53aa97fe5419df956ba1f5428dea">GPU_CompileShader</a> (<a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a> shader_type, const char *shader_source)</td></tr> 124<tr class="separator:ga5ebb53aa97fe5419df956ba1f5428dea"><td class="memSeparator" colspan="2">&#160;</td></tr> 125<tr class="memitem:gaa1a03315a0519e42b18ccdc757669242"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaa1a03315a0519e42b18ccdc757669242">GPU_LoadShader</a> (<a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a> shader_type, const char *filename)</td></tr> 126<tr class="separator:gaa1a03315a0519e42b18ccdc757669242"><td class="memSeparator" colspan="2">&#160;</td></tr> 127<tr class="memitem:ga78c6d1cdaca861e2ffc1688d82276bad"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga78c6d1cdaca861e2ffc1688d82276bad">GPU_LinkShaders</a> (Uint32 shader_object1, Uint32 shader_object2)</td></tr> 128<tr class="separator:ga78c6d1cdaca861e2ffc1688d82276bad"><td class="memSeparator" colspan="2">&#160;</td></tr> 129<tr class="memitem:gab6594f538f796853a3cc103202bcdf02"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gab6594f538f796853a3cc103202bcdf02">GPU_LinkManyShaders</a> (Uint32 *shader_objects, int count)</td></tr> 130<tr class="separator:gab6594f538f796853a3cc103202bcdf02"><td class="memSeparator" colspan="2">&#160;</td></tr> 131<tr class="memitem:ga15a20e8f261efcd4d5a2706013ef4a89"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga15a20e8f261efcd4d5a2706013ef4a89">GPU_FreeShader</a> (Uint32 shader_object)</td></tr> 132<tr class="separator:ga15a20e8f261efcd4d5a2706013ef4a89"><td class="memSeparator" colspan="2">&#160;</td></tr> 133<tr class="memitem:ga82577feec0703bf1c92f730455b99f62"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga82577feec0703bf1c92f730455b99f62">GPU_AttachShader</a> (Uint32 program_object, Uint32 shader_object)</td></tr> 134<tr class="separator:ga82577feec0703bf1c92f730455b99f62"><td class="memSeparator" colspan="2">&#160;</td></tr> 135<tr class="memitem:ga08e69c71f3c377eda77370b2d0d2cefa"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga08e69c71f3c377eda77370b2d0d2cefa">GPU_DetachShader</a> (Uint32 program_object, Uint32 shader_object)</td></tr> 136<tr class="separator:ga08e69c71f3c377eda77370b2d0d2cefa"><td class="memSeparator" colspan="2">&#160;</td></tr> 137<tr class="memitem:gaf088fb7cf763251e295880a3bf9b26ad"><td class="memItemLeft" align="right" valign="top">DECLSPEC GPU_bool SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaf088fb7cf763251e295880a3bf9b26ad">GPU_LinkShaderProgram</a> (Uint32 program_object)</td></tr> 138<tr class="separator:gaf088fb7cf763251e295880a3bf9b26ad"><td class="memSeparator" colspan="2">&#160;</td></tr> 139<tr class="memitem:gadf68bfb77485570a2112c1204f0f2d75"><td class="memItemLeft" align="right" valign="top">DECLSPEC Uint32 SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gadf68bfb77485570a2112c1204f0f2d75">GPU_GetCurrentShaderProgram</a> (void)</td></tr> 140<tr class="separator:gadf68bfb77485570a2112c1204f0f2d75"><td class="memSeparator" colspan="2">&#160;</td></tr> 141<tr class="memitem:ga9be9709aa14eb340440e2138b6c42609"><td class="memItemLeft" align="right" valign="top">DECLSPEC GPU_bool SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga9be9709aa14eb340440e2138b6c42609">GPU_IsDefaultShaderProgram</a> (Uint32 program_object)</td></tr> 142<tr class="separator:ga9be9709aa14eb340440e2138b6c42609"><td class="memSeparator" colspan="2">&#160;</td></tr> 143<tr class="memitem:gae598eedf926d4215be7f0d980016afaf"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gae598eedf926d4215be7f0d980016afaf">GPU_ActivateShaderProgram</a> (Uint32 program_object, <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> *block)</td></tr> 144<tr class="separator:gae598eedf926d4215be7f0d980016afaf"><td class="memSeparator" colspan="2">&#160;</td></tr> 145<tr class="memitem:ga0c418855d2f7bea48ceb3826ab97c8f4"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga0c418855d2f7bea48ceb3826ab97c8f4">GPU_DeactivateShaderProgram</a> (void)</td></tr> 146<tr class="separator:ga0c418855d2f7bea48ceb3826ab97c8f4"><td class="memSeparator" colspan="2">&#160;</td></tr> 147<tr class="memitem:gade5b96ddf62935df7c189d22a292eccc"><td class="memItemLeft" align="right" valign="top">DECLSPEC const char *SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gade5b96ddf62935df7c189d22a292eccc">GPU_GetShaderMessage</a> (void)</td></tr> 148<tr class="separator:gade5b96ddf62935df7c189d22a292eccc"><td class="memSeparator" colspan="2">&#160;</td></tr> 149<tr class="memitem:ga8b227e37de346c48eabbe3108c975bc0"><td class="memItemLeft" align="right" valign="top">DECLSPEC int SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga8b227e37de346c48eabbe3108c975bc0">GPU_GetAttributeLocation</a> (Uint32 program_object, const char *attrib_name)</td></tr> 150<tr class="separator:ga8b227e37de346c48eabbe3108c975bc0"><td class="memSeparator" colspan="2">&#160;</td></tr> 151<tr class="memitem:ga7c41406a8043f577c3b38d6e4cb2b55a"><td class="memItemLeft" align="right" valign="top">DECLSPEC <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a> <br class="typebreak"/> 152SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga7c41406a8043f577c3b38d6e4cb2b55a">GPU_MakeAttributeFormat</a> (int num_elems_per_vertex, <a class="el" href="group__ShaderInterface.html#ga11924d725d1169559a3d21851fddb66e">GPU_TypeEnum</a> type, GPU_bool normalize, int stride_bytes, int offset_bytes)</td></tr> 153<tr class="separator:ga7c41406a8043f577c3b38d6e4cb2b55a"><td class="memSeparator" colspan="2">&#160;</td></tr> 154<tr class="memitem:ga9be36797e3b4d015877b5ae446a49d96"><td class="memItemLeft" align="right" valign="top">DECLSPEC <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a> SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga9be36797e3b4d015877b5ae446a49d96">GPU_MakeAttribute</a> (int location, void *values, <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a> format)</td></tr> 155<tr class="separator:ga9be36797e3b4d015877b5ae446a49d96"><td class="memSeparator" colspan="2">&#160;</td></tr> 156<tr class="memitem:ga974e602e392afa5af5f3b812725c5488"><td class="memItemLeft" align="right" valign="top">DECLSPEC int SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga974e602e392afa5af5f3b812725c5488">GPU_GetUniformLocation</a> (Uint32 program_object, const char *uniform_name)</td></tr> 157<tr class="separator:ga974e602e392afa5af5f3b812725c5488"><td class="memSeparator" colspan="2">&#160;</td></tr> 158<tr class="memitem:ga3446d96e8ffc18e1ee84c11ea4660efb"><td class="memItemLeft" align="right" valign="top">DECLSPEC <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga3446d96e8ffc18e1ee84c11ea4660efb">GPU_LoadShaderBlock</a> (Uint32 program_object, const char *position_name, const char *texcoord_name, const char *color_name, const char *modelViewMatrix_name)</td></tr> 159<tr class="separator:ga3446d96e8ffc18e1ee84c11ea4660efb"><td class="memSeparator" colspan="2">&#160;</td></tr> 160<tr class="memitem:ga357c4ea4ee7a855460175709866b023e"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga357c4ea4ee7a855460175709866b023e">GPU_SetShaderBlock</a> (<a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> block)</td></tr> 161<tr class="separator:ga357c4ea4ee7a855460175709866b023e"><td class="memSeparator" colspan="2">&#160;</td></tr> 162<tr class="memitem:ga264f1308c1c56be559bce6935f3a3551"><td class="memItemLeft" align="right" valign="top">DECLSPEC <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga264f1308c1c56be559bce6935f3a3551">GPU_GetShaderBlock</a> (void)</td></tr> 163<tr class="separator:ga264f1308c1c56be559bce6935f3a3551"><td class="memSeparator" colspan="2">&#160;</td></tr> 164<tr class="memitem:gabcb77794c1baef1453d1127f267fff27"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gabcb77794c1baef1453d1127f267fff27">GPU_SetShaderImage</a> (<a class="el" href="structGPU__Image.html">GPU_Image</a> *image, int location, int image_unit)</td></tr> 165<tr class="separator:gabcb77794c1baef1453d1127f267fff27"><td class="memSeparator" colspan="2">&#160;</td></tr> 166<tr class="memitem:gaec33b9d92eb97dd1cafbb6cdd5cbf1da"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaec33b9d92eb97dd1cafbb6cdd5cbf1da">GPU_GetUniformiv</a> (Uint32 program_object, int location, int *values)</td></tr> 167<tr class="separator:gaec33b9d92eb97dd1cafbb6cdd5cbf1da"><td class="memSeparator" colspan="2">&#160;</td></tr> 168<tr class="memitem:gafd4b7ddc9fec24a527bf54266ca8f010"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gafd4b7ddc9fec24a527bf54266ca8f010">GPU_SetUniformi</a> (int location, int value)</td></tr> 169<tr class="separator:gafd4b7ddc9fec24a527bf54266ca8f010"><td class="memSeparator" colspan="2">&#160;</td></tr> 170<tr class="memitem:ga4bb05804d5ceef6593fdc5c5df5b3357"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga4bb05804d5ceef6593fdc5c5df5b3357">GPU_SetUniformiv</a> (int location, int num_elements_per_value, int num_values, int *values)</td></tr> 171<tr class="separator:ga4bb05804d5ceef6593fdc5c5df5b3357"><td class="memSeparator" colspan="2">&#160;</td></tr> 172<tr class="memitem:gae33ca4f9881432fa88291d82ba69b9c6"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gae33ca4f9881432fa88291d82ba69b9c6">GPU_GetUniformuiv</a> (Uint32 program_object, int location, unsigned int *values)</td></tr> 173<tr class="separator:gae33ca4f9881432fa88291d82ba69b9c6"><td class="memSeparator" colspan="2">&#160;</td></tr> 174<tr class="memitem:gab2d235defea51ae75d903a9e6bd01d3f"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gab2d235defea51ae75d903a9e6bd01d3f">GPU_SetUniformui</a> (int location, unsigned int value)</td></tr> 175<tr class="separator:gab2d235defea51ae75d903a9e6bd01d3f"><td class="memSeparator" colspan="2">&#160;</td></tr> 176<tr class="memitem:gac723f1312e9fe36648a6604611375774"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gac723f1312e9fe36648a6604611375774">GPU_SetUniformuiv</a> (int location, int num_elements_per_value, int num_values, unsigned int *values)</td></tr> 177<tr class="separator:gac723f1312e9fe36648a6604611375774"><td class="memSeparator" colspan="2">&#160;</td></tr> 178<tr class="memitem:gaa41603fd7dcf0271ce70e62abbb0db28"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaa41603fd7dcf0271ce70e62abbb0db28">GPU_GetUniformfv</a> (Uint32 program_object, int location, float *values)</td></tr> 179<tr class="separator:gaa41603fd7dcf0271ce70e62abbb0db28"><td class="memSeparator" colspan="2">&#160;</td></tr> 180<tr class="memitem:gac08ed9fceb0208d7815b9a72233fdd69"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gac08ed9fceb0208d7815b9a72233fdd69">GPU_SetUniformf</a> (int location, float value)</td></tr> 181<tr class="separator:gac08ed9fceb0208d7815b9a72233fdd69"><td class="memSeparator" colspan="2">&#160;</td></tr> 182<tr class="memitem:ga764a01bd4c40101d78fd67aaf0b170de"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga764a01bd4c40101d78fd67aaf0b170de">GPU_SetUniformfv</a> (int location, int num_elements_per_value, int num_values, float *values)</td></tr> 183<tr class="separator:ga764a01bd4c40101d78fd67aaf0b170de"><td class="memSeparator" colspan="2">&#160;</td></tr> 184<tr class="memitem:gaab12bd5542ccd53e62cd9096a7dcd1cd"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaab12bd5542ccd53e62cd9096a7dcd1cd">GPU_GetUniformMatrixfv</a> (Uint32 program_object, int location, float *values)</td></tr> 185<tr class="separator:gaab12bd5542ccd53e62cd9096a7dcd1cd"><td class="memSeparator" colspan="2">&#160;</td></tr> 186<tr class="memitem:ga9450cff9e03be61aafce63b3c7ce1f89"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga9450cff9e03be61aafce63b3c7ce1f89">GPU_SetUniformMatrixfv</a> (int location, int num_matrices, int num_rows, int num_columns, GPU_bool transpose, float *values)</td></tr> 187<tr class="separator:ga9450cff9e03be61aafce63b3c7ce1f89"><td class="memSeparator" colspan="2">&#160;</td></tr> 188<tr class="memitem:gab4dead917bb9d1c552ef112441e555ae"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gab4dead917bb9d1c552ef112441e555ae">GPU_SetAttributef</a> (int location, float value)</td></tr> 189<tr class="separator:gab4dead917bb9d1c552ef112441e555ae"><td class="memSeparator" colspan="2">&#160;</td></tr> 190<tr class="memitem:gae9579af7d4ace1ff2176a382886cd8c0"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gae9579af7d4ace1ff2176a382886cd8c0">GPU_SetAttributei</a> (int location, int value)</td></tr> 191<tr class="separator:gae9579af7d4ace1ff2176a382886cd8c0"><td class="memSeparator" colspan="2">&#160;</td></tr> 192<tr class="memitem:ga80bd6e258ef3eb48c3502b6e829abc80"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga80bd6e258ef3eb48c3502b6e829abc80">GPU_SetAttributeui</a> (int location, unsigned int value)</td></tr> 193<tr class="separator:ga80bd6e258ef3eb48c3502b6e829abc80"><td class="memSeparator" colspan="2">&#160;</td></tr> 194<tr class="memitem:ga49f51650abe2b0b20b4017d42c0f30e1"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga49f51650abe2b0b20b4017d42c0f30e1">GPU_SetAttributefv</a> (int location, int num_elements, float *value)</td></tr> 195<tr class="separator:ga49f51650abe2b0b20b4017d42c0f30e1"><td class="memSeparator" colspan="2">&#160;</td></tr> 196<tr class="memitem:ga73a724958644b3c45cbcbad67ffef26d"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga73a724958644b3c45cbcbad67ffef26d">GPU_SetAttributeiv</a> (int location, int num_elements, int *value)</td></tr> 197<tr class="separator:ga73a724958644b3c45cbcbad67ffef26d"><td class="memSeparator" colspan="2">&#160;</td></tr> 198<tr class="memitem:gaa25c469985276490caad4a4fc1c45166"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#gaa25c469985276490caad4a4fc1c45166">GPU_SetAttributeuiv</a> (int location, int num_elements, unsigned int *value)</td></tr> 199<tr class="separator:gaa25c469985276490caad4a4fc1c45166"><td class="memSeparator" colspan="2">&#160;</td></tr> 200<tr class="memitem:ga3cc5d7ebc8e781fdbc988c622d952573"><td class="memItemLeft" align="right" valign="top">DECLSPEC void SDLCALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ShaderInterface.html#ga3cc5d7ebc8e781fdbc988c622d952573">GPU_SetAttributeSource</a> (int num_values, <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a> source)</td></tr> 201<tr class="separator:ga3cc5d7ebc8e781fdbc988c622d952573"><td class="memSeparator" colspan="2">&#160;</td></tr> 202</table> 203<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> 204<h2 class="groupheader">Typedef Documentation</h2> 205<a class="anchor" id="gac9712f1c23bd4cd411e3ea3f4f7fb4e4"></a> 206<div class="memitem"> 207<div class="memproto"> 208 <table class="memname"> 209 <tr> 210 <td class="memname">typedef struct <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a> <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a></td> 211 </tr> 212 </table> 213</div><div class="memdoc"> 214 215</div> 216</div> 217<a class="anchor" id="ga0484770e76872c12dc31d3b5ab6bb9f2"></a> 218<div class="memitem"> 219<div class="memproto"> 220 <table class="memname"> 221 <tr> 222 <td class="memname">typedef struct <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a> <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a></td> 223 </tr> 224 </table> 225</div><div class="memdoc"> 226 227</div> 228</div> 229<a class="anchor" id="ga7658efdc18a8632491f10c72d207485b"></a> 230<div class="memitem"> 231<div class="memproto"> 232 <table class="memname"> 233 <tr> 234 <td class="memname">typedef struct <a class="el" href="structGPU__AttributeSource.html">GPU_AttributeSource</a> <a class="el" href="structGPU__AttributeSource.html">GPU_AttributeSource</a></td> 235 </tr> 236 </table> 237</div><div class="memdoc"> 238 239</div> 240</div> 241<a class="anchor" id="ga2960dc214fcac43045bf56900b019591"></a> 242<div class="memitem"> 243<div class="memproto"> 244 <table class="memname"> 245 <tr> 246 <td class="memname">typedef struct <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a></td> 247 </tr> 248 </table> 249</div><div class="memdoc"> 250<p>Container for the built-in shader attribute and uniform locations (indices). </p> 251<dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__ShaderInterface.html#ga3446d96e8ffc18e1ee84c11ea4660efb">GPU_LoadShaderBlock()</a> </dd> 252<dd> 253<a class="el" href="group__ShaderInterface.html#ga357c4ea4ee7a855460175709866b023e">GPU_SetShaderBlock()</a> </dd></dl> 254 255</div> 256</div> 257<a class="anchor" id="ga11924d725d1169559a3d21851fddb66e"></a> 258<div class="memitem"> 259<div class="memproto"> 260 <table class="memname"> 261 <tr> 262 <td class="memname">typedef Uint32 <a class="el" href="group__ShaderInterface.html#ga11924d725d1169559a3d21851fddb66e">GPU_TypeEnum</a></td> 263 </tr> 264 </table> 265</div><div class="memdoc"> 266<p>Type enumeration for <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a> specifications. </p> 267 268</div> 269</div> 270<h2 class="groupheader">Enumeration Type Documentation</h2> 271<a class="anchor" id="ga019df2414786f4bbca90dbd9538d53c6"></a> 272<div class="memitem"> 273<div class="memproto"> 274 <table class="memname"> 275 <tr> 276 <td class="memname">enum <a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a></td> 277 </tr> 278 </table> 279</div><div class="memdoc"> 280<p>Shader type enum. </p> 281<dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__ShaderInterface.html#gaa1a03315a0519e42b18ccdc757669242">GPU_LoadShader()</a> </dd> 282<dd> 283<a class="el" href="group__ShaderInterface.html#ga5ebb53aa97fe5419df956ba1f5428dea">GPU_CompileShader()</a> </dd> 284<dd> 285<a class="el" href="group__ShaderInterface.html#gabc4a192c53e51f563ffe1050c96950cb">GPU_CompileShader_RW()</a> </dd></dl> 286 287</div> 288</div> 289<a class="anchor" id="gab9a9916a0df123beb01868c563a078f1"></a> 290<div class="memitem"> 291<div class="memproto"> 292 <table class="memname"> 293 <tr> 294 <td class="memname">enum <a class="el" href="group__ShaderInterface.html#gab9a9916a0df123beb01868c563a078f1">GPU_ShaderLanguageEnum</a></td> 295 </tr> 296 </table> 297</div><div class="memdoc"> 298<p>Type enumeration for the shader language used by the renderer. </p> 299 300</div> 301</div> 302<h2 class="groupheader">Function Documentation</h2> 303<a class="anchor" id="gae598eedf926d4215be7f0d980016afaf"></a> 304<div class="memitem"> 305<div class="memproto"> 306 <table class="memname"> 307 <tr> 308 <td class="memname">DECLSPEC void SDLCALL GPU_ActivateShaderProgram </td> 309 <td>(</td> 310 <td class="paramtype">Uint32&#160;</td> 311 <td class="paramname"><em>program_object</em>, </td> 312 </tr> 313 <tr> 314 <td class="paramkey"></td> 315 <td></td> 316 <td class="paramtype"><a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> *&#160;</td> 317 <td class="paramname"><em>block</em>&#160;</td> 318 </tr> 319 <tr> 320 <td></td> 321 <td>)</td> 322 <td></td><td></td> 323 </tr> 324 </table> 325</div><div class="memdoc"> 326<p>Activates the given shader program. Passing NULL for 'block' will disable the built-in shader variables for custom shaders until a <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> is set again. </p> 327 328</div> 329</div> 330<a class="anchor" id="ga82577feec0703bf1c92f730455b99f62"></a> 331<div class="memitem"> 332<div class="memproto"> 333 <table class="memname"> 334 <tr> 335 <td class="memname">DECLSPEC void SDLCALL GPU_AttachShader </td> 336 <td>(</td> 337 <td class="paramtype">Uint32&#160;</td> 338 <td class="paramname"><em>program_object</em>, </td> 339 </tr> 340 <tr> 341 <td class="paramkey"></td> 342 <td></td> 343 <td class="paramtype">Uint32&#160;</td> 344 <td class="paramname"><em>shader_object</em>&#160;</td> 345 </tr> 346 <tr> 347 <td></td> 348 <td>)</td> 349 <td></td><td></td> 350 </tr> 351 </table> 352</div><div class="memdoc"> 353<p>Attaches a shader object to a shader program for future linking. </p> 354 355</div> 356</div> 357<a class="anchor" id="ga5ebb53aa97fe5419df956ba1f5428dea"></a> 358<div class="memitem"> 359<div class="memproto"> 360 <table class="memname"> 361 <tr> 362 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_CompileShader </td> 363 <td>(</td> 364 <td class="paramtype"><a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a>&#160;</td> 365 <td class="paramname"><em>shader_type</em>, </td> 366 </tr> 367 <tr> 368 <td class="paramkey"></td> 369 <td></td> 370 <td class="paramtype">const char *&#160;</td> 371 <td class="paramname"><em>shader_source</em>&#160;</td> 372 </tr> 373 <tr> 374 <td></td> 375 <td>)</td> 376 <td></td><td></td> 377 </tr> 378 </table> 379</div><div class="memdoc"> 380<p>Compiles shader source and returns the new shader object. </p> 381 382</div> 383</div> 384<a class="anchor" id="gabc4a192c53e51f563ffe1050c96950cb"></a> 385<div class="memitem"> 386<div class="memproto"> 387 <table class="memname"> 388 <tr> 389 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_CompileShader_RW </td> 390 <td>(</td> 391 <td class="paramtype"><a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a>&#160;</td> 392 <td class="paramname"><em>shader_type</em>, </td> 393 </tr> 394 <tr> 395 <td class="paramkey"></td> 396 <td></td> 397 <td class="paramtype">SDL_RWops *&#160;</td> 398 <td class="paramname"><em>shader_source</em>, </td> 399 </tr> 400 <tr> 401 <td class="paramkey"></td> 402 <td></td> 403 <td class="paramtype">GPU_bool&#160;</td> 404 <td class="paramname"><em>free_rwops</em>&#160;</td> 405 </tr> 406 <tr> 407 <td></td> 408 <td>)</td> 409 <td></td><td></td> 410 </tr> 411 </table> 412</div><div class="memdoc"> 413<p>Loads shader source from an SDL_RWops, compiles it, and returns the new shader object. </p> 414 415</div> 416</div> 417<a class="anchor" id="gab88b885a9c7b69f4ecbc93a091cf827c"></a> 418<div class="memitem"> 419<div class="memproto"> 420 <table class="memname"> 421 <tr> 422 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_CreateShaderProgram </td> 423 <td>(</td> 424 <td class="paramtype">void&#160;</td> 425 <td class="paramname"></td><td>)</td> 426 <td></td> 427 </tr> 428 </table> 429</div><div class="memdoc"> 430<p>Creates a new, empty shader program. You will need to compile shaders, attach them to the program, then link the program. </p> 431<dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__ShaderInterface.html#ga82577feec0703bf1c92f730455b99f62">GPU_AttachShader</a> </dd> 432<dd> 433<a class="el" href="group__ShaderInterface.html#gaf088fb7cf763251e295880a3bf9b26ad">GPU_LinkShaderProgram</a> </dd></dl> 434 435</div> 436</div> 437<a class="anchor" id="ga0c418855d2f7bea48ceb3826ab97c8f4"></a> 438<div class="memitem"> 439<div class="memproto"> 440 <table class="memname"> 441 <tr> 442 <td class="memname">DECLSPEC void SDLCALL GPU_DeactivateShaderProgram </td> 443 <td>(</td> 444 <td class="paramtype">void&#160;</td> 445 <td class="paramname"></td><td>)</td> 446 <td></td> 447 </tr> 448 </table> 449</div><div class="memdoc"> 450<p>Deactivates the current shader program (activates program 0). </p> 451 452</div> 453</div> 454<a class="anchor" id="ga08e69c71f3c377eda77370b2d0d2cefa"></a> 455<div class="memitem"> 456<div class="memproto"> 457 <table class="memname"> 458 <tr> 459 <td class="memname">DECLSPEC void SDLCALL GPU_DetachShader </td> 460 <td>(</td> 461 <td class="paramtype">Uint32&#160;</td> 462 <td class="paramname"><em>program_object</em>, </td> 463 </tr> 464 <tr> 465 <td class="paramkey"></td> 466 <td></td> 467 <td class="paramtype">Uint32&#160;</td> 468 <td class="paramname"><em>shader_object</em>&#160;</td> 469 </tr> 470 <tr> 471 <td></td> 472 <td>)</td> 473 <td></td><td></td> 474 </tr> 475 </table> 476</div><div class="memdoc"> 477<p>Detaches a shader object from a shader program. </p> 478 479</div> 480</div> 481<a class="anchor" id="ga15a20e8f261efcd4d5a2706013ef4a89"></a> 482<div class="memitem"> 483<div class="memproto"> 484 <table class="memname"> 485 <tr> 486 <td class="memname">DECLSPEC void SDLCALL GPU_FreeShader </td> 487 <td>(</td> 488 <td class="paramtype">Uint32&#160;</td> 489 <td class="paramname"><em>shader_object</em></td><td>)</td> 490 <td></td> 491 </tr> 492 </table> 493</div><div class="memdoc"> 494<p>Deletes a shader object. </p> 495 496</div> 497</div> 498<a class="anchor" id="gaeb6755d12eed82193e700fd7d7d8855f"></a> 499<div class="memitem"> 500<div class="memproto"> 501 <table class="memname"> 502 <tr> 503 <td class="memname">DECLSPEC void SDLCALL GPU_FreeShaderProgram </td> 504 <td>(</td> 505 <td class="paramtype">Uint32&#160;</td> 506 <td class="paramname"><em>program_object</em></td><td>)</td> 507 <td></td> 508 </tr> 509 </table> 510</div><div class="memdoc"> 511<p>Deletes a shader program. </p> 512 513</div> 514</div> 515<a class="anchor" id="ga8b227e37de346c48eabbe3108c975bc0"></a> 516<div class="memitem"> 517<div class="memproto"> 518 <table class="memname"> 519 <tr> 520 <td class="memname">DECLSPEC int SDLCALL GPU_GetAttributeLocation </td> 521 <td>(</td> 522 <td class="paramtype">Uint32&#160;</td> 523 <td class="paramname"><em>program_object</em>, </td> 524 </tr> 525 <tr> 526 <td class="paramkey"></td> 527 <td></td> 528 <td class="paramtype">const char *&#160;</td> 529 <td class="paramname"><em>attrib_name</em>&#160;</td> 530 </tr> 531 <tr> 532 <td></td> 533 <td>)</td> 534 <td></td><td></td> 535 </tr> 536 </table> 537</div><div class="memdoc"> 538<p>Returns an integer representing the location of the specified attribute shader variable. </p> 539 540</div> 541</div> 542<a class="anchor" id="gadf68bfb77485570a2112c1204f0f2d75"></a> 543<div class="memitem"> 544<div class="memproto"> 545 <table class="memname"> 546 <tr> 547 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_GetCurrentShaderProgram </td> 548 <td>(</td> 549 <td class="paramtype">void&#160;</td> 550 <td class="paramname"></td><td>)</td> 551 <td></td> 552 </tr> 553 </table> 554</div><div class="memdoc"> 555<dl class="section return"><dt>Returns</dt><dd>The current shader program </dd></dl> 556 557</div> 558</div> 559<a class="anchor" id="ga264f1308c1c56be559bce6935f3a3551"></a> 560<div class="memitem"> 561<div class="memproto"> 562 <table class="memname"> 563 <tr> 564 <td class="memname">DECLSPEC <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> SDLCALL GPU_GetShaderBlock </td> 565 <td>(</td> 566 <td class="paramtype">void&#160;</td> 567 <td class="paramname"></td><td>)</td> 568 <td></td> 569 </tr> 570 </table> 571</div><div class="memdoc"> 572<p>Gets the shader block for the current shader. </p> 573 574</div> 575</div> 576<a class="anchor" id="gade5b96ddf62935df7c189d22a292eccc"></a> 577<div class="memitem"> 578<div class="memproto"> 579 <table class="memname"> 580 <tr> 581 <td class="memname">DECLSPEC const char* SDLCALL GPU_GetShaderMessage </td> 582 <td>(</td> 583 <td class="paramtype">void&#160;</td> 584 <td class="paramname"></td><td>)</td> 585 <td></td> 586 </tr> 587 </table> 588</div><div class="memdoc"> 589<p>Returns the last shader log message. </p> 590 591</div> 592</div> 593<a class="anchor" id="gaa41603fd7dcf0271ce70e62abbb0db28"></a> 594<div class="memitem"> 595<div class="memproto"> 596 <table class="memname"> 597 <tr> 598 <td class="memname">DECLSPEC void SDLCALL GPU_GetUniformfv </td> 599 <td>(</td> 600 <td class="paramtype">Uint32&#160;</td> 601 <td class="paramname"><em>program_object</em>, </td> 602 </tr> 603 <tr> 604 <td class="paramkey"></td> 605 <td></td> 606 <td class="paramtype">int&#160;</td> 607 <td class="paramname"><em>location</em>, </td> 608 </tr> 609 <tr> 610 <td class="paramkey"></td> 611 <td></td> 612 <td class="paramtype">float *&#160;</td> 613 <td class="paramname"><em>values</em>&#160;</td> 614 </tr> 615 <tr> 616 <td></td> 617 <td>)</td> 618 <td></td><td></td> 619 </tr> 620 </table> 621</div><div class="memdoc"> 622<p>Fills "values" with the value of the uniform shader variable at the given location. </p> 623 624</div> 625</div> 626<a class="anchor" id="gaec33b9d92eb97dd1cafbb6cdd5cbf1da"></a> 627<div class="memitem"> 628<div class="memproto"> 629 <table class="memname"> 630 <tr> 631 <td class="memname">DECLSPEC void SDLCALL GPU_GetUniformiv </td> 632 <td>(</td> 633 <td class="paramtype">Uint32&#160;</td> 634 <td class="paramname"><em>program_object</em>, </td> 635 </tr> 636 <tr> 637 <td class="paramkey"></td> 638 <td></td> 639 <td class="paramtype">int&#160;</td> 640 <td class="paramname"><em>location</em>, </td> 641 </tr> 642 <tr> 643 <td class="paramkey"></td> 644 <td></td> 645 <td class="paramtype">int *&#160;</td> 646 <td class="paramname"><em>values</em>&#160;</td> 647 </tr> 648 <tr> 649 <td></td> 650 <td>)</td> 651 <td></td><td></td> 652 </tr> 653 </table> 654</div><div class="memdoc"> 655<p>Fills "values" with the value of the uniform shader variable at the given location. </p> 656 657</div> 658</div> 659<a class="anchor" id="ga974e602e392afa5af5f3b812725c5488"></a> 660<div class="memitem"> 661<div class="memproto"> 662 <table class="memname"> 663 <tr> 664 <td class="memname">DECLSPEC int SDLCALL GPU_GetUniformLocation </td> 665 <td>(</td> 666 <td class="paramtype">Uint32&#160;</td> 667 <td class="paramname"><em>program_object</em>, </td> 668 </tr> 669 <tr> 670 <td class="paramkey"></td> 671 <td></td> 672 <td class="paramtype">const char *&#160;</td> 673 <td class="paramname"><em>uniform_name</em>&#160;</td> 674 </tr> 675 <tr> 676 <td></td> 677 <td>)</td> 678 <td></td><td></td> 679 </tr> 680 </table> 681</div><div class="memdoc"> 682<p>Returns an integer representing the location of the specified uniform shader variable. </p> 683 684</div> 685</div> 686<a class="anchor" id="gaab12bd5542ccd53e62cd9096a7dcd1cd"></a> 687<div class="memitem"> 688<div class="memproto"> 689 <table class="memname"> 690 <tr> 691 <td class="memname">DECLSPEC void SDLCALL GPU_GetUniformMatrixfv </td> 692 <td>(</td> 693 <td class="paramtype">Uint32&#160;</td> 694 <td class="paramname"><em>program_object</em>, </td> 695 </tr> 696 <tr> 697 <td class="paramkey"></td> 698 <td></td> 699 <td class="paramtype">int&#160;</td> 700 <td class="paramname"><em>location</em>, </td> 701 </tr> 702 <tr> 703 <td class="paramkey"></td> 704 <td></td> 705 <td class="paramtype">float *&#160;</td> 706 <td class="paramname"><em>values</em>&#160;</td> 707 </tr> 708 <tr> 709 <td></td> 710 <td>)</td> 711 <td></td><td></td> 712 </tr> 713 </table> 714</div><div class="memdoc"> 715<p>Fills "values" with the value of the uniform shader variable at the given location. The results are identical to calling <a class="el" href="group__ShaderInterface.html#gaa41603fd7dcf0271ce70e62abbb0db28">GPU_GetUniformfv()</a>. Matrices are gotten in column-major order. </p> 716 717</div> 718</div> 719<a class="anchor" id="gae33ca4f9881432fa88291d82ba69b9c6"></a> 720<div class="memitem"> 721<div class="memproto"> 722 <table class="memname"> 723 <tr> 724 <td class="memname">DECLSPEC void SDLCALL GPU_GetUniformuiv </td> 725 <td>(</td> 726 <td class="paramtype">Uint32&#160;</td> 727 <td class="paramname"><em>program_object</em>, </td> 728 </tr> 729 <tr> 730 <td class="paramkey"></td> 731 <td></td> 732 <td class="paramtype">int&#160;</td> 733 <td class="paramname"><em>location</em>, </td> 734 </tr> 735 <tr> 736 <td class="paramkey"></td> 737 <td></td> 738 <td class="paramtype">unsigned int *&#160;</td> 739 <td class="paramname"><em>values</em>&#160;</td> 740 </tr> 741 <tr> 742 <td></td> 743 <td>)</td> 744 <td></td><td></td> 745 </tr> 746 </table> 747</div><div class="memdoc"> 748<p>Fills "values" with the value of the uniform shader variable at the given location. </p> 749 750</div> 751</div> 752<a class="anchor" id="ga9be9709aa14eb340440e2138b6c42609"></a> 753<div class="memitem"> 754<div class="memproto"> 755 <table class="memname"> 756 <tr> 757 <td class="memname">DECLSPEC GPU_bool SDLCALL GPU_IsDefaultShaderProgram </td> 758 <td>(</td> 759 <td class="paramtype">Uint32&#160;</td> 760 <td class="paramname"><em>program_object</em></td><td>)</td> 761 <td></td> 762 </tr> 763 </table> 764</div><div class="memdoc"> 765<p>Returns 1 if the given shader program is a default shader for the current context, 0 otherwise. </p> 766 767</div> 768</div> 769<a class="anchor" id="gab6594f538f796853a3cc103202bcdf02"></a> 770<div class="memitem"> 771<div class="memproto"> 772 <table class="memname"> 773 <tr> 774 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_LinkManyShaders </td> 775 <td>(</td> 776 <td class="paramtype">Uint32 *&#160;</td> 777 <td class="paramname"><em>shader_objects</em>, </td> 778 </tr> 779 <tr> 780 <td class="paramkey"></td> 781 <td></td> 782 <td class="paramtype">int&#160;</td> 783 <td class="paramname"><em>count</em>&#160;</td> 784 </tr> 785 <tr> 786 <td></td> 787 <td>)</td> 788 <td></td><td></td> 789 </tr> 790 </table> 791</div><div class="memdoc"> 792<p>Creates and links a shader program with the given shader objects. </p> 793 794</div> 795</div> 796<a class="anchor" id="gaf088fb7cf763251e295880a3bf9b26ad"></a> 797<div class="memitem"> 798<div class="memproto"> 799 <table class="memname"> 800 <tr> 801 <td class="memname">DECLSPEC GPU_bool SDLCALL GPU_LinkShaderProgram </td> 802 <td>(</td> 803 <td class="paramtype">Uint32&#160;</td> 804 <td class="paramname"><em>program_object</em></td><td>)</td> 805 <td></td> 806 </tr> 807 </table> 808</div><div class="memdoc"> 809<p>Links a shader program with any attached shader objects. </p> 810 811</div> 812</div> 813<a class="anchor" id="ga78c6d1cdaca861e2ffc1688d82276bad"></a> 814<div class="memitem"> 815<div class="memproto"> 816 <table class="memname"> 817 <tr> 818 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_LinkShaders </td> 819 <td>(</td> 820 <td class="paramtype">Uint32&#160;</td> 821 <td class="paramname"><em>shader_object1</em>, </td> 822 </tr> 823 <tr> 824 <td class="paramkey"></td> 825 <td></td> 826 <td class="paramtype">Uint32&#160;</td> 827 <td class="paramname"><em>shader_object2</em>&#160;</td> 828 </tr> 829 <tr> 830 <td></td> 831 <td>)</td> 832 <td></td><td></td> 833 </tr> 834 </table> 835</div><div class="memdoc"> 836<p>Creates and links a shader program with the given shader objects. </p> 837 838</div> 839</div> 840<a class="anchor" id="gaa1a03315a0519e42b18ccdc757669242"></a> 841<div class="memitem"> 842<div class="memproto"> 843 <table class="memname"> 844 <tr> 845 <td class="memname">DECLSPEC Uint32 SDLCALL GPU_LoadShader </td> 846 <td>(</td> 847 <td class="paramtype"><a class="el" href="group__ShaderInterface.html#ga019df2414786f4bbca90dbd9538d53c6">GPU_ShaderEnum</a>&#160;</td> 848 <td class="paramname"><em>shader_type</em>, </td> 849 </tr> 850 <tr> 851 <td class="paramkey"></td> 852 <td></td> 853 <td class="paramtype">const char *&#160;</td> 854 <td class="paramname"><em>filename</em>&#160;</td> 855 </tr> 856 <tr> 857 <td></td> 858 <td>)</td> 859 <td></td><td></td> 860 </tr> 861 </table> 862</div><div class="memdoc"> 863<p>Loads shader source from a file, compiles it, and returns the new shader object. </p> 864 865</div> 866</div> 867<a class="anchor" id="ga3446d96e8ffc18e1ee84c11ea4660efb"></a> 868<div class="memitem"> 869<div class="memproto"> 870 <table class="memname"> 871 <tr> 872 <td class="memname">DECLSPEC <a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a> SDLCALL GPU_LoadShaderBlock </td> 873 <td>(</td> 874 <td class="paramtype">Uint32&#160;</td> 875 <td class="paramname"><em>program_object</em>, </td> 876 </tr> 877 <tr> 878 <td class="paramkey"></td> 879 <td></td> 880 <td class="paramtype">const char *&#160;</td> 881 <td class="paramname"><em>position_name</em>, </td> 882 </tr> 883 <tr> 884 <td class="paramkey"></td> 885 <td></td> 886 <td class="paramtype">const char *&#160;</td> 887 <td class="paramname"><em>texcoord_name</em>, </td> 888 </tr> 889 <tr> 890 <td class="paramkey"></td> 891 <td></td> 892 <td class="paramtype">const char *&#160;</td> 893 <td class="paramname"><em>color_name</em>, </td> 894 </tr> 895 <tr> 896 <td class="paramkey"></td> 897 <td></td> 898 <td class="paramtype">const char *&#160;</td> 899 <td class="paramname"><em>modelViewMatrix_name</em>&#160;</td> 900 </tr> 901 <tr> 902 <td></td> 903 <td>)</td> 904 <td></td><td></td> 905 </tr> 906 </table> 907</div><div class="memdoc"> 908<p>Loads the given shader program's built-in attribute and uniform locations. </p> 909 910</div> 911</div> 912<a class="anchor" id="ga9be36797e3b4d015877b5ae446a49d96"></a> 913<div class="memitem"> 914<div class="memproto"> 915 <table class="memname"> 916 <tr> 917 <td class="memname">DECLSPEC <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a> SDLCALL GPU_MakeAttribute </td> 918 <td>(</td> 919 <td class="paramtype">int&#160;</td> 920 <td class="paramname"><em>location</em>, </td> 921 </tr> 922 <tr> 923 <td class="paramkey"></td> 924 <td></td> 925 <td class="paramtype">void *&#160;</td> 926 <td class="paramname"><em>values</em>, </td> 927 </tr> 928 <tr> 929 <td class="paramkey"></td> 930 <td></td> 931 <td class="paramtype"><a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a>&#160;</td> 932 <td class="paramname"><em>format</em>&#160;</td> 933 </tr> 934 <tr> 935 <td></td> 936 <td>)</td> 937 <td></td><td></td> 938 </tr> 939 </table> 940</div><div class="memdoc"> 941<p>Returns a filled <a class="el" href="structGPU__Attribute.html">GPU_Attribute</a> object. </p> 942 943</div> 944</div> 945<a class="anchor" id="ga7c41406a8043f577c3b38d6e4cb2b55a"></a> 946<div class="memitem"> 947<div class="memproto"> 948 <table class="memname"> 949 <tr> 950 <td class="memname">DECLSPEC <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a> SDLCALL GPU_MakeAttributeFormat </td> 951 <td>(</td> 952 <td class="paramtype">int&#160;</td> 953 <td class="paramname"><em>num_elems_per_vertex</em>, </td> 954 </tr> 955 <tr> 956 <td class="paramkey"></td> 957 <td></td> 958 <td class="paramtype"><a class="el" href="group__ShaderInterface.html#ga11924d725d1169559a3d21851fddb66e">GPU_TypeEnum</a>&#160;</td> 959 <td class="paramname"><em>type</em>, </td> 960 </tr> 961 <tr> 962 <td class="paramkey"></td> 963 <td></td> 964 <td class="paramtype">GPU_bool&#160;</td> 965 <td class="paramname"><em>normalize</em>, </td> 966 </tr> 967 <tr> 968 <td class="paramkey"></td> 969 <td></td> 970 <td class="paramtype">int&#160;</td> 971 <td class="paramname"><em>stride_bytes</em>, </td> 972 </tr> 973 <tr> 974 <td class="paramkey"></td> 975 <td></td> 976 <td class="paramtype">int&#160;</td> 977 <td class="paramname"><em>offset_bytes</em>&#160;</td> 978 </tr> 979 <tr> 980 <td></td> 981 <td>)</td> 982 <td></td><td></td> 983 </tr> 984 </table> 985</div><div class="memdoc"> 986<p>Returns a filled <a class="el" href="structGPU__AttributeFormat.html">GPU_AttributeFormat</a> object. </p> 987 988</div> 989</div> 990<a class="anchor" id="gab4dead917bb9d1c552ef112441e555ae"></a> 991<div class="memitem"> 992<div class="memproto"> 993 <table class="memname"> 994 <tr> 995 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributef </td> 996 <td>(</td> 997 <td class="paramtype">int&#160;</td> 998 <td class="paramname"><em>location</em>, </td> 999 </tr> 1000 <tr> 1001 <td class="paramkey"></td> 1002 <td></td> 1003 <td class="paramtype">float&#160;</td> 1004 <td class="paramname"><em>value</em>&#160;</td> 1005 </tr> 1006 <tr> 1007 <td></td> 1008 <td>)</td> 1009 <td></td><td></td> 1010 </tr> 1011 </table> 1012</div><div class="memdoc"> 1013<p>Sets a constant-value shader attribute that will be used for each rendered vertex. </p> 1014 1015</div> 1016</div> 1017<a class="anchor" id="ga49f51650abe2b0b20b4017d42c0f30e1"></a> 1018<div class="memitem"> 1019<div class="memproto"> 1020 <table class="memname"> 1021 <tr> 1022 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributefv </td> 1023 <td>(</td> 1024 <td class="paramtype">int&#160;</td> 1025 <td class="paramname"><em>location</em>, </td> 1026 </tr> 1027 <tr> 1028 <td class="paramkey"></td> 1029 <td></td> 1030 <td class="paramtype">int&#160;</td> 1031 <td class="paramname"><em>num_elements</em>, </td> 1032 </tr> 1033 <tr> 1034 <td class="paramkey"></td> 1035 <td></td> 1036 <td class="paramtype">float *&#160;</td> 1037 <td class="paramname"><em>value</em>&#160;</td> 1038 </tr> 1039 <tr> 1040 <td></td> 1041 <td>)</td> 1042 <td></td><td></td> 1043 </tr> 1044 </table> 1045</div><div class="memdoc"> 1046<p>Sets a constant-value shader attribute that will be used for each rendered vertex. </p> 1047 1048</div> 1049</div> 1050<a class="anchor" id="gae9579af7d4ace1ff2176a382886cd8c0"></a> 1051<div class="memitem"> 1052<div class="memproto"> 1053 <table class="memname"> 1054 <tr> 1055 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributei </td> 1056 <td>(</td> 1057 <td class="paramtype">int&#160;</td> 1058 <td class="paramname"><em>location</em>, </td> 1059 </tr> 1060 <tr> 1061 <td class="paramkey"></td> 1062 <td></td> 1063 <td class="paramtype">int&#160;</td> 1064 <td class="paramname"><em>value</em>&#160;</td> 1065 </tr> 1066 <tr> 1067 <td></td> 1068 <td>)</td> 1069 <td></td><td></td> 1070 </tr> 1071 </table> 1072</div><div class="memdoc"> 1073<p>Sets a constant-value shader attribute that will be used for each rendered vertex. </p> 1074 1075</div> 1076</div> 1077<a class="anchor" id="ga73a724958644b3c45cbcbad67ffef26d"></a> 1078<div class="memitem"> 1079<div class="memproto"> 1080 <table class="memname"> 1081 <tr> 1082 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributeiv </td> 1083 <td>(</td> 1084 <td class="paramtype">int&#160;</td> 1085 <td class="paramname"><em>location</em>, </td> 1086 </tr> 1087 <tr> 1088 <td class="paramkey"></td> 1089 <td></td> 1090 <td class="paramtype">int&#160;</td> 1091 <td class="paramname"><em>num_elements</em>, </td> 1092 </tr> 1093 <tr> 1094 <td class="paramkey"></td> 1095 <td></td> 1096 <td class="paramtype">int *&#160;</td> 1097 <td class="paramname"><em>value</em>&#160;</td> 1098 </tr> 1099 <tr> 1100 <td></td> 1101 <td>)</td> 1102 <td></td><td></td> 1103 </tr> 1104 </table> 1105</div><div class="memdoc"> 1106<p>Sets a constant-value shader attribute that will be used for each rendered vertex. </p> 1107 1108</div> 1109</div> 1110<a class="anchor" id="ga3cc5d7ebc8e781fdbc988c622d952573"></a> 1111<div class="memitem"> 1112<div class="memproto"> 1113 <table class="memname"> 1114 <tr> 1115 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributeSource </td> 1116 <td>(</td> 1117 <td class="paramtype">int&#160;</td> 1118 <td class="paramname"><em>num_values</em>, </td> 1119 </tr> 1120 <tr> 1121 <td class="paramkey"></td> 1122 <td></td> 1123 <td class="paramtype"><a class="el" href="structGPU__Attribute.html">GPU_Attribute</a>&#160;</td> 1124 <td class="paramname"><em>source</em>&#160;</td> 1125 </tr> 1126 <tr> 1127 <td></td> 1128 <td>)</td> 1129 <td></td><td></td> 1130 </tr> 1131 </table> 1132</div><div class="memdoc"> 1133<p>Enables a shader attribute and sets its source data. </p> 1134 1135</div> 1136</div> 1137<a class="anchor" id="ga80bd6e258ef3eb48c3502b6e829abc80"></a> 1138<div class="memitem"> 1139<div class="memproto"> 1140 <table class="memname"> 1141 <tr> 1142 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributeui </td> 1143 <td>(</td> 1144 <td class="paramtype">int&#160;</td> 1145 <td class="paramname"><em>location</em>, </td> 1146 </tr> 1147 <tr> 1148 <td class="paramkey"></td> 1149 <td></td> 1150 <td class="paramtype">unsigned int&#160;</td> 1151 <td class="paramname"><em>value</em>&#160;</td> 1152 </tr> 1153 <tr> 1154 <td></td> 1155 <td>)</td> 1156 <td></td><td></td> 1157 </tr> 1158 </table> 1159</div><div class="memdoc"> 1160<p>Sets a constant-value shader attribute that will be used for each rendered vertex. </p> 1161 1162</div> 1163</div> 1164<a class="anchor" id="gaa25c469985276490caad4a4fc1c45166"></a> 1165<div class="memitem"> 1166<div class="memproto"> 1167 <table class="memname"> 1168 <tr> 1169 <td class="memname">DECLSPEC void SDLCALL GPU_SetAttributeuiv </td> 1170 <td>(</td> 1171 <td class="paramtype">int&#160;</td> 1172 <td class="paramname"><em>location</em>, </td> 1173 </tr> 1174 <tr> 1175 <td class="paramkey"></td> 1176 <td></td> 1177 <td class="paramtype">int&#160;</td> 1178 <td class="paramname"><em>num_elements</em>, </td> 1179 </tr> 1180 <tr> 1181 <td class="paramkey"></td> 1182 <td></td> 1183 <td class="paramtype">unsigned int *&#160;</td> 1184 <td class="paramname"><em>value</em>&#160;</td> 1185 </tr> 1186 <tr> 1187 <td></td> 1188 <td>)</td> 1189 <td></td><td></td> 1190 </tr> 1191 </table> 1192</div><div class="memdoc"> 1193<p>Sets a constant-value shader attribute that will be used for each rendered vertex. </p> 1194 1195</div> 1196</div> 1197<a class="anchor" id="ga357c4ea4ee7a855460175709866b023e"></a> 1198<div class="memitem"> 1199<div class="memproto"> 1200 <table class="memname"> 1201 <tr> 1202 <td class="memname">DECLSPEC void SDLCALL GPU_SetShaderBlock </td> 1203 <td>(</td> 1204 <td class="paramtype"><a class="el" href="structGPU__ShaderBlock.html">GPU_ShaderBlock</a>&#160;</td> 1205 <td class="paramname"><em>block</em></td><td>)</td> 1206 <td></td> 1207 </tr> 1208 </table> 1209</div><div class="memdoc"> 1210<p>Sets the current shader block to use the given attribute and uniform locations. </p> 1211 1212</div> 1213</div> 1214<a class="anchor" id="gabcb77794c1baef1453d1127f267fff27"></a> 1215<div class="memitem"> 1216<div class="memproto"> 1217 <table class="memname"> 1218 <tr> 1219 <td class="memname">DECLSPEC void SDLCALL GPU_SetShaderImage </td> 1220 <td>(</td> 1221 <td class="paramtype"><a class="el" href="structGPU__Image.html">GPU_Image</a> *&#160;</td> 1222 <td class="paramname"><em>image</em>, </td> 1223 </tr> 1224 <tr> 1225 <td class="paramkey"></td> 1226 <td></td> 1227 <td class="paramtype">int&#160;</td> 1228 <td class="paramname"><em>location</em>, </td> 1229 </tr> 1230 <tr> 1231 <td class="paramkey"></td> 1232 <td></td> 1233 <td class="paramtype">int&#160;</td> 1234 <td class="paramname"><em>image_unit</em>&#160;</td> 1235 </tr> 1236 <tr> 1237 <td></td> 1238 <td>)</td> 1239 <td></td><td></td> 1240 </tr> 1241 </table> 1242</div><div class="memdoc"> 1243<p>Sets the given image unit to the given image so that a custom shader can sample multiple textures. </p> 1244<dl class="params"><dt>Parameters</dt><dd> 1245 <table class="params"> 1246 <tr><td class="paramname">image</td><td>The source image/texture. Pass NULL to disable the image unit. </td></tr> 1247 <tr><td class="paramname">location</td><td>The uniform location of a texture sampler </td></tr> 1248 <tr><td class="paramname">image_unit</td><td>The index of the texture unit to set. 0 is the first unit, which is used by SDL_gpu's blitting functions. 1 would be the second unit. </td></tr> 1249 </table> 1250 </dd> 1251</dl> 1252 1253</div> 1254</div> 1255<a class="anchor" id="gac08ed9fceb0208d7815b9a72233fdd69"></a> 1256<div class="memitem"> 1257<div class="memproto"> 1258 <table class="memname"> 1259 <tr> 1260 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformf </td> 1261 <td>(</td> 1262 <td class="paramtype">int&#160;</td> 1263 <td class="paramname"><em>location</em>, </td> 1264 </tr> 1265 <tr> 1266 <td class="paramkey"></td> 1267 <td></td> 1268 <td class="paramtype">float&#160;</td> 1269 <td class="paramname"><em>value</em>&#160;</td> 1270 </tr> 1271 <tr> 1272 <td></td> 1273 <td>)</td> 1274 <td></td><td></td> 1275 </tr> 1276 </table> 1277</div><div class="memdoc"> 1278<p>Sets the value of the floating point uniform shader variable at the given location. This is equivalent to calling GPU_SetUniformfv(location, 1, 1, &amp;value). </p> 1279 1280</div> 1281</div> 1282<a class="anchor" id="ga764a01bd4c40101d78fd67aaf0b170de"></a> 1283<div class="memitem"> 1284<div class="memproto"> 1285 <table class="memname"> 1286 <tr> 1287 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformfv </td> 1288 <td>(</td> 1289 <td class="paramtype">int&#160;</td> 1290 <td class="paramname"><em>location</em>, </td> 1291 </tr> 1292 <tr> 1293 <td class="paramkey"></td> 1294 <td></td> 1295 <td class="paramtype">int&#160;</td> 1296 <td class="paramname"><em>num_elements_per_value</em>, </td> 1297 </tr> 1298 <tr> 1299 <td class="paramkey"></td> 1300 <td></td> 1301 <td class="paramtype">int&#160;</td> 1302 <td class="paramname"><em>num_values</em>, </td> 1303 </tr> 1304 <tr> 1305 <td class="paramkey"></td> 1306 <td></td> 1307 <td class="paramtype">float *&#160;</td> 1308 <td class="paramname"><em>values</em>&#160;</td> 1309 </tr> 1310 <tr> 1311 <td></td> 1312 <td>)</td> 1313 <td></td><td></td> 1314 </tr> 1315 </table> 1316</div><div class="memdoc"> 1317<p>Sets the value of the floating point uniform shader variable at the given location. </p> 1318 1319</div> 1320</div> 1321<a class="anchor" id="gafd4b7ddc9fec24a527bf54266ca8f010"></a> 1322<div class="memitem"> 1323<div class="memproto"> 1324 <table class="memname"> 1325 <tr> 1326 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformi </td> 1327 <td>(</td> 1328 <td class="paramtype">int&#160;</td> 1329 <td class="paramname"><em>location</em>, </td> 1330 </tr> 1331 <tr> 1332 <td class="paramkey"></td> 1333 <td></td> 1334 <td class="paramtype">int&#160;</td> 1335 <td class="paramname"><em>value</em>&#160;</td> 1336 </tr> 1337 <tr> 1338 <td></td> 1339 <td>)</td> 1340 <td></td><td></td> 1341 </tr> 1342 </table> 1343</div><div class="memdoc"> 1344<p>Sets the value of the integer uniform shader variable at the given location. This is equivalent to calling GPU_SetUniformiv(location, 1, 1, &amp;value). </p> 1345 1346</div> 1347</div> 1348<a class="anchor" id="ga4bb05804d5ceef6593fdc5c5df5b3357"></a> 1349<div class="memitem"> 1350<div class="memproto"> 1351 <table class="memname"> 1352 <tr> 1353 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformiv </td> 1354 <td>(</td> 1355 <td class="paramtype">int&#160;</td> 1356 <td class="paramname"><em>location</em>, </td> 1357 </tr> 1358 <tr> 1359 <td class="paramkey"></td> 1360 <td></td> 1361 <td class="paramtype">int&#160;</td> 1362 <td class="paramname"><em>num_elements_per_value</em>, </td> 1363 </tr> 1364 <tr> 1365 <td class="paramkey"></td> 1366 <td></td> 1367 <td class="paramtype">int&#160;</td> 1368 <td class="paramname"><em>num_values</em>, </td> 1369 </tr> 1370 <tr> 1371 <td class="paramkey"></td> 1372 <td></td> 1373 <td class="paramtype">int *&#160;</td> 1374 <td class="paramname"><em>values</em>&#160;</td> 1375 </tr> 1376 <tr> 1377 <td></td> 1378 <td>)</td> 1379 <td></td><td></td> 1380 </tr> 1381 </table> 1382</div><div class="memdoc"> 1383<p>Sets the value of the integer uniform shader variable at the given location. </p> 1384 1385</div> 1386</div> 1387<a class="anchor" id="ga9450cff9e03be61aafce63b3c7ce1f89"></a> 1388<div class="memitem"> 1389<div class="memproto"> 1390 <table class="memname"> 1391 <tr> 1392 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformMatrixfv </td> 1393 <td>(</td> 1394 <td class="paramtype">int&#160;</td> 1395 <td class="paramname"><em>location</em>, </td> 1396 </tr> 1397 <tr> 1398 <td class="paramkey"></td> 1399 <td></td> 1400 <td class="paramtype">int&#160;</td> 1401 <td class="paramname"><em>num_matrices</em>, </td> 1402 </tr> 1403 <tr> 1404 <td class="paramkey"></td> 1405 <td></td> 1406 <td class="paramtype">int&#160;</td> 1407 <td class="paramname"><em>num_rows</em>, </td> 1408 </tr> 1409 <tr> 1410 <td class="paramkey"></td> 1411 <td></td> 1412 <td class="paramtype">int&#160;</td> 1413 <td class="paramname"><em>num_columns</em>, </td> 1414 </tr> 1415 <tr> 1416 <td class="paramkey"></td> 1417 <td></td> 1418 <td class="paramtype">GPU_bool&#160;</td> 1419 <td class="paramname"><em>transpose</em>, </td> 1420 </tr> 1421 <tr> 1422 <td class="paramkey"></td> 1423 <td></td> 1424 <td class="paramtype">float *&#160;</td> 1425 <td class="paramname"><em>values</em>&#160;</td> 1426 </tr> 1427 <tr> 1428 <td></td> 1429 <td>)</td> 1430 <td></td><td></td> 1431 </tr> 1432 </table> 1433</div><div class="memdoc"> 1434<p>Sets the value of the matrix uniform shader variable at the given location. The size of the matrices sent is specified by num_rows and num_columns. Rows and columns must be between 2 and 4. </p> 1435 1436</div> 1437</div> 1438<a class="anchor" id="gab2d235defea51ae75d903a9e6bd01d3f"></a> 1439<div class="memitem"> 1440<div class="memproto"> 1441 <table class="memname"> 1442 <tr> 1443 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformui </td> 1444 <td>(</td> 1445 <td class="paramtype">int&#160;</td> 1446 <td class="paramname"><em>location</em>, </td> 1447 </tr> 1448 <tr> 1449 <td class="paramkey"></td> 1450 <td></td> 1451 <td class="paramtype">unsigned int&#160;</td> 1452 <td class="paramname"><em>value</em>&#160;</td> 1453 </tr> 1454 <tr> 1455 <td></td> 1456 <td>)</td> 1457 <td></td><td></td> 1458 </tr> 1459 </table> 1460</div><div class="memdoc"> 1461<p>Sets the value of the unsigned integer uniform shader variable at the given location. This is equivalent to calling GPU_SetUniformuiv(location, 1, 1, &amp;value). </p> 1462 1463</div> 1464</div> 1465<a class="anchor" id="gac723f1312e9fe36648a6604611375774"></a> 1466<div class="memitem"> 1467<div class="memproto"> 1468 <table class="memname"> 1469 <tr> 1470 <td class="memname">DECLSPEC void SDLCALL GPU_SetUniformuiv </td> 1471 <td>(</td> 1472 <td class="paramtype">int&#160;</td> 1473 <td class="paramname"><em>location</em>, </td> 1474 </tr> 1475 <tr> 1476 <td class="paramkey"></td> 1477 <td></td> 1478 <td class="paramtype">int&#160;</td> 1479 <td class="paramname"><em>num_elements_per_value</em>, </td> 1480 </tr> 1481 <tr> 1482 <td class="paramkey"></td> 1483 <td></td> 1484 <td class="paramtype">int&#160;</td> 1485 <td class="paramname"><em>num_values</em>, </td> 1486 </tr> 1487 <tr> 1488 <td class="paramkey"></td> 1489 <td></td> 1490 <td class="paramtype">unsigned int *&#160;</td> 1491 <td class="paramname"><em>values</em>&#160;</td> 1492 </tr> 1493 <tr> 1494 <td></td> 1495 <td>)</td> 1496 <td></td><td></td> 1497 </tr> 1498 </table> 1499</div><div class="memdoc"> 1500<p>Sets the value of the unsigned integer uniform shader variable at the given location. </p> 1501 1502</div> 1503</div> 1504</div><!-- contents --> 1505<!-- start footer part --> 1506<hr class="footer"/><address class="footer"><small> 1507Generated by &#160;<a href="http://www.doxygen.org/index.html"> 1508<img class="footer" src="doxygen.png" alt="doxygen"/> 1509</a> 1.8.6 1510</small></address> 1511</body> 1512</html>