Mesh Raytracing Tutorial

This tutorial is for Ultrafractal 5 and the use of the Mesh Raytracing ucl in reb5.ucl with the primary code files in reb.ulb. Major revisions have been made to the mesh raytracer so the artist will need to download the most recent version from the Ultrafractal formula database to use this tutorial.

The mesh raytracer has the following features:

• One to five light sources

• Transparency by height value

• Mesh creation from most of the fractal object formula plugins in the UF5 object library

• Coloring by distance, fractal height and Phong shading

• Height values based upon cabs(z), distance estimate, exponential smoothing, general smoothing, iteration,  orbit traps, potential, and Vepstas/Härkönen smoothing. The orbit traps are a subset of the options in Damien Jones' Orbit Traps and can use most of the same plugins.

• Trap Shape texture and Color Trap color application to the entire mesh including image import

• Trap Shape texture application to the orbit trap

General Background

Raytracing is a process to provide realistic lighting, perspective and hidden surface removal effects to a scene. A raytracer includes includes a camera (or eye) and one or more light sources. The raytrace process can be envisioned as the shooting of rays from the camera to the objects in the scene. The raytracer uses the distance to the intersection point, the surface normal at the intersection point, and the angle and intensity of the light source(s) to determine the coloring at the intersection point. Precise mathematical formulas exist for calculating these parameters for regular solids such as spheres, planes, cubes, etc. To deal with a general curved surface, the surface is often approximated by a mesh of triangles, which is what is done with the mesh raytracer. Precise equations are available for calculating the intersection points, normals, etc for ray-triangle intersections. The triangle approach has the limitation that it doesn't produce a smooth surface. The image below shows a fractal surface simulated with a triangle mesh using exponential smoothing for calculation of the height values. As you can see, it has a chunky, blocky appearance, and the triangles are clearly visible.

With Phong shading the following is done. Each point or vertex within the mesh is shared by six triangles (except for the edges). An average normal is calculated for each vertex, which is the average of the normals of the six triangles. When a ray intersects one of the triangles in the mesh, the value of the normal at the intersection point would normally be the normal of the triangle. With Phong shading a different value is used. It is the interpolated normal from the average normals at the three vertices of the triangle. Phong shading also has an additional factor called specular lighting, which simulates the shiny spots that are seen on smooth surfaces. The next image shows the same surface displayed with Phong shading.

Both of these images were created with a relatively low mesh density of 0.2. A density of 1.0 would provide 1:1 mapping of the screen pixels to triangles. Greater detail can be obtained with higher densities, but with considerably slower rendering and requires considerable more computer memory. Ultrafractal 5 has a memory limit of 2GB. With a mesh density of 1.0 this limits the image size for a single layer to 850 x 850 or its equivalent for rectangular sized images.  It's important for the artist to select the lowest possible density that provides the artistic effects desired.

Mesh Raytracer - The User Interface

To use the mesh raytracer, select one of the pixel formulas from the Formula tab in UF5. DO NOT USE ANY OTHER TYPE OF FORMULA!  On the Outside tab in UF5 select reb5.ucl and open the Mesh Raytracing formula. The most recent version of the mesh raytracer is not backwards compatible with earlier versions. If you have an older version please update the formulas.

With the default settings the user will see a Mandelbrot fractal  that uses the distance estimate height type for a Phong shaded height field.

Option Overview

In the default diffuse lighting mode the raytracer selects the color at the mid-point of the gradient and uses that color for all the shading. Bring up the gradient editor and change the gradient using the F5 key to see the effect on your image. If the gradient mid-point happens to be a fairly dark color, the specular highlights will be especially pronounced. Here is a upr and image to illustrate.

DarkColorPhong {
::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
}

Starting with the default image, explore the different height types. These include Cabs(z), distance estimate, exponential smoothing, general smoothing, iteration, orbit traps, Vepstas/Härkönen smoothing and potential. With potential as the height type the sides of the fractal are very steep, Decrease the height scale to 0.2 and increase the closeness to 10. Click the arrow next to "Illumination model" to make the parameters visible. You should see something like the following:

