Subversion Repositories AndroidProjects

Rev

Blame | Last modification | View Log | RSS feed

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_17) on Sun Nov 03 15:35:46 CET 2013 -->
<title>ShaderProgram (libgdx API)</title>
<meta name="date" content="2013-11-03">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
   if (location.href.indexOf('is-external=true') == -1) {
       parent.document.title="ShaderProgram (libgdx API)";
   }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ShaderProgram.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>
                                libgdx API
                                <style>
                                body, td, th { font-family:Helvetica, Tahoma, Arial, sans-serif; font-size:10pt }
                                pre, code, tt { font-size:9pt; font-family:Lucida Console, Courier New, sans-serif }
                                h1, h2, h3, .FrameTitleFont, .FrameHeadingFont, .TableHeadingColor font { font-size:105%;  font-weight:bold }
                                .TableHeadingColor { background:#EEEEFF; }
                                a { text-decoration:none }
                                a:hover { text-decoration:underline }
                                a:link, a:visited { color:blue }
                                table { border:0px }
                                .TableRowColor td:first-child { border-left:1px solid black }
                                .TableRowColor td { border:0px; border-bottom:1px solid black; border-right:1px solid black }
                                hr { border:0px; border-bottom:1px solid #333366; }
                                </style>
                        </em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/badlogic/gdx/graphics/glutils/PixmapTextureData.html" title="class in com.badlogic.gdx.graphics.glutils"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShapeRenderer.html" title="class in com.badlogic.gdx.graphics.glutils"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/badlogic/gdx/graphics/glutils/ShaderProgram.html" target="_top">Frames</a></li>
<li><a href="ShaderProgram.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
 allClassesLink = document.getElementById("allclasses_navbar_top");
 if(window==top) {
   allClassesLink.style.display = "block";
 }
 else {
   allClassesLink.style.display = "none";
 }
 //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.badlogic.gdx.graphics.glutils</div>
<h2 title="Class ShaderProgram" class="title">Class ShaderProgram</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.badlogic.gdx.graphics.glutils.ShaderProgram</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../com/badlogic/gdx/utils/Disposable.html" title="interface in com.badlogic.gdx.utils">Disposable</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">ShaderProgram</span>
extends java.lang.Object
implements <a href="../../../../../com/badlogic/gdx/utils/Disposable.html" title="interface in com.badlogic.gdx.utils">Disposable</a></pre>
<div class="block"><p>
 A shader program encapsulates a vertex and fragment shader pair linked to form a shader program useable with OpenGL ES 2.0.
 </p>
 
 <p>
 After construction a ShaderProgram can be used to draw <a href="../../../../../com/badlogic/gdx/graphics/Mesh.html" title="class in com.badlogic.gdx.graphics"><code>Mesh</code></a>. To make the GPU use a specific ShaderProgram the programs
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a> method must be used which effectively binds the program.
 </p>
 
 <p>
 When a ShaderProgram is bound one can set uniforms, vertex attributes and attributes as needed via the respective methods.
 </p>
 
 <p>
 A ShaderProgram can be unbound with a call to <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a>
 </p>
 
 <p>
 A ShaderProgram must be disposed via a call to <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#dispose()"><code>dispose()</code></a> when it is no longer needed
 </p>
 
 <p>
 ShaderPrograms are managed. In case the OpenGL context is lost all shaders get invalidated and have to be reloaded. This
 happens on Android when a user switches to another application or receives an incoming call. Managed ShaderPrograms are
 automatically reloaded when the OpenGL context is recreated so you don't have to do this manually.
 </p></div>
<dl><dt><span class="strong">Author:</span></dt>
  <dd>mzechner</dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#BINORMAL_ATTRIBUTE">BINORMAL_ATTRIBUTE</a></strong></code>
<div class="block">default name for binormal attribute</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#COLOR_ATTRIBUTE">COLOR_ATTRIBUTE</a></strong></code>
<div class="block">default name for color attributes</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#NORMAL_ATTRIBUTE">NORMAL_ATTRIBUTE</a></strong></code>
<div class="block">default name for normal attribtues</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#pedantic">pedantic</a></strong></code>
<div class="block">flag indicating whether attributes & uniforms must be present at all times</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#POSITION_ATTRIBUTE">POSITION_ATTRIBUTE</a></strong></code>
<div class="block">default name for position attributes</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#TANGENT_ATTRIBUTE">TANGENT_ATTRIBUTE</a></strong></code>
<div class="block">default name for tangent attribute</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#TEXCOORD_ATTRIBUTE">TEXCOORD_ATTRIBUTE</a></strong></code>
<div class="block">default name for texcoords attributes, append texture unit number</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#ShaderProgram(com.badlogic.gdx.files.FileHandle, com.badlogic.gdx.files.FileHandle)">ShaderProgram</a></strong>(<a href="../../../../../com/badlogic/gdx/files/FileHandle.html" title="class in com.badlogic.gdx.files">FileHandle</a>&nbsp;vertexShader,
             <a href="../../../../../com/badlogic/gdx/files/FileHandle.html" title="class in com.badlogic.gdx.files">FileHandle</a>&nbsp;fragmentShader)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#ShaderProgram(java.lang.String, java.lang.String)">ShaderProgram</a></strong>(java.lang.String&nbsp;vertexShader,
             java.lang.String&nbsp;fragmentShader)</code>
