Jump to content

Costume Customizer Mod (v2.5.2) - Added Yukino Support, plus skin/shadow fixes and additional menu.ini fixes


Recommended Posts

Amazing mod , sorry for my bad English at first .

 

I've got a question ,

I want to make the shirt I putted in transparent , so I added these in Common.ini but no luck :

[Textureoverride]
hash = 7b1c57b0
match_first_index=2514
match_priority = 5
run = CustomShaderTransparency3

[CustomShaderTransparency3]
blend[0] = ADD BLEND_FACTOR INV_BLEND_FACTOR
blend_factor[0] = 0.15
blend_factor[1] = 0.15
blend_factor[2] = 0.15
blend_factor[3] = 1
handling = skip

 

Do I misunderstand how it works ? Thanks a lot !

Link to comment

@w4865686 - While that would likely work on a custom mod, it would be far more involved to modify CC that way. It's actually more simple than that with CC anyways. Just make sure you use Alpha meshes in the CC Mod Pack Generator for what you want transparent. This will use the texture for how transparent though so you'll have to add/modify the alpha channel.

 

image.png.20c87ce6f88bfedca372b3308c2e0b19.png

Link to comment

Since a new girl got released in DMM (Nanami), I'll try and release a quick patch w/ support for her in a couple of days and possibly the 240 mod-pack slot update if I can get it done in time. The material stuff still isn't ready but I'm sure I'll get a bunch of bug reports if I let it go on too long w/o support for a given girl.

Link to comment
Spoiler

144006428_.jpg.5d7915d18350b72ad4173a058e7f42e6.jpg

@KuroKaze78

The more files you register in the list box, the heavier the processing of the application becomes, and eventually it will freeze.
I don't use selection from a list because it causes human error.
Can you please change the list box to a text box or take other measures to reduce the processing time?

I have nothing but gratitude for you.

Link to comment

@tantrave - Ya, I should likely separate the caches between the different textures since you rarely ever use T0 textures for T2. That will cut it down a bit, I can look at adding a limit so it only tracks like the most recent X selections (like 10-20). I'll look into other optimizations and best practices as there may be performance gotchas using BindingList<T> and ComboBoxes like I'm doing in the code.

Link to comment

When making some mods that uses the groin from the "shared" folder. Even if you do a good weight transfer, the groin will clip thought the panties. So I modified the "Common_Groin" to fix that problem while keeping the nice shape of the mesh.

1.Old groin.

Spoiler

2118867116_test(2).png.5e007a66564e66d331a477109d6d2091.png

2. New groin.

Spoiler

700249182_test(1).png.bbcbe9c8a4d035390c938db361ce3217.png

 

This is the modified groin. You must put it in the "shared" folder.

SpecialCustomGroin.rar

 

As far as I test it. It looks good enough, but let me know if there are some positions where the groin looks weird.

Link to comment

K, should be done with all of the Shader related work. Didn't realizer earlier, but the compute shader stuff (and in that regard the custom materials) don't affect the alpha-blended meshes at all since they don't use the compute shader to deal with materials and use the other parameters available in the ps-cb2 buffer directly. Many of the shaders that do use the compute shader just ignore the values in the ps-cb2 and insead use the material array values in cs-t12 (which is what custom materials addresses). Therefore, as a result, I made a compromise that for the Material Editor in-game modification, it will use the Base.Red/Green/Blue on top of MaterialMulColor on the diffuse texture and Base.Red/Green/Blue * SpecularScale on the specular texture. I think this will achieve a similar enough result for the basis of doing matching re-coloring on both solid and alpha meshes.

 

So, I'm putting an alpha version of this here now for where its at. This is still incomplete and I'm not going to be prioritizing fixing and re-releasing this alpha but I do need more input on how strenuous this is on people's PCs and whether crashes I get occasionally are related to this or they are unrelated. Use CTRL+F3 at any time (unlike the clothing menu which is restricted to Takao/Dewa on-screen) to bring up the Material Editor menu and use 1-9,0 to select the things on screen. Currently the custom materials will affect all Common meshes and will override any material IDs provided by the Mod-Pack. Just an FYI, that isn't the intended final result since the toggle menu is what will let users turn on/off the override. Again, I'm likely not going to patch this with affecting Marie/Honoka as I'm only really putting this out here to find out about unintended side-effects or performance issues with running/reloads. Thanks for anyone that helps with providing feedback.

 

Only manual install, replace files at the root of your CostumeCustomizer folder with these. To uninstall this, Delete MaterialEditor.ini and then re-deploy CC v2.1 patch to replace the other ini files affected (Common,.ini, Menu.ini).

CC_v2.2.ALPHA.zip

 

 