The distance coloring mode colors by the distance from the camera to the triangle intersection using raw triangles. The Z value coloring mode uses the unrotated height value and an algorithm similar to Phong shading  called Gouraud shading. The color value used at the intersection point in the triangle is the interpolated value from the color values at each of the triangle vertices. The next two uprs and images illustrate these coloring modes.

Distance {
::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
Ea/PckMJZA==
}

Distance

ZValue {
::gVSJZhn2dmVUvNKOQ43rU/Pg49mCGotZX5Xa39WdrUvHaruHWdSROgJxbBbktTbS/1fjNkEg
4QhdfYLM+7b8MjNzM2JXSS1kivc5Feeamugi9/1/SK2Q99enlpXjvJOwbNltatGnEi8KI7oS
FO0gPVSzYaF2/JBnUk5dPRypa9XDvGhuGFEG+VYgDSRXHakGM3/yLsaxOnpkKNTwx+3TSfdl
Ushn57JqIpM9OcYQgXJVvWkhL3UoZVElyTLJcVFRS5a8Oq6yLKJVVM+qa1BSpS8VBzCCiCRJ
XDPFeDKxrksijRXeRuQCqiYBXS2yMoD9qoy0100Xxi8cvcWBlTKhIhkuc2m8SfPQrydY/K2W
axCAjiq9NaoaxbQ0wY/hzCg3qHCDzeUYcYy8rhnuZO88tXeBjrYZ06AtxFyhZmL40LvQsRfY
vRq/hxn92iVUOVyS7zc2Rl2CxxhTBLUS+AfVINE1hoUoVwOGK3sqdU8WCfVBNF3SH72LqDfe
hdTY4RJqKaaIOGNPe+N3imn0aklSD4QYl42OKRtmx3F21kt6dLOpnEYNoDVrwPAqHFVJYcgZ
fJ76Z5Whf0GmxyRDZ5I3WOylljO10R9sgabH5w4Rna9InmPqv9HNk9H52+jcZ/R4rQ9dgInB
/IHOQ0pOQkTHIqvDEPkDE72Bid5Ax4rOZFwIzhHE7wDiP1Did6Bx99gkh8gE3eQiLPIxxSAI
LyhHk4wDSO1DSc6BdA+2i2JfA12NfRqoQIXCp2+l3b1FkOmKh8Ok6847bUUT4Ak1RD1xBIMM
vlTspMnApWm1dyyXY9OI31K6xkj/dBA/Bjd8oZA/zSZg8l9gZ9q6p5TQmRzJQRvxTgZs2Thn
7EuRG83SRGFXnW+oeJlLZmqrxobnHEnEd38ebjIZiuLAGRwiEEWbvPMtQoomihhd4vSyyIZ/
udmc9ydrhSxd0569FT7QGQa3N0mdWdlher+ZMlupkRwh/1K4xkKNMp19Q0efHtoQhRtcE9ap
ZD6sgWfjU7bJ9WP0yu7EOZMtkZLu5cHvFD8fEJUiFA/SDY77OW9B089KUhjOxDrV3nUPvLqG
7K0942uliOPfTzLw6dUk7h3CNchjOL7tlMOkzx9g7McTOL3dDxdLk4Lv/GpOsbAcG6QAGHPw
cbGPYoI67SoFVTjmBn37baM9hCoHXUr+zM91R4Z0ilQDU/cTBjs453Z6/z2tb7W2OryG5iff
ONvPJOpC+bm0KcdGr5h/E1oAHMd9fCzyDhqfbCV1KyshekaA4rOJjw5hr07qoY7qyIZUZNxJ
MFVLAPpfutBcgFQxtrHbATRpZmDLdbCcSFUyIZppKNGqcMaPYjZ3/SCrAOpT7sxjWBFi3bpg
vfV44pWZoiRDES6FEcDatKlUYKmd+gUqQK/o7hbaPMRrhz+MwCpqUIgDcfmcvlkXpfQlih0Q
ZeBRPEg129r+/wkOgU49sdGhzO7PQKdJ7N8zFiK6ZAkB9TpxhDohCNxuohOLm6z6CrcY/URZ
pgbz99Ck28l9j4/5kHZiu24POxjlB0rpc6sgnrmKrKLrmb0YovpdTpU8G0VwAbG6TLTaLCOh
Jq+biwRjHSLTs32Twkpo00qJQT9K99JCfizAxcijh23nXr51kKa3y5mt1PbE/smJlbqeYj8N
q/Y0zYrk3hxRrYwygu5oqNxUjJOa+EHHvyNS1qBzI2RpLVmTYMS0c6KJkbbw6sHugN35coS/
Pl6ky4QlHS4Y7Fcs4rmGHoknkSyyCxjF84+MulqRjT15b4p2P3rvBzRpfhSPBbHQPFjvW5j0
6hNcf+uN75n9zK/did3z3e8n2PvfEE/g5EiKt/I0wk+uuhwhZfyMgeiXXfkWRR24pDO5hXTr
9tBJDpJPMJD2cp52bEFssPParpb1bkuC428p/F09j/4Uxki4H5MlcpHZtPyZZabR7Tib1MVa
JlvC6Is/ZLrbUsEOpurIWdLePRz2kSz8+BZjSxI8WHU8jS2W8Vna+/hx3xGTHfccaxOHxLHa
0evYHrDbvUPjj9PC7j+njyn6U7RZ/rRwYwxF12zpQbd/dtLL9t6LD883F5ReDaxdgN4VL2B5
ZvLycnEaf5icQIpo7vkTj/dPRR9EcvXEVt2eu/H/LY2dXexKJJzcXk2fbsmDIZOh1hOJDjQe
M4M/bxx3g8qjqo53MHFdbj8w4Y7dlUHwRokbuL+umxQzvtZgkoo4bvD8pmpv9EyFNwDO8LTi
Sg8Z/PwdQJCo
}

