Skip to content
07-848 2005

Corona Standalone

Corona XML maps format

See Corona XML materials format for basic info on the format. Here we will only list specific map definitions, but they still need to be contained in the <mtlLib><mapDefinition>… structure as outlined in the main article.

Last updated 13 January 2026

See Corona XML materials format for basic info on the format. Here we will only list specific map definitions, but they still need to be contained in the <mtlLib><mapDefinition>… structure as outlined in the main article.

Shared utilities

UV mapper

This object is not a standalone map in itself, but it modifies UVW mapping of other maps by, for example, switching between 2D and 3D mapping, or by stretching or offsetting the UVW coordinates.

Only some maps have UVW mapping. For example, noise and bitmap have mapping and can be manipulated by providing a UV mapper, but the Ambient occlusion map cannot be modified, since its geometric effect does not depend on UVW coordinates. Any map can contain UV mapper definition: <map><uvMap>…</uvMap>…</map>. If a map has a custom UV mapper defined, then all its child nodes also have the same UV mapper (except for referenced maps).

The definition of UV mapper is:

<code><span class="line"><span><uvMap></span></span>
<span class="line"><span> <mode>uvw|3dworld|3dlocal|forceEnviro</mode></span></span>
<span class="line"><span> ?<mapChannel>[int]</mapChannel></span></span>
<span class="line"><span> ?<scale>[XYZ]</scale></span></span>
<span class="line"><span> ?<offset>[XYZ]</offset></span></span>
<span class="line"><span> ?<rotateZ>[float - deg]</rotateZ></span></span>
<span class="line"><span> ?<enviroRotate>[float - deg]</enviroRotate></span></span>
<span class="line"><span> ?<enviroMode>spherical|screen|dome|cross|mirrorBall</enviroMode></span></span>
<span class="line"><span> ?<wrapModeU>clamp|repeat|none</wrapModeU></span></span>
<span class="line"><span> ?<wrapModeV>clamp|repeat|none</wrapModeV></span></span>
<span class="line"><span> ?<blur>[float]</blur></span></span>
<span class="line"><span> ?<useRealWorldScale>[bool]</useRealWorldScale></span></span>
<span class="line"><span> ?<dome></span></span>
<span class="line"><span> <origin>[XYZ]</origin></span></span>
<span class="line"><span> <radius>[float]</radius></span></span>
<span class="line"><span> <cameraHeight>[float]</cameraHeight></span></span>
<span class="line"><span> </dome> </span></span>
<span class="line"><span></uvMap></span></span></code>

mode

3dlocal differs from 3dworld in that in the local mode the mapping “sticks” to the object even when it is rotated/moved, while in 3dworld the mapping “flows” on the object if it is moved. forceEnviro means that the map will be evaluated as environment-mapped (spherical or screen, see enviroMode option), even when it is applied on a geometry

mode

3dlocal differs from 3dworld in that in the local mode the mapping “sticks” to the object even when it is rotated/moved, while in 3dworld the mapping “flows” on the object if it is moved. forceEnviro means that the map will be evaluated as environment-mapped (spherical or screen, see enviroMode option), even when it is applied on a geometry

rotateZ

rotation of the map in the UV-plane when using the UVW mode, in degrees

blur

Amount of blurring applied to the map

wrapModeX

Controls what happens outside of the 0-1 UVW range. Clamp means that the border pixels will be returned outside of the interval. Repeat means that the entire map will be repeated. None means that black will be returned

Alpha-mixing map with constant value

If a slot has [RGB]|[map] or [float]|[map] content, it can also contain both. In that case the map's alpha channel will be evaluated (if there is any), and will be used for blending with the constant value. Example of red color mixing with bitmap:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><diffuse></span><span data-v-c2b1f83f="" class="line">1 0 0 </span><span data-v-c2b1f83f="" class="line"><map class="Texture"></span><span data-v-c2b1f83f="" class="line"> ...</span><span data-v-c2b1f83f="" class="line"></map></span><span data-v-c2b1f83f="" class="line"></diffuse></span></code>

