I'm new too but may be the problem in fragment shader
out_Color = pass_Color;
out_Color = texture(texture_diffuse, pass_UV);
first you set the out color to be pass_Color than set it again to be texture(texture_diffuse, pass_UV).
You must add values.
out_Color = pass_Color + texture(texture_diffuse, pass_UV);
the final code
#version 150 core
uniform sampler2D texture_diffuse;
in vec4 pass_Color;
in vec2 pass_UV;
out vec4 out_Color;
out vec2 out_UV;
void main() {
out_Color = pass_Color + texture(texture_diffuse, pass_UV);
}