code: def __init__(self, vp_code, fp_code):
      # Importing here, when gl context is already present.
      # Otherwise get expection on Python3 because of PyOpenGL bug.
      from OpenGL.GL import shaders
  
      self._as_parameter_ = self._shader = shaders.compileProgram(
          shaders.compileShader(vp_code, gl.GL_VERTEX_SHADER),
          shaders.compileShader(fp_code, gl.GL_FRAGMENT_SHADER),
      )
      self._uniforms = {}
  
imports: from contextlib import contextmanager
  import numpy
  import OpenGL.GL
  from .meshutil import perspective
label_desc: Use image node_id 1 to create a new Shader object from inherited base classes: GLObject with example: obj = Shader(vp_code, fp_code)