Morph Filter Plus (Now with Cloth & Hair filters)

Plugins Morph Filter Plus (Now with Cloth & Hair filters)

GossamerVR

Well-known member
Featured Contributor
Messages
97
Reactions
440
Points
53
GossamerVR submitted a new resource:

Morph Filter Plus [Beta] - Instantly upgrade your morph search bar to have And, Or, Not, & 'Starts With' functionality.

Hello, Darlings,

I wrote a filter system into my core VAM assembly and found a way to create an external plugin for it. It has been such a valuable tool to me that I planned to debut a patreon with it. However I realized it will help creators so much that giving it for free could greatly empower content generation, so I decided to do that.

This plugin is designed to be a session plugin. Once you add it, you don't need to think about it...

Read more about this resource...
 
Also should mention for those that like to pick apart and study plugins, this script is about 75% comments detailing what, how and why I did any particular thing.
 
Thanks for this plugin! I'd love to see full on regex support which you could toggle on/off in the session plugin UI. So you could have the power of regex for people who know it, and anyone who wants to use the simpler matching rules could use those instead.

Do you plan to extend the functionality to all filterable fields in the virt-a-mate UI?

I've never seen % used as an "or" sign. Regex: |, programming languages: ||, google search: OR. These are probably the most common ones. Just something to consider. :) I think that exact match would also be more intuitive as "Exact match".

A few things I noticed:
  • removing the plugin doesn't restore the filter field to the vanilla VAM style
  • it's possible to add the plugin to any atom or as scene plugin - it'd be a good idea to just restrict it to the session plugins tab: if (!(containingAtom.name == "CoreControl" && string.IsNullOrEmpty(containingAtom.uid))) //log stuff and disable
 
Thanks for this plugin! I'd love to see full on regex support which you could toggle on/off in the session plugin UI. So you could have the power of regex for people who know it, and anyone who wants to use the simpler matching rules could use those instead.

Do you plan to extend the functionality to all filterable fields in the virt-a-mate UI?

I've never seen % used as an "or" sign. Regex: |, programming languages: ||, google search: OR. These are probably the most common ones. Just something to consider. :) I think that exact match would also be more intuitive as "Exact match".

A few things I noticed:
  • removing the plugin doesn't restore the filter field to the vanilla VAM style
  • it's possible to add the plugin to any atom or as scene plugin - it'd be a good idea to just restrict it to the session plugins tab: if (!(containingAtom.name == "CoreControl" && string.IsNullOrEmpty(containingAtom.uid))) //log stuff and disable

Thanks everlaster! I'll consider regex.
I hadn't considered expanding the functionality.
The % sign is used because in VR the options are limited and there was no | character. I want to limit how much people have to type and also avoid characters used in the morphs themselves (in the case of 'or')

I will immediately check on the removal not reverting correctly, thanks for pointing that out.
And thanks for the restriction advice, I was wondering how to do that.
 
Last edited:
Hmm, I'm at least able to type the | character into the filter field
What I mean is I believe there is no character in the VR keyboard, but I may have missed it.

Hotfix for the removal issue coming, thanks again for that note.
 
Do you plan to extend the functionality to all filterable fields in the virt-a-mate UI?

To provide context for potential challenges here, this plugin seeks the input field object via transform hierarchy, duplicates it, hides it, clears the duplicate's input field events and re-targets them at the plugin script. This can create some reference tedium depending on the situation.

What fields are ya thinking might be good additions?
 
To provide context for potential challenges here, this plugin seeks the input field object via transform hierarchy, duplicates it, hides it, clears the duplicate's input field events and re-targets them at the plugin script. This can create some reference tedium depending on the situation.

What fields are ya thinking might be good additions?
The clothing tab's name filter would be great, often I would want to do a search like top % bra % bikini or something like that. Hair name filter could be a pretty useful addition too, since there are just so many to search from.

Much less important ones would be preset favorite selection filters, morph category filter, tags filters. Then there's parent atom, link to atom, link to filter in every atom's Control tab... I know it sounds like a lot, and it may not be worth doing all of that. But there's probably some kind of generic solution there that could make adding a new field in the mix pretty simple.
 
The clothing tab's name filter would be great, often I would want to do a search like top % bra % bikini or something like that. Hair name filter could be a pretty useful addition too, since there are just so many to search from.
Ah yeah, good point. I have a lot of hair and clothes and if I don't know what I'm looking for in advance i'll pretty much never find it even with the search. One day I might go through and tag things better.