<div class="block">Construcs a new ShaderProgram and immediately compiles it.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()">begin</a></strong>()</code>
<div class="block">Makes OpenGL ES 2.0 use this vertex and fragment shader pair.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#clearAllShaderPrograms(com.badlogic.gdx.Application)">clearAllShaderPrograms</a></strong>(<a href="../../../../../com/badlogic/gdx/Application.html" title="interface in com.badlogic.gdx">Application</a>&nbsp;app)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#disableVertexAttribute(int)">disableVertexAttribute</a></strong>(int&nbsp;location)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#disableVertexAttribute(java.lang.String)">disableVertexAttribute</a></strong>(java.lang.String&nbsp;name)</code>
<div class="block">Disables the vertex attribute with the given name</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#dispose()">dispose</a></strong>()</code>
<div class="block">Disposes all resources associated with this shader.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#enableVertexAttribute(int)">enableVertexAttribute</a></strong>(int&nbsp;location)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#enableVertexAttribute(java.lang.String)">enableVertexAttribute</a></strong>(java.lang.String&nbsp;name)</code>
<div class="block">Enables the vertex attribute with the given name</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()">end</a></strong>()</code>
<div class="block">Disables this shader.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#fetchUniformLocation(java.lang.String, boolean)">fetchUniformLocation</a></strong>(java.lang.String&nbsp;name,
                    boolean&nbsp;pedantic)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getAttributeLocation(java.lang.String)">getAttributeLocation</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getAttributes()">getAttributes</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getAttributeSize(java.lang.String)">getAttributeSize</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getAttributeType(java.lang.String)">getAttributeType</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getFragmentShaderSource()">getFragmentShaderSource</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getLog()">getLog</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getManagedStatus()">getManagedStatus</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getUniformLocation(java.lang.String)">getUniformLocation</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getUniforms()">getUniforms</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getUniformSize(java.lang.String)">getUniformSize</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getUniformType(java.lang.String)">getUniformType</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#getVertexShaderSource()">getVertexShaderSource</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#hasAttribute(java.lang.String)">hasAttribute</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#hasUniform(java.lang.String)">hasUniform</a></strong>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#invalidateAllShaderPrograms(com.badlogic.gdx.Application)">invalidateAllShaderPrograms</a></strong>(<a href="../../../../../com/badlogic/gdx/Application.html" title="interface in com.badlogic.gdx">Application</a>&nbsp;app)</code>
<div class="block">Invalidates all shaders so the next time they are used new handles are generated</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#isCompiled()">isCompiled</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setAttributef(java.lang.String, float, float, float, float)">setAttributef</a></strong>(java.lang.String&nbsp;name,
             float&nbsp;value1,
             float&nbsp;value2,
             float&nbsp;value3,
             float&nbsp;value4)</code>
