07-24-2024, 08:41 PM
Modders should know it, making hair work with the default game hair color slider is a real pain.
You need to create layer files, link you texture to it, write DressCmd using these layer and
For other dress type however, thing are way more simple.
DressCmd using the tex2d your scene as target.
So why not make thing as simple for hair?
I added a extra hair color slider for making the required scripts for color slider as simple of everything other type of dress for hair.
The script should be added to \Scripts\Shared\Person\CcPersonDefaultBody.bs
As for the requirement for your addon hair dcdress_*.bs file, it's the same as other dress type. (except .ParamID use I32(0) instead of 2)
Example:
You need to create layer files, link you texture to it, write DressCmd using these layer and
[To see links please log-in or register here]
...For other dress type however, thing are way more simple.
DressCmd using the tex2d your scene as target.
So why not make thing as simple for hair?
I added a extra hair color slider for making the required scripts for color slider as simple of everything other type of dress for hair.
The script should be added to \Scripts\Shared\Person\CcPersonDefaultBody.bs
Code:
CustomParameter :Parameter_DressWigColor . {[/color]
[color=#000000].ParamID I32(401);[/color]
[color=#000000].IconID I32(3599);[/color]
[color=#000000].ParamName "DressWigColor";[/color]
[color=#000000].ParamDescription "Hair Color:";[/color]
[color=#000000].CategoryID :Cat_Body;[/color]
[color=#000000].ParamType CustomParamType .HSV;[/color]
[color=#000000].DressZoneID I32(15);[/color]
[color=#000000].DefaultAddHSV ( I32(0) , I32(0) , I32(0) );[/color]
[color=#000000].DefaultMulHSV ( I32(1) , I32(1) , I32(1) );[/color]
[color=#000000].SliderDefault F32(0);[/color]
[color=#000000].LookAt "Person" + :person + "Anim:Model01:head_joint01";[/color]
[color=#000000].LookAtID :LookAtHair;[/color]
[color=#000000]};
As for the requirement for your addon hair dcdress_*.bs file, it's the same as other dress type. (except .ParamID use I32(0) instead of 2)
Example:
Code:
.SceneScriptFile [ :HairBaseDir + "AcR9Hair007" , :P + "R9Hair007" ];[/color]
[color=#000000].CmdArray [ DressCmd . {
.Target :P + "R9Hair007:XXXX"; //this XXXX is actually the name of a Texture2d node in the scene file
.ParamID I32(0);
.Attr @ TransformLayer .ColorAddHSV;
.Value @ ( I32(0) , I32(0) , I32(0) );
};
];
[To see links please log-in or register here]