コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
 public void StopUsing()
 {
     OpenTKUtilities.UseShaderProgram(0);
 }
コード例 #4
0
 public void SetModelMatrix(ref Matrix4 a_m4Model)
 {
     OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle);
     GL.UniformMatrix4(m_aiShaderMatrixLocations[2], false, ref a_m4Model);
 }
コード例 #5
0
 public void SetViewMatrix(ref Matrix4 a_m4View)
 {
     OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle);
     GL.UniformMatrix4(m_aiShaderMatrixLocations[1], false, ref a_m4View);
 }
コード例 #6
0
 public void SetProjectionMatrix(ref Matrix4 a_m4Projection)
 {
     OpenTKUtilities.UseShaderProgram(m_iShaderProgramHandle);
     GL.UniformMatrix4(m_aiShaderMatrixLocations[0], false, ref a_m4Projection);
 }