A filter would definitely help with that, you're right; although I find myself lacking the knowledge of what to search for sometimes for hair and clothes since they're so style-based.

Still it wouldn't hurt and at least those are single references, instead of 2 per person
 
I am thinking next update will include '&' as a top level "AND" that happens before "OR", so people can have a little more control over the order of and/or without having to implement parenthesis.

I am still learning regex -- it is so strange to me. It's like finding anything looks like "/**38!*$/84a?...#?/***"
 
Anyone else unable to properly save a look with morphs when this plugin is loaded? Twice now I've lost morph changes I've said and once I removed this plugin the issue went away. Would LOVE to use this fantastic idea of regex assisted searches, but for now I cant use it and have my morph changes save.
 
Anyone else unable to properly save a look with morphs when this plugin is loaded? Twice now I've lost morph changes I've said and once I removed this plugin the issue went away. Would LOVE to use this fantastic idea of regex assisted searches, but for now I cant use it and have my morph changes save.

hmm that's a pretty major issue. I'm sorry if this is the culprit, I imagine it must be. I'm guessing the save doesn't consider invisible morphs. A workaround right now would be to clear the filter before the save but it's not reasonable to expect people to do that for the plugin. I'll look into this. Thanks for pointing it out
 
Last edited:
GossamerVR updated Morph Filter Plus [Beta] with a new update entry:

A Warning on Saving Appearances

It's been reported that saving looks and appearances results in some morphs not being saved into the appearance. My suspicion is that morphs that remain invisible in the filter are being ignored by VAM's save process.

If I'm correct then a workaround for now is to clear the filter before saving.
I know that is not an acceptable long-term solution, and I'm looking into a proper fix.

Sorry for any inconvenience to your workflow...

Read the rest of this update entry...
 
The good news is I see an immediate solution for scene and look saving, the bad news is appearance saving is not as clear. still digging.
 
This is really impressive, kudos! I have wanted something like this for a looong time. I hope you find a good way to fix the appearance issue.

Two and a half things I would really like:
  • a way to configure the minimum query length (I would prefer 2, but others are probably happy with 3)
  • an option to make space behave like + (because + or any other special character is awkward to reach in VR)
  • alternatively a modified VR keyboard? Not sure if this is possible, but should be if it's built like the rest of the UI, no? Adding a row with some special characters would be huge. This might actually warrant a separate plugin and would make life so much better in VR for all those moments where you need any of ! _ / and so on.
 
This is really impressive, kudos! I have wanted something like this for a looong time. I hope you find a good way to fix the appearance issue.

Two and a half things I would really like:
  • a way to configure the minimum query length (I would prefer 2, but others are probably happy with 3)
  • an option to make space behave like + (because + or any other special character is awkward to reach in VR)
  • alternatively a modified VR keyboard? Not sure if this is possible, but should be if it's built like the rest of the UI, no? Adding a row with some special characters would be huge. This might actually warrant a separate plugin and would make life so much better in VR for all those moments where you need any of ! _ / and so on.
thanks!
I am wrapping up a package that resolves the save issue (except for subscenes)
You're right, looking at ways to stick to the first keyboard page would cut down on key-conducting in VR, which is a pain. I'll take a look at what we can do. A VR keyboard would be grand but you're right it's a little out of scope for this plugin. I'd love to see a different one though, myself!

This update has regex and a "super AND" & that occurs before the or, and the save fixes and some QOL internal changes.
I'll put in the minimum threshold next update, along with (hopefully) the default button fix.
 
This is really impressive, kudos! I have wanted something like this for a looong time. I hope you find a good way to fix the appearance issue.

Two and a half things I would really like:
  • a way to configure the minimum query length (I would prefer 2, but others are probably happy with 3)
  • an option to make space behave like + (because + or any other special character is awkward to reach in VR)
  • alternatively a modified VR keyboard? Not sure if this is possible, but should be if it's built like the rest of the UI, no? Adding a row with some special characters would be huge. This might actually warrant a separate plugin and would make life so much better in VR for all those moments where you need any of ! _ / and so on.
The first two are now implemented :)
 
The first two are now implemented :)

Very nice :)

There is one issue I came across you might want to look into (in the prev. version). I think colliders are not updated when modifying morphs at the moment. I've had some strange issues where the leg position was weird or hair had odd bulges. These are gone when saving the appearance and loading it to another atom, and occasionally will resolve when doing certain actions (I think applying custom textures was one of them). Maybe you are missing an 'update colliders' callback?
 
Back
Top Bottom