Machines with graphics cards capable of accelerating 3D graphics through OpenGL can take advantage of LandSerf's 3D viewing options. Non accelerated graphics rendering is still possible, but in many cases will be too slow to allow much interactive visualisation.
To start the 3D viewer, a DEM must be selected as the primary raster. Optionally, a separate
display and vector map can be incorporated into the display if present. Selecting either the
Display->3D view
menu option or the
button. After a few seconds
this should display a window similar to the one below showing the primary raster draped with whatever
was shown in the main LandSerf window.
Initial 3D view
To change the viewing position, use the mouse to control the location of the 'camera'. Navigation in three dimensions takes a little while to get used to, but the general rule for moving the camera is to think of the camera as being set in the nose of an aeroplane pointing at the centre of the viewing window.
Holding the left mouse button down while dragging the mouse up and down controls the pitch of the aeroplane. Dragging the mouse left or right controls the horizontal tilt ('yaw') and roll of the aeroplane.
To move towards or away from the viewpoint at the centre of the screen, either drag the mouse with the
right button up or down, or hold the a shift key down while dragging the left mouse button. Dragging
the mouse left or right in this way will move the camera left or right relative to your current view.
If your mouse has a 'wheel' between the two buttons, it can be used to raise or lower the elevation of
the camera position. If you get lost at any stage, you can reset your position and viewing direction by
pressing the Reset camera view
button towards the bottom of the control panel.
When you have got used to these controls, the plane can be made to 'fly' or 'drive' by selecting the
appropriate option from the Movement
menu. Driving will keep the camera at ground level while
flying will allow the camera to move anywhere above the surface. The speed of the movement can be
controlled either with the mouse or the Speed
slider control to the right of the view. To
stop the camera from moving select wither Hover
or Walk
from the Movement
menu.
Normally, the camera is kept above the surface during movement. The minimum height at which the camera
can be placed over the surface can be controlled using the Movement->Control Movement
menu item. This option also allows the amount of rolling associated with an azimuthal change in direction
to be controlled. Setting a larger rolling component can be used to simulate an aeroplane banking movement,
while a value of 0 simulates a 'helicopter turn' without rolling. The maximum animation speed can be
set from the Control Movement
option, which can be useful for creating synchronised screen
grabbing animation files.
As you navigate over a surface, it is possible to record the route you take. This can be stored and later
replayed. To store a route, navigate to an appropriate starting point and press the Store
button towards the bottom of the control panel. If you navigate to a second position over the surface
and press the button again, LandSerf will store the route between the two points. Further points can be
added to build up a complete route over the surface.
To 'play back' the route you have created, press the Replay
button. The camera will be moved
from the first through each of the subsequent stored points to the last recorded location. If the
loop
checkbox is set, the route will replay indefinitely. This is particularly appropriate
for circular routes where the first and last points in the route are at similar locations. The speed of
the replay can be controlled by Speed
slider on the control panel. The playback can be
stopped at any time by pressing the Stop
button and the route can be cleared from memory
by pressing the Clear route
button.
Routes can be saved and loaded to /from disk by selecting the appropriate 'route' item from the
File
menu. A saved route will not only store the camera trajectory, but also the other
viewing parameters such as field of view, fog setting, resolution and background colours (see below
for details of these options). If you do not wish to define or load your own route, a default circular
'tour' around the currently displayed surface can be created by pressing the Tour
button
in the control panel.
The resolution of the underlying triangular mesh can be controlled using the resolution
slider to the right of the view. Generally this should be set to quite a coarse value (e.g. 16
or above) while you are positioning the view, as a fine resolution slows down the rendering
considerably. If you have created a TIN in the main LandSerf window, this can be used to represent
the surface in the 3d view by selecting View->Use TIN
.
Mesh (left) and TIN (right) representation of surface shape
If a vector is selected in the main LandSerf window, this will be available for display in the 3d
view. Simply select View->Show Vector
to toggle its display on or off. The appearance
of the vectors can be controlled through the View->Vector appearance
item. This allows
the width, height and quality of the vector lines and points to be altered. If you wish to change the
vector map displayed in the 3d view, select the appropriate vector in the main LandSerf window and then
select View->Refresh Vector
in the 3d view.
The raster to be draped over the surface is, by default, the image that was last displayed in
the main LandSerf window. Alternatively a graphics file (GIF, PNG or JPEG) can be loaded from
the File
menu. The quality of the drape, from whatever source, is controlled from the
Drape->Quality
menu. The drape quality should not normally be set beyond
the 'very high' level, which creates a textured surface of 1024x1024 pixels. Newer graphics cards with
large memories (128 megabytes or greater) can also show the maximum texture size of 2048x2048 pixels.
High quality drape over DEM in 3D view
The image draped over the surface can be updated at any time by selecting the
Drape->Refresh
menu item. Whatever is displayed in the main LandSerf window will be
transferred to the 3d view. For more sophisticated control over the drape, selecting
Drape->Distance drapes...
allows several independent images to be draped simultaneously.
If your graphics card supports mipmapping, a different drape is displayed according to the
distance between the 'camera' and surface. Larger resolutions correspond to closer views, smaller
resolutions to more distant views. This technique can be used to view multi-scale behaviour in a
dynamic 3d environment.
One further surface texture may be added to the 3d view. Local detail is displayed when the camera is
close to a portion of the surface model. By adding sub-cell detail here, the 'pixelising' effect of
viewing DEM cells at close range can be reduced. To change the properties of the local detail, select
the Drape->Detail...
menu option, which should bring up a window similar to the one
shown below.
Local detail editor
From this window, a number of preset textures including ripples, stones, marble
and grids can be selected. Their size and transparency can be controlled using the sliders.
Alternatively, your own local texture image can be loaded and displayed by pressing the Load
button. When viewed from a distance, tiled local textures can dominate the surface view, so by default
the local texture fades with distance. This effect can be turned on and off using the Fade
option.
Surface with local 'stone' detail fading with distance
A number of viewing options control the appearance of the environment in which the surface is viewed.
The camera Field of view
slider on the main control panel can be used to set the degree of
zooming of the camera lens. Wider fields of view taken with the camera close to the surface tend to
imply 'immersion' in a large terrain, while narrow fields of view ('zoom lens') suggest a smaller
physical model of a surface viewed in greater detail.
Fog can be controlled with the Fog
slider, which influences the degree to which the view
becomes hazy with distance. Higher fog settings tend to reinforce immersion within the viewed scene.
The colours of the 'sea' surrounding the surface, the sky and the fog can all be altered interactively
by selecting the appropriate item from the View->Colours
menu. For added realism, it
can be effective to set the sea colour to one similar to the dominant colour of the surface. This tends
to blur the boundaries at the edge of the surface model, and especially effective for island models
(see figure below).
Aerial photograph over DEM in 3D view