Z Value

Both Distance and Z Value coloring modes can be used in layers to merge with the diffuse lighting layer to create interesting effects. Some of the images in the Height Field Gallery were created this way.

Textures and Colors

At the bottom of the parameters list are slots for texture and coloring plugins. The next example will illustrate the use of a texture plugin, using Damien Jones' fBm plugin. The plugin makes the image look like a fog or mist has rolled in over the fractal.

fBmTexture {
::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
xqPQ
}

fBm Texture

The Colors plugin includes a wide variety of options, including image import. In the following example the Checkers Coloring plugin is used because it illustrates the functionality 'Z component mix' parameter in a clear manner. When textures and colors are applied they usually have a more aesthetically pleasing appearance when they vary with the height value. The 'Z component mix' parameter provides this functionality, and how it works can be clearly seen with the checker pattern.

The parameter snapshot also illustrates how the coloring for any of the Colors plugins are managed. The coloring is merged with the mesh using merge modes everyone should be familiar with. The merging can be done with the coloring on the top or on the bottom, and with any opacity setting. The mesh itself is the base. A sample upr and image are below. The artist should try varying the value of the Z component mix parameter to see its effect, and also vary the merge modes, merge order and opacity.

CheckerBoard {
::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
v/uGjo9EXybw7d+L1iig87/PI69g1A==
}

Checker Board

Orbit Traps

One of the more interesting height value  options is the use of an orbit trap to determine the heightfield. The parameter snapshot below should look familiar to anyone who has used the Orbit Traps ucl for UF5.

Notice the following statement on the parameters list:

 All of the plugins in this section must be pre-calculated before anything will appear on the screen. Some sets of plugins may produce a substantial delay.

Before the actual rendering begins the entire mesh is calculated. This means that for every vertex in the mesh the trap shape calculation is carried out for every iteration at the vertex location. If a trap texture is also used, there will be additional calculations at each vertex point. This applies to any other plugins used in this section. One of this author's favorite textures is the Monnier's S.F.B.M. II Texture which also has a convolution option. The convolution option triples the number of times the texture is calculated at a given vertex.

