public void StartUsing(ref Matrix4 a_m4Projection, ref Matrix4 a_m4View, ref Matrix4 a_m4Model) { OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle); GL.UniformMatrix4(m_aiShaderMatrixLocations[0], false, ref a_m4Projection); GL.UniformMatrix4(m_aiShaderMatrixLocations[1], false, ref a_m4View); GL.UniformMatrix4(m_aiShaderMatrixLocations[2], false, ref a_m4Model); }
public override void Render() { GL.BindVertexArray(m_uiVextexArrayHandle); //if (OpenTKUtilities.Instance.SupportedOpenGLVersion == OpenTKUtilities.GLVersion.OpenGL2X) //{ GL.BindBuffer(BufferTarget.ElementArrayBuffer, m_uiIndexBufferHandle); GL.BindBuffer(BufferTarget.ArrayBuffer, m_uiVertexBufferHandle); //} m_oShaderProgram.StartUsing(ref m_m4ModelMatrix); OpenTKUtilities.Use2DTexture(m_uiTextureID); GL.DrawElements(BeginMode.LineStrip, m_auiIndicies.Length, DrawElementsType.UnsignedShort, IntPtr.Zero); }
public void StopUsing() { OpenTKUtilities.UseShaderProgram(0); }
public void SetModelMatrix(ref Matrix4 a_m4Model) { OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle); GL.UniformMatrix4(m_aiShaderMatrixLocations[2], false, ref a_m4Model); }
public void SetViewMatrix(ref Matrix4 a_m4View) { OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle); GL.UniformMatrix4(m_aiShaderMatrixLocations[1], false, ref a_m4View); }
public void SetProjectionMatrix(ref Matrix4 a_m4Projection) { OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle); GL.UniformMatrix4(m_aiShaderMatrixLocations[0], false, ref a_m4Projection); }