hero-saver / threejs

GNU General Public License v3.0
15 stars 9 forks source link

Model isnt exported correctly #1

Open RandomLegend opened 4 years ago

RandomLegend commented 4 years ago

Hello,

so today i observed that your HeroSaver wont export the model properly anymore. It is completely distorted after exporting. Screenshot

Any fix to this?

Thanks in regards!

MrDannyPicard commented 4 years ago

Yes, they updated the site to fix this exploit and a bunch of other thing. And the fact that every repo of that script as been DMCA'd probably was the last nail in the coffin of this script. Also the downloadable models are only 8$ now.

Xenon472 commented 4 years ago

there are other scripts that export the models and even those have been compromised. But on some, the distortion is limited only to the body and is way less intense, that makes me think that there could be ways around; that said I am no javascript expert unfortunately so I can't do much, I strongly hope that the original programmer or some other skilled programmer fix this script

RandomLegend commented 4 years ago

No i dont think it will be fixed. As already said there are too many nails in the coffin.I dont care anymore abiut heroforge and 8$ for one model is still way too expensive.I switched to DesktopHero3D 2.0 which i also backed while its Kickstarter and it works fantastic. Yeah there arent as many assets yet but i gets better. And the fact that you pay ONCE for an Assetpack and use that as often as you want is thousand times better than that ripoff of HeroForge.I also edit my Models after Download with third-party assets giving me more individuality than HeroForge could deliver. The Models look better in my Opinion also.Am 31.03.2020 11:53 schrieb Xenon472 notifications@github.com: there are other scripts that export the models and even those have been compromised. But on some, the distortion is limited only to the body, that makes me think that there could be ways around; that said I am no javascript expert unfortunately so I can't do much, I strongly hope that the original programmer or some other skilled programmer fix this script

—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

Xenon472 commented 4 years ago

I agree on desktopHero3D, I backed it too and am eagerly waiting the moment we can upload our own models. but for the time being, it won't be comparable to Heroforge I think. well, regarding this script, hope never dies :)

RandomLegend commented 4 years ago

In my current opinion it is quite comparable to HeroForge. Yeah it doesnt have as many models, but those look better. Compare the Chainmail from DesktopHero to HeroForge lol.

he Fact that you can rearrange literally every bone of your model in the way you like it, completely outperforms HeroForge. Yeah there are basically no real poses right now, but if you get into the posing you learn it quite fast.

If HeroForge one day offers Assetpack buying and paying once i will do that immediately. But right now, DesktopHero is my way to go. MeshMixer is my new best friend regarding this as i can easily add new models to my download in a few minutes.

Also regarding this script. i guess its already dead by now. The only realistic scenario would be someone downloading their current assetpacks and mirrors the server. Therefore creating a offline-version of HeroForge with all the current assets. This would mean you wont get the new models (still there are plenty enough) but that would mean someone literally has to hack their server wich is highly illegal highly risky and definetly wont happen.

One small single change in their modelbuilder and every script is useless and has to be rewritten. I bet that HeroForge changed their code that they can add changes to the builder without changing much on their side. That means they simply can change their code every week without any trouble and any existing script is useless until someone rewrites it to their current model...wich wont happen..because this would take days if not weeks and by then, they already changed it.

So yeah, free HeroForge is dead...Ultimately. Time to find alternatives; And time to hope HeroForge goes for one-time-pay.

Also i had a little chat with Andrew from DesktopHero on Facebook and he one time asked the community if they would like a link-over to thingiverse so you can import models from there. Since the new thingiverse is even worse (performance-wise) i recommendet him maketabletop.com .

If he works on that link-over with import function, this would be the ultimate HeroForge killer. Also it is planned that you can share your poses, characters, models etc. with the community; Creating a sharespace inside the site where you can browse other peopls creations and their models and what not. This will come in the future combined with new premium asset sets.

lillypath869 commented 4 years ago

It's only dead if everyone gives up.

To my untrained eyes, it doesn't appear that HeroForge did anything intentionally to disrupt the script. They are just preparing to add more features.

At the heart of the current issue is how morphs are applied. Traditionally they are done on the GPU, we are moving them to the CPU in order to export the mesh. It just means learning how to re-apply the morphs.

Commenting out applying the morphs makes the exports usable again, albeit without things like facial expressions.

As for the DCMA takedowns. I don't blame them one bit. They need to protect their work. It's their business.

Xenon472 commented 4 years ago

