DyeManager SE WIP (Patreon)
Published:
2019-07-10 01:32:38
Imported:
2026-06
Content
Hey all, I've been working on re-doing the Dye Manager for SSE, for those of you unfamiliar with this mod: https://www.nexusmods.com/skyrim/mods/56420
Here's the API functioning in SSE https://i.imgur.com/GWTTZ8P.png
For those of you who were users/authors of mods utilizing this API I wanted to clarify some changes since I've rewritten the colorization of the texture through DirectX.
What does this mean?
- Creates a new diffuse with the effects applied (This means its not a tint mask anymore)
- No longer replaces the shader type with Facegen, instead keeps the source shader e.g. (environment map, big plus here, this was a major drawback in LE)
- Layers are blended iteratively
- This means it is functionally different from LE as masks would be a layer group before blending onto the source, each layer is now blended iteratively in order
- Mask dimensions are now the size of the source texture, masks smaller than the source will be upsampled (by DirectX)
- Plain textures can now be layered on top of the source texture
- Alpha supported, this allows for "decaling", though currently no way to actually change this texture other than the defined XML coming soon maybe
- No layer limit
- I don't know how well this will scale, it is all rendered GPU but it might get expensive depending on number of layers and dimensions of textures
- Mask textures can now be ANY dds format
- Recommended single channel for masks, otherwise it will take the color from the red channel
- Blend modes can now be applied between layers
- Shader file is in hlsl and is compiled at runtime (Meaning you can edit it if you choose)
XML file format changes:
- The width/height property are no longer necessary
- New "type" attribute on the "mask" element, valid values = [0, 1]
- 0 - Normal - Layering an opaque texture, texel is multiplied by the "color" and "alpha" attribute if specified
- 1 - Mask - Red channel of texel is multiplied by the "color" and "alpha" attribute
- New "blend" attribute on the "mask" element, valid values = [0..10]
- 0 - Normal
- 1 - Overlay
- 2 - Linear Light
- 3 - Linear Dodge
- 4 - Linear Burn
- 5 - Lighten
- 6 - Darken
- 7 - Color Dodge
- 8 - Color Burn
- 9 - Soft Light
- 10 - Tint (Looks very similar to overlay)
What does this mean for the future?
- Possibly merging normals or speculars with runtime masks or overlays
- Can be ported to Fallout 4 for better body tattoo layering