[Mod Discussion] (Illusion) Honey♥Select (ハニーセレクト)

@DillDoe:
mat_cha_00.unity3d does NOT contain the female body material. Are you talking about cf_m_base.unity3d or really mat_cha_00.unity3d?

The AssetBundleManifest principle doesn't seem to be limited to female chars. In abdata are the cm_* files defined as well.

well I was referring to mat_cha_00.unity3d for the male hair, which I move to use with female. And I added it to a new add file, which works even being defined already in abdata (which lead me to ask if the 'only one definition' only applied to female body, which I can not get to work in a new add)

what I'm trying to do is try to get external material working for body parts (the body for my mod and the head/eye for the longer eyelash mod) by adding the list & chara path to abdata as you suggest, but I can't seem to get it to work. I know the external reference are right cause I can get the right material AFTER loading an outfit first (which define the body material so my mod can use it)

it's to a point where I even tried to copy the body material & texture into my mod to avoid external reference, but that doesn't seem to work either. the body is super bright for some reason & bumps the filesize from 13mb to over 200mb with the 4k body textures included.
 
@DillDoe
In my test a new geometry file is using cf_m_body material from cf_m_base.unity3d. One hair strand uses that material while another strand uses the original. The body Tag cant be used, the strand would become white / super bright. So I used the normal hair Tag. The strand clearly has a colour offset and changes with the hair colour slider. The body colour slider doesn't influence that strand.

BTW, the Tag for head and body are different although both are influenced by one slider. I see no way to achieve your goal without writing a plugin.
 
@enimaroah
I think I'm confusing you with talks of hair and body. My goal is to reference the body material & texture for clothing type that can't use the body tag (ie. Pantyhose, gloves, etc..)
I am able to do so BUT the issue I'm running into is the 'add' file.
You said you can't reuse files once it's been defined so I tried adding the mod reference to abdata instead, but it doesn't seem to work either. So I'm wondering what I'm missing.
 
@DillDoe:
I had hoped that the AssetBundleManifest principle would be universal, and I still think so. Therefore, my test with the hair using the body material should be equal to your goal. Still, I was not successful with that, like you.

I am afraid, but I dont think that you miss something. It just doesn't work for reasons which lie in Illusion's code - not in Unity's.
 
I think adding it to abdata should work, cause with stock abdata, I can get other clothing slots to show the body material/textures AFTER selecting a normal top (hence defining the body material first)
The only thing is getting the abdata (or add) right so the clothing will work without having to select normal top first.

Could it be a Dep#xxx value in the AssetBundleManifest? What are those for?

I've tried copying them from chara/cf_base.unity3d entry, but no luck.
 
Can anyone link me to some resources / documentation to help with making a really basic camera mod? I'd like to create a few shortcut keys for changing FOV / zoom / camera position in particular ways.

I have a bit of basic C# experience.

Apologies if I'm wrong but everything in this thread seems to be about clothing / visual mods?
 
@DillDoe:
Huh, I abbreviated the column names to save space - thought it would be obvious. Sorry, for that.

Dep means dependency. An example from abdata:
Line with ID=13, chara/cf_base.unity3d, hash-value, Dep#1=28, Dep#2=133, Dep#3=134

Now go to the line for ID=28 and you get chara/cf_m_base.unity3d, ID=133 is mat_cha_00.unity3d and ID=134 is mat_etc_00.unity3d.

Of course, you have to follow each of those' dependencies as well and recursively. Just to name one of them for mat_cha_00.unity3d it is chara/cf_t_face_00.unity3d which is loaded by this principle.



@nationx
This thread is for all kinds of development. We have no extra thread for plugins. As long as it is related to making mods and plugins for HS you are correct here.

To prevent reinventing the wheel, you should begin with a look at IPA. It is a framework which hooks into the games and allows to integrate arbitrary plugins. The problem with that is that the author EusthEnoptEron and his thread for IPA can be found on HF only (as far as I know).
 
  • Like
Reactions: nationx
Hi everybody, long time no see. Hope you all do well :D

There is a question I want to ask. Is it possible to make a user-define function to tell SB3UGS which mapping goes to which slot of a said shader? As far as I see, different shaders has their texture slot in different order. The main texture is correctly linked, but texture like spec and normal maps usually go to wrong place. If I can define the mapping order when I clone the material it would be much more better.
 
