Search Unity

[Released] Morph Character System (MCS) - Male and Female

Discussion in 'Assets and Asset Store' started by berk-maketafi, Sep 17, 2015.

  1. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,877
  2. sxa

    sxa

    Joined:
    Aug 8, 2014
    Posts:
    188
    'Open In Unity' in that screenshot implies you already have it downloaded. And as per your screenshot, it gives you a link to download it again.
     
  3. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,517
    If you want to download from the store, read the last line of the text you posted. It says:

    If you already purchased it and need to download a copy, you can do so here.

    Click on the link that says here.
     
  4. John-G

    John-G

    Joined:
    Mar 21, 2013
    Posts:
    1,111
    Anyone having issues logging in to Download site with your legacy account?
     
  5. cygnusprojects

    cygnusprojects

    Joined:
    Mar 13, 2011
    Posts:
    651
    Worked for me during the weekend.
     
  6. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,877
    I use this link and get right in. They don't have every asset I've purchased from them in the list, and there's the occasional bug, but this is a more complete listing of my assets than I have seen in a long, long time. The MCS store has almost always had some problems, in my experience.

    https://mcsdownload.com/
     
    John-G likes this.
  7. EDarkness

    EDarkness

    Joined:
    Feb 1, 2013
    Posts:
    373
    I signed up to GitHub to see if I can work on the MCS stuff. Not sure how it works since I don't use GitHub at all. Anyone else messing around with the code?
     
  8. shredingskin

    shredingskin

    Joined:
    Nov 7, 2012
    Posts:
    151
    Is there any procedure to update the clothes we downloaded from the assetstore, or it's just about updating MCS ?
    Trying the 1.7 version, the morphs still don't work, anyone got it working ?
     
    Last edited: May 3, 2019
  9. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    The system is now looking for different paths and names, you can try updating, at minimum, the .mon files for any paths and changing the "vendor" paths to MCS (including directory names). I've reprocessed the binary and json files as well to have these updates. Take a look at the latest figure unitypackage on github or something like the ciao bella outfit and you'll see how the directory names, fbx, and supporting meta files (eg: mon files), have been updated.
     
  10. HonorableDaniel

    HonorableDaniel

    Joined:
    Feb 28, 2007
    Posts:
    2,814
    @jjanzer_morph First off, thank you so much for going open source. Much appreciated! I think you made a good move.

    Slightly off-topic question: Is Tafi going to be the new MCS? Will there be a Tafi Unity plugin?
     
  11. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    Thanks, I've pushed internally to open source the project so that anyone that currently invested in the original system will have a continued path for support (either their own or as a community). I hope that this is a good option for anyone existing or new to the system. Glad to hear this is something that people using MCS are happy with.

    Tafi is the new company name we have, it's not the name of our new product. We've made a new product that in spirit is similar but has diverged quite a bit (c++ native core with Unity and Unreal high level plugins that sit on top (along with support for proprietary engine), a set of new runtime algorithms and streaming support, new tooling, a server backend, etc). Currently we're working with a few partners and licensees that are interested in the technology and content we offer. Some of these ventures will be out this year for those that may be curious. Until we get everything ironed out it's unclear whether we will open our new plugin(s) for general use yet, but there is a possibility this will happen.
     
  12. S1mon

    S1mon

    Joined:
    May 31, 2016
    Posts:
    12
    @jjanzer_morph, Thank you for choosing open source for morph3d.
    I have a question about artist tools. Is it also open source? I did not find it in the git repo. Or is it possible to download somewhere? I deleted it on my computer and did not keep a copy.
    Or, there is another way to create my own clothes and haircuts.
    Thanks!
     
  13. EDarkness

    EDarkness

    Joined:
    Feb 1, 2013
    Posts:
    373
    @jjanzer_morph I guess this way you guys get to keep full control over everything including the licensing which wouldn't have been allowed with the way the Unity store works. I still think you guys should still sell the old models and stuff on the Unity store for those who are still working on Morph3D.

    Also, I think the thing I want to work on with this is a way to remove dependence from the DLL and allow for more customization of the system as a whole because I think we can focus on lowering the stress the whole system puts on the game. Should we have that discussion here, or would that be better somewhere else?
     
  14. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    Please see: https://forum.unity.com/threads/rel...s-male-and-female.355675/page-71#post-4475368

    If you don't have a copy you'll need to wait for me to rebuild artist tools with the new code. This will not be any time soon unfortunately.

    Since the MCS core code is now open source you could look at how we work with the data and do it yourself w/o the extras of artist tools, it might be that you don't need to use all the morphs (or can do a few by hand).
     
    S1mon likes this.
  15. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    We might revisit rehosting the content assets on the asset store, but for now we're very busy with our other projects. It depends entirely on how things go over the next few months with the reception of the change to open up the code.

    You don't need the DLL anymore, it was compiled to managed code previously but now that it's open source there isn't a requirement for that, so feel free to try it out directly in your project and make any modifications you might have to get it to work.
     
  16. HonorableDaniel

    HonorableDaniel

    Joined:
    Feb 28, 2007
    Posts:
    2,814
    Just to let others know, I've imported the source code straight into my project, works flawlessly.
     
    hopeful likes this.
  17. 99thmonkey

    99thmonkey

    Joined:
    Aug 10, 2012
    Posts:
    521
    How did you download the source code?
     
  18. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
  19. 99thmonkey

    99thmonkey

    Joined:
    Aug 10, 2012
    Posts:
    521
    but I'm not sure how to download it and then load it into my unity project... and have it work. :)
    The other files worked fine: https://github.com/mcs-sdk/mcs/releases .. but these files aren't c# files, so I can't edit them (and remove the LOD group) or make them work with Unity 2019.1
     
  20. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    If you're not familiar with DVCS please take a look and read through: https://guides.github.com/introduction/git-handbook/

    You can download the repository on the master branch as a zip file if you don't want to download via the git tools via the "clone or download" button on github. Once downloaded make a folder at something like Assets/MCS/Code and then copy/download/checkout the files into there.

    That should get you started and then you should be able to start fiddling with the code from there.
     
  21. 99thmonkey

    99thmonkey

    Joined:
    Aug 10, 2012
    Posts:
    521
  22. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    well yeah that's the one they use and listed in the Vendors.MD document.
     
  23. EDarkness

    EDarkness

    Joined:
    Feb 1, 2013
    Posts:
    373
    I assume that the base code in the repository will work with older versions of Unity? I'm kinda stuck with Unity 5 at the moment.
     
  24. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    So is there any version of Morph3D MCS code that will work under 19.1? I bought tons of great content and now it's all useless...? :-(
     
    Last edited: May 8, 2019
  25. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    What Unity release version did you get it working under?
     
  26. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    it works for me in 2018.3 So I don't see why it wouldn't work on 2019

    (granted, I took the time to upgrade the warnings, but pretty sure it would work even without doing that)
     
  27. HonorableDaniel

    HonorableDaniel

    Joined:
    Feb 28, 2007
    Posts:
    2,814
    2018.3.11
     
  28. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    Weird. I just tested and it seems to work fine from 2017 LTS - 2018.2.2. But then it gets wonky from 2018.3 up. (I'm on a Windows PC, BTW)

    Can you please explain what you mean by "upgrade the warnings"?

    Thanks.
     
    XCO likes this.
  29. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    Also, did you build from source or use the v1.7 unitypackages (like I did)?
     
  30. 99thmonkey

    99thmonkey

    Joined:
    Aug 10, 2012
    Posts:
    521
    Doesn't work properly under 2018.12 or 2019.1. So Unity must have done something between 2018.3 and 2018.12
     
  31. 99thmonkey

    99thmonkey

    Joined:
    Aug 10, 2012
    Posts:
    521
    I built from the source, but doesn't work in 2018.12 or 2019.1. Morphs don't work and the LOD function with MCS messes with unity's awesome built in LOD Groups.
     
  32. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    No I didn't build it. I put the source directly in the project, and upgraded it's warnings. (it will tell you when things are depreciated and need updating).

    It definitely works in any version between 5 and 2018.3 (and to be clear I'm talking about the GitHub version 1.7, the old release 1.6 may not work)

    I haven't tried 2019 but I'll do so right now.
     
  33. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    Ok just to keep things super simple, I tested with 2019.1.1f1 and it works fine.

    All I did was:

    1. import MCS-1_7-CodeAndShaders.unitpackage
    2. Import MCS-1_7-Female.unitypackage
    3. profit

    works fine. But personally I prefer to go a few steps further and get rid of the DLL and use the actual code, to do that you would go:

    3. Close Unity, go to Assets\MCS\Code\Plugins folder and delete the following files:


    4. Download Zip file of source from GitHub. Unzip the 3 code folders into the same plugins folder we just deleted files out of. (you'll notice the folders have the same names as the DLLs we just deleted.


    5. Reopen the project in Unity. You'll see some errors about ' Duplicate AssemblyDescription' or similar. delete the 3 'Properties' folders as shown, and let the assembly upgrader run. Clear the console. There should no longer be errors showing. If there is you did something wrong at this point.


    6. If you have any content installed (Male, Female, clothing etc), delete them out of your scenes and assets folders and reimport them (this is required so the system upgrades them to the new component GUIDs).

    And now you have it running with the raw uncompiled source code.

    (if you want to use the source for the zip library, it's similar procedure.)
     
    nirvanajie and grobonom like this.
  34. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    However, having said above, I want to explain why you shouldn't use the raw source code. and it is because of the License Tafi has chosen to release the code under, The LGPL 3.0 If you compile your game using this code directly, you *must* open source your whole game.

    However, if you keep MCS as a linked DLL, you do not. So i'd advise to compile your code to a DLL for this reason. You can in fact use the source, but set up an Assembly Definition File in Unity, so it will compile MCS to a standalone DLL at build time. (see: https://softwareengineering.stackex...an-lgpl-licenced-library-in-my-commercial-app , https://docs.unity3d.com/Manual/ScriptCompilationAssemblyDefinitionFiles.html )

    But under no circumstance should you just use the source directly compiled into your game unless you're prepared to make all of your code available. it comes down to satisfying section 4.(d) of the LGPL.

    https://opensource.org/licenses/lgpl-3.0.html
     
    Last edited: May 8, 2019
    N0R7H, HummerBumble and hopeful like this.
  35. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    Thank you for providing such a detailed explanation!! I will try it later today and hopefully succeed.

    Best,

    --S
     
    ceebeee likes this.
  36. EDarkness

    EDarkness

    Joined:
    Feb 1, 2013
    Posts:
    373
    That kinda sucks. I'll have to look into this because I wanted to keep DLLs to a minimum.
     
  37. 99thmonkey

    99thmonkey

    Joined:
    Aug 10, 2012
    Posts:
    521
    So the morphs work for you? Nothing would morph for me after importing into 2019.1. Neither using the github code like you mentioned, nor the asset packages on github. the files load, but the morphs don't work at all.
     
    grobonom likes this.
  38. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    Hmm ok, Morphs definitely work in 2018.3, it's what my project is using. But I did rush a bit in trying 2019.1 and It does look like there's a morph problem with that version. I'll have to look into it and see why.
     
    99thmonkey likes this.
  39. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    Okay well good news and bad news:

    Good news: I know why 2019 is having problems.
    Bad News: There's really nothing the community can do about it, and I'm not sure Tafi will want to take the time to fix it.

    First off there is a small code bug that is contributing but it's not the cause:

    Original Code:


    new:


    long story short coreMorphs is a getter for _coreMorphs that tries to add a component if _coreMorphs is null. but we are in OnDestroy() and destroying the object it's trying to add the component to. Apparently previous versions of unity were fine with this, but 2019 errors on this condition now.

    Now the real problem as to why morphs don't work (from the 2019 release notes):

    they changed how vertices order when optimizing the mesh. And MCS relies on the order to re-apply the morph data... You can see the problem.

    Now I tried changing the import settings:


    Applied the fix and tried every combination of optimization settings (including none) and it seems none of the settings produces the exact same vertex order that the current data needs.

    The only way this could be fixed is for Tafi to regenerate all of the Morph data based on this new mesh optimization order being produced 2019 and onward.

    So seems for now 2018.3 (and soon 2018.4) will be the latest version that works with MCS.
     
  40. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    Thanks for digging into this, I'm slammed with work right now, but I don't see why we couldn't resolve this for 2019 users. We do vertex remapping in lots of ways so this wouldn't be too hard to fix.

    If someone submits an issue on github I'll address it when I get time in the next few weeks.
     
  41. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    I followed your steps using 2018.3 but get strange results. The _first_ morph I change works, but all the ones after that do nothing. Any ideas? thanks.
     
  42. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    it appears you must have GPU skinning turned off. This isn't the first time I've had problems with this setting. It seems ever since Unity added GPU support to blend shapes in 2018.3, it's been very buggy. Appears to be a Unity problem, not a MCS problem.

     
    shredingskin and hopeful like this.
  43. grobonom

    grobonom

    Joined:
    Jun 23, 2018
    Posts:
    112
    hi all :)

    i really don't understand how to make this working :/
    i drag MCSFemale prefab in my scene, and i got the char with lods system. no other component/script attached for playing with morphs.

    Too bad as all this work seemed promising !

    But am sure am missing something ^^
     
  44. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    You first have to add the MCS Core to your project before adding the MCS Female. Did you do that?
     
  45. skyser5

    skyser5

    Joined:
    Jun 11, 2015
    Posts:
    18
    I am happy to do this, but I am not sure what it should say...
     
  46. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    I already created an issue on GitHub the day he asked.
     
  47. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    586
    @jjanzer_morph Hi! Quick question about licensing.

    The MCS source on GitHub is LGPLv3.

    As far as I understand (after quite a bit of research), that prevents us from shipping it with a Unity built game, because the Unity builds make managed plugins statically linked with IL2CPP.

    Likewise, it prevents us from modifying / forking the source to make fixes (should you ever stop supporting it).

    This is generally why Unity relies on zero LGPL licensed library behind the scenes and why asset store developers are forbidden from including LGPL licensed libraries in their packages. From the Unity Asset Store Provider Terms:

    Am I missing something or are we just not legally allowed to use the open-source version of MCS in Unity builds?

    This is really worrisome to us because it seems like this open-source LGPL version is now the only one available.
     
    Last edited: May 26, 2019
    hopeful likes this.
  48. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    586
    From my understanding, even an assembly definition file will get statically linked to the final build as soon as you use IL2CPP, which is the only available option for all consoles and mobile targets, as well as soon-to-be default for PC/Mac standalone builds too. Because of that, I see no way to use even the unmodified DLLs with the current license.
     
  49. ceebeee

    ceebeee

    Joined:
    Mar 7, 2017
    Posts:
    379
    Possibly, I've never dealt with IL2CPP. if so then yes you don't want to do that. (the new default? Ugh, i'll have to watch out for that)
     
  50. jjanzer_tafi

    jjanzer_tafi

    Joined:
    Mar 4, 2017
    Posts:
    472
    It was not our intention to prevent users from using IL2CPP inside their shipped app/game. Perhaps we need to make a custom exemption in order to explicitly allow this. I'll need to talk with a few other people about this before moving forward but I will figure it out.