Revision e25d0dde
Added by Leszek Koltunski over 9 years ago
| src/main/java/org/distorted/library/EffectNames.java | ||
|---|---|---|
| 23 | 23 |
/** |
| 24 | 24 |
* Names of Effects one can apply to DistortedObjects. |
| 25 | 25 |
* <p> |
| 26 |
* Effect's 'unity' is a set of values which |
|
| 26 |
* Effect's 'Type' is one of the constants defined in {@see EffectTypes}.
|
|
| 27 |
* </p> |
|
| 28 |
* <p> |
|
| 29 |
* Effect's 'Uniforms' are a vector of 7 (matrix effects) 9 (vertex) or 8 (fragment) floats, which |
|
| 30 |
* together form full information how to compute a given effect. |
|
| 31 |
* Typically, some of those values will be Interpolated in CPU (by one of the 'EffectQueueX.compute()' |
|
| 32 |
* methods) and the effect of such Interpolation sent to the Shaders. |
|
| 33 |
* </p> |
|
| 34 |
* <p> |
|
| 35 |
* Effect's 'Unity' is such a particular vector of its 'interpolated values' which makes the |
|
| 36 |
* effect NULL. For example, if the effect is 'MOVE' by a 3-dimensional vector, then a 'NULL |
|
| 37 |
* MOVE' is a MOVE by vector (0,0,0), thus (0,0,0) is the unity of the MOVE effect. |
|
| 38 |
* This is used by the EffectQueue classes to decide if the final form of the Effect is NULL - and |
|
| 39 |
* thus if it can safely be removed from Effect Queues without affecting the visual in any way. |
|
| 40 |
* </p> |
|
| 27 | 41 |
*/ |
| 28 | 42 |
public enum EffectNames |
| 29 | 43 |
{
|
| ... | ... | |
| 35 | 49 |
/** |
| 36 | 50 |
* Rotate the whole Object around a center point (in angle-axis notation). |
| 37 | 51 |
* <p> |
| 38 |
* 7 Uniforms: (angle,axisX,axisY,axisZ,centerX,centerY,centerZ)
|
|
| 52 |
* Uniforms: (angle,axisX,axisY,axisZ,centerX,centerY,centerZ) |
|
| 39 | 53 |
* Unity: angle==0 |
| 40 | 54 |
*/ |
| 41 | 55 |
ROTATE ( EffectTypes.MATRIX , new float[] {0.0f} ),
|
| 42 | 56 |
/** |
| 43 | 57 |
* Rotate the whole Object around a center point (in quaternion notation). |
| 44 | 58 |
* <p> |
| 45 |
* 7 Uniforms: (quatX,quatY,quatZ,quatW,centerX,centerY,centerZ)
|
|
| 59 |
* Uniforms: (quatX,quatY,quatZ,quatW,centerX,centerY,centerZ) |
|
| 46 | 60 |
* Unity: (quatX,quatY,quatZ) = (0,0,0) |
| 47 | 61 |
*/ |
| 48 | 62 |
QUATERNION ( EffectTypes.MATRIX , new float[] {0.0f,0.0f,0.0f} ),
|
| 49 | 63 |
/** |
| 50 | 64 |
* Move the whole Object by a vector. |
| 51 | 65 |
* <p> |
| 52 |
* 7 Uniforms: (vectorX,vectorY,vectorZ,UNUSED,UNUSED,UNUSED,UNUSED)
|
|
| 66 |
* Uniforms: (vectorX,vectorY,vectorZ,UNUSED,UNUSED,UNUSED,UNUSED) |
|
| 53 | 67 |
* Unity: (vectorX,vectorY,vectorZ) = (0,0,0) |
| 54 | 68 |
*/ |
| 55 | 69 |
MOVE ( EffectTypes.MATRIX , new float[] {0.0f,0.0f,0.0f} ),
|
| 56 | 70 |
/** |
| 57 | 71 |
* Scale the whole Object independently in all 3 dimensions. |
| 58 | 72 |
* <p> |
| 59 |
* 7 Uniforms: (scaleX,scaleY,scaleZ,UNUSED,UNUSED,UNUSED,UNUSED)
|
|
| 73 |
* Uniforms: (scaleX,scaleY,scaleZ,UNUSED,UNUSED,UNUSED,UNUSED) |
|
| 60 | 74 |
* Unity: (scaleX,scaleY,scaleZ) = (1,1,1) |
| 61 | 75 |
*/ |
| 62 | 76 |
SCALE ( EffectTypes.MATRIX , new float[] {1.0f,1.0f,1.0f} ),
|
| 63 | 77 |
/** |
| 64 | 78 |
* Shear the whole Object in 3 dimensions around a center point. |
| 65 | 79 |
* <p> |
| 66 |
* 7 Uniforms: (shearX,shearY,shearZ,UNUSED,centerX,centerY,centerZ)
|
|
| 80 |
* Uniforms: (shearX,shearY,shearZ,UNUSED,centerX,centerY,centerZ) |
|
| 67 | 81 |
* Unity: (shearX,shearY,shearZ) = (0,0,0) |
| 68 | 82 |
*/ |
| 69 | 83 |
SHEAR ( EffectTypes.MATRIX , new float[] {0.0f,0.0f,0.0f} ),
|
| ... | ... | |
| 76 | 90 |
/** |
| 77 | 91 |
* Apply a 3D vector of force to area around a point on the surface of the Object. |
| 78 | 92 |
* <p> |
| 79 |
* 9 Uniforms: (forceX,forceY,forceZ,regionX,regionY,regionRX,regionRY,centerX,centerY)
|
|
| 93 |
* Uniforms: (forceX,forceY,forceZ,regionX,regionY,regionRX,regionRY,centerX,centerY) |
|
| 80 | 94 |
* Unity: (forceX,forceY,forceZ) = (0,0,0) |
| 81 | 95 |
*/ |
| 82 | 96 |
DISTORT ( EffectTypes.VERTEX , new float[] {0.0f,0.0f,0.0f} ), // keep this the first VERT effect (reason: getType)
|
| 83 | 97 |
/** |
| 84 | 98 |
* Deform the whole Object by applying a 2D vector of force to a center point. |
| 85 | 99 |
* <p> |
| 86 |
* 9 Uniforms: (forceX,forceY,UNUSED,UNUSED,UNUSED,UNUSED,UNUSED,centerX,centerY)
|
|
| 100 |
* Uniforms: (forceX,forceY,UNUSED,UNUSED,UNUSED,UNUSED,UNUSED,centerX,centerY) |
|
| 87 | 101 |
* Unity: (forceX,forceY) = (0,0) |
| 88 | 102 |
*/ |
| 89 | 103 |
DEFORM ( EffectTypes.VERTEX , new float[] {0.0f,0.0f} ),
|
| 90 | 104 |
/** |
| 91 | 105 |
* Pull (or push away) all points around a center point to (from) it. |
| 92 | 106 |
* <p> |
| 93 |
* 9 Uniforms: (sinkFactor,UNUSED,UNUSED,regionX,regionY,regionRX,regionRY,centerX,centerY)
|
|
| 107 |
* Uniforms: (sinkFactor,UNUSED,UNUSED,regionX,regionY,regionRX,regionRY,centerX,centerY) |
|
| 94 | 108 |
* Unity: sinkFactor = 1 |
| 95 | 109 |
*/ |
| 96 | 110 |
SINK ( EffectTypes.VERTEX , new float[] {1.0f} ),
|
| 97 | 111 |
/** |
| 98 | 112 |
* Smoothly rotate a limited area around a center point. |
| 99 | 113 |
* <p> |
| 100 |
* 9 Uniforms: (swirlAngle,UNUSED,UNUSED,regionX,regionY,regionRX,regionRY,centerX,centerY)
|
|
| 114 |
* Uniforms: (swirlAngle,UNUSED,UNUSED,regionX,regionY,regionRX,regionRY,centerX,centerY) |
|
| 101 | 115 |
* Unity: swirlAngle = 0 |
| 102 | 116 |
*/ |
| 103 | 117 |
SWIRL ( EffectTypes.VERTEX , new float[] {0.0f} ),
|
| ... | ... | |
| 109 | 123 |
/** |
| 110 | 124 |
* Create square-shaped macroblocks. |
| 111 | 125 |
* <p> |
| 112 |
* 8 Uniforms: (macroblockSize,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 126 |
* Uniforms: (macroblockSize,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 113 | 127 |
* Unity: macroblockSize = 1 |
| 114 | 128 |
*/ |
| 115 | 129 |
MACROBLOCK ( EffectTypes.FRAGMENT, new float[] {1.0f} ), // keep this the first FRAG effect (reason: getType)
|
| 116 | 130 |
/** |
| 117 | 131 |
* Make a given Region (partially) transparent. |
| 118 | 132 |
* <p> |
| 119 |
* 8 Uniforms: (transparencyLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 133 |
* Uniforms: (transparencyLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 120 | 134 |
* Unity: transparencyLevel = 1 |
| 121 | 135 |
*/ |
| 122 | 136 |
ALPHA ( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| ... | ... | |
| 124 | 138 |
* Make a given Region (partially) transparent. |
| 125 | 139 |
* Effect smoothly fades towards the edges of the region. |
| 126 | 140 |
* <p> |
| 127 |
* 8 Uniforms: (transparencyLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 141 |
* Uniforms: (transparencyLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 128 | 142 |
* Unity: transparencyLevel = 1 |
| 129 | 143 |
*/ |
| 130 | 144 |
SMOOTH_ALPHA ( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| 131 | 145 |
/** |
| 132 | 146 |
* Blend current color in the texture with a given color. |
| 133 | 147 |
* <p> |
| 134 |
* 8 Uniforms: (blendLevel,colorR,colorG,colorB, regionX, regionY, regionRX, regionRY)
|
|
| 148 |
* Uniforms: (blendLevel,colorR,colorG,colorB, regionX, regionY, regionRX, regionRY) |
|
| 135 | 149 |
* Unity: blendLevel = 0 |
| 136 | 150 |
*/ |
| 137 | 151 |
CHROMA ( EffectTypes.FRAGMENT, new float[] {0.0f} ),
|
| 138 | 152 |
/** |
| 139 | 153 |
* Smoothly blend current color in the texture with a given color. |
| 140 | 154 |
* <p> |
| 141 |
* 8 Uniforms: (blendLevel,colorR,colorG,colorB, regionX, regionY, regionRX, regionRY)
|
|
| 155 |
* Uniforms: (blendLevel,colorR,colorG,colorB, regionX, regionY, regionRX, regionRY) |
|
| 142 | 156 |
* Unity: blendLevel = 0 |
| 143 | 157 |
*/ |
| 144 | 158 |
SMOOTH_CHROMA ( EffectTypes.FRAGMENT, new float[] {0.0f} ),
|
| 145 | 159 |
/** |
| 146 | 160 |
* Change brightness level of a given Region. |
| 147 | 161 |
* <p> |
| 148 |
* 8 Uniforms: (brightnessLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 162 |
* Uniforms: (brightnessLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 149 | 163 |
* Unity: brightnessLevel = 1 |
| 150 | 164 |
*/ |
| 151 | 165 |
BRIGHTNESS ( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| 152 | 166 |
/** |
| 153 | 167 |
* Smoothly change brightness level of a given Region. |
| 154 | 168 |
* <p> |
| 155 |
* 8 Uniforms: (brightnessLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 169 |
* Uniforms: (brightnessLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 156 | 170 |
* Unity: brightnessLevel = 1 |
| 157 | 171 |
*/ |
| 158 | 172 |
SMOOTH_BRIGHTNESS( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| 159 | 173 |
/** |
| 160 | 174 |
* Change saturation level of a given Region. |
| 161 | 175 |
* <p> |
| 162 |
* 8 Uniforms: (saturationLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 176 |
* Uniforms: (saturationLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 163 | 177 |
* Unity: saturationLevel = 1 |
| 164 | 178 |
*/ |
| 165 | 179 |
SATURATION ( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| 166 | 180 |
/** |
| 167 | 181 |
* Smoothly change saturation level of a given Region. |
| 168 | 182 |
* <p> |
| 169 |
* 8 Uniforms: (saturationLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 183 |
* Uniforms: (saturationLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 170 | 184 |
* Unity: saturationLevel = 1 |
| 171 | 185 |
*/ |
| 172 | 186 |
SMOOTH_SATURATION( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| 173 | 187 |
/** |
| 174 | 188 |
* Change contrast level of a given Region. |
| 175 | 189 |
* <p> |
| 176 |
* 8 Uniforms: (contrastLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 190 |
* Uniforms: (contrastLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 177 | 191 |
* Unity: contrastLevel = 1 |
| 178 | 192 |
*/ |
| 179 | 193 |
CONTRAST ( EffectTypes.FRAGMENT, new float[] {1.0f} ),
|
| 180 | 194 |
/** |
| 181 | 195 |
* Smoothly change contrast level of a given Region. |
| 182 | 196 |
* <p> |
| 183 |
* 8 Uniforms: (contrastLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY)
|
|
| 197 |
* Uniforms: (contrastLevel,UNUSED,UNUSED,UNUSED, regionX, regionY, regionRX, regionRY) |
|
| 184 | 198 |
* Unity: contrastLevel = 1 |
| 185 | 199 |
*/ |
| 186 | 200 |
SMOOTH_CONTRAST ( EffectTypes.FRAGMENT, new float[] {1.0f} );
|
Also available in: Unified diff
Additional Javadoc stuff.