EffectShader

Revision as of 15:26, 16 August 2013 by imported>Danielleonyett (→‎Membrane Shader)

An effect shader is a visual effect typically used for spells, enchantments, or other magic effects. In some cases, effect shaders are applied to variant creatures to make them look somewhat different than their relatives.

The shader can consist of two components, a Membrane Shader and a Particle Shader.


Membrane Shader

The Membrane Shader is applied directly to the mesh of a target object. How the shader interacts with the mesh's base texture is determined in large part by the Source and Dest Blend Modes.

Ignore Base Geometry Texture Alpha

Check this box to ?

Affect Skin Only

Check this box to make the Membrane Shader only affect NPC's exposed skin and not any apparel that is being worn. E.g. the effectSunDamage shader uses this.

Source and Dest Blend Mode

Select the functions for the source and destination pixels here.

Zero

Uses 0 as its pixel value

One

Uses 1 as its pixel value

Source Alpha

RGB components of source pixel multiplied by alpha

Source Inverted Alpha

RGB components of source pixel multiplied by 1 - alpha

Source Color

Color of source pixel

Source Inverse Color

Color of source pixel subtracted per component from white

Dest Alpha

RGB components of destination pixel multiplied by alpha

Dest Inverted Alpha

RGB components of destination pixel multiplied by 1 - alpha

Dest Color

Color of destination pixel

Dest Inverse Color

Color of destination pixel subtracted per component from white

Source Alpha SAT

Takes the lesser of the source pixel's alpha or one minus the destination pixel's alpha and places it in the red, green, and blue fields of the specified pixel. This mode sets the specified pixel's alpha to be 1.


Blend Operation

This section determines how the source and destination functions are combined. Options are as follows: Add - using this option will ? Subtract - using this option will ? Reverse Subtract - using this option will ? Minimum - using this option will ? Maximum - using this option will ?

The default setting should work for most shaders, as it resembles typical alpha blending.

  • Source Blend Mode: Source Alpha
  • Dest Blend Mode: Source Inverted Alpha
  • Blend Operation: Add

To make something brighter, try these options;

  • Source Blend Mode: One
  • Dest Blend Mode: One
  • Blend Operation: Add

For modulation (i.e. multiplying over the existing texture) try this;

  • Source Blend Mode: Dest Color
  • Dest Blend Mode: Zero
  • Blend Operation: Add


Z Test Function

Defaults to Equal To. If changed to Greater Than or Greater Than or Equal To, the membrane shader will be displayed on top of other geometry and will be visible through walls (unconfirmed).

Fill / Texture Effect

Determines the properties of the fill color or texture. All time values in this frame are in seconds.

Alpha Fade In Time

The time the fill effect takes to reach its Full Alpha Ratio value.

Full Alpha Time

The duration the fill effect stays at the Full Alpha Ratio.

Alpha Fade Out Time

The time the fill effect takes to reach its Persistent Alpha Ratio.

Full Alpha Ratio

The alpha amount of the fill effect. A value of 1 would be completely opaque.

Persistent Alpha Ratio

The alpha amount of the persistent fill effect. The persistent effect will last for as long as the effect shader is active. For a persistent effect to be visible, the FX Persist flag should be checked on in the Magic Effects window.

Alpha Pulse Amplitude

How noticeable the pulsation of the shader is. Relevant only when one of the blend modes has been set to Source (inverted) Alpha.

Alpha Pulse Frequency

How often the shader exhibits a pulse. It may be easier to consider that the period of any given pulse would be 1 second divided by the frequency of the pulses (i.e. larger values give shorter pulses, decimal values below 1 give longer pulses).

Texture Animation Speed

If a texture is selected, it can be animated across the U (horizontal) and V (vertical) texture coordinates using these speed values.

Texture Scale

A larger value will repeat the texture more frequently on the surface of the target object.


Fill Texture

Press the Edit button to add a texture instead of using a solid color. To remove an image file, press this button and cancel the dialogue window that appears.

Palette Texture

Press the Edit button to ?

Ignore Alpha

Check this box to ?

Projected UVs

Textures appear to be projected behind the membrane instead of sticking the textures onto the membrane.

Lighting

?

No Wpns

Checking this box makes it so the effects are not applied to weapons.

Grayscale To Palette - Color

Uses the colors from the Palette Texture.

Grayscale To Palette - Alpha

Texture alpha is ignored when this is off (Palette opaque).

Color Key 1-3

Only the level of white / black seems relevant when a texture has been selected. The color keys are ignored (true for all blend modes?) when no texture is selected. The scale represents intensity/brightness or in some cases the size/thickness of the effect. Time is given in seconds since the shader started.

