Well, I now know what happened. I use glLookAt while glMatrixMode(GL_PROJECTION)!
Let me get this straight:
so, gluLookAt cannot be used under projection matrix!
But now I don't quite understand while the wrong was like that. Though it was wrong, When I set "gluLookAt", the camera position did changed! Why just the highlight spot turned out like that?
read this http://www.songho.ca/opengl/gl_transform.html to understand how the matrices work