Color mapping/transform maps

Normal

Transforms any input map to a normal map - meaning it will be interpreted as a normal map instead of a height map when in the bump slot.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class="Normal"></span><span data-v-c2b1f83f="" class="line"> <child>[map]</child></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Channel

Maps channels on the output to the channels on the input. Output channels are R,G,B,Alpha and Mono. Individual mapping options for each channel are:

  • R - Red channel of the input
  • G - Green channel of the input
  • B - Blue channel of the input
  • A - Alpha channel of the input
  • RgbIntensity - Average of Red, Green and Blue of the input
  • One - Output channel is set to the value of 1.0

By default, an output channel is mapped to the corresponding input channel. Mono is mapped to the RgbIntensity.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class="Channel"></span><span data-v-c2b1f83f="" class="line"> <rSource>R|G|B|A|RgbIntensity|One</rSource></span><span data-v-c2b1f83f="" class="line"> <gSource>R|G|B|A|RgbIntensity|One</gSource></span><span data-v-c2b1f83f="" class="line"> <bSource>R|G|B|A|RgbIntensity|One</bSource></span><span data-v-c2b1f83f="" class="line"> <alphaSource>R|G|B|A|RgbIntensity|One</alphaSource></span><span data-v-c2b1f83f="" class="line"> <monoSource>R|G|B|A|RgbIntensity|One</monoSource></span><span data-v-c2b1f83f="" class="line"> <child>[map]</child></span><span data-v-c2b1f83f="" class="line"></map></span></code>

For example, you could swap green and blue channels of the input (child) map using the following snippet.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class="Channel"></span><span data-v-c2b1f83f="" class="line"> <gSource>B</gSource></span><span data-v-c2b1f83f="" class="line"> <bSource>G</bSource></span><span data-v-c2b1f83f="" class="line"> <child><map>...</map></child></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Curve

Remaps each color component of the child map values according to a curve. Defined by multiple (2+) control points. Linearly interpolated between control points, constant outside of defined ranges.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class="Curve"></span><span data-v-c2b1f83f="" class="line"> <child>[RGB]|[map]</child></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> +<point position="[float]">[float]</point></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Example: this example clamps all output to be at most 0.5:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class="Curve"></span><span data-v-c2b1f83f="" class="line"> <child><map>...</map></child></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> <point position="0">0</point></span><span data-v-c2b1f83f="" class="line"> <point position="0.5">0.5</point></span><span data-v-c2b1f83f="" class="line"> <point position="1">0.5</point></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Interpolation

Similar to curve, but evaluates the child map as mono, and then uses the mono input to interpolate between RGB values, which can also be mapped.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class="Interpolation"></span><span data-v-c2b1f83f="" class="line"> <child>[RGB]|[map]</child></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> +<point position="[float]">[RGB]|[map]</point></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Fresnel

Applies a Fresnel curve on the mono input provided by a child node.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Fresnel”></span><span data-v-c2b1f83f="" class="line"> <ior>[float]</ior></span><span data-v-c2b1f83f="" class="line"> <child>[RGB]|[map]</child></span><span data-v-c2b1f83f="" class="line"></map></span></code>

ToneMap

