Package Terrain - internal and external symbols

Part of:

asdf-system cityscape-builder, asdf-system cityscape-city, asdf-system cityscape-terrain
See only external symbols
Package Terrain uses the packages Cityscape, Common-Lisp, Common-Lisp-User and Mathematics. It has 245 total symbols and 16 external ones.

Class

terrain-nodeA terrain node in the bisecting quad tree.
The *terrain-root* is the master root node for these....
terrain-patchThis represents a geo-mip-mapped ‘patch’ which the terrain composed of.
It is the primary visual ...

Variable

*base-height*
*centre-altitude*
*depth-divide*
*down-level*
*flatten-index*
*ground-colour*
*interpolation-index*
*lod-colours*
*master-dimension*
*master-interleaved-array*
*master-levels*
*master-nodes*
*master-triangle-indices*
*max-levels*
*object-depth-levels*
*object-depths*
*patch-height*
*patch-max-level*
*patch-width*Width in metres of a terrain 'patch'
*sea-colour*
*sea-indices*
*sea-vertices*
*terrain-root*The root terrain node
*terrain-width*
*triangle-indices-ctype*
*triangle-indices-ctype-size*
*triangle-indices-edges*Array of arrays of arrays of the array of the foreign arrays
First set of arrays indexes the patc...
*triangle-indices-gl-enum-type*
*triangle-indices-length-levels*
*triangle-indices-levels*
*up-level*
*waterline-step*

Constant

+east+
+north+
+south+
+west+

Function

calculate-cache-levelFunction to determine the desired level of detail to be cached
for a given vector position of a p...
calculate-desired-levelThis computes the current desired level-of-detail that a patch
would ideally be drawn at. This is...
calculate-lodRecursively walk through the terrain nodes in the master grid
in the rectangle gx0,gy0 -> gx1,gy1...
clamp
compression-function‘Compresses’ the raw [pseudo]fractal terrain data to the more aesthetically
pleasing result curv...
draw-level-0-patchesDraws the base level-0 master nodes in the list arr.
draw-lod-depth-levelDraw all of the patches/nodes and sea patches in depth-level i.
draw-lod-depth-level-seaDraw the array of sea patches given and REMOVE them from the array!
draw-patchDraw a patch's geometry. This will only be called for patches at level of
detail greater than 0....
initialize
initialize-triangle-indices
interpolate-height
interpolate-normal
loop-over-level-0-triangle-index-arraysAs with loop-over-triangle-index-arrays, but with the lowest-level of
detail; arr is a list of vi...
loop-over-triangle-index-arraysIterate over the arrays that make up the currently terrain patch geometry.
handler function take...
make-children
make-rootGiven the initialization arguments root-args, [re]-generate a terrain.
Ensure you call terrain:in...
modify-lodProcess, at most, one level-up and one level-down of the terrain.
prand
ray-intersects-object
root
setup-interleaved-arrays-levelPopulates a single level of vertex + colour data,
given the level number l,
the foreign-data arr...
setup-invisiblesIterates through all of the master-level nodes, marking them
visible or not. Resets their desired...
setup-normalsCompute and fill the normals of the vertex data interleaved array
arr at level given. If array-be...
terrain-patch-initialize-arraysAllocates interleaved-array and levels array for terrain-patch
at level l.
terrain-patch-level-down
terrain-patch-level-up
terrain-patch-setup-interleaved-arraysPopulates terrain patch's interleaved arrays with all of the current num-levels
of data: vertices...
update-for-drawThe top-level call to the pre-draw per-frame function.
Clear the bump-level-up&down candidates. C...
world-to-grid
x0
x1
xh
y0
y1
yh

Generic-Function

for-each-visible-triangle
interleaved-arrays
root-node
size-x
size-y

Macro

colour-ref
interleaved-element
level-to-dimension
normal-ref
set-neighboursSets a to be 'direction' of b
triindex-ref
vertex-ref