alloystorm / dvvr

A versatile character model viewer and motion player that supports a range of model and motion formats including PMX (MMD) & XNALara/XPS models, as well as VMD/BVH motion formats.
http://vrstormlab.com/
76 stars 2 forks source link

Ease of finding materials and morphs #362

Closed AlexECX closed 2 months ago

AlexECX commented 2 months ago

Is your feature request related to a problem? Please describe.

If there are options already that solve some of these, please tell me 😊

Having worked with DanceXR for a bit, here are some gripes I have with the way morphs and materials are presented in the UI:

1. Material morphs only being accessible in the Clothing tab

Moved to #366 While it's nice to have a dedicated tab it doesn't include group morphs, so toggles that remove more than one piece of clothing are not there. They are instead put in the Morphs tab where material/cloth morphs are not accessible and thus the toggle is unusable. Also, since material morphs are excluded from the Morphs tab, a group morph that combines material, bone, and vertex morphs for something like `(shoes on -> bare feet)` or a transition to `(high heels)` will not work. It will also fail because bone morphs don't work, but that's a [separate issue](https://github.com/alloystorm/dvvr/issues/360) Here is the group morph "High heels On" that combines Material, Bone, and Vertex morphs, PMX vs DXR: ![image](https://github.com/user-attachments/assets/9bac4e8f-19b8-4cae-be7f-1557746fcd37) https://github.com/user-attachments/assets/447daafe-ff86-4684-b90e-0ca0ad8662b0 #### Can see here that the 高跟鞋+/High -grain shoes+ is missing, because material morphs are excluded from the morph tab ![Screenshot 2024-09-03 010954](https://github.com/user-attachments/assets/52ca0db4-eaab-4169-b118-e36b6ce2956e) #### There is a lot not working here, but the important point is that the shoes are not swapping to high heels because of the missing morph https://github.com/user-attachments/assets/de4de116-902d-4923-9ade-5dd89f190059 #### And it's not that DanceXR doesn't have access to the morph, it is in the Clothing Tab. But Group morphs don't have access to it https://github.com/user-attachments/assets/e1bcc954-22e2-4eac-aaa6-891490d45334 **Describe the solution you'd like** Either don't exclude material morphs from the Morphs tab so that group morphs can work properly, or make sure to include in the Clothing tab every group morph that contains 1 or more material morphs (with all the non-material morphs necessary for the group morph to function)

2. Ease of finding materials

It can be challenging to find specific materials in Clothing->Custom Initial State because (1) they are not prefixed with their index and (2) they don't use either of the JP or EN name of the PMX and instead are translated (often only partly) into a different word.

The only common point between the list visible in PMXE and DanceXR is that it's in the same order. Having to almost fully scan that list every time trying to match half-translated names to their JP-EN PMX counterparts gets tedious pretty quickly 😅

Describe the solution you'd like At least one of these solution would make it easier:

The best would be to have both the index prefix and use the EN names of the PMX when available (could allow me to not need PMXE open), but just the index would already be a lot of help.

3. Ease of finding morphs

Similar to #2 except they don't follow the same order as in PMXE so there is 0 common point with the DanceXR list and I have to dig through the whole thing every time. At least with the materials I can search from start, end, or eyeball something in the middle and go from there.

Describe the solution you'd like At least keep the morphs in the same order as PMXE, and ideally use the same solution as for #2 (no auto-translate and/or index prefix). That being said, indexing will probably be easier if morphs are not excluded (currently excludes material and UV morphs).

AlexECX commented 2 months ago

316 is related to point #1.

alloystorm commented 2 months ago

Please let us know if it works when you check the box in front.

The way it works is that you can set values here but they won't work until you check that box. The idea behind that is most of the time it's the animation that drives those morph values, so when you add another control the system needs to know when to use which value.

AlexECX commented 2 months ago

Please let us know if it works when you check the box in front.

I do use the box, tho I don't think that relates to this issue (the absence of the morph in the first place) unlike #360.

AlexECX commented 2 months ago

Updated point #1 to demonstrate the group morph problem and difference with PMXE.

alloystorm commented 2 months ago

Some of these issues are being addressed in the 2024.9.1382 build, if you have access you can give it a try.

AlexECX commented 2 months ago

Latest build does address the ease of finding morphs and materials with an off switch for translation + uses the PMX EN names (nice), but it does not fix the group morph issue from #1. I'll move #1 to a separate issue (#366) and close this one.