Applies some predefined tone mapping operations on the child map.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”ToneMap”></span><span data-v-c2b1f83f="" class="line"> <child>[RGB]|[map]</child></span><span data-v-c2b1f83f="" class="line"> ?<multiplier>[RGB]</multiplier></span><span data-v-c2b1f83f="" class="line"> ?<alphaMultiplier>[float]</alphaMultiplier></span><span data-v-c2b1f83f="" class="line"> ?<offset>[RGB]</offset></span><span data-v-c2b1f83f="" class="line"> ?<invert>[bool]</invert></span><span data-v-c2b1f83f="" class="line"> ?<clamp>[bool]</clamp></span><span data-v-c2b1f83f="" class="line"> ?<abs>[bool]</abs></span><span data-v-c2b1f83f="" class="line"> ?<removeToneMapping>[bool]</removeToneMapping></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Result:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line">output = offset + input*multiplier</span><span data-v-c2b1f83f="" class="line">if(invert) {</span><span data-v-c2b1f83f="" class="line"> output = 1 - output</span><span data-v-c2b1f83f="" class="line">}</span><span data-v-c2b1f83f="" class="line">if(abs) {</span><span data-v-c2b1f83f="" class="line"> output = abs(output)</span><span data-v-c2b1f83f="" class="line">}</span><span data-v-c2b1f83f="" class="line">if(clamp) {</span><span data-v-c2b1f83f="" class="line"> output = clamp(output, 0, 1)</span><span data-v-c2b1f83f="" class="line">}</span><span data-v-c2b1f83f="" class="line">if(removeToneMapping) {</span><span data-v-c2b1f83f="" class="line"> output = inverseImageToneMapping(output)</span><span data-v-c2b1f83f="" class="line">}</span></code>

ColorCorrectMap

Applies color correction operations on the child map.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”ColorCorrectMap”></span><span data-v-c2b1f83f="" class="line"> <child>[RGB]|[map]</child></span><span data-v-c2b1f83f="" class="line"> ?<removeToneMapping>[bool]</removeToneMapping></span><span data-v-c2b1f83f="" class="line"> ?<tonemappingShader></span><span data-v-c2b1f83f="" class="line"> ?<linearMultiplier>[RGB]</linearMultiplier></span><span data-v-c2b1f83f="" class="line"> ?<contrast>[float]</contrast></span><span data-v-c2b1f83f="" class="line"> ?<saturation>[float]</saturation></span><span data-v-c2b1f83f="" class="line"> ?<brightness>[float]</brightness></span><span data-v-c2b1f83f="" class="line"> ?<invertColors>[bool]</invertColors></span><span data-v-c2b1f83f="" class="line"> ?<gamma>[float]</gamma></span><span data-v-c2b1f83f="" class="line"> ?<lut></span><span data-v-c2b1f83f="" class="line"> <path>[filename]</path></span><span data-v-c2b1f83f="" class="line"> ?<convertToLog>[bool]</convertToLog></span><span data-v-c2b1f83f="" class="line"> ?<opacity>[float]</opacity></span><span data-v-c2b1f83f="" class="line"> ?<gamma>[float]</gamma></span><span data-v-c2b1f83f="" class="line"> </lut></span><span data-v-c2b1f83f="" class="line"> ?<colorCurve></span><span data-v-c2b1f83f="" class="line"> <red></span><span data-v-c2b1f83f="" class="line"> <interpolation>PiecewiseCubic|PiecewiseLinear</interpolation></span><span data-v-c2b1f83f="" class="line"> *<controlPoint>[XY]</controlPoint></span><span data-v-c2b1f83f="" class="line"> </red></span><span data-v-c2b1f83f="" class="line"> <green></span><span data-v-c2b1f83f="" class="line"> <interpolation>PiecewiseCubic|PiecewiseLinear</interpolation></span><span data-v-c2b1f83f="" class="line"> *<controlPoint>[XY]</controlPoint></span><span data-v-c2b1f83f="" class="line"> </green></span><span data-v-c2b1f83f="" class="line"> <blue></span><span data-v-c2b1f83f="" class="line"> <interpolation>PiecewiseCubic|PiecewiseLinear</interpolation></span><span data-v-c2b1f83f="" class="line"> *<controlPoint>[XY]</controlPoint></span><span data-v-c2b1f83f="" class="line"> </blue></span><span data-v-c2b1f83f="" class="line"> <master></span><span data-v-c2b1f83f="" class="line"> <interpolation>PiecewiseCubic|PiecewiseLinear</interpolation></span><span data-v-c2b1f83f="" class="line"> *<controlPoint>[XY]</controlPoint></span><span data-v-c2b1f83f="" class="line"> </master></span><span data-v-c2b1f83f="" class="line"> </colorCurve></span><span data-v-c2b1f83f="" class="line"> </tonemappingShader></span><span data-v-c2b1f83f="" class="line"></map></span></code>

