absolute-quantum / cats-blender-plugin

:smiley_cat: A tool designed to shorten steps needed to import and optimize models into VRChat. Compatible models are: MMD, XNALara, Mixamo, DAZ/Poser, Blender Rigify, Sims 2, Motion Builder, 3DS Max and potentially more
https://catsblenderplugin.com
MIT License
3.46k stars 451 forks source link

Concern about cache ripping protection #102

Closed Primpri closed 5 years ago

Primpri commented 5 years ago

I don't mean to be rude, but what kind of "cache ripping" is the "cache ripping protection" supposed to protect against? From what I understand, all it's doing is deforming the mesh on a basis blendshape, and hoping that the ripped model does not include blendshapes? But when would it not? From GPU caching? I suppose a malformed FBX conversion could cause it too.

I tried this using one of my own models and built a tool to extract my model from VRChat's web cache (which are literally just asset bundle files with web header, not even encrypted). Using the FBX conversion library, I was able to re-import my model back into Blender with no issue fixing the basis with mixing.

It's a thoughtful attempt, but I don't think you should be suggesting that this "protection" can actually protect anything with 100% guarantee, it's nothing more than a small inconvenience to someone who understands how to mix blendshapes - though I'd imagine most people stealing models have very little experience with Blender so it may protect against most theft attempts.

The only way we're going to get proper ripping protection is if VRChat implements encryption, though even then it'll always be possible to rip.

Darkblader24 commented 5 years ago

That is very true, it is not a 100% protection, but it's the best we can do. I will reword it a bit to make it sound less ripping proof

Darkblader24 commented 5 years ago

Ok, I made it pretty clear now that it is not a 100% protection. Thanks for the suggestion!

avail commented 5 years ago

When a model with ripping protection gets ripped and imported into unity, the 'basis original' shape key is missing from the ripped version, so all you get is a model that looks like the beginning of this gif https://i.imgur.com/RlrGTvV.gif