I can not use ofVboMesh in the ofSetupOpenGL

I wanted to use shader to update the vertices of ofVboMesh.

↓vertShader
#version 430

uniform mat4 modelViewProjectionMatrix;
in vec2 texcoord;
in vec4 color;

uniform sampler2DRect posTex;
uniform vec2 screen;

out vec4 vColor;

void main() {

    vec2 pixPos = texture(posTex, texcoord).xy;

    pixPos.x = pixPos.x * screen.x - screen.x/2;
    pixPos.y = pixPos.y * screen.x - screen.x/2;

    vColor = color;

    gl_Position = modelViewProjectionMatrix * vec4(pixPos, 0.0, 1.0);

}

↓FragShade
#version 430

in vec4 vColor;
out vec4 outputColor;

void main() {
    outputColor = vColor;
}

↓ofApp&MainCodes
void Draw(){
Shader.begin();
_ofVboMesh.draw(OF_MESH_POINTS);
Shader.end();
}

int main( ){
	ofSetupOpenGL(1024,768,OF_WINDOW);		
	ofRunApp(new ofApp());
}

This does not draw normally on the screen

However, if do the following, it draws normally.

	ofGLWindowSettings settings;
	settings.setGLVersion(4,3);
	settings.width = 1024;
	settings.height = 768;
	ofCreateWindow(settings);
	ofRunApp(new ofApp());

However, I would like to implement it using ofSetupOpenGL.

Someone please lend me your power.

you can’t, you are using glsl version 430 for the shader but ofSetupOpenGL sets up opengl with version 2.1. ofCreateWindow allows you to set the version as well as other settings why do you want to use ofSetupOpenGL?

I see!
I was wrong in setting OpenGL.

There are many other processes written in this my program.

So, it is difficult to change the MM setting now.