removeToneMapping

If set to true, the texture will not be affected by VFB tone mapping controls

removeToneMapping

If set to true, the texture will not be affected by VFB tone mapping controls

tonemappingShader > linearMultiplier

Linear multiplier the image gets multiplied with as a first step of the mapping

tonemappingShader > contrast

Amount of contrast. Must be a non-negative number, image is unaffected for 1

tonemappingShader > saturation

Amount of color saturation. Must be in interval ←1, 1>, image is unaffected for 0

tonemappingShader > brightness

Nonlinear brightness modification, in interval ←1, 1>

tonemappingShader > invertColors

If true, colors are inverted (in sRGB space)

tonemappingShader > gamma

Gamma transformation (output = input^(1/gamma)), in interval <0.01, 10>. 1 is neutral (no change) value. Note that since texturing is done entirely in linear color space, the value 2.2 does not have any special meaning here, and is not the default/correct/required value. You do not need to set this to 2.2 to get “correct” result - use it purely as artistic control over texture midpoint brightness

lut > path

Path to the LUT file. Currently supported formats are .cube and .3dl. If not present, the image is unaffected by LUT

lut > convertToLog

If true, the input color is converted to Log colorspace before LUT is applied

lut > opacity

Strength of the LUT. Must be in interval <0, 1>; 0 turns of LUT completely

lut > gamma

Exponent of gamma transform baked into LUT. Default value 2.2 corresponds to LUT being applied in sRGB space. Note that if convertToLog is true, gamma is applied before log transformation

colorCurve > red green blue master

Defines a tone mapping curve for a given RGB component (red, green, blue) or for all components (master)

colorCurve > * > interpolation

Defines the type of curve interpolation: either smooth cubic (PiecewiseCubic) or linear (PiecewiseLinear)

colorCurve > * > controlPoint

Control points that define the curve shape. Each point is two-dimensional and must fit in <{0,0},{2,2}>

Mixing

Multi

Select one of the sub-maps as output based on randomization by selected feature. MixMin and MixMax, if used, enable partial blending between the randomly selected submap and all other maps in the same point.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Multi”></span><span data-v-c2b1f83f="" class="line"> <mode>Material|MaterialId|Instance|Primitive</mode></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> +<slot></span><span data-v-c2b1f83f="" class="line"> <item>[RGB]|[map]</item></span><span data-v-c2b1f83f="" class="line"> <frequency>[float]</frequency></span><span data-v-c2b1f83f="" class="line"> </slot></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> ?<mixMin>[float]</mixMin></span><span data-v-c2b1f83f="" class="line"> ?<mixMax>[float]</mixMax></span><span data-v-c2b1f83f="" class="line"> ?<seed>[int]</seed></span><span data-v-c2b1f83f="" class="line"> ?<hueRandomization>[float]</hueRandomization> </span><span data-v-c2b1f83f="" class="line"> ?<gammaRandomization>[float]</gammaRandomization></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"></map></span></code>

item

Color or map being selected

item

Color or map being selected

frequency

Probability of selection of this item; does not have to add up to 1

mixMin

Minimum amount of blending

mixMax

Maximum amount of blending

seed

Random seed

hueRandomization

Additional randomization of color hue of the resulting color, must be in [0, 1]

gammaRandomization

Additional randomization of gamma exponent of the resulting color, must be in [0, 1]

UvwRandomizer