As you have already seen the earlier part of this tutorial textures can also be applied to the overall mesh. So why use the orbit trap texture? In the fBm example above, the texture is actually painted on top of the mesh by perturbing a Phong parameter. The Phong parameter has the same granularity as the viewing screen, e.g., a pixel so a smooth texture results. This texture simulates 3D but is not actually 3D, that is, the surface shape is not not actually perturbed and the lighting effects, including shadows, basically ignore the texture. The orbit traps texture has a granularity that is the same as the mesh, and is a true 3D texture in that it actually peturbs the shape of the surface. The perturbed surface will show all the normal lighting effects including specular lighting, light position, and shadows. The disadvantages are that it is usually much slower to render, and the amount of detail has a granularity the same as the mesh. If a texture has a lot of fine detail, the detail will be lost unless the density parameter is increased. The maximum value for the density is 1.0, a setting that gives the mesh the same granularity as the screen. This will, however, dramatically increase the rendering time. The following upr and image use the Monnier texture in the convolution mode.

OrbitTexture {
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
}

Mesh Smoothing

Many fractal height fields tend to have a very spiky appearance which is often not artistically desirable. This can be reduced using a mesh smoothing filter. Four filters are available. The first three are convolution filters that use a 3x3 matrix of mesh points centered on the point to be smoothed. The new parameters on the outside tab appear as follows:

• The convolution filters

Average blur: This filter takes the average of all mesh points within the 3 x 3 matrix. Average blur gives the heaviest smoothing.

Gaussian: This filter uses a weighted average using Gaussian coefficients

Reduced Gaussian: This filter reduces the Gaussian coefficients on the points surrounding the central point. The smoothing is not as great as for Gaussian.

• Median filter

The median filter uses the same 3 x 3 matrix, but no averaging is carried out. Instead the points are sorted and the point with the median value is used.

The following uprs and  images show the before and after of application of a smoothing filter, in this case the median filter.

NoSmoothing {
::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
oagZLrkDeWlRYm2KFy4V4Wc+3Y0PAyq9/4+tRwA=
}

Median {
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
arVIjXjbx5fZR/QIV2/Dpr2CBC==
}

 No Smoothing Median

Distance Estimate and Potential

Most of the height types create a very "spiky" appearance because they are based upon some version of the iteration value, or in the case of the cabs(z) method, upon the absolute value of z. As a result there is the need for various types of smoothing techniques to produce a more artistic appearance. Two height types which naturally produce a more artistic appearance are Distance Estimate and Potential. The  height values based upon the potential or the estimated distance  from the fractal boundary. The uprs and images below illustrate their use. The fractal is the same as the one used in the mesh smoothing examples above.

Potential {
::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
l/v4LTqXqlp8iCzSxi0OfbymT0u/XdP+fZ401OF=
}

DistanceEstimate {
::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
PkdqdeNzUrOY8DqYvVFEDQ/fd7lMqD==
}

 Distance Estimate Potential

The shadows option will slow down rendering because each intersection point with a camera ray must be checked against rays from the light source to determine if the intersection point is in shadow. The extra time is often worth the effort as some really interesting results can be obtained. The next upr will combine shadows, transparency and textures along with a couple of layers that use image import. Transparency effects depend upon the unrotated height value, and works by making small height values transparent or partially transparent. The resulting layer can be used as a mask or as a filter to an underlying layer. After the upr is loaded, click the arrow next to Illumination model to see the paramter settings for shadows and transparency. Check the paramters on the top two layers.

Two images are used  for the upr. Copy the images into the Ultrafractal Images folder so that Ultrafractal can find them.

The top layer, which is the diffuse lighting layer, has a Monnier texture applied that creates the melted blob structures. The artist might want to look at the two layers that use the images (layers 5 and 2), as the images have convolution filters applied to them, along with some color changes, to totally change the way they appear. The image import uses the Exponential Smoothing ucl and the Convolution Color Wrapper plugged into the Colors slot. In both the convolution filter is Painter's Toolbox which uses and algorithm that was also used in the move Shrek.