@Aastaroth:
Good to "see" you again. It was a long absence indeed.

Sb3UGS shows the slots in the order in which the slots are stored in the file. Each slot is stored along with the name, e.g. "_MainTex" but that is not different for other slots.

In the shader you would have lines as the following in the Properties section:
_SpecGlossMap ("SpecGlossMap", 2D) = "white" { }

So they are matched by their names and not by any order.

The order of the slots comes into play when you export/import to/from files.
 
Any special meaning on that quotation mark? :P
I don't visit AS often, and you know that the occasional offline in HF keeps killing off my interest.

Oh well, if they are mapped according to the property name then I would expect the spec mapping goes to either _SpecGlossMap or _MetallicGlossMap when I import my fbx file. The mapping is fine in Maya. The color, bump and spec mapping are there.

qNb8cMV2.png

But it wasn't the case when I clone material with PBRsp shader.

YrRgB8ME.png

The spec map goes to _BlendNormalMapScale and _DetailNormalMapScale indeed. And the normal map is missing.
 
@enimaroah

thx for the info, will see if I can get it to work for the body.
I've actually solved the longer eyelash mod's white eye bug, without needing an add file. notice roy's girl doesn't use an add file (cause I assumed he used all new textures) then re-read his head transfer blog and notice he had to use the eye (white) material locally.
 
@nationx:
The version of IPA for HS was made by akyryz and can be found here. But I remember that the original author used a repository and made an example for beginners.

Thanks to Belgar17 for a link to the repository and recent version: https://github.com/Eusth/IPA



@Aastaroth:
No special meaning. It is just that "see"ing was not used in its usual meaning. HF is currently strangely stable while it was not shortly after the last upgrade. It would be great if Hong could keep the availabilty at this level.

For FBX up to four textures are supported with fixed internal positions
0: "_MainTex"
1: unused
2: slot name contains substring "Spec"
3: slot name contains substring "Norm"
4: "_BumpMap"

If the material has several slots which contain "Spec" then the last one (and indeed here is the order in the material important!) would win. The same for "Norm" of course. I did this because of slightly different names with the same meaning, and Sb3UGS cant use the shader for clarification - that would be nearly impossible.



@DillDoe
that's even better without an add file. Glad to "hear"^^ that you could fix it.
 
Last edited:
  • Like
Reactions: Aastaroth
@enimaroah

Thanks a lot for your clarification.

For FBX up to four textures are supported with fixed internal positions
0: "_MainTex"
1: unused
2: slot name contains substring "Spec"
3: slot name contains substring "Norm"
4: "_BumpMap"

One thing I want to make sure. What do you mean by "fixed"? Not changeable?
Let's say, if there is an occlusion map attached to "incandescence" map in the fbx file, can it be mapped to slot 1 above?

and Sb3UGS cant use the shader for clarification - that would be nearly impossible.

And that was what I talked about. If SB3UGS cannot clarify it, then let user do so.

It would be nice to have a drop-down menu before cloning the material, which lets user to define which slot from fbx material goes to which slot inside Unity shader. Slot-to-slot mapping, not texture-to-slot mapping from the user so that SB3UGS can use the same setting when it clones the remaining material. SB3UGS can still keep its automatic mapping function, but having a possibility to correct it is nicer.

By the way I think what I have found are some bugs. Either from the fbx file or SB3UGS.
1) In Maya, if bump mapping is used as tangent space normals, they are not recognized by SB3UGS. If they are used as bump, they are recognized.

2) Using the new file and the bump map is correctly linked.
However the spec map still goes to _BlendNormalMapScale and _DetailNormalMapScale.

I have attached the test file for your information :) Screenshots also attached.

hair test
 
Fixed, because if I change this it would break texture handling for all older games. Alamar designed it like that and changing this means some effort even for older games which are no longer modded.

I will think about the user mapping you suggested. If someone exports/imports several dozens of materials this might need to be like in the mesh replacement with "Continue Automatically".

The first bug might be related to the fact that Sb3UGS doesn't recognized all kinds of materials. And that part was implemented in early days without having Unity in mind.
The second bug is probably caused by the two slots which both contain "Norm" in their names.
 