Modifies UWV coordinates of the input map based on the given randomization mode; works similarly to MultiMap. All randomization parameters have a minimum and maximum value, as well as a step size. If the step is 0, the selected value of the parameter can be any real number within the interval. For a positive value of the step, the selected value is (from + k * step) for some integer k. The step cannot be negative.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”UvwRandomizer”></span><span data-v-c2b1f83f="" class="line"> <mode>Material|MaterialId|Instance|Primitive</mode></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> <input>[map]</input></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> ?<seed>[int]</seed></span><span data-v-c2b1f83f="" class="line"> ?<uOffset></span><span data-v-c2b1f83f="" class="line"> <from>[float]</from></span><span data-v-c2b1f83f="" class="line"> <to>[float]</to></span><span data-v-c2b1f83f="" class="line"> <step>[float]</step></span><span data-v-c2b1f83f="" class="line"> </uOffset></span><span data-v-c2b1f83f="" class="line"> ?<vOffset></span><span data-v-c2b1f83f="" class="line"> <from>[float]</from></span><span data-v-c2b1f83f="" class="line"> <to>[float]</to></span><span data-v-c2b1f83f="" class="line"> <step>[float]</step></span><span data-v-c2b1f83f="" class="line"> </vOffset></span><span data-v-c2b1f83f="" class="line"> ?<wRotation></span><span data-v-c2b1f83f="" class="line"> <from>[float - deg]</from></span><span data-v-c2b1f83f="" class="line"> <to>[float - deg]</to></span><span data-v-c2b1f83f="" class="line"> <step>[float - deg]</step></span><span data-v-c2b1f83f="" class="line"> </wRotation></span><span data-v-c2b1f83f="" class="line"> ?<uScale></span><span data-v-c2b1f83f="" class="line"> <from>[float]</from></span><span data-v-c2b1f83f="" class="line"> <to>[float]</to></span><span data-v-c2b1f83f="" class="line"> <step>[float]</step></span><span data-v-c2b1f83f="" class="line"> </uScale></span><span data-v-c2b1f83f="" class="line"> ?<vScale></span><span data-v-c2b1f83f="" class="line"> <from>[float]</from></span><span data-v-c2b1f83f="" class="line"> <to>[float]</to></span><span data-v-c2b1f83f="" class="line"> <step>[float]</step></span><span data-v-c2b1f83f="" class="line"> </vScale></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> ?<lockScale>[bool]</lockScale></span><span data-v-c2b1f83f="" class="line"></map></span></code>

input

Input map

input

Input map

seed

Random seed

uOffset

Interval of offset in U coordinate

vOffset

Interval of offset in V coordinate

wRotation

Interval of rotation around W

uScale

Interval of scaling in U coordinate. Must be positive values

vScale

Interval of scaling in V coordinate. Must be positive values

lockScale

If true, the scaling is uniform, i.e. the same in U and V (based on the value of U parameter). Otherwise, U and V are scaled independently.

RaySwitcher

Selects one of the submaps during shading based on the incident ray type. If one of the types is not defined, the “base” slot will be used instead for that ray type.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”RaySwitcher”></span><span data-v-c2b1f83f="" class="line"> <base>[RGB]|[map]</base></span><span data-v-c2b1f83f="" class="line"> ?<reflect>[RGB]|[map]</reflect></span><span data-v-c2b1f83f="" class="line"> ?<refract>[RGB]|[map]</refract></span><span data-v-c2b1f83f="" class="line"> ?<direct>[RGB]|[map]</direct></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Mix

Mixes two maps with the selected operation:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Mix”></span><span data-v-c2b1f83f="" class="line"> <a>[float]|[map]</a></span><span data-v-c2b1f83f="" class="line"> <b>[float]|[map]</b></span><span data-v-c2b1f83f="" class="line"> ?<amountB>[float]|[map]</amountB></span><span data-v-c2b1f83f="" class="line"> <operation>mul|add|sub|mix|...TODO</operation></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Result:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line">if operation == mix: </span><span data-v-c2b1f83f="" class="line"> output = eval(a)*(1-eval(amountB)) + eval(b)*eval(amountB)</span><span data-v-c2b1f83f="" class="line">else if operation == mult: </span><span data-v-c2b1f83f="" class="line"> output = eval(a) * eval(b)</span><span data-v-c2b1f83f="" class="line">else if operation == add: </span><span data-v-c2b1f83f="" class="line"> output = eval(a) + eval(b)</span><span data-v-c2b1f83f="" class="line">else if operation == sub: </span><span data-v-c2b1f83f="" class="line"> output = eval(a) - eval(b)</span><span data-v-c2b1f83f="" class="line">else: </span><span data-v-c2b1f83f="" class="line"> ERROR</span></code>