ItFellFromTheSky {
ZSJKa6e6dO2lDQPRm8rKW8QFrL7tlowaUyP8+3NZSdcdCOw6L1fGnk85y80H3jf45TWTeNOq
efw8Z2T2jj3tvOw3xdSC6EusKYOhywScUcdVg1XzzQJRT+AqMDXX/ju36u4WXbHnfE6grVfo
R7VWv/dUmQH8QURdceWg1HQhPvrM/QWk1k8CUYc9pAHb7Jp4yd408IcQyh04MUWImQXKuefe
UQ6hk64CUV1k6SUWVBqEnVHcCX9+3liKKiz21MKQr4yA7p2uzn745Mbm/t3YP1fp3yl2LX4P
fSKaXWgzUvJosdwqxM/3/ut5lA7RUGkiOGT4g7kCcZ4ec4zB5b3OZbcCODlCrePVM9w2UrJw
AVeKwqI+IO5pCYqGnVFHhbWoJi4WgLZ5ZwkI/Q9wuSizwoSOGXi34P9QYSHr/6n+w67xV7/K
6EQVI2iQfx6XWXyagusVse76UAFlBTPks5HaxTalRTDkpvseHODXGHKQ50zckrbBCDBJsE9W
wNOY4kRXzl51VwRDcGZj4czHpLth01WOmci1M3InlQPu5culqCcoTwM3VzWNfh7KROUtpkg3
B2fXw16+4sTOiTJKfPC7ziMg28pA3et8GfLF5xZApiLA0GPxL60WejvFio7eBR3Vio7KT0dD
kJ5uB9B+Gh6+CvrUp3do472X+9ug87JR+9kJ/eB34KZC4F43fC4JZC4JdC4NcC41fCM7CTgZ
SmAzkNBmFcjsdASz9nBzkMDmJdGMb4MYW/Zg/FmB+SmB+ymB+y3Cgm96PD8lMD8lOD8HODEa
6l18qfA2KKCh5J5lbAlbfMe72DV4J/MZ8Bt3WcaVQvCKOFIDQSWaEVz0scArGr4mOHS3iAVM
TFH2trpzT6VMnVU+lEA+dEJ6eSHWjSioiTVwozvmh5CIjwbRwda6TQMRaHCfrU4k2avOtRF9
Z+iS3ETu8cm7ilOrstXKOsV7RR5vKuUTa7FUCsuyd4vKMJvC3TP1uy4IU0T8q0r3caPcnqIH
3D3qWhrDm67IQPAGGoDYeGE1cLB9yeOoRxV1s7Ps7+Pulv4yqaYg7fWKEM+pKwlbiUvvkcWF
MagrxmJnX/tk6yxuFl1XdZM9eOpH/pYg/HqEuxFA/IDM9zSOAAozaZYFIM9niNsb4d7yGUGK
mc5IvfqtPejTfEOrCWo8k37Rw6penHE7OOL4mZy78kaaPpi2jgSwt1BjL2nYAGhcY9VFx0uV
te+aJYCKsw5Y7NKXYGZeXCYDrLnxagRef5ZwEwdo1P8acd4eL9Yhmb49ph95rimw8sXIaTyq
jiZP8twmK607bhS2CUDDIHe1kyUwW7BqNGHeV9pCcwPdIJGpJFFrhhI6KGii1PdIpvGJFTg1
wdZ3q7CVFGHBwvZqzcXfNppGXVHAXTot8fgcSfDKOB8qhXxr2MIJ/VOG8pbc0n0CCpBuKWQo
LBgDfL8vFsBwXOo9VhIw1PA0o8JMvs8Nxbs47GVXDO9oYbsKNPHcpeEtsponxvhLzVxh0tJo
aVA2TPta93IKBQJTegOiELpUo8uM+lgHSyLwjAICMeC2UUwhkaEdTzdUMNe4C7cBWh5pp5ZU
9cPCqIfstHrLTsmq34xfeg1lCwsyyrnK45irlqCKVtRn42rlk08Xg7/VcYoPZRl077uiBq5d
CHtxD++joB0x+qJpqGXcFkV9M+1rE+VOCIizFqO3vthz7RFYxruJHrfg08D1xllHKu7Q5LYL
d4ju3fLQxZpQ5lgyppqREDJio20jk4LlckV7UqRUgpbqIeToJ6M8uSQ3mybZ7CrmcdO4SrLS
hDcX+0G1ZZro0n8pne+49/E9177hmvj4MYVtlGc4qevmRQ3of1UAWEvvx918kI9JHmkdfMsZ
upkYQNZ3gQsraUgkA1knEHd5V7a8x6DlyWwp6T/MY9jles4qWxPTz1oL9MVtrcUKpmodh1tG
KrqLxZ7ALC77HZjhipgP5SVvRtx7ecUMiLAOvlGfM4mhyM3ia7dU3nnlFjLX/wn/w9r/yXW/
YDArxp9Crm6vCyjMtRMq2uJVqTynxGnFXP0u7z9XF/GW+RwzYyyjrwB/KuE0VdJYFBTdvdq/
YY26E8hk8NVKYz2CnAnbtHtb3gfpMeXcGKRJTcJMRBCq+h7APxzTOQUErA6GMxI9pjKSM3om
qa4oYcVyFwCrbVttXUQP9eHqEcyEOArEaBM9dGrbwwxA3lKl3UqJfKE3tppBzULwxETtLC+5
8doSQvaacoCwhkoMP6oFuJhIMqovORNDoZxUJDKVxAcBJQd22zFDi/AFSyWQoRZ+sSEaIyJa
m/750HtGjkLq7oFF9vkG0BXWej8MEKX0w5t77jNhWf8I7fmOlSsAMlBqXA5oR2frUC4DVfG0
YP9EZs53HQV4J5ZTeMvgLXJtJQ3e6y3/udloISk9pJamFBCiq0OX1cmEnFhPG4Mf5E2a68FL
W46AaTZcin2scGe7uE1767flJ13k9eT27NZv3k9eT27/fos3/vmQTS7gk2LNj9Cswk0+fzJt
fl9Mfvlr+Nl0eHTW7NZt3k1eTW7NZt3k1eTW7NZt3k1eTW7NZt3k1eTW7NZt3k1eTW7NZt3k
1eTW7NZt3k1eTW7NZt/P0s27PnlG+ZzcZptf2KbbfXPW7LXSTeezytrrr3CAILT/zaz0/Cv5
eOLaZlnndLrW45uyf+v1CA4nJNNZx3hs/fDcPhjr/tzm6schPLj//xmm/ScBmGWHVJ8/Lgki
JvvV1lq/YST07b7S6QIJqYSSGRb70NFYFh/4abfRxlgDv8IE6WY0m3jY4a8mKA5cbMv1wJEv
olYQHtDLR+wTj83CHHHqWUdgUkdWq1IWqhziDQSC50QTQKCsgPO58ntuI5gHJlcZhYUc0TcO
XGX1zxF6gLJPHw9J3eIL4Qyb+uvIMu411qwXIYdg/PWjQhq9tLGZuhwGNccS5YB4CYMZnB0c
2lQr+IrpdOGfoRL2x1bm/8FnTDafUjF7OV46HwO5YHEluhwoQgPHlneR21z9Z5gGG3O14EDl
2Qst40VGFCm34Yu0wSwo5Q2P6eqQdphtB1IDsQUCl7W7XBqpZz1aUS1QZoqoBKDogTrltiwQ
236U7LEr/a+7EHLe2m8yrN/u+0b8iom6/J4Ws4OfVb6J9sl9NNQMCQuOIdCfnI+Rv+7CRpTG
IhQzJDlkgxJDB7tQVcwVBH6FotRYzgQrJFiaRZQE0GARMsZt70d7VcXXQb5jxAHzCx/DEpkF
q7fjZ0F31i0abjHVEbIfhNkDfT4M6I6dBS7is9DsIgZ6erx69htNzLAFmXJ7dtmoH2VbRtmw
R+3vklcyaMau8r7MUdGlxiUojuY5jP44Ehj2BTeqPIyBQ6s41yAVjL5xcY22bflDDcHf9xR0
c2JHjKDN/8iRKUnBm60NJdZRzptHEntPiUJJYl8j41EhSJ0d5N2LEJN5QVGAyuVjG4kXxPbQ
lwiaja86cyLQDm/tdyKMKBClESzevw1eDBfbNhcSQTErpeKfwHVd/T92kyXetW+ZwO3ZG+W4
dsua1QZpi+Lvxxhs7Ntxd3aANtKtuIU4w7h68Gt4chHWK2o1U3KkfUuD1Z3xHHiYNAIHD96+
o4XA/cHFoGBQaANau2PWIkGFokYI1iluDKY4B9YzXSLA+bJF9oXgduf6fPXXY2jxH6fjpj14
wIlZUcWN8PmtsSOM0ishX4I20i/tHp+HgieiYQ2qVitdi2GfjxsK2cg7KxtGYL0G1CT+1mKW
T9IuOOpn+e6OFOtgE6nuvUJiT2rOwfDJU9JNNC9nUoKj9nEKGP4fNgbj+H9IpQ4/a6vLGZ92
U3fo3iKK5QvbAQVoha+LW3VW1i3iGmnBvUVNsDCXGYPfxaiAYL0yOSJu27qE46XUpEhoricF
HLy9ZUdcii2eUWwsBzjX7jbzrMJVIOpkjPYiljWPAv6kgnQkT6bKTaxN1aCYM+zYah+xHYVW
INPHzUbWTu22681iijH8hFljJdx3VRoS9/e8Fl6WbW8Rn0ZwQF5UV3nakbq5S2cBv8B4msIU
Z00DH32FATvobYjB5sajhN/aCKjdXRZeNJ/l+NPeilFD4x3YPSH0j8f4EJYusDZ0GYfVdKRh
czgmGYzjmP0p05Ppf5u+0RwgZ45YUS/K47l14zdW12pq4/2PMvjGg3hx/tPpjM0zE0T3UWwB
fstqg7ZL3RUatgSgUqy+/OwYhbAwlZgyp+WCGS8+UIKzPe9Gk/oMbxlDQlN4PeNmfL1EISxi
xl92/ZjlB/uaIkcRYMPOaoSahv1ZOXj91weallWsQ3JlIJaOBHhoGD0JyIflHom8r1oQlc5b
ZSrvdkaR/42Xqm8B2dqw7iRYQPzRBjAjqqBFA/bCjcn+UxOLN4Hrgtd91b47spdl24PdN4H1
U4RJQeMoHHe33JZdgL3y6RZOVJsK3Jhnhbsqx9Uf9rIaBSU9Yeeym8jfmCx6ycR/XA6wT0yG
eWVFTauGqpBEcTC+bnLFspbdz0VT62Ab1B6AEsbla4i84pPCJEDSPUxXSuKhXhIW0WF4pBa4
IN1peyPnyaAvi9KgaNCMws4JR/+K852w6oBdsQBdPY8d+LVPfSDSoZXQteCGymEToBQ2ySTM
b0ZpRSOHlvBxKmNbdEXwCMwMVd23px5WnjgxE730cLsNVpjDNsos7bk8web+Gzo8doC2YBu+
BHsswgwd6c+3tURIKpYPa0oaJ4VrK2MiTuigk6wrIk+O/K27umbzUtsf2z4RBc2FZVsRmHz9
mzS8eu3a3rKXZfV6yhJqaaGVN5WGod8zMxC7PdxCbu0YhN15vCRDbQgparTQffby3qUWrn/V
/x1fx8Vr87KSQb+CI02ZpXbdC6u0h1+qZzcXsotkD9gXHax7t0bp/yvPFQ48rNqYkwCV9spY
CNFTopYCNFTopYCNFTopYCNFTopYCNFTopYCNFTopYCNFTopYCNFTopYCNFToJAqmiJ87exE
SI/8Pv6LbDbK5JxaL0rrlLWbhjwvhlaoHXrqK1Q3f/K1wv1SMsr+Cdd7q2QNLxwmTItlXI7M
gpCDNVYopCDNVYopCD/rRFGeXO5XD1PgjoVY41VghumyL0UehmyL0UehmyL8PplXovp8CNlX
oJObmyL8/PiO2c9LvwFmyL8/ClX4/BACiCf7
}

The next upr uses transparency but no shadows. The top layer uses distance coloring and has a Convolution Color Wrapper plugin with a Monnier texture. The next layer uses diffuse lighting and and has the same Monnier texture as a direct texture plugin. The artist should look at both of these layers and see how they are configured.

OutOftheMist {
::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
QsMN9+fwGG+Xrm84aC==
}

Out of the Mist

The final upr for the mesh raytracer illustrates that it can be used for high detail, moderately deep zoom heightfields. In this case the zoom is 2e9. It is not recommended for this use as it is slow and the images cannot be very large because of memory considerations. Instead, use the 3D Heightfield Raytracer.

EastofWest {
::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
}

East of West