<div class="block">Sets the given attribute</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform1fv(int, float[], int, int)">setUniform1fv</a></strong>(int&nbsp;location,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform1fv(java.lang.String, float[], int, int)">setUniform1fv</a></strong>(java.lang.String&nbsp;name,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform2fv(int, float[], int, int)">setUniform2fv</a></strong>(int&nbsp;location,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform2fv(java.lang.String, float[], int, int)">setUniform2fv</a></strong>(java.lang.String&nbsp;name,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform3fv(int, float[], int, int)">setUniform3fv</a></strong>(int&nbsp;location,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform3fv(java.lang.String, float[], int, int)">setUniform3fv</a></strong>(java.lang.String&nbsp;name,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform4fv(int, float[], int, int)">setUniform4fv</a></strong>(int&nbsp;location,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniform4fv(java.lang.String, float[], int, int)">setUniform4fv</a></strong>(java.lang.String&nbsp;name,
             float[]&nbsp;values,
             int&nbsp;offset,
             int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, com.badlogic.gdx.graphics.Color)">setUniformf</a></strong>(int&nbsp;location,
           <a href="../../../../../com/badlogic/gdx/graphics/Color.html" title="class in com.badlogic.gdx.graphics">Color</a>&nbsp;values)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, float)">setUniformf</a></strong>(int&nbsp;location,
           float&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, float, float)">setUniformf</a></strong>(int&nbsp;location,
           float&nbsp;value1,
           float&nbsp;value2)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, float, float, float)">setUniformf</a></strong>(int&nbsp;location,
           float&nbsp;value1,
           float&nbsp;value2,
           float&nbsp;value3)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, float, float, float, float)">setUniformf</a></strong>(int&nbsp;location,
           float&nbsp;value1,
           float&nbsp;value2,
           float&nbsp;value3,
           float&nbsp;value4)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, com.badlogic.gdx.math.Vector2)">setUniformf</a></strong>(int&nbsp;location,
           <a href="../../../../../com/badlogic/gdx/math/Vector2.html" title="class in com.badlogic.gdx.math">Vector2</a>&nbsp;values)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(int, com.badlogic.gdx.math.Vector3)">setUniformf</a></strong>(int&nbsp;location,
           <a href="../../../../../com/badlogic/gdx/math/Vector3.html" title="class in com.badlogic.gdx.math">Vector3</a>&nbsp;values)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, com.badlogic.gdx.graphics.Color)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           <a href="../../../../../com/badlogic/gdx/graphics/Color.html" title="class in com.badlogic.gdx.graphics">Color</a>&nbsp;values)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, float)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           float&nbsp;value)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, float, float)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           float&nbsp;value1,
           float&nbsp;value2)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, float, float, float)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           float&nbsp;value1,
           float&nbsp;value2,
           float&nbsp;value3)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, float, float, float, float)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           float&nbsp;value1,
           float&nbsp;value2,
           float&nbsp;value3,
           float&nbsp;value4)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, com.badlogic.gdx.math.Vector2)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           <a href="../../../../../com/badlogic/gdx/math/Vector2.html" title="class in com.badlogic.gdx.math">Vector2</a>&nbsp;values)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformf(java.lang.String, com.badlogic.gdx.math.Vector3)">setUniformf</a></strong>(java.lang.String&nbsp;name,
           <a href="../../../../../com/badlogic/gdx/math/Vector3.html" title="class in com.badlogic.gdx.math">Vector3</a>&nbsp;values)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(int, int)">setUniformi</a></strong>(int&nbsp;location,
           int&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(int, int, int)">setUniformi</a></strong>(int&nbsp;location,
           int&nbsp;value1,
           int&nbsp;value2)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(int, int, int, int)">setUniformi</a></strong>(int&nbsp;location,
           int&nbsp;value1,
           int&nbsp;value2,
           int&nbsp;value3)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(int, int, int, int, int)">setUniformi</a></strong>(int&nbsp;location,
           int&nbsp;value1,
           int&nbsp;value2,
           int&nbsp;value3,
           int&nbsp;value4)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(java.lang.String, int)">setUniformi</a></strong>(java.lang.String&nbsp;name,
           int&nbsp;value)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(java.lang.String, int, int)">setUniformi</a></strong>(java.lang.String&nbsp;name,
           int&nbsp;value1,
           int&nbsp;value2)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(java.lang.String, int, int, int)">setUniformi</a></strong>(java.lang.String&nbsp;name,
           int&nbsp;value1,
           int&nbsp;value2,
           int&nbsp;value3)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformi(java.lang.String, int, int, int, int)">setUniformi</a></strong>(java.lang.String&nbsp;name,
           int&nbsp;value1,
           int&nbsp;value2,
           int&nbsp;value3,
           int&nbsp;value4)</code>
<div class="block">Sets the uniform with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(int, com.badlogic.gdx.math.Matrix3)">setUniformMatrix</a></strong>(int&nbsp;location,
                <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(int, com.badlogic.gdx.math.Matrix3, boolean)">setUniformMatrix</a></strong>(int&nbsp;location,
                <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix,
                boolean&nbsp;transpose)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(int, com.badlogic.gdx.math.Matrix4)">setUniformMatrix</a></strong>(int&nbsp;location,
                <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(int, com.badlogic.gdx.math.Matrix4, boolean)">setUniformMatrix</a></strong>(int&nbsp;location,
                <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix,
                boolean&nbsp;transpose)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix3)">setUniformMatrix</a></strong>(java.lang.String&nbsp;name,
                <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix)</code>
<div class="block">Sets the uniform matrix with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix3, boolean)">setUniformMatrix</a></strong>(java.lang.String&nbsp;name,
                <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix,
                boolean&nbsp;transpose)</code>
<div class="block">Sets the uniform matrix with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix4)">setUniformMatrix</a></strong>(java.lang.String&nbsp;name,
                <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix)</code>
<div class="block">Sets the uniform matrix with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix4, boolean)">setUniformMatrix</a></strong>(java.lang.String&nbsp;name,
                <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix,
                boolean&nbsp;transpose)</code>
<div class="block">Sets the uniform matrix with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix3fv(java.lang.String, java.nio.FloatBuffer, int, boolean)">setUniformMatrix3fv</a></strong>(java.lang.String&nbsp;name,
                   java.nio.FloatBuffer&nbsp;buffer,
                   int&nbsp;count,
                   boolean&nbsp;transpose)</code>
<div class="block">Sets an array of uniform matrices with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix4fv(int, float[], int, int)">setUniformMatrix4fv</a></strong>(int&nbsp;location,
                   float[]&nbsp;values,
                   int&nbsp;offset,
                   int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix4fv(java.lang.String, float[], int, int)">setUniformMatrix4fv</a></strong>(java.lang.String&nbsp;name,
                   float[]&nbsp;values,
                   int&nbsp;offset,
                   int&nbsp;length)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setUniformMatrix4fv(java.lang.String, java.nio.FloatBuffer, int, boolean)">setUniformMatrix4fv</a></strong>(java.lang.String&nbsp;name,
                   java.nio.FloatBuffer&nbsp;buffer,
                   int&nbsp;count,
                   boolean&nbsp;transpose)</code>
