I took the following First Person Shooter (FPS) OpenGL control code and converted it to JOGL (with some limits) and also expanded it a bit.
http://www.codesampler.com/oglsrc/oglsrc_5.htm#ogl_fps_controls
I did not implement the “speed” based portion of the FPS control in the code above but it should be easy for someone to add it if they like. I actually expanded the code a little bit passed just FPS use. In FPS, you pretty much assume you have a flat world and you can fly up and down in the world along the look/view vector but in the code your up vector is pretty much always aligned with the world vertical - this means you have some limitations like the inability to roll around the view axis, etc. I added this to the code and basically got rid of the world vertical axis and made every local to the “camera” that you are moving around in the system. This means you can roll around and when you’ve rolled your mouse and keyboard motions are always relative to the new look and up vectors. Any way…check out the code - I’ll attach it in 2 parts because of the limit of attachments per post.
NOTE: There are 6 files to download…the other 2 are in the second post.