| update: refactor the shader in GLPrimitiveRenderer