<div class="block">Sets an array of uniform matrices with the given name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setVertexAttribute(int, int, int, boolean, int, java.nio.Buffer)">setVertexAttribute</a></strong>(int&nbsp;location,
                  int&nbsp;size,
                  int&nbsp;type,
                  boolean&nbsp;normalize,
                  int&nbsp;stride,
                  java.nio.Buffer&nbsp;buffer)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setVertexAttribute(int, int, int, boolean, int, int)">setVertexAttribute</a></strong>(int&nbsp;location,
                  int&nbsp;size,
                  int&nbsp;type,
                  boolean&nbsp;normalize,
                  int&nbsp;stride,
                  int&nbsp;offset)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setVertexAttribute(java.lang.String, int, int, boolean, int, java.nio.Buffer)">setVertexAttribute</a></strong>(java.lang.String&nbsp;name,
                  int&nbsp;size,
                  int&nbsp;type,
                  boolean&nbsp;normalize,
                  int&nbsp;stride,
                  java.nio.Buffer&nbsp;buffer)</code>
<div class="block">Sets the vertex attribute with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#setVertexAttribute(java.lang.String, int, int, boolean, int, int)">setVertexAttribute</a></strong>(java.lang.String&nbsp;name,
                  int&nbsp;size,
                  int&nbsp;type,
                  boolean&nbsp;normalize,
                  int&nbsp;stride,
                  int&nbsp;offset)</code>
<div class="block">Sets the vertex attribute with the given name.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="POSITION_ATTRIBUTE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>POSITION_ATTRIBUTE</h4>
<pre>public static final&nbsp;java.lang.String POSITION_ATTRIBUTE</pre>
<div class="block">default name for position attributes</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#com.badlogic.gdx.graphics.glutils.ShaderProgram.POSITION_ATTRIBUTE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NORMAL_ATTRIBUTE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NORMAL_ATTRIBUTE</h4>
<pre>public static final&nbsp;java.lang.String NORMAL_ATTRIBUTE</pre>
<div class="block">default name for normal attribtues</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#com.badlogic.gdx.graphics.glutils.ShaderProgram.NORMAL_ATTRIBUTE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="COLOR_ATTRIBUTE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>COLOR_ATTRIBUTE</h4>
<pre>public static final&nbsp;java.lang.String COLOR_ATTRIBUTE</pre>
<div class="block">default name for color attributes</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#com.badlogic.gdx.graphics.glutils.ShaderProgram.COLOR_ATTRIBUTE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="TEXCOORD_ATTRIBUTE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TEXCOORD_ATTRIBUTE</h4>
<pre>public static final&nbsp;java.lang.String TEXCOORD_ATTRIBUTE</pre>
<div class="block">default name for texcoords attributes, append texture unit number</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#com.badlogic.gdx.graphics.glutils.ShaderProgram.TEXCOORD_ATTRIBUTE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="TANGENT_ATTRIBUTE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TANGENT_ATTRIBUTE</h4>
<pre>public static final&nbsp;java.lang.String TANGENT_ATTRIBUTE</pre>
<div class="block">default name for tangent attribute</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#com.badlogic.gdx.graphics.glutils.ShaderProgram.TANGENT_ATTRIBUTE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="BINORMAL_ATTRIBUTE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BINORMAL_ATTRIBUTE</h4>
<pre>public static final&nbsp;java.lang.String BINORMAL_ATTRIBUTE</pre>
<div class="block">default name for binormal attribute</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#com.badlogic.gdx.graphics.glutils.ShaderProgram.BINORMAL_ATTRIBUTE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="pedantic">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>pedantic</h4>
<pre>public static&nbsp;boolean pedantic</pre>
<div class="block">flag indicating whether attributes & uniforms must be present at all times</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="ShaderProgram(java.lang.String, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ShaderProgram</h4>
<pre>public&nbsp;ShaderProgram(java.lang.String&nbsp;vertexShader,
             java.lang.String&nbsp;fragmentShader)</pre>
<div class="block">Construcs a new ShaderProgram and immediately compiles it.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>vertexShader</code> - the vertex shader</dd><dd><code>fragmentShader</code> - the fragment shader</dd></dl>
</li>
</ul>
<a name="ShaderProgram(com.badlogic.gdx.files.FileHandle, com.badlogic.gdx.files.FileHandle)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ShaderProgram</h4>
<pre>public&nbsp;ShaderProgram(<a href="../../../../../com/badlogic/gdx/files/FileHandle.html" title="class in com.badlogic.gdx.files">FileHandle</a>&nbsp;vertexShader,
             <a href="../../../../../com/badlogic/gdx/files/FileHandle.html" title="class in com.badlogic.gdx.files">FileHandle</a>&nbsp;fragmentShader)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getLog()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLog</h4>
<pre>public&nbsp;java.lang.String&nbsp;getLog()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>the log info for the shader compilation and program linking stage. The shader needs to be bound for this method to
         have an effect.</dd></dl>
</li>
</ul>
<a name="isCompiled()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCompiled</h4>
<pre>public&nbsp;boolean&nbsp;isCompiled()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>whether this ShaderProgram compiled successfully.</dd></dl>
</li>
</ul>
<a name="fetchUniformLocation(java.lang.String, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fetchUniformLocation</h4>
<pre>public&nbsp;int&nbsp;fetchUniformLocation(java.lang.String&nbsp;name,
                       boolean&nbsp;pedantic)</pre>
