SeExpr
Typedefs | Functions | Variables
userdoc.txt File Reference

Typedefs

using style = "margin-left: 40px
 

Functions

< br > pow ($a, 0.5)+ $b< br >< br ></div > External variables can also be overridden by local assignment. &nbsp
 
 fbm (vnoise($P)+ $P/4)< br ></div >< br >< h4 >< a name
 
constrain x to range[lo, hi]< br >< br > float< b > compress</b > (float x, float lo, float hi) &nbsp
 
< div style="margin-left: 40px;"> Compress the dynamic range from[0..1] to[lo..hi]< br ></div > float< b > expand</b > (float x, float lo, float hi)< div style
 
the contrast is increased< br ></div > float< b > invert</b > (float x) - Invert the value. &nbsp
 
Defined as x< br >< br > float< b > remap</b > (float x, float source, float range, float falloff, int interp)< br >< div style
 
The shift will be scaled back for values between zero and one< br ></div > color< b > midhsi</b > (color x, float h, float s, float i, float map, float falloff=1, int interp=0)< br >< div style
 
The default falloff and interp values result in no remapping< br ></div >< br > color< b > rgbtohsl</b > (color rgb)< br > color< b >hsltorgb</b >(color hsl)< br >< div style
 
< br > HSL is Lightness (all in range[0..1])< br > These functions have also been extended to support rgb and hsl values outside of the range[0..1] in a reasonable way. &nbsp
 
For any rgb or hsl value (except for negative s values)
 
For any rgb or hsl the conversion is well defined and reversible< br ></div >< br > float< b > bias</b > (float x, float b)< div style
 