True! quoting one of my favourites films: "never give up, never surrender!" aaaand, by the way, I managed to make it work again commenting out the morph part (thanks a lot lillypath!). though I don't have any js experience so that's all I can do, somebody more knowledgable than me could hopefully fix the morph too! :D

RandomLegend commented 4 years ago

@Xenon472 i just tried your 2h old script and sadly it doesnt work for me...It still gives me completely distorted models. And yes, i used your script not accidentaly the wrong one :-D

Xenon4722 commented 4 years ago

@Smart-Helper try the fork

lillypath869 commented 4 years ago

Commenting out line 57: morphVector.add(tempMorph); should be sufficient. Less to reverse later. :)

lillypath869 commented 4 years ago

Pretty sure I bumbled through and sorted this out at lunch today, but I ran out of time to put in a pull request. I'll try to get that up in 5'ish hours. It'll be a pretty quick change.

lillypath869 commented 4 years ago

Hmm... I really thought that github let you do repo-less pull requests. There is is a diff against the current head attached at the end.

Not much changed. The morph vectors are just stored slightly different now. Instead of being relative, they are absolute. (I may have gotten that backwards.) I also moved a variable out of an if statement to potentially catch an edge case.

morph.diff.txt

Xenon4722 commented 4 years ago

@lillypath869 yep it all work now! Thanks a lot for your help! :D

RandomLegend commented 4 years ago

Glad to hear it works now...but i am kinda noobish when it comes to the full usage of github.

What do i need to do now to use that working option with your fix @lillypath869 ?

Nevermind. I used @Xenon4722 's Fork and it works absolutely perfect!

SunD8 commented 4 years ago

I found a mirror of this REPO in tor: git DOT fuwafuwaqtlkkxwc DOT onion SLASH test128534 SLASH hero-saver-threejs

Toylerrr commented 4 years ago

SaiDAV/SaverSTL

MrDannyPicard commented 4 years ago

what are we looking at here?

RandomLegend commented 4 years ago

@Toylerrr https://github.com/Xenon4722/threejs this one is better as it exports the correct facial expressions. The one from SaiDAV uses wrong expressions

hero-saver commented 4 years ago

Hi, I merged Xenon's repository into the main branch. Also there is now a subreddit so that these discussions can be held uninterrupted until a more permanent Repository solution can be found: https://www.reddit.com/r/Herosaver/

Jeinor commented 4 years ago

Looks like they've updated the site again. Yesterday it was fine, but now this is nonsense. tD6-nv0C2zs

lillypath869 commented 4 years ago

Well played HeroForge.

After loading the meshes, they are sorting the attribute arrays for the geometry. Basically scrambling the order of the vertices.

bradenfallon commented 4 years ago

Well played HeroForge.

After loading the meshes, they are sorting the attribute arrays for the geometry. Basically scrambling the order of the vertices.

@lillypath869 Where in the site code/sources did you find this?

RandomLegend commented 4 years ago

can someone fix this? Or is this the final nail in the coffin?

Jeinor commented 4 years ago

Are there any news?

bradenfallon commented 4 years ago

I have been able to force the HeroForge website to use a previous version of their javascript files to analyze how their geometry sorting code functions. This method yields an uncorrupted model, but there are gaps between the head and neck and one around the torso.

RandomLegend commented 4 years ago

Nice!Have you used the methology described in the subreddit?I got gaps nearly all the time even when it worked. Using 3D Builder and repairing the mesh and using meshmixer to close the gaps usually did it for me and took like 3 minutes.So i could live with that.

VinnyAmbesek commented 4 years ago

That method does not work anymore for me. I think they updated.

bradenfallon commented 4 years ago

Unfortunately, HeroForge 2.0 just went live for the public and has broken everything I've been working on. It also appears to have broken the local override method. Back to square one...

RandomLegend commented 4 years ago

well...tbh i didnt count on it being usable for long. Downloaded some models i effectively didnt need with the local override.

I am using finished models and desktophero3d from now on. If at one day the heroforge trick works again - I will see if i use it again.

But thanks so much for everyone who dedicated work into this project!

Jeinor commented 3 years ago

Still no results?

CodilX commented 3 years ago

In the latest update - a huge cube envelopes the exported model that is in a T pose with some meshes wrongly positioned. They also redid the weights and indexes, but maybe someone can figure it out ;)

dprossner commented 3 years ago

@CodilX How did you manage to export anything remotely coherent? when I try, its a cube with a mess of polygons inside, and when I use the local overrides method, the page doesn't load.