Edge Effect

Applies a light rim of sorts to the outer edge of the mesh. Refer to the Fill / Texture Effect section for the majority of the settings. The pulsation settings in these two sections are independent of each other making it possible to create a shader that pulsates between the (animated) texture membrane and a (pulsating) edge effect.

Fall Off

This value represents the bias of the rim lighting. Higher values will cause the rim effect to fall off quicker, giving it a sharper outline. A value below one makes the edge (texture) more visible and it will appear "solid" if this value is set to 0.

Inverse

Check this box to make the edge effect's blend mode inverted relative to the fill effect. For example, when using additive fill effect, checking this box will cause the edge effect to darken rather than lighten the mesh.

Color

The color of the edge effect.

Holes

Holes are used to define a dissolve for the object the Effect Shader is on. These were used in Skyrim for when Actors dissolve when killed with Lightning. This is done by animating the alpha cut off on a grayscale image. This is often used in conjunction with a Fill/Texture Effect.

texture input box

Select a .dds file to be used for this effect

Alpha Test Animation

Start Time

How long after applying the Effect Shader should the dissolve start.

End Time

How long after applying the Effect Shader should the dissolve end.

Start Val

The black value that is cut off at the start.

End Val

The black value that is cut off at the end.

Particle Shader

Use the Particle Shader section to create particles that will emit from the target object. These effects are limited to ObjectReferences that are also Actors.

Trying to emit particles from a piece of armor or another inanimate object will prove fruitless.

The method of particle alpha blending is determined by the Source and Dest Blend Modes. Refer to the Membrane Shader section.

Particle Shader Parameters
Z Test Function Default is Normal. When set to Always Show, the particles will draw on top of all other meshes, making particles visible through walls. The Detect Life shader uses this effect.
Particle Birth Ramp Up Time The time for the particle to reach its Full Particle Birth Ratio
Full Particle Birth Time The duration that particles emit at the system's Full Particle Birth Ratio.
Particle Birth Ramp Down The time for the particle system to go from the Full Particle Birth Ratio to the Persistent Particle Birth Ratio.
Full Particle Birth Ratio The amount of particles that spawn. A value of 1 will cause the maximum amount of particles to spawn.
Persistent Particle Birth Ratio The amount of particles that during the persistent effect phase of the effect shader.
Particle Lifetime How long a particle will exist in the world. Adjust the +/- value to provide variability to this value.
Initial Speed Along Normal The initial speed assigned to a particle when it is spawned. The normal should be considered the mostly random direction that a particle is given when it is spawned. Thus, this value controls the explosiveness of the particle effect.
Acceleration Along Normal The amount of acceleration (or deceleration if negative values are used) applied to a particle. The normal is on the shaded object (such as the player) and negative acceleration values will pull the particles towards the object.
Initial Velocity XYZ The amount of velocity applied to a particle in world coordinates. To make particles drift upwards, apply a positive velocity to the Z axis.
Acceleration XYZ The amount of acceleration applied to a particle in world coordinates. As an example, you can make a particle float back down after a time by making the absolute value of a negative Z acceleration greater than the initial velocity divided by the particle lifetime, or |-ZAcceleration| > ZVelocity / Particle Lifetime.
Initial Rotation The initial rotation assigned to a particle when it is spawned.
Rotation Speed How fast the particles will rotate after spawning.

The Time component in the following options is not specified in seconds, but rather a value in the 0 - 1 range. This decimal value represents the percentage of a particle's life.

Particle Shader Parameters: Continued
Scale Key 1 The first value represents the scale of a particle, the Time value determines when that scale is reached. All particles are spawned with a scale of 0 and increase in size until they reach this scale.
Scale Key 2 Second scale and time component of the particle.
Texture Press the Edit button to determine what texture the particle will use. It will appear as a sprite.
Particle Shader Parameters: Color Keys
Color The tint of the particle at that time
Color Alpha The alpha amount of the particle
Color Key Time The time that the color and alpha settings occur


Addon Models

These are Debris objects that are placed at an Actor's joints when the Effect Shader is applied. This is most clearly seen in the ice chunks that appear on an actor hit by the Ice Form shout.


File: The debris file used to pick .nif files from

Fade In Time: The length of time needed to fade in the debris models when applied.

Fade Out Time: The length of time needed to fade out the debris models when removed.

Scale Start: The starting scale of the debris models when they first appear.

Scale End: The ending scale of the debris models when they are fully attached.

Scale In Time: The time it takes for the debris models to scale in (from Start Scale to End Scale).

Scale Out Time: The time it takes for the debris models to scale out (from End Scale to Start Scale).