Defined as pow (x, log(b)/log(0.5)).< br ></div > float< b >gamma</b >(float x
 
Defined as float g pow (x, 1/g)< br >< br > float< b >fit</b >(float x
 
Defined as float g float float float float b2< div style="margin-left: 40px;"> Linear remapping of[a1..x..b1] to[a2..x..b2]< br ></div > float< b > mix</b > (float a, float b, float alpha)< div style
 
Defined as a *alpha b *alpha< br ></div >< br > float< b > boxstep</b > (float x, float a)< br > float< b >gaussstep</b >(float x
 
Defined as a *alpha b *alpha< br ></div >< br > float< b > float float b< br > float< b > linearstep</b > (float x, float a, float b)< br > float< b >smoothstep</b >(float x
 
 b (or x &gt;a in the case of boxstep). &nbsp
 
gausstep is has a sharper transition near one and a softer transition near zero whereas smoothstep is has a medium softness near both one and zero< br ></div >< br >< h4 >< a name="Noise_Functions"></a > Noise Functions</h4 > float< b > rand</b > ([float min, float max], [float seed])< br >< div style
 
Any number of seeds may be given and the result will be a random function based on all the seeds< br ></div > float< b > cellnoise</b > (vector v) float< b >cellnoise1</b >(float x)< br > float< b >cellnoise2</b >(float x
 
Any number of seeds may be given and the result will be a random function based on all the seeds< br ></div > float< b > float y< br > float< b > cellnoise3</b > (float x, float y, float z)< br > color< b >ccellnoise</b >(vector v) - color cellnoise< br >< div style
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > noise</b > (vector v)< br > float< b >noise</b >(float x
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > noise</b > (float x, float y, float z)< br > float< b >noise</b >(float x
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float float w< br > color< b > cnoise</b > (vector v) - color noise< br > float< b >snoise</b >(vector v) - signed noise w/range -1 to 1.< br > vector< b >vnoise</b >(vector v) - signed vector noise< br > color< b >cnoise4</b >(vector v
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float float w< br > color< b > float t color noise< br > float< b > snoise4</b > (vector v, float t) - signed noise w/range -1 to 1.< br > vector< b >vnoise4</b >(vector v
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float float w< br > color< b > float t color noise< br > float< b > float t signed vector noise< br > float< b > pnoise</b > (vector v, vector period) - periodic noise< br >< div style
 
This is Ken Perlin s original noise function< br ></div >< br > float< b > perlin</b > (vector v)< br > color< b >cperlin</b >(vector v) - color noise< br > float< b >sperlin</b >(vector v) - signed noise w/range -1 to 1.< br > vector< b >vperlin</b >(vector v) - signed vector noise< br >< div style
 
The< i > gain</i > controls how much each frequency is scaled relative to the previous frequency< br ></div >< br > float< b > turbulence</b > (vector v, int octaves &nbsp;=&nbsp;6, float lacunarity &nbsp;=&nbsp;2, float gain &nbsp;=&nbsp;0.5)< br > color< b >cturbulence</b >(vector v
 
< br > vector< b > vturbulence</b > (vector v, int octaves &nbsp;=&nbsp;6, float lacunarity &nbsp;=&nbsp;2, float gain &nbsp;=&nbsp;0.5)< br >< div style
 
This gives a more billowy appearance< br ></div >< br >< br > float< b > voronoi</b > (vector v, int type &nbsp;=&nbsp;1, float jitter &nbsp;=&nbsp;0.5, float fbmScale &nbsp;=&nbsp;0, int fbmOctaves &nbsp;=&nbsp;4, float fbmLacunarity &nbsp;=&nbsp;2, float fbmGain &nbsp;=&nbsp;0.5)< br > color< b >cvoronoi</b >(vector v
 
< br > vector< b > pvoronoi</b > (vector v, float jitter &nbsp;=&nbsp;0.5, float fbmScale &nbsp;=&nbsp;0, int fbmOctaves &nbsp;=&nbsp;4, float fbmLacunarity &nbsp;=&nbsp;2, float fbmGain &nbsp;=&nbsp;0.5)< br >< div style
 
The jitter param controls how irregular the pattern is (jitter=0 is like ordinary cellnoise). &nbsp
 
When fbmScale is zero (the default)
 
</div >< br >< h4 >< a name="Selection_Functions"></a > Selection Functions</h4 > int< b > cycle</b > (int index, int loRange, int hiRange)< br >< div style
 
The result is computed as (loRange+value %(hiRange-loRange+1)).< br ></div >< br > int< b >pick</b >(float index
 
The result is computed int int< br >< div style="margin-left: 40px;"> Picks values randomly between loRange and hiRange based on supplied index (which is automatically hashed). &nbsp
 
Any weights not supplied are assumed to be< br >< br ></div > float< b > choose</b > (float index, float choice1, float choice2, [...])< br >< div style
 
If a scalar is used in a vector it is replicated into the three components (e.g. 0.5 becomes[0.5, 0.5, 0.5]). &nbsp
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > curve</b > (float param, float pos0, color val0, int interp0, float pos1, color val1, int interp1,[...])< br > Interpolates color ramp given by control points at 'param'. Control points are specified by triples of parameters pos_i
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are monotone (non-oscillating) spline</p >< p > float< b >curve</b >(float param
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float< br > Interpolates a set of values to the parameter specified where yn are distributed evenly from[0...1]</p >< h4 >< a name="Misc_Functions"></a > Misc Functions</h4 >< p > void< b > printf</b > (string format,[param0, param1,...])< br > Prints a string to stdout that is formatted as given. Formatting parameters possible are %f for float(takes first component of vector argument) or %v for vector. For example if you wrote printf("test %f %v"
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float< br > Interpolates a set of values to the parameter specified where yn are distributed evenly from[0...1]</p >< h4 >< a name="Misc_Functions"></a > Misc Functions</h4 >< p > void< b > you would get test[4, 5, 6]</p >< h4 >< a name="Operators"></a > Operators (listed in decreasing precedence)</h4 >< table cellpadding
 
e g $P[0]</td ></tr >< tr >< td >< b ></b ></td >< td > exponentiation (same as pow function)</td ></tr >< tr >< td >< b >!</b ></td >< td >logical NOT</td ></tr >< tr >< td >< b >~</b ></td >< td >inversion(i.e. ~ $A gives the same result as 1- $A)</td ></tr >< tr >< td >< b > *&nbsp
 
</b ></td >< td > modulus (same as fmod function)</td ></tr >< tr >< td >< b >+&nbsp
 
 contrast (.7) - &gt
 
 clamp (0.2,&nbsp;0.8)< br > $u &nbsp
 
 hsi (20,&nbsp;1.2,&nbsp;1,&nbsp;$Cs &nbsp;-&gt;&nbsp;gamma(1.2))</td ></tr ></tbody ></table >< br >< h4 >< a name
 

Variables

<!-- Copyright Disney Enterprises, Inc. All rights reserved. Licensed under the Apache License, Version 2.0(the "License");you may not use this file except in compliance with the License and the following modification to it:Section 6 Trademarks. deleted and replaced with:6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor and its affiliates, except as required for reproducing the content of the NOTICE file. You may obtain a copy of the License at http:-->< h3 > Shader XGen Paint3d Expressions</h3 >< ul >< li >< a href="#Variables"> Variables</a ></li >< li >< a href="#Color_Masking_and_Remapping_Functions"> Color
 
<!-- Copyright Disney Enterprises, Inc. All rights reserved. Licensed under the Apache License, Version 2.0(the "License");you may not use this file except in compliance with the License and the following modification to it:Section 6 Trademarks. deleted and replaced with:6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor and its affiliates, except as required for reproducing the content of the NOTICE file. You may obtain a copy of the License at http:-->< h3 > Shader XGen Paint3d Expressions</h3 >< ul >< li >< a href="#Variables"> Variables</a ></li >< li >< a href="#Color_Masking_and_Remapping_Functions"> Masking
 
< br > $a = noise($P)
 
< br > $b = noise($a * 1)
 
This can be useful to scale the noise frequency for instance
 
< br > $P = $P * 10
 
For c from to
 
For c from the contrast is decreased & nbsp
 
For c & gt =&nbsp
 
When x is within< i > range</i > of source
 
The falloff shape is controlled by< i > interp</i > Numeric values or named constants may be used
 
int< b > linear</b >
 
int< b > smooth</b >
 
int< b > gaussian</b >
 
At the mid point
 
 At
 
the full shift happens
 
the full shift and at
 
< br > HSL is Hue
 
< br > HSL is Saturation
 
pulling the curve up and values & lt
 
Defined as float g float a1
 
Defined as float g float float b1
 
Defined as float g float float float a2
 
Defined as a *alpha b *alpha< br ></div >< br > float< b > float a
 
Between a and b
 
 Intuitively
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float y
 
This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float z
 
The remaining params are the same as for the fbm function< br > Voronoi types through
 
The result is computed int loRange
 
The result is computed int int hiRange
 
If a scalar is used in a vector context
 
For< b > pick
 
For< b ></b >< b > choose
 
For< b ></b >< b ></b >< b > cycle
 
For< b ></b >< b ></b >< b ></b >< b > spline
 
For< b ></b >< b ></b >< b ></b >< b ></b > etc
 
For< b ></b >< b ></b >< b ></b >< b ></b > will work just fine with vectors< br >< br > Arithmetic operators such as
 
For example
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > val_i
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are none
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are linear
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are smooth
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float pos0
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float val0
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int interp0
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float pos1
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float val1
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int interp1
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters pos_i
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float y1
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float y2
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float y3
 
For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float y4
 
< b ></b >< br >< b ></b ></td >< td > vector constructor< br > vector component access n must be
 
</b ></td >< td > multiply
 
</b ></td >< td > divide
 
</b ></td >< td > add
 
</b ></td >< td > equality =&nbsp
 
</b ></td >< td > inequality</td ></tr >< tr >< td >< b > & amp
 
 __pad0__
 
 __pad1__
 
</b ></td >< td > apply The function on the right of the arrow is applied to the expression on the left< br > Examples
 
For a multi line expression
 

Typedef Documentation

◆ style

using style = "margin-left: 40px

Definition at line 70 of file userdoc.txt.

Function Documentation

◆ as()

The result is computed as ( loRange+value hiRange-loRange+1)

References is(), and nbsp.

◆ b()

b ( or x &gt;a in the case of  boxstep) &

References a, and b.

◆ bias</b >()

For any rgb or hsl the conversion is well defined and reversible< br ></div >< br > float< b > bias</b > ( float  x,
float  b 
)

References b.

◆ boxstep</b >()

Defined as a *alpha b *alpha< br ></div >< br > float< b > boxstep</b > ( float  x,
float  a 
)

References a.

◆ cellnoise3</b >()

Any number of seeds may be given and the result will be a random function based on all the seeds< br ></div > float< b > float y< br > float< b > cellnoise3</b > ( float  x,
float  y,
float  z 
)

References b.

◆ cellnoise</b >()

Any number of seeds may be given and the result will be a random function based on all the seeds< br ></div > float< b > cellnoise</b > ( vector  v)

References b.

◆ choose</b >()

Any weights not supplied are assumed to be< br >< br ></div > float< b > choose</b > ( float  index,
float  choice1,
float  choice2 
)

References a, b, be, is(), and nbsp.

◆ clamp()

clamp ( 0.  2,
&nbsp;0.  8 
) &

References nbsp.

◆ cnoise</b >()

This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float float w< br > color< b > cnoise</b > ( vector  v)

References b.

◆ components()

If a scalar is used in a vector it is replicated into the three components ( e.g. 0.5  becomes[0.5, 0.5, 0.5]) &

References a, is(), and nbsp.

Referenced by DeepWaterScene::flowDirectionChanged().

◆ compress</b >()

constrain x to range[lo, hi]< br >< br > float< b > compress</b > ( float  x,
float  lo,
float  hi 
) &

References b.

◆ contrast()

contrast ( 7) &

References nbsp.

◆ curve</b >()

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > curve</b > ( float  param,
float  pos0,
color  val0,
int  interp0,
float  pos1,
color  val1,
int  interp1 
)

References b.

◆ cycle</b >()

</div >< br >< h4 >< a name="Selection_Functions"></a > Selection Functions</h4 > int< b > cycle</b > ( int  index,
int  loRange,
int  hiRange 
)

References a, b, and is().

◆ expand</b >()

< div style="margin-left: 40px;"> Compress the dynamic range from[0..1] to[lo..hi]< br ></div > float< b > expand</b > ( float  x,
float  lo,
float  hi 
)

References b, and nbsp.

◆ exponentiation()

e g $P[0]</td ></tr >< tr >< td >< b ></b ></td >< td > exponentiation ( same as pow  function) &

References b, and nbsp.

◆ fbm()

fbm ( vnoise($P)+ $P/  4)

References a, and b.

◆ hsi()

hsi ( 20  ,
&nbsp;1.  2,
&nbsp;  1,
&nbsp; $Cs &nbsp;-&gt;&nbsp;  gamma1.2 
)

References a, expression, and nbsp.

◆ index()

The result is computed int int< br >< div style="margin-left: 40px;"> Picks values randomly between loRange and hiRange based on supplied index ( which is automatically  hashed) &

◆ invert</b >()

the contrast is increased< br ></div > float< b > invert</b > ( float  x) &

References b, and is().

◆ is()

The jitter param controls how irregular the pattern is ( jitter  = 0 is like ordinary cellnoise) &

◆ Lightness()

< br > HSL is Lightness ( all in  range[0..1]) &

◆ linearstep</b >()

Defined as a *alpha b *alpha< br ></div >< br > float< b > float float b< br > float< b > linearstep</b > ( float  x,
float  a,
float  b 
)

◆ midhsi</b >()

The shift will be scaled back for values between zero and one< br ></div > color< b > midhsi</b > ( color  x,
float  h,
float  s,
float  i,
float  map,
float  falloff = 1,
int  interp = 0 
)

References b, and nbsp.

◆ mix</b >()

Defined as float g float float float float b2< div style="margin-left: 40px;"> Linear remapping of[a1..x..b1] to[a2..x..b2]< br ></div > float< b > mix</b > ( float  a,
float  b,
float  alpha 
)

References a, b, and nbsp.

◆ modulus()

</b ></td >< td > modulus ( same as fmod  function) &

◆ monotone()

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are monotone ( non-  oscillating)

◆ noise</b >() [1/2]

This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > noise</b > ( float  x,
float  y,
float  z 
)

References b.

◆ noise</b >() [2/2]

This is the same as the prman cellnoise function< br ></div >< br > float< b > noise</b > ( vector  v)

References b, and is().

◆ Operators()

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float< br > Interpolates a set of values to the parameter specified where yn are distributed evenly from[0...1]</p >< h4 >< a name="Misc_Functions"></a > Misc Functions</h4 >< p > void< b > you would get test[4, 5, 6]</p >< h4 >< a name="Operators"></a > Operators ( listed in decreasing  precedence)

References a, b, and nbsp.

◆ perlin</b >()

This is Ken Perlin s original noise function< br ></div >< br > float< b > perlin</b > ( vector  v)

References a, b, is(), and nbsp.

◆ pnoise</b >()

This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float float w< br > color< b > float t color noise< br > float< b > float t signed vector noise< br > float< b > pnoise</b > ( vector  v,
vector  period 
)

References b, and is().

◆ pow() [1/3]

< br > pow (   $a,
0.  5 
) &

◆ pow() [2/3]

Defined as float g pow ( x  ,
1/  g 
)

References b.

◆ pow() [3/3]

Defined as pow ( x  ,
log(b)/log(0.5)   
)

◆ printf</b >()

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float< br > Interpolates a set of values to the parameter specified where yn are distributed evenly from[0...1]</p >< h4 >< a name="Misc_Functions"></a > Misc Functions</h4 >< p > void< b > printf</b > ( string  format)

References a, and is().

◆ pvoronoi</b >()

< br > vector< b > pvoronoi</b > ( vector  v,
float jitter &nbsp;  = &nbsp;0.5,
float fbmScale &nbsp;  = &nbsp;0,
int fbmOctaves &nbsp;  = &nbsp;4,
float fbmLacunarity &nbsp;  = &nbsp;2,
float fbmGain &nbsp;  = &nbsp;0.5 
)

References nbsp.

◆ rand</b >()

gausstep is has a sharper transition near one and a softer transition near zero whereas smoothstep is has a medium softness near both one and zero< br ></div >< br >< h4 >< a name="Noise_Functions"></a > Noise Functions</h4 > float< b > rand</b > ( )

References a, b, be, and is().

◆ remap</b >()

Defined as x< br >< br > float< b > remap</b > ( float  x,
float  source,
float  range,
float  falloff,
int  interp 
)

References b, and is().

◆ rgbtohsl</b >()

The default falloff and interp values result in no remapping< br ></div >< br > color< b > rgbtohsl</b > ( color  rgb)

References b, and nbsp.

◆ snoise4</b >()

This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float float w< br > color< b > float t color noise< br > float< b > snoise4</b > ( vector  v,
float  t 
)

References b.

◆ turbulence</b >()

The< i > gain</i > controls how much each frequency is scaled relative to the previous frequency< br ></div >< br > float< b > turbulence</b > ( vector  v,
int octaves &nbsp;  = &nbsp;6,
float lacunarity &nbsp;  = &nbsp;2,
float gain &nbsp;  = &nbsp;0.5 
)

References b, and nbsp.

◆ value()

For any rgb or hsl value ( except for negative s  values)

◆ voronoi</b >()

This gives a more billowy appearance< br ></div >< br >< br > float< b > voronoi</b > ( vector  v,
int type &nbsp;  = &nbsp;1,
float jitter &nbsp;  = &nbsp;0.5,
float fbmScale &nbsp;  = &nbsp;0,
int fbmOctaves &nbsp;  = &nbsp;4,
float fbmLacunarity &nbsp;  = &nbsp;2,
float fbmGain &nbsp;  = &nbsp;0.5 
)

References b, and nbsp.

◆ vturbulence</b >()

< br > vector< b > vturbulence</b > ( vector  v,
int octaves &nbsp;  = &nbsp;6,
float lacunarity &nbsp;  = &nbsp;2,
float gain &nbsp;  = &nbsp;0.5 
)

References a, and nbsp.

◆ zero()

When fbmScale is zero ( the  default)

References is(), and nbsp.

Variable Documentation

◆ $a

<br> $a = noise($P)

Definition at line 71 of file userdoc.txt.

◆ $b

<br> $b = noise($a * 1)

Definition at line 72 of file userdoc.txt.

◆ $P

<br> $P = $P * 10

Definition at line 79 of file userdoc.txt.

◆ __pad0__

__pad0__

Definition at line 523 of file userdoc.txt.

◆ __pad1__

__pad1__

Definition at line 524 of file userdoc.txt.

◆ a

Defined as a *alpha b *alpha< br ></div >< br > float< b > float float b< br > float< b > float a

◆ a1

Defined as float g float a1

Definition at line 162 of file userdoc.txt.

Referenced by SeExpr2::fit().

◆ a2

Defined as float g float float float a2

Definition at line 162 of file userdoc.txt.

Referenced by SeExpr2::fit().

◆ add

</b></td><td> add

Definition at line 504 of file userdoc.txt.

Referenced by SeExpr2::ExprVarEnv::mergeBranches().

◆ amp

& amp

Definition at line 515 of file userdoc.txt.

◆ as

For<b></b><b></b><b></b><b></b> will work just fine with vectors<br><br> Arithmetic operators such as

Definition at line 445 of file userdoc.txt.

◆ At

At

Definition at line 136 of file userdoc.txt.

◆ at

the full shift and at

Definition at line 137 of file userdoc.txt.

Referenced by accessible().

◆ b

b

◆ b1

Defined as float g float float b1

Definition at line 162 of file userdoc.txt.

Referenced by SeExpr2::fit().

◆ be

<b></b><br><b></b></td><td> vector constructor<br> vector component access n must be

Definition at line 484 of file userdoc.txt.

Referenced by choose</b >(), SeExpr2::DExpression::DExpression(), index(), is(), pow(), and rand</b >().

◆ choose

For<b></b><b> choose

Definition at line 443 of file userdoc.txt.

Referenced by SeExpr2::defineBuiltins(), and SeExpr2::swatch().

◆ Color

<!-- Copyright Disney Enterprises, Inc. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License and the following modification to it: Section 6 Trademarks. deleted and replaced with: 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor and its affiliates, except as required for reproducing the content of the NOTICE file. You may obtain a copy of the License at http: --><h3> Shader XGen Paint3d Expressions</h3><ul><li><a href="#Variables"> Variables</a></li><li><a href="#Color_Masking_and_Remapping_Functions"> Color

Definition at line 21 of file userdoc.txt.

◆ context

If a vector is used in a scalar context

◆ cycle

For<b></b><b></b><b> cycle

Definition at line 443 of file userdoc.txt.

Referenced by SeExpr2::defineBuiltins().

◆ divide

</b></td><td> divide

Definition at line 500 of file userdoc.txt.

◆ equality

</b></td><td> equality =&nbsp

Definition at line 512 of file userdoc.txt.

◆ etc

For< b ></b >< b ></b >< b ></b >< b ></b > will work just fine with vectors< br >< br > Arithmetic operators such etc

Definition at line 443 of file userdoc.txt.

◆ example

For example

Definition at line 446 of file userdoc.txt.

◆ Examples

</b></td><td> apply The function on the right of the arrow is applied to the expression on the left<br> Examples

Definition at line 531 of file userdoc.txt.

◆ expression

For a multi line expression

◆ gaussian</b >

int<b> gaussian</b >
Initial value:
= 2<br>
</div>
<br>
color <b>hsi</b> ( color x, float h, float s, float i, float map=1 ) <br>
<div style="margin-left: 40px;">The hsi function shifts the hue by h
(in degrees) and scales the saturation and intensity by s and i
respectively.&nbsp
</pre >< h3 > A simple variable reference</h3 > This is not a very interesting subclass of expression until we add some additional variables Variables on some applications may be very dynamic In this we only need x
Definition tutorial.txt:108
Between a and b
Definition userdoc.txt:180
hsi(20,&nbsp;1.2,&nbsp;1,&nbsp;$Cs &nbsp;-&gt;&nbsp;gamma(1.2))</td ></tr ></tbody ></table >< br >< h4 >< a name
"margin-left: 40px style
Definition userdoc.txt:70
For c from the contrast is decreased & nbsp
Definition userdoc.txt:101

Definition at line 119 of file userdoc.txt.

◆ gt

& gt =&nbsp

Definition at line 101 of file userdoc.txt.

◆ happens

the full shift happens

Definition at line 137 of file userdoc.txt.

◆ hiRange

The result is computed int int hiRange

Definition at line 322 of file userdoc.txt.

Referenced by SeExpr2::cycle(), and SeExpr2::pick().

◆ Hue

<br> HSL is Hue

Definition at line 147 of file userdoc.txt.

◆ instance

For instance

Definition at line 77 of file userdoc.txt.

◆ interp0

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int interp0

Definition at line 459 of file userdoc.txt.

◆ interp1

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int interp1

Definition at line 459 of file userdoc.txt.

◆ Intuitively

Intuitively

Definition at line 183 of file userdoc.txt.

◆ linear

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are linear

Definition at line 457 of file userdoc.txt.

◆ linear</b >

int<b> linear</b >
Initial value:
= 0<br>

Definition at line 116 of file userdoc.txt.

◆ loRange

The result is computed int loRange

Definition at line 322 of file userdoc.txt.

Referenced by SeExpr2::cycle(), and SeExpr2::pick().

◆ lt

$u & lt

Definition at line 157 of file userdoc.txt.

◆ Masking

<!-- Copyright Disney Enterprises, Inc. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License and the following modification to it: Section 6 Trademarks. deleted and replaced with: 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor and its affiliates, except as required for reproducing the content of the NOTICE file. You may obtain a copy of the License at http: --><h3> Shader XGen Paint3d Expressions</h3><ul><li><a href="#Variables"> Variables</a></li><li><a href="#Color_Masking_and_Remapping_Functions"> Masking

Definition at line 21 of file userdoc.txt.

◆ multiply

</b></td><td> multiply

Definition at line 500 of file userdoc.txt.

◆ nbsp

For a multi line each line may have its own comment< br >< br >< h4 >< a name="Custom_Plugins"></a > Custom Plugins</h4 > Custom fuctions may be written in C and loaded as one or more dynamic plugins & nbsp

◆ none

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are none

Definition at line 457 of file userdoc.txt.

◆ pick

For<b> pick

Definition at line 443 of file userdoc.txt.

Referenced by SeExpr2::defineBuiltins().

◆ point

At the mid point

Definition at line 136 of file userdoc.txt.

Referenced by CCurveScene::mouseMoveEvent(), and CurveScene::mouseMoveEvent().

◆ pos0

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float pos0

Definition at line 459 of file userdoc.txt.

◆ pos1

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float pos1

◆ pos_i

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int<br> Interpolates a ramp defined by control points at param Control points are specified by triples of parameters pos_i

Definition at line 461 of file userdoc.txt.

◆ Saturation

<br> HSL is Saturation

Definition at line 147 of file userdoc.txt.

◆ smooth

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are smooth

Definition at line 457 of file userdoc.txt.

◆ smooth</b >

int<b> smooth</b >
Initial value:
= 1<br>

Definition at line 118 of file userdoc.txt.

◆ source

When x is within<i> range</i> of source

Definition at line 111 of file userdoc.txt.

Referenced by SeExpr2::isWS(), and SeExpr2::remap().

◆ spline

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are spline

Definition at line 443 of file userdoc.txt.

Referenced by SeExpr2::defineBuiltins().

◆ through

The remaining params are the same as for the fbm function<br> Voronoi types through

Definition at line 305 of file userdoc.txt.

◆ to

For c from to

Definition at line 101 of file userdoc.txt.

◆ used

The falloff shape is controlled by<i> interp</i> Numeric values or named constants may be used

Definition at line 115 of file userdoc.txt.

◆ val0

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float val0

Definition at line 459 of file userdoc.txt.

◆ val1

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float val1

Definition at line 459 of file userdoc.txt.

◆ val_i

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters val_i

Definition at line 456 of file userdoc.txt.

◆ y

This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float y

◆ y1

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float< br > Interpolates a set of values to the parameter specified where y1

Definition at line 464 of file userdoc.txt.

◆ y2

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float y2

Definition at line 464 of file userdoc.txt.

◆ y3

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float y3

Definition at line 464 of file userdoc.txt.

◆ y4

For applying the gamma function to a map adjusts the gamma of all three color channels< br >< br >< h4 >< a name="Curve_Functions"></a > Curve Functions</h4 >< p > Interpolation of parameter values to a set of control points is governed by the following functions</p >< p > color< b > and interp_i Interpolation codes are float float int float float int< br > Interpolates a ramp defined by control points at param Control points are specified by triples of parameters and interp_i Interpolation codes are float float float float y4

Definition at line 464 of file userdoc.txt.

◆ z

This is the same as the prman cellnoise function< br ></div >< br > float< b > float y< br > float< b > float float z