Here's a quick sample of the custom material editor making changes. Left is original w/ default settings, middle is with just recoloring, right is recolor + other material params (reflectance, glossiness, IBL Diffuse, etc).

 

image.png.c1972419d85498703d8ae510d73d67b0.png

 

Also, the toggle menu graphics are done, just need to modify the INI logic to add the toggle variables and logic and logic for the Toggle Menus.

image.png.6daac9e0e3f2764a6d62cf20072cad56.png

Link to comment

Occasionally the floats start getting larger and larger, e.g. 0.9999999...  or -1.0000 and then finally when I try to set it back to 0 with the arrows it goes into scientific notation and I suspect an overflow. But I haven't had any crashes after fucking around for about 15 minutes.

float.jpg.d4b91935dd8e0ce5ad71beff20ce5f1d.jpg

 

 

Link to comment

@krunkDunk - That's just going to happen regarding the numbers. 3DMigoto and shaders in general use floats which are impossible to keep clean and I'm using a borrowed function that was already present in 3DMigoto to not have to write my own print float function. I could look into altering the print float function to see if I could introduce a type of rounding at .01 but I'm not sure its worth the time until post release. I may look into a stop-gap that I'll round on update if the number falls between -0.005 or 0.005 to set to 0 explicitly. The number you have is just a number just barely off 0 and not an overflow because of rounding errors introduced when doing floating point math.

 

Anyhow, figured I should also explain some of the UI since I'll have to do that at release anyway. Using the scale will set the value to what you select along the scale. Pressing 1 on the "<", ">"  will usually increase the value by .01 for any 1 or 2 scaled ranges ( [0, 1], [0, 2], [-1, 1]; which is all but "Misc2 Multiply"). Pressing 1 on the "<<", ">>" will increase the value by for those same ranges. Using 2-9, 0 will do the same offset * the value of key (10x for 0). Example is pressing 5 on ">" would increase by .05. Using the "<<", "<", ">", ">>" its allowed to exceed the scale presented. The scale is primarily the usual value range but the buttons can allow you to go further if desired. It could be possible that certain values could crash the game but I have yet to play enough edge cases to find any such combinations. "Misc2 Multiply" is a special case. Looking at all the materials in the material array I generally saw it at either -10,000 or somewhere between -10 and 0. So on that control, if you use "<<" or "<" to go less than -10, it will skip and cap at -10,000. Otherwise the small increment is 0.1 and the larger increment is 1.0.

Link to comment

@KuroKaze78

I'm not sure if it's possible, but one way may be to keep all the numbers involved in incrementing operations 100x greater; then divide by 100 at the last moment before it's used in the shader and drawing parts. Maybe that only moves the problem down the pipeline a little bit... but hopefully the variables will stay integers.

Link to comment
  • 4 weeks later...

@vacation2020 - Not really sure what you mean by connected to the right arm. The accessory slots still share the body vertex groups. If you want to have an item static to a part of the skeleton, you will need to identify the appropriate vertex group and assign all vertices to that vertex group while clearing the weight paint on all the other vertex groups.

Link to comment

@HattoWW - Not for CC. The faces/heads and hair are all nearly unique per character which means 1 face mod is specific to replace 1 character/head. Also, the heads and hair aren't really ever modified on a per suit basis so replacing the head is likely almost always a global replacement.

Link to comment

How will the Shader data be stored? In the ini file for each mod?

 

Will it be possible to save the data from the existing cb2 files when updating the mods? Because the patch tends to overwrite those values.

 

This is before the patch.

 

Spoiler

Original.png.eeea033577d5c455f81b229630069dff.png

And after (without any modification).

Spoiler

1776945850_Afterupdate.png.b4eca05939f7f37c6dbb4c470e21ffa4.png

 

Link to comment

@SavageMoonBoy

Planned implementation:

  • MyCustomPSCB2.buf
    • Standard ps-cb2 as it is now.
  • MyCustomPSCB2.material.xml
    • XML File with all the parameters used by compute shader
    • Values
      • Base Red
      • Base Green
      • Base Blue
      • IBL Diffuse (in-game previewer only supports 1 value for all RGB)
        • Red
        • Green
        • Blue
      • IBL Specular (in-game previewer only supports 1 value for all RGB)
        • Red
        • Green
        • Blue
      • Rim (in-game previewer only supports 1 value for all RGB)
        • Red
        • Green
        • Blue
      • Velvety (in-game previewer only supports 1 value for all RGB)
        • Red
        • Green
        • Blue
      • Ambient (in-game previewer only supports 1 value for all RGB)
        • Red
        • Green
        • Blue
      • Metallic
      • Reflectance
      • Specular Scale
      • Glossiness
      • Misc1 Multiply
      • Misc1 Add
      • Misc2 Multiply
      • Misc2 Add
      • Scatter Rate
      • Scatter Depth

 