Fixed, because if I change this it would break texture handling for all older games. Alamar designed it like that and changing this means some effort even for older games which are no longer modded.

I will think about the user mapping you suggested. If someone exports/imports several dozens of materials this might need to be like in the mesh replacement with "Continue Automatically".

The first bug might be related to the fact that Sb3UGS doesn't recognized all kinds of materials. And that part was implemented in early days without having Unity in mind.
The second bug is probably caused by the two slots which both contain "Norm" in their names.

Indeed that was me who have to import dozens, nope, 30-40 materials at a time and that's why I am asking you :)
I use material to control render queue so it is necessary to use that many materials. Transferring monoB is too inefficient for me, because I cannot automate the drag-and-drop process and open monoB editor to check every render queue is not as efficient as checking material editor.

Take your time. No hurries :D Once again, thank you for the support~
 
@enimaroah

SB3UGS auto average normals on import? Previous versions don't do this, do they?

I tried FBX, OBJ, same result. I can get the hard edges back if calculate normals with -1 value but I'll also get the UV seams. What should I do?

Edit 1:
Ah, I forgot SB3UGS cut the mesh into pieces probably that's why. Well the process below works...but is there another way to get the result?
OBJ -> SB3U -> calculate normal (-1) -> OBJ -> average seams in Maya -> OBJ -> SB3U
 
Last edited:
Finally I solved the coloring issue! The problems occurs because of the UV maps(you can consider UV map as the surface of a model which laid on a flat paper), cannot be seen on metaseqo 4.0, so all the meshes I modified through Metaseqo had some unnatural color spot - I believe this is also a problem disturbing so many other people. And what you need to do is just use the Blender, open the UV edit mode, change the model pattern on UV map. After that- voila, the texture becomes normal again! (Of course this is a quite time consuming and interesting work, a little bit like weaving a clothes) So here is my work's recent update.Somehow all of my pics were not approved in this post, so I will send the link instead: pixiv.net/member_illust.php?mode=medium&illust_id=62863817.

I modified a strapless thong leotard and a pantyhose that could properly hidden under the thong. More importantly, you can use other texture to render the leotard and pantyhose without any color/texture issue. I wll release them after I've done Tia's jacekt. And it will be really soon. So please looking forward to it, and hope you will the costume of this cute,sexy but forgotten fighitng gal Tia Langray from Breakers Revenge.;P
 
@Aastaroth:
I will have a look at this during this weekend. Not sure, how long that feature will need. :emjudge:



@nneezz:
Nope, no auto avg for normals ever. If normals are present in the imported file (OBJ, DAE, FBX) then the replacement dialog defaults to "Replace" for normals, else it is set to "Copy Nearest".

Because of the vertex multiplication you should do that in Maya before export. Was it baking? Not sure.

Your order of actions is correct, if you want/need to compute the normals in Sb3UGS but want new UVs in the second replacement. The second replacement can then use "Copy In Order".



@animesake:
Great! Metasequoia computes the normals on import. There is no other choice because they are not present in MQOs. I use Blender only on rare occasion so I am not familiar with the "changing [of] the model pattern on UV map".
 
  • Like
Reactions: animesake
@enimaroah

As long as it is implemented before the next Artificial Girl comes out it will be fine :alice_love:


@nneezz

SB3UGS splits the mesh when the UV is not connected. Maya can average the normals as you have said (you can even tweak the normals yourself), but, if one vertex have splitting UVs, SB3UGS will split it up, thus making your previously averaged normals useless. You shall sew the UVs before importing into SB3UGS, then export them with normals and bitangents enabled as fbx. And SB3UGS will preserve the normals you done in Maya. Tangents usually are in wrong direction though, so it shall be re-calculated.
 
@Aastaroth @enimaroah

Aastaroth You got my problem opposite. I wanted to keep hard edges not the soft ones. SB3UGS splits and averages the normals.

I did a simple test. Images below show a cube with 6 UV shells, 1 for each side. The cube edges are hard which means 3 normals per vertex. When it goes into SB3UGS a vertex is split into 3 and the 3 normals were averaged.