Addition also works on bump maps.

FrontBack

Returns either the “front” submap when the ray hits the geometry from its front side, and the “back” submap otherwise.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”FrontBack”></span><span data-v-c2b1f83f="" class="line"> <front>[RGB]|[map]</front></span><span data-v-c2b1f83f="" class="line"> <back>[RGB]|[map]</back></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Geometry maps

Data

Returns some geometry data directly re-casted as color values.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Data”></span><span data-v-c2b1f83f="" class="line"> <mode>UVW|shadingNormal|geometryNormal|dotProduct|zDepth|dUvw</mode></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Falloff

Returns angle between a normal and specified axis - white for facing, black for grazing edges, negative for back-facing.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Falloff”></span><span data-v-c2b1f83f="" class="line"> <mode>view|local|world</mode></span><span data-v-c2b1f83f="" class="line"> <axis>[XYZ]</axis></span><span data-v-c2b1f83f="" class="line"> ?<absValue>[bool]</absValue></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Axis

Which axis to use. This is usually 0 0 1 for camera rays

Axis

Which axis to use. This is usually 0 0 1 for camera rays

mode

Which geometry frame is the Axis defined in.

absValue

If true, the absolute value of negative values will be used.

Example: Creates a dot product shading between the shading normal and the camera ray direction:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Falloff”></span><span data-v-c2b1f83f="" class="line"> <mode>view</mode></span><span data-v-c2b1f83f="" class="line"> <axis>0 0 1</axis></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Round Edges

Special map for use in bump slot, which simulates rounded edges/corners by perturbing shading normal.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”RoundEdges”></span><span data-v-c2b1f83f="" class="line"> <maxRadius>[float]</maxRadius></span><span data-v-c2b1f83f="" class="line"> ?<samples>[int]</samples></span><span data-v-c2b1f83f="" class="line"> ?<mappedRadius>[map]</mappedRadius></span><span data-v-c2b1f83f="" class="line"></map></span></code>

maxRadius

Radius of the rounded corners effect

maxRadius

Radius of the rounded corners effect

mappedRadius

If used, then this map will modulate the MaxRadius parameter

samples

Optional number of samples to take. It influences the render noise and speed

Gradient

Creates a smooth UVW-mapped gradient:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Gradient”></span><span data-v-c2b1f83f="" class="line"> <mode>u|v|radial</mode></span><span data-v-c2b1f83f="" class="line"></map></span></code>

u/v

Creates a gradient in the u/v axis by directly returning the u/v value as intensity

u/v

Creates a gradient in the u/v axis by directly returning the u/v value as intensity

radial

Creates a radial gradient in the 0-1 UVW square with center in 0.5, 0.5

Ao

Creates the ambient occlusion (darkening in corners) effect. Returns 0 for completely unoccluded and 1 for completely occluded geometry.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Ao”></span><span data-v-c2b1f83f="" class="line"> <maxDistance>[float]</maxDistance></span><span data-v-c2b1f83f="" class="line"> ?<mappedDistance>[map]</mappedDistance></span><span data-v-c2b1f83f="" class="line"> ?<samples>[int]</samples></span><span data-v-c2b1f83f="" class="line"> ?<phongExponent>[float]</phongExponent></span><span data-v-c2b1f83f="" class="line"> ?<mixExponent>[float]</mixExponent></span><span data-v-c2b1f83f="" class="line"> ?<normalMode>outside|inside|both</normalMode></span><span data-v-c2b1f83f="" class="line"> ?<offset>[XYZ]</offset></span><span data-v-c2b1f83f="" class="line"> ?<excludeMode>list|same|other</excludeMode></span><span data-v-c2b1f83f="" class="line"> ?<includeExclude>[includeList]</includeExclude></span><span data-v-c2b1f83f="" class="line"></map></span></code>