</li>
</ul>
<a name="setUniformi(java.lang.String, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(java.lang.String&nbsp;name,
               int&nbsp;value)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value</code> - the value</dd></dl>
</li>
</ul>
<a name="setUniformi(int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(int&nbsp;location,
               int&nbsp;value)</pre>
</li>
</ul>
<a name="setUniformi(java.lang.String, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(java.lang.String&nbsp;name,
               int&nbsp;value1,
               int&nbsp;value2)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd></dl>
</li>
</ul>
<a name="setUniformi(int, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(int&nbsp;location,
               int&nbsp;value1,
               int&nbsp;value2)</pre>
</li>
</ul>
<a name="setUniformi(java.lang.String, int, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(java.lang.String&nbsp;name,
               int&nbsp;value1,
               int&nbsp;value2,
               int&nbsp;value3)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd><dd><code>value3</code> - the third value</dd></dl>
</li>
</ul>
<a name="setUniformi(int, int, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(int&nbsp;location,
               int&nbsp;value1,
               int&nbsp;value2,
               int&nbsp;value3)</pre>
</li>
</ul>
<a name="setUniformi(java.lang.String, int, int, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(java.lang.String&nbsp;name,
               int&nbsp;value1,
               int&nbsp;value2,
               int&nbsp;value3,
               int&nbsp;value4)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd><dd><code>value3</code> - the third value</dd><dd><code>value4</code> - the fourth value</dd></dl>
</li>
</ul>
<a name="setUniformi(int, int, int, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformi</h4>
<pre>public&nbsp;void&nbsp;setUniformi(int&nbsp;location,
               int&nbsp;value1,
               int&nbsp;value2,
               int&nbsp;value3,
               int&nbsp;value4)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               float&nbsp;value)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value</code> - the value</dd></dl>
</li>
</ul>
<a name="setUniformf(int, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               float&nbsp;value)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               float&nbsp;value1,
               float&nbsp;value2)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd></dl>
</li>
</ul>
<a name="setUniformf(int, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               float&nbsp;value1,
               float&nbsp;value2)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, float, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               float&nbsp;value1,
               float&nbsp;value2,
               float&nbsp;value3)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd><dd><code>value3</code> - the third value</dd></dl>
</li>
</ul>
<a name="setUniformf(int, float, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               float&nbsp;value1,
               float&nbsp;value2,
               float&nbsp;value3)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, float, float, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               float&nbsp;value1,
               float&nbsp;value2,
               float&nbsp;value3,
               float&nbsp;value4)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd><dd><code>value3</code> - the third value</dd><dd><code>value4</code> - the fourth value</dd></dl>
</li>
</ul>
<a name="setUniformf(int, float, float, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               float&nbsp;value1,
               float&nbsp;value2,
               float&nbsp;value3,
               float&nbsp;value4)</pre>