enimaroah, if SB3USG doesn't auto avg normals then what's the algorithm in splitting mesh is like? At first, I thought the program can't match the original normals with the newly created vertices so it just averaged them out. But when you said SB3UGS never avg normals I'm out of idea.

Anyway, it's no big deal for SB3UGS to behave this way. The workaround is easy enough. I'm just curious, that's all. And there may be times that one needs to split a mesh, using SB3USG is way faster than Maya :D.





Btw, Aastaroth, great suggestion on the material thing! I was having kinda same problem when importing maps. I had to write a script to move all the textures into correct slots, even then a lot of labor works were needed afterward.
 
@Aastaroth:
It was nneezz who initiated my implementation of vertex duplication for FBX, before that the duplication was only implemented for MQO.

The material merging will be like this:
1) in the workspace you would use a new context menu of a material (or the ImportedMaterials node for all) to switch mapping textures from "default" to "prompt"
2) then when you drag 'n drop the material(s) you will get a dialog for each material set to "prompt". In this dialog you will get the choice for all 5 slots to set matching options. E.g.
0 {imported FBX diffuse texture name} goes into a slot whose name "equals" "_MainTex"
1 {imported FBX ambient texture name} goes into a slot whose name "contains" "ambient"
2 {imported FBX emissive texture name} goes into a slot whose name "contains" "Spec"
3 {imported FBX specular texture name} goes into a slot whose name "contains" "Norm"
4 {imported FBX bump texture name} goes into a slot whose name "equals" "_BumpMap"

These options are the default and reflect the current implementation in Sb3UGS (slot 1 might be filled with other textures). "Ok", "Ok & Continue", "Cancel". I am not sure if we need such slot locking (like the locking in the mesh replacement).



@nneezz:
Oops! You are right, those normals are [strike]summed up and normalised[/strike] averaged. I had forgotten that part, sorry for the confusion.
 
Last edited:
@nneezz

I see, I see. My bad getting it the opposite :P I would deal with this in different ways.

If the vertices are already split up: re-calculate normals with (-1) just like what you have said.

If the vertices are not split up and I want to control where the hard edges should be: select the edge and detach them in Maya. Export the fbx with normal option checked. No need to re-calculate with SB3UGS so you are not splitting normals you don't want to.


@enimaroah

I think it depends on how you handle the drag-and-drop process before the prompt window comes up. Would it be the same way like now, where you can only target one material to clone with? Or can we change the cloning material in the prompt window?

Target one material each time: Locking function is not really neccessary. SB3UGS only supports phong right? Then I would assume the source materials to have identical slots from Phong. Since the cloning material is locked the target slot are also the same. Locking function would be redundant.

Able to target different materials: it needs the lock-or-unlock function because different shaders can have different slots. When cloning materials with same shaders then the slot mapping can be locked; when cloning materials with different shaders the mapping should be unlocked to change them.
 
Last edited:
in game when loading clothing set, the game load both normal and swimsuit sets
but in studio it only loads one of them (depends on the state (normal/swimsuit) when we save that clothing set (in character customizer) )
(if we save clothing set in swimsuit state,when loading the clothing set in studio ,it load the swimsuit set)
the similar thing happens when we save in normal state, the studio will load the normal set
is it possible to make the studio load the clothing set we want (swimsuit/normal) ?
Thanks
 
@Aastaroth:
I haven't planned to allow a switch of the template material during merging several materials. You can always uncheck materials in the workspace, and so use different template materials in several goes.
 

Users who are viewing this thread

Latest profile posts

Lebedev wrote on Ryzen111's profile.
[110624] [OVERDRIVE] 電激ストライカー this version of VN you don't have in stock?
Sirvipe235 wrote on Shine's profile.
I'd like to request a game for you to upload.

https://www.dlsite.com/maniax-touch/work/=/product_id/RJ01077067.html


Would itbe possible fro you to upload this one?

Not sure if best to post here or in PM
nobis_c wrote on Otokonoko's profile.
Hi Otokonoko, would you reupload the links for this one pls? It's all ded.
母娘☓無人島~陵辱長編RPGパック
Morganah wrote on Shine's profile.
Hie, Shine, could you re-upload this game, please?

https://www.anime-sharing.com/threads/080816-heterodoxy-queen-of-darkness.1083784/

Thank you!