DragonFly On-Line Manual Pages
BUGLE-CAMERA(7) Bugle user manual BUGLE-CAMERA(7)
NAME
bugle-camera - allow the camera to be manipulated
SYNOPSIS
filterset camera [key inactive]
{
speed "1.0"
mouse_dga "no"
}
DESCRIPTION
This filter-set allows you to take over the camera in an OpenGL
application and move it about. This is particularly useful for testing
visibility culling and level-of-detail (LOD), as these will not change
as the camera is moved.
To use it, make sure it is activated, then move to the mouse to control
the camera angle and the Up, Down, Left and Right keys to move the
viewpoint. The camera model is a free camera, so it will not maintain a
defined up direction. There are a few other useful keys, described in
the section called "OPTIONS".
This filter-set supports activation and deactivation; the recommended
use is to have it initially inactive and use a key to take over control
when desired (see bugle(3)).
Since this filter-set is based on modifying OpenGL state without
telling the application, there are significant limitations:
o The projection matrix, and in particular, the near and far clip
planes, are not altered. Thus, trying to move in too close or out
too far could cause objects to be clipped away.
o Various fancy rendering techniques involve rendering a quad that is
carefully aligned to the screen; altering the camera will break
such techniques. There is ultimately no general fix as it is
impossible to know when an application is dealing with the real
world. If you are writing such an application and wish it to work
with this filter-set, you should use a vertex program that ignores
the model-view matrix in situations where you do not want this
filter-set to interfere.
o Applications that rely on the feedback buffer are likely to break.
OPTIONS
mouse_dga
This is a boolean option which should be enabled when debugging an
application that uses XDGA(3) to get relative motion data from the
mouse. If the camera goes all over the place as soon as you move
the mouse, try enabling this option (SDL-based applications are the
main culprits).
speed
This sets the speed at which the camera moves. Since each
application has a different scale, you will need to adjust the
value for each application (but dynamic control is also possible;
see below).
key_forward, key_back, key_left, key_right
These are the keys for moving the camera. They default to the arrow
keys.
key_faster, key_slower
These keys control the speed of the camera, doubling or halving it
respectively. They default to PageUp and PageDown.
key_reset
This key cancels any alterations made, restoring the camera to
where the application thinks it is. There is no default.
key_toggle
This key alternately releases and recaptures the mouse. It can be
useful if you need to use the mouse in another window without
completely disabling the filter-set (which would also restore the
camera position). There is no default.
This toggles display of the original view frustum. If this driver
supports GL_NV_depth_clamp, depth clamping is used to prevent the
frustum from being clipped to the near and far clip planes. There
is no default.
AUTHOR
bugle is written and maintained by Bruce Merry.
SEE ALSO
bugle(3)
BUGLE 0.0.20091026 October 2007 BUGLE-CAMERA(7)