Quite a lot! OpenGL's a rendering library, where a game engine usually does considerably more, and may even use OpenGL for the rendering it requests. Some potential techniques that you'd need to implement yourself if you use only OpenGL would be:
- object culling methods - view frustum culling, portal culling, etc.
- render-state management - optimizing your rendering activities by organizing the drawing of objects by common rendering attributes (e.g., color, textures, etc.)
- scene graph management - most game engines store objects in a hierarchical data structure, and traverse that data structure to determine what actions should occur per frame (e.g., who should be drawn; updated positions, velocities; etc.)
All of these are great techniques to learn, if you have the time and are doing it for the experience. If you want to ship a "product" (i.e., where the game's the goal regardless of technology), then use a game engine - you'll save tons of time.