TXMT/Parameters/CategorisedList/TexturalAnimation
From SimsWiki
|
TXMT/Parameters/CategorisedList/TexturalAnimation
There're 4 known designed pathways to control textural animation(s).
The following is a simple numeric hierarchy is to show how these txmt parameters work according to these pathways (the values of "stdMatTextureCoordAnimMode").
0. The first-most parameter to set for activation, deactivation, textural animation types is
1. If the value is "none", then textural animation is disabled.
2. If the value is "tile", then the following parameters should be set and needed.
- These parameters set the properties of tile-animation as shown in JWoods' Cell Animation Tutorial here
- an example - niol's recolour - Numenor_WallWindow_(Standard+Seamless)_Recolour-Moi_lightning-2048-compressed.rar
3. If the value is "transform", then the following parameters should be set and needed.
- The translation parameters are essential for the rotation parameters to work out.
- This parameter sets the relative location of the "transform"-based textural animation of the mapped surfaces or region(s).
- These parameters set how the essential "transform-based translation" animation behaves. Such translation can work independently from scaling and rotation.
- stdMatTextureCoordTfAnimTransSpeed
- stdMatTextureCoordTfAnimTransStart
- stdMatTextureCoordTfAnimTransStartY (not normally used in most textural animations, ignorable until its usage becomes clear and confirmed)
- stdMatTextureCoordTfAnimTransEnd
- stdMatTextureCoordTfAnimTransWaveform
- These parameters set how the "transform-based rotation" animation behaves. Such rotation can work independently from scaling.
- These parameters set how the "transform-based scaling" animation behaves. Such scaling can work independently from rotation.
4. If the value is "video", then its potential usage(s) is unknown yet. It may be to specify and enable animation already existed in the material or something else.
shader script references
if ($hasTexcoords) if (strcmp("${stdMatTextureCoordAnimMode}", "transform") = 0) setb texTransform true endif if (strcmp("${stdMatTextureCoordAnimMode}", "tile") = 0) setb texTransform true endif # do nothing for "video" mode. # any texture matrix animation uses this same fragment, only the binds are different. if ($texTransform) shaderFragment TextureMatrix2DTransformTex02_x else shaderFragment NoTextureMagic2_x endif endif |
if (strcmp("${stdMatTextureCoordAnimMode}", "tile") = 0) textureTileAnimation $stdMatTextureCoordTileAnimSpeed -tiles $stdMatTextureCoordAnimNumTiles -targetType fixedFunction elseif (strcmp("${stdMatTextureCoordAnimMode}", "transform") = 0) textureMatrixAnimation -targetType fixedFunction -aorigin $stdMatTextureCoordTfAnimOrigin -arot $stdMatTextureCoordTfAnimRotWaveform $stdMatTextureCoordTfAnimRotSpeed 0 $stdMatTextureCoordTfAnimRotStartEnd -ascale $stdMatTextureCoordTfAnimScaleWaveform $stdMatTextureCoordTfAnimScaleSpeed 0 $stdMatTextureCoordTfAnimScaleStartEnd -atrans $stdMatTextureCoordTfAnimTransWaveform $stdMatTextureCoordTfAnimTransSpeed 0 $stdMatTextureCoordTfAnimTransStart $stdMatTextureCoordTfAnimTransEnd elseif (strcmp("${stdMatTextureCoordAnimMode}", "video") = 0) trace("+++++++++++++++++++++++++++++++++++++++++++++\n") sendNotifyString $shaderNotifyString endif |