I set "gl_ClipDistance = -1.0;" as you saied, but what make me confused is that the result is not changed, my model didn't disappear.
I hope you have couplet it with glEnable(GL_CLIP_DISTANCE0); in the host application, and the shader is actually executing.
Maybe you should read a little bit about the topic. There is a lot of material in all OpenGL related books:
- OpenGL SuperBible 5th Ed. – pg.528
- OpenGL SuperBible 6th Ed. – pg.276-281.
- OpenGL Programming Guide 8th Ed. – pg.238
- OpenGL Shading Language 3rd Ed – pg.112, 286