The PS-CB2 editor will be revamped to properly decode the material index. Options would be to either define a number specifically, force material editor reserved ID (2048), or define/import custom materials.

If import is selected, then by specifying the matching cs-t12 (for that ps-cb2 dump since it changes every so often) and the appropriate original material index, it will pre-populate the custom material editor with the original values.

Saving a ps-cb2 with custom materials will save both the ps-cb2 and the appropriate *.material.xml.

Saving a ps-cb2 without custom materials will save the ps-cb2 and rename a matching *.material.xml to *.material.xml.bak

Loading a ps-cb2 file with a matching *.material.xml file will auto-select custom materials in the PSCB2 editor gui and load the *.material.xml file.

 

There will be another script file that will handle strictly the re-organizing of the custom materials and updates to the ps-cb2 buf files (ID parameter only). This new script file will also be called automatically by the existing update.bat. The new script file would be more for people that only use custom material functions w/o CostumeCustomizer.

The script will invoke a new tool that will locate all *.material.xml file in the DOAXVV Game folder.

  1. Generate an empty cs-t96 (mirrors cs-t12)
  2. For each *.material.xml with a matching ps-cb2 buffer (by name)
    1. Increment custom material ID
    2. Save material parameters from *.material.xml into cs-t96 buffer at the material ID index
    3. Copy ps-cb2 buffer to ps-cb2.buf.orig
      1. IF ps-cb2.buf.orig exists, maintain the original ID from the .orig file and update all other parameters in the .orig file to match the latest ps-cb2.buf file
    4. Update ps-cb2.buf file to use the current custom material ID
  3. Save cs-t96 so its merged with the cs-t12 via CS ShaderRegex at runtime

 

Basically what all this means is, in the end, custom defined materials will be coupled with their respective ps-cb2 buffers and used by whatever meshes use that ps-cb2. Only if a user selects via the material-editor GUI to override the material parameters would it overwrite the original ones and even then it would only be temporary in-game. The reason why its overriding them now, is because the test version is effectively the same as if a user selected all meshes to be overridden but that isn't the intended implementation at release.

 

Regarding the "default" material settings; technically, up until now, all meshes not using ps-cb2 have been using Takao's material parameters which may not match the "default" custom material editor parameters. I would like to use a shared custom material ps-cb2 as a default (if no custom ps-cb2 is provided by a mod-pack) in order to stop "caching" the original Takao ps-cb2 buffer which apparently doesn't work for people that are using on-board graphics cards, while providing my own default ps-cb2 buffer should fix that for them, and to your point it should likely be based off Takao's material parameters so that mod-packs don't look any different from how they do today if using that default ps-cb2.

 

Link to comment

 

Hello guy.

I need some help with the modding with CC.

 

Currently I try to moding chinese dress in to CC and now I'm facing the problem.

 

First picture

I suitweight put on skirt slot, or bodyweight put on chest slot and got the same results.

1. At the edge of dress is not movable (with the wind)

2. At the center of the edge look weird (like dress fix to the leg)

 

Second picture

I try to cut the dress into two part, and use skirt weight instead but got this issue instead.

1. Dress will go through leg

2. Dress deform (stretch)

 

So I would like to know how to fix this?

How can I use the original dress weight to put in this custom dress without collapsing?

 

Another question.

Can I make accesory or shirt part to move with the wind by using original costume weight as well?

 

P.S. I'm new to both blender and modding.

 

128440542_.png.4f5268a033143f0ff17442155f8e61ab.png

637072566_.png.d1686360608115f3ec970987b43509f5.png

Link to comment
  • KuroKaze78 changed the title to Costume Customizer Mod (v2.2) - Custom Material Functionality - Phase 1

Alright, sorry for the long wait, but hopefully v2.2 is ready for release. Remember this only includes the Custom Material previewer. That main distinction is just because the primary purpose for this functionality is really for importing custom materials in the next release with the added benefit that they are persistent if you want to use them to further customize your outfit. The downside is that the material customization is limited to a single customization applied to whichever meshes you configure it to override, again because the primary customer is for modders to tinker with the material parameters w/ a live preview. I don't intend take as long for the next minor update which will focus on the new tool to compile the custom materials via just XML syntax and last will be the GUI editor and QoL updates.

 

 

@MARIE LOVER - Regarding skirts, I have yet to personally do a skirt using CC as a test, but it should be doable. Because the vertex groups are based off Takao/Dewa which is a pareo and somewhat loose fitting, it may be more appropriate to tie to the leg vertex groups for a china dress with only a little bit of influence from the skirt weights.

 

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   1 member

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use