我想通过着色器在我的模型中添加一个非常简单的灯光效果。我发现有一个顶点和一个片段着色器可以在OpenGL上工作:
<tbody>
{% for post in posts %}
<tr>
<td class="td-title-area">
<a href="{{ post.get_absolute_url }}" class="td-title truncate">
{{ post.title}}
</a>
</td>
<td> {{post.author}} </td>
<td> {{post.created_at|date:"SHORT_DATE_FORMAT"}} </td>
<td> 11 </td>
</tr>
{% endfor%}
</tbody>
问题是我在OpenGL ES2中工作,因为我正在开发一个Android应用程序。似乎内置变量gl_FrontLightModelProduct不适用于GLES20,因为我在此行编译失败。
我的问题是:如何修改上面的着色器以使它们在OpenGL ES20上下文中工作?
答案 0 :(得分:1)
gl_FrontLightModelProduct.sceneColor
给出场景的环境色,如果您希望不受光影响的区域为全黑,则可以为0。您可以使用vec4(0.0, 0.0, 0.0, 1.0);
您还应删除这些变量并将其作为制服发送。
gl_ModelViewMatrix
(发送制服)gl_Vertex
(从属性中读取)gl_NormalMatrix
(发送制服)gl_Normal
(从属性中读取)或者不是在转换OpenGL着色器时进行战斗,而是可以搜索Simple OpenGL ES 2.0着色器