mappedDistance

If used, this map will modulate the maxDistance.

mappedDistance

If used, this map will modulate the maxDistance.

samples

Number of ray tracing samples to make in each evaluation, influences the noise-speed ratio.

phongExponent

How concentrated should the rays be around the normal?

mixExponent

Sets the balance between occluded and unoccluded color (works similarly to gamma correction).

normalMode

Where to compute the effect - on the outside/inside of the object.

offset

Constant offset in world space added to all generated rays. This can be used to shift the distribution of rays in one constant direction (typically up or down to create for example water weathering.

excludeMode

If present, this can be used to exclude some objects from consideration when computing occlusion. “Other” means that occlusion by other objects will be disregarded and only same object occlusion will be used. “Same” is the opposite, with occlusion by the same object as hit point ignored. “List” means that an include/exclude list will be used.

Wire

Wire shader, which mixes 3 colors or maps - base, color for geometry edges between triangles, and color for geometry vertices. If edge/vertex parameters are not included, then the edges/vertices will not be visible in the result.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Wire”></span><span data-v-c2b1f83f="" class="line"> <base>[RGB]|[map]</base></span><span data-v-c2b1f83f="" class="line"> <edge>[RGB]|[map]</edge></span><span data-v-c2b1f83f="" class="line"> <vertex>[RGB]|[map]</vertex></span><span data-v-c2b1f83f="" class="line"> <edgeWidth>[float]</edgeWidth></span><span data-v-c2b1f83f="" class="line"> <vertexWidth>[float]</vertexWidth></span><span data-v-c2b1f83f="" class="line"> <worldSpace>[bool]</worldSpace></span><span data-v-c2b1f83f="" class="line"> <allEdges>[bool]</allEdges></span><span data-v-c2b1f83f="" class="line"> <falloff>[float]</falloff> (1.6+)</span><span data-v-c2b1f83f="" class="line"></map></span></code>

worldSpace

If true, then edgeWidth and VertexWidth are in world units. If false, they are in screen units (projected pixels).

worldSpace

If true, then edgeWidth and VertexWidth are in world units. If false, they are in screen units (projected pixels).

allEdges

False by default and if that is the case then only the base mesh edges are visualized. By base mesh edges we mean those the user see in the content creation tool. All edges created by Corona (for example in displacement) remain hidden.

Generators

Solid

This special map always returns a constant value. It is optimized to have zero runtime overhead:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Solid”></span><span data-v-c2b1f83f="" class="line"> [RGB]|[float]</span><span data-v-c2b1f83f="" class="line"></map></span></code>

Checker

Produces black and white checker based on mapping (default is UVW, but can be altered with a UV mapper).

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Checker”></span><span data-v-c2b1f83f="" class="line"> <size>[float]</size></span><span data-v-c2b1f83f="" class="line"></map></span></code>

size

determines the size of tiles

size

determines the size of tiles

Noise

Generates black and white noise. Can have uvmap:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Noise”></span><span data-v-c2b1f83f="" class="line"> <type>perlin|cellular|...TODO</type></span><span data-v-c2b1f83f="" class="line"> <size>[float]</size></span><span data-v-c2b1f83f="" class="line">optional: <levels>[float]</levels></span><span data-v-c2b1f83f="" class="line">optional: <uvmap>...</uvmap></span><span data-v-c2b1f83f="" class="line">optional: <phase>[float]</phase></span><span data-v-c2b1f83f="" class="line"></map></span></code>

Sky

Used for environments, evaluates the Hosek & Wilkie sky model to compute a physically correct sky dome.

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Sky”></span><span data-v-c2b1f83f="" class="line"> <groundColor>[RGB]</groundColor></span><span data-v-c2b1f83f="" class="line"> ?<mode>preetham|rawafake|hosek</mode></span><span data-v-c2b1f83f="" class="line"> ?<turbidity>[float]</turbidity> </span><span data-v-c2b1f83f="" class="line"> ?<multiplier>[float]</multiplier></span><span data-v-c2b1f83f="" class="line"> ?<horizonBlur>[float]</horizonBlur></span><span data-v-c2b1f83f="" class="line"> ?<skyAffectGround>[bool]</skyAffectGround></span><span data-v-c2b1f83f="" class="line"> ?<rawafake></span><span data-v-c2b1f83f="" class="line"> ?<zenith>[RGB]</zenith></span><span data-v-c2b1f83f="" class="line"> ?<horizon>[RGB]</horizon></span><span data-v-c2b1f83f="" class="line"> ?<sunGlow>[float]</sunGlow></span><span data-v-c2b1f83f="" class="line"> ?<sunSideGlow>[float]</sunSideGlow></span><span data-v-c2b1f83f="" class="line"> removed in 1.7: <sunBleed>[float]</sunBleed></span><span data-v-c2b1f83f="" class="line"> removed in 1.7: <sunFalloff>[float]</sunFalloff></span><span data-v-c2b1f83f="" class="line"> </rawafake></span><span data-v-c2b1f83f="" class="line"></map></span></code>

multiplier

Overal intensity multiplier.

multiplier

Overal intensity multiplier.

turbidity

Amount of haze in the atmosphere. Has to be between 1.7 and 10.

groundColor

Color of the ground - used for rays looking downwards (with negative Z component). Additionally, if skyAffectGround is true, then this color is also used to influence the sky color on horizon.

horizonBlur

Simulates aerial perspective by blurring the line between sky and horizon.

mode

Which sun/sky model to use (preetham - old physically-based model, very inaccurate near horizon; rawafake - ad-hoc model by Rawalanche, with customizable color; hosek - improved physically-based model by Hosek&Wilkie, very accurate, used by default).

Specific parameters for rawafake mode:

zenith

Sky color at zenith.

zenith

Sky color at zenith.

horizon

Sky color at the horizon.

sunGlow

The amount of glow of the sky very near the sun. Value between 0 and 1 is required.

sunSideGlow

The amount of glow of the sky in the general direction of the sun. Value between 0 and 1 is required.

sunBleed

Intensity of the sun tint. Value between 0 and 1 is required.

sunFalloff

Slope of change of suns color.

Texture

Regular image texture:

<code data-v-c2b1f83f=""><span data-v-c2b1f83f="" class="line"><map class=”Texture”></span><span data-v-c2b1f83f="" class="line"> <image>[filename]</image></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> ?<gamma>[float]</gamma></span><span data-v-c2b1f83f="" class="line"> ?<bumpStrength>[float]</bumpStrength></span><span data-v-c2b1f83f="" class="line"> ?<interpolation>bilinear|bicubic|nearest</interpolation></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> ?<crop></span><span data-v-c2b1f83f="" class="line"> <startX>[float]</startX></span><span data-v-c2b1f83f="" class="line"> <startY>[float]</startY></span><span data-v-c2b1f83f="" class="line"> <endX>[float]</endX></span><span data-v-c2b1f83f="" class="line"> <endY>[float]</endY></span><span data-v-c2b1f83f="" class="line"> </crop></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"> ?<placement></span><span data-v-c2b1f83f="" class="line"> <startX>[float]</startX></span><span data-v-c2b1f83f="" class="line"> <startY>[float]</startY></span><span data-v-c2b1f83f="" class="line"> <endX>[float]</endX></span><span data-v-c2b1f83f="" class="line"> <endY>[float]</endY></span><span data-v-c2b1f83f="" class="line"> </placement></span><span data-v-c2b1f83f="" class="line"> </span><span data-v-c2b1f83f="" class="line"></map></span></code>

gamma

If present, overrides default gamma handling (2.2 for LDR and 1.0 for HDR formats)

gamma

If present, overrides default gamma handling (2.2 for LDR and 1.0 for HDR formats)