本文整理汇总了C#中Shader.insertGenUniform方法的典型用法代码示例。如果您正苦于以下问题:C# Shader.insertGenUniform方法的具体用法?C# Shader.insertGenUniform怎么用?C# Shader.insertGenUniform使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Shader
的用法示例。
在下文中一共展示了Shader.insertGenUniform方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: draw
/*
public void draw(Shader curShader, int[] curtexture, Shader.Uniform uniform, Vector2 vector2)
{
draw(curShader, curtexture,new UniformPairList( Shader.Uniform.in_vector, Vector2.Zero));
}
*/
public void draw(Shader shader, int[] curtexture, Shader.Uniform uniform, object obj)
{
gameWindow.checkGlError("--uncaught ERROR drawing 2d Quad--" + shader.name);
GL.UseProgram(shader.handle);
//unis.insert(ref shader);
shader.insertGenUniform(uniform, obj);
shader.insertUniform(Shader.Uniform.in_screensize, ref gameWindow.virtual_size);
shader.insertUniform(Shader.Uniform.in_rendersize, ref gameWindow.currentSize);
shader.insertUniform(Shader.Uniform.in_time, ref gameWindow.frameTime);
//shader.insertUniform(Shader.Uniform.in_near, ref );
//shader.insertUniform(Shader.Uniform.in_far, ref gameWindow.currentSize);
if (Scene != null)
{
shader.insertUniform(Shader.Uniform.in_no_lights, ref Scene.lightCount);
shader.insertUniform(Shader.Uniform.curLight, ref Scene.currentLight);
shader.insertUniform(Shader.Uniform.in_eyepos, ref Scene.eyePos);
}
initTextures(curtexture, shader.handle, "Texture");
GL.BindVertexArray(vaoHandle[0]);
GL.DrawElements(BeginMode.Triangles, meshes[0].indicesVboData.Length, DrawElementsType.UnsignedInt, IntPtr.Zero);
gameWindow.checkGlError("--Drawing ERROR Quad--" + shader.name);
}
示例2: insert
internal void insert(ref Shader shader)
{
int length = uniforms.Count;
for (int i = 0; i < length; i++)
{
shader.insertGenUniform(uniforms[i], objects[i]);
}
}