</li>
</ul>
<a name="setUniform1fv(java.lang.String, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform1fv</h4>
<pre>public&nbsp;void&nbsp;setUniform1fv(java.lang.String&nbsp;name,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform1fv(int, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform1fv</h4>
<pre>public&nbsp;void&nbsp;setUniform1fv(int&nbsp;location,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform2fv(java.lang.String, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform2fv</h4>
<pre>public&nbsp;void&nbsp;setUniform2fv(java.lang.String&nbsp;name,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform2fv(int, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform2fv</h4>
<pre>public&nbsp;void&nbsp;setUniform2fv(int&nbsp;location,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform3fv(java.lang.String, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform3fv</h4>
<pre>public&nbsp;void&nbsp;setUniform3fv(java.lang.String&nbsp;name,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform3fv(int, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform3fv</h4>
<pre>public&nbsp;void&nbsp;setUniform3fv(int&nbsp;location,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform4fv(java.lang.String, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform4fv</h4>
<pre>public&nbsp;void&nbsp;setUniform4fv(java.lang.String&nbsp;name,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniform4fv(int, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniform4fv</h4>
<pre>public&nbsp;void&nbsp;setUniform4fv(int&nbsp;location,
                 float[]&nbsp;values,
                 int&nbsp;offset,
                 int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix4)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(java.lang.String&nbsp;name,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix)</pre>
<div class="block">Sets the uniform matrix with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>matrix</code> - the matrix</dd></dl>
</li>
</ul>
<a name="setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix4, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(java.lang.String&nbsp;name,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix,
                    boolean&nbsp;transpose)</pre>
<div class="block">Sets the uniform matrix with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>matrix</code> - the matrix</dd><dd><code>transpose</code> - whether the matrix shouls be transposed</dd></dl>
</li>
</ul>
<a name="setUniformMatrix(int, com.badlogic.gdx.math.Matrix4)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(int&nbsp;location,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix)</pre>
</li>
</ul>
<a name="setUniformMatrix(int, com.badlogic.gdx.math.Matrix4, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(int&nbsp;location,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix4.html" title="class in com.badlogic.gdx.math">Matrix4</a>&nbsp;matrix,
                    boolean&nbsp;transpose)</pre>
</li>
</ul>
<a name="setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix3)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(java.lang.String&nbsp;name,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix)</pre>
<div class="block">Sets the uniform matrix with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>matrix</code> - the matrix</dd></dl>
</li>
</ul>
<a name="setUniformMatrix(java.lang.String, com.badlogic.gdx.math.Matrix3, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(java.lang.String&nbsp;name,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix,
                    boolean&nbsp;transpose)</pre>
<div class="block">Sets the uniform matrix with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>matrix</code> - the matrix</dd><dd><code>transpose</code> - whether the uniform matrix should be transposed</dd></dl>
</li>
</ul>
<a name="setUniformMatrix(int, com.badlogic.gdx.math.Matrix3)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(int&nbsp;location,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix)</pre>
</li>
</ul>
<a name="setUniformMatrix(int, com.badlogic.gdx.math.Matrix3, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix(int&nbsp;location,
                    <a href="../../../../../com/badlogic/gdx/math/Matrix3.html" title="class in com.badlogic.gdx.math">Matrix3</a>&nbsp;matrix,
                    boolean&nbsp;transpose)</pre>
</li>
</ul>
<a name="setUniformMatrix3fv(java.lang.String, java.nio.FloatBuffer, int, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix3fv</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix3fv(java.lang.String&nbsp;name,
                       java.nio.FloatBuffer&nbsp;buffer,
                       int&nbsp;count,
                       boolean&nbsp;transpose)</pre>
<div class="block">Sets an array of uniform matrices with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>buffer</code> - buffer containing the matrix data</dd><dd><code>transpose</code> - whether the uniform matrix should be transposed</dd></dl>
</li>
</ul>
<a name="setUniformMatrix4fv(java.lang.String, java.nio.FloatBuffer, int, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix4fv</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix4fv(java.lang.String&nbsp;name,
                       java.nio.FloatBuffer&nbsp;buffer,
                       int&nbsp;count,
                       boolean&nbsp;transpose)</pre>
<div class="block">Sets an array of uniform matrices with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>buffer</code> - buffer containing the matrix data</dd><dd><code>transpose</code> - whether the uniform matrix should be transposed</dd></dl>
</li>
</ul>
<a name="setUniformMatrix4fv(int, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix4fv</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix4fv(int&nbsp;location,
                       float[]&nbsp;values,
                       int&nbsp;offset,
                       int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniformMatrix4fv(java.lang.String, float[], int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformMatrix4fv</h4>
<pre>public&nbsp;void&nbsp;setUniformMatrix4fv(java.lang.String&nbsp;name,
                       float[]&nbsp;values,
                       int&nbsp;offset,
                       int&nbsp;length)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, com.badlogic.gdx.math.Vector2)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               <a href="../../../../../com/badlogic/gdx/math/Vector2.html" title="class in com.badlogic.gdx.math">Vector2</a>&nbsp;values)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>values</code> - x and y as the first and second values respectively</dd></dl>
</li>
</ul>
<a name="setUniformf(int, com.badlogic.gdx.math.Vector2)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               <a href="../../../../../com/badlogic/gdx/math/Vector2.html" title="class in com.badlogic.gdx.math">Vector2</a>&nbsp;values)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, com.badlogic.gdx.math.Vector3)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               <a href="../../../../../com/badlogic/gdx/math/Vector3.html" title="class in com.badlogic.gdx.math">Vector3</a>&nbsp;values)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>values</code> - x, y and z as the first, second and third values respectively</dd></dl>
</li>
</ul>
<a name="setUniformf(int, com.badlogic.gdx.math.Vector3)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               <a href="../../../../../com/badlogic/gdx/math/Vector3.html" title="class in com.badlogic.gdx.math">Vector3</a>&nbsp;values)</pre>
</li>
</ul>
<a name="setUniformf(java.lang.String, com.badlogic.gdx.graphics.Color)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(java.lang.String&nbsp;name,
               <a href="../../../../../com/badlogic/gdx/graphics/Color.html" title="class in com.badlogic.gdx.graphics">Color</a>&nbsp;values)</pre>
<div class="block">Sets the uniform with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd><dd><code>values</code> - r, g, b and a as the first through fourth values respectively</dd></dl>
</li>
</ul>
<a name="setUniformf(int, com.badlogic.gdx.graphics.Color)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUniformf</h4>
<pre>public&nbsp;void&nbsp;setUniformf(int&nbsp;location,
               <a href="../../../../../com/badlogic/gdx/graphics/Color.html" title="class in com.badlogic.gdx.graphics">Color</a>&nbsp;values)</pre>
</li>
</ul>
<a name="setVertexAttribute(java.lang.String, int, int, boolean, int, java.nio.Buffer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;setVertexAttribute(java.lang.String&nbsp;name,
                      int&nbsp;size,
                      int&nbsp;type,
                      boolean&nbsp;normalize,
                      int&nbsp;stride,
                      java.nio.Buffer&nbsp;buffer)</pre>
<div class="block">Sets the vertex attribute with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the attribute name</dd><dd><code>size</code> - the number of components, must be >= 1 and <= 4</dd><dd><code>type</code> - the type, must be one of GL20.GL_BYTE, GL20.GL_UNSIGNED_BYTE, GL20.GL_SHORT,
           GL20.GL_UNSIGNED_SHORT,GL20.GL_FIXED, or GL20.GL_FLOAT. GL_FIXED will not work on the desktop</dd><dd><code>normalize</code> - whether fixed point data should be normalized. Will not work on the desktop</dd><dd><code>stride</code> - the stride in bytes between successive attributes</dd><dd><code>buffer</code> - the buffer containing the vertex attributes.</dd></dl>
</li>
</ul>
<a name="setVertexAttribute(int, int, int, boolean, int, java.nio.Buffer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;setVertexAttribute(int&nbsp;location,
                      int&nbsp;size,
                      int&nbsp;type,
                      boolean&nbsp;normalize,
                      int&nbsp;stride,
                      java.nio.Buffer&nbsp;buffer)</pre>
</li>
</ul>
<a name="setVertexAttribute(java.lang.String, int, int, boolean, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;setVertexAttribute(java.lang.String&nbsp;name,
                      int&nbsp;size,
                      int&nbsp;type,
                      boolean&nbsp;normalize,
                      int&nbsp;stride,
                      int&nbsp;offset)</pre>
<div class="block">Sets the vertex attribute with the given name. Throws an IllegalArgumentException in case it is not called in between a
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#begin()"><code>begin()</code></a>/<a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a> block.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the attribute name</dd><dd><code>size</code> - the number of components, must be >= 1 and <= 4</dd><dd><code>type</code> - the type, must be one of GL20.GL_BYTE, GL20.GL_UNSIGNED_BYTE, GL20.GL_SHORT,
           GL20.GL_UNSIGNED_SHORT,GL20.GL_FIXED, or GL20.GL_FLOAT. GL_FIXED will not work on the desktop</dd><dd><code>normalize</code> - whether fixed point data should be normalized. Will not work on the desktop</dd><dd><code>stride</code> - the stride in bytes between successive attributes</dd><dd><code>offset</code> - byte offset into the vertex buffer object bound to GL20.GL_ARRAY_BUFFER.</dd></dl>
</li>
</ul>
<a name="setVertexAttribute(int, int, int, boolean, int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;setVertexAttribute(int&nbsp;location,
                      int&nbsp;size,
                      int&nbsp;type,
                      boolean&nbsp;normalize,
                      int&nbsp;stride,
                      int&nbsp;offset)</pre>
</li>
</ul>
<a name="begin()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>begin</h4>
<pre>public&nbsp;void&nbsp;begin()</pre>
<div class="block">Makes OpenGL ES 2.0 use this vertex and fragment shader pair. When you are done with this shader you have to call
 <a href="../../../../../com/badlogic/gdx/graphics/glutils/ShaderProgram.html#end()"><code>end()</code></a>.</div>
</li>
</ul>
<a name="end()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>end</h4>
<pre>public&nbsp;void&nbsp;end()</pre>
<div class="block">Disables this shader. Must be called when one is done with the shader. Don't mix it with dispose, that will release the
 shader resources.</div>
</li>
</ul>
<a name="dispose()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispose</h4>
<pre>public&nbsp;void&nbsp;dispose()</pre>
<div class="block">Disposes all resources associated with this shader. Must be called when the shader is no longer used.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../com/badlogic/gdx/utils/Disposable.html#dispose()">dispose</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/badlogic/gdx/utils/Disposable.html" title="interface in com.badlogic.gdx.utils">Disposable</a></code></dd>
</dl>
</li>
</ul>
<a name="disableVertexAttribute(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;disableVertexAttribute(java.lang.String&nbsp;name)</pre>
<div class="block">Disables the vertex attribute with the given name</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the vertex attribute name</dd></dl>
</li>
</ul>
<a name="disableVertexAttribute(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;disableVertexAttribute(int&nbsp;location)</pre>
</li>
</ul>
<a name="enableVertexAttribute(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enableVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;enableVertexAttribute(java.lang.String&nbsp;name)</pre>
<div class="block">Enables the vertex attribute with the given name</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the vertex attribute name</dd></dl>
</li>
</ul>
<a name="enableVertexAttribute(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enableVertexAttribute</h4>
<pre>public&nbsp;void&nbsp;enableVertexAttribute(int&nbsp;location)</pre>
</li>
</ul>
<a name="invalidateAllShaderPrograms(com.badlogic.gdx.Application)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invalidateAllShaderPrograms</h4>
<pre>public static&nbsp;void&nbsp;invalidateAllShaderPrograms(<a href="../../../../../com/badlogic/gdx/Application.html" title="interface in com.badlogic.gdx">Application</a>&nbsp;app)</pre>
<div class="block">Invalidates all shaders so the next time they are used new handles are generated</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>app</code> - </dd></dl>
</li>
</ul>
<a name="clearAllShaderPrograms(com.badlogic.gdx.Application)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearAllShaderPrograms</h4>
<pre>public static&nbsp;void&nbsp;clearAllShaderPrograms(<a href="../../../../../com/badlogic/gdx/Application.html" title="interface in com.badlogic.gdx">Application</a>&nbsp;app)</pre>
</li>
</ul>
<a name="getManagedStatus()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getManagedStatus</h4>
<pre>public static&nbsp;java.lang.String&nbsp;getManagedStatus()</pre>
</li>
</ul>
<a name="setAttributef(java.lang.String, float, float, float, float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttributef</h4>
<pre>public&nbsp;void&nbsp;setAttributef(java.lang.String&nbsp;name,
                 float&nbsp;value1,
                 float&nbsp;value2,
                 float&nbsp;value3,
                 float&nbsp;value4)</pre>
<div class="block">Sets the given attribute</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the attribute</dd><dd><code>value1</code> - the first value</dd><dd><code>value2</code> - the second value</dd><dd><code>value3</code> - the third value</dd><dd><code>value4</code> - the fourth value</dd></dl>
</li>
</ul>
<a name="hasAttribute(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasAttribute</h4>
<pre>public&nbsp;boolean&nbsp;hasAttribute(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the attribute</dd>
<dt><span class="strong">Returns:</span></dt><dd>whether the attribute is available in the shader</dd></dl>
</li>
</ul>
<a name="getAttributeType(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeType</h4>
<pre>public&nbsp;int&nbsp;getAttributeType(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the attribute</dd>
<dt><span class="strong">Returns:</span></dt><dd>the type of the attribute, one of <a href="../../../../../com/badlogic/gdx/graphics/GL20.html#GL_FLOAT"><code>GL20.GL_FLOAT</code></a>, <a href="../../../../../com/badlogic/gdx/graphics/GL20.html#GL_FLOAT_VEC2"><code>GL20.GL_FLOAT_VEC2</code></a> etc.</dd></dl>
</li>
</ul>
<a name="getAttributeLocation(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeLocation</h4>
<pre>public&nbsp;int&nbsp;getAttributeLocation(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the attribute</dd>
<dt><span class="strong">Returns:</span></dt><dd>the location of the attribute or -1.</dd></dl>
</li>
</ul>
<a name="getAttributeSize(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeSize</h4>
<pre>public&nbsp;int&nbsp;getAttributeSize(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the attribute</dd>
<dt><span class="strong">Returns:</span></dt><dd>the size of the attribute or 0.</dd></dl>
</li>
</ul>
<a name="hasUniform(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasUniform</h4>
<pre>public&nbsp;boolean&nbsp;hasUniform(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd>
<dt><span class="strong">Returns:</span></dt><dd>whether the uniform is available in the shader</dd></dl>
</li>
</ul>
<a name="getUniformType(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUniformType</h4>
<pre>public&nbsp;int&nbsp;getUniformType(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd>
<dt><span class="strong">Returns:</span></dt><dd>the type of the uniform, one of <a href="../../../../../com/badlogic/gdx/graphics/GL20.html#GL_FLOAT"><code>GL20.GL_FLOAT</code></a>, <a href="../../../../../com/badlogic/gdx/graphics/GL20.html#GL_FLOAT_VEC2"><code>GL20.GL_FLOAT_VEC2</code></a> etc.</dd></dl>
</li>
</ul>
<a name="getUniformLocation(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUniformLocation</h4>
<pre>public&nbsp;int&nbsp;getUniformLocation(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd>
<dt><span class="strong">Returns:</span></dt><dd>the location of the uniform or -1.</dd></dl>
</li>
</ul>
<a name="getUniformSize(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUniformSize</h4>
<pre>public&nbsp;int&nbsp;getUniformSize(java.lang.String&nbsp;name)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the uniform</dd>
<dt><span class="strong">Returns:</span></dt><dd>the size of the uniform or 0.</dd></dl>
</li>
</ul>
<a name="getAttributes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributes</h4>
<pre>public&nbsp;java.lang.String[]&nbsp;getAttributes()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>the attributes</dd></dl>
</li>
</ul>
<a name="getUniforms()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUniforms</h4>
<pre>public&nbsp;java.lang.String[]&nbsp;getUniforms()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>the uniforms</dd></dl>
</li>
</ul>
<a name="getVertexShaderSource()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVertexShaderSource</h4>
<pre>public&nbsp;java.lang.String&nbsp;getVertexShaderSource()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>the source of the vertex shader</dd></dl>
</li>
</ul>
<a name="getFragmentShaderSource()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getFragmentShaderSource</h4>
<pre>public&nbsp;java.lang.String&nbsp;getFragmentShaderSource()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>the source of the fragment shader</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ShaderProgram.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>libgdx API</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/badlogic/gdx/graphics/glutils/PixmapTextureData.html" title="class in com.badlogic.gdx.graphics.glutils"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../com/badlogic/gdx/graphics/glutils/ShapeRenderer.html" title="class in com.badlogic.gdx.graphics.glutils"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/badlogic/gdx/graphics/glutils/ShaderProgram.html" target="_top">Frames</a></li>
<li><a href="ShaderProgram.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
 allClassesLink = document.getElementById("allclasses_navbar_bottom");
 if(window==top) {
   allClassesLink.style.display = "block";
 }
 else {
   allClassesLink.style.display = "none";
 }
 //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>
                                <div style="font-size:9pt"><i>
                                Copyright &copy; 2010-2013 Mario Zechner (contact@badlogicgames.com), Nathan Sweet (admin@esotericsoftware.com)
                                </i></div>
                        </small></p>
</body>
</html>