Search Unity

[Deprecated] Runtime Tools for Morph Character System (MCS)

Discussion in 'Assets and Asset Store' started by ParadoxSolutions, Nov 8, 2016.

  1. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Important notice:
    Leatherbound Games has been rebranded into Paradox Solution Softworks as the company expands into more generalized software development, however this is not just a name and logo change and will have implications on Modular AI, MCSRTT and UCP as well as our game projects. What most of you here on the forums probably want to know is what effect this will have on the assets you purchased.

    The Assets:
    As of right now all assets have been deprecated and are no longer available on the store, don't worry owners of the assets will still be able to download them. The assets will return as part of our new product line Unity Textbook over time.

    Unity Textbook:
    Because many of purchasers of our assets have been students, beginners and hobbyists we feel that the best approach as a company is to cater directly to those who not only want great tools but also need to learn the intricacies of the industry to achieve success in their endeavors. Unity Textbook is an editor extension for Unity that will act as a textbook right inside the Unity editor, it will include a glossary, a toolbox of editor extensions, programming guides on how to code the toolbox tools as well as user guides for the non-programmers. Unity Textbook will be a free platform others can come in and build tutorials and documentation in, and will have intuitive tools for creating "chapters".

    For Example Modular AI:
    Within Unity Textbook we create a tutorial walking you though how we created the modular AI platform, you will be able to switch between the tutorial scripts (unfinished or not) and the final tool at any time without error, we will then create additional chapter on how to design AI, create specific modules and so on...

    Overall Goal:
    Our overall goal is to not let our product be so much about profit but to bring together the community through learning and a passion for the industry, all Unity Textbook chapters will be priced at indie rates ranging form $1 for basic lessons to $10 for expert lessons, there will be a complete edition of Unity Textbook for $60 that will include all future chapters. This gives hobbyists and indies that have lower budgets the option to only pay for what they want to learn or be able to have access to it all at a reasonable price. Furthermore owners of Modular AI will get a 100% discount off of Unity Textbook. We have many chapters planned and a solid platform to build on, we hope we can keep a consistent flow of content coming, with at least one chapter being submitted per week as soon as Unity Textbook hits the asset store. Paradox Solutions will also be much more dedicated toward a premium feel this time around, everything from our images to our marketing, PR, and products will have higher quality standards.

    Thanks for your support,

    Paradox Solutions

    Original post below:



    Hello,
    I am FirefightGI. Today I am pleased to announce that Leatherbound Games will be releasing a set of runtime tools for MCS (Morph Character System) on the asset store!

    Morph3D on the asset store: https://www.assetstore.unity3d.com/en/#!/search/page=1/sortby=popularity/query=publisher:13832

    Runtime Tools for MCS on the asset store:
    https://www.assetstore.unity3d.com/#!/content/78716?aid=1011l3btC

    Update: v.1.0.1b has been released allowing full compatibility with the initial release of MCS 1.6

    Features:
    • Runtime character creator:
    - A runtime character creator supporting sliders for all 400+ morphs it will also support, hair, race and gender editable through both camera space and world space UI.
    - Easily create an in-game morph slider by dragging and dropping.
    • Character randomizers:
    - Randomize your characters at runtime, supports randomized clothing, race and morphs. Have your characters randomized on start for pseudo procedural characters.
    - Support for facial/body symmetry across races when randomized.
    - Randomize morphs within a chosen range.
    • Growth from child to adult over time:
    - Designate a timeframe for a character to grow from a child to adult to elderly.
    - Start at a specific age.
    - Support for real-time aging (default) as well at your own intervals (i.e. for use in a day/night cycle)
    • Runtime costuming:
    - Equip clothing/items to characters from an inventory, picking the item up, walking over it ect..
    • Integrations:
    - Options for integrations, save and load your character to and from PlayFab, and setup your character with UFPS in just one click. ~ Will come in a post-release update.
    • Compatible with both MCS Male/Female Lite and Full versions:
    - Our system lets the user easily use both the MCS Lite and Full packages, allowing you to upgrade to the full version without having to rewrite any code!
    • Shared sliders between Male and Female:
    - Changes you make to a character can be optionally shared between both male and female characters while editing allowing you to switch between male and female without loosing your progress.
    • Character Races:
    - 16 built-in races.
    - Races act independently from your custom blendshape values.
    - Randomizers work no matter the character's race.
    • Character Saving:
    - Save characters to a game server using PlayFab.
    - Save characters to text and other client-side formats. ~ May come in a post-release update.
    • Tutorial videos and documentation:
    - Video tutorials, written documentation and fully commented source code included!
    - Demo Scenes!

    Media:

    Documentation PDF:
    Click here for documentation.

    Videos:
    Ageing:


    Character Creation:


    Task List:
    Chance of coming next update:

    On Track Uncertain In Danger
    Version 1.x - 2.0:
    -
    Support for Reptilian Character - Canceled until further notice
    -Support for Minotaur Character - Canceled until further notice


    Version 2.x - 3.0:
    -UFPS Integration - Moved out
    -Client-Side Saving - Moved out
    -Community Requested Integration
    -Edit Morphs based on Mouse input
    -Community Requested feature

    Known Issues:
    -Characters starting as an adult when aging sometimes don't progress to old age.


    Notes:

    Further ideas are welcome, we will be improving this system using feedback from customers and those of you here on the forums.

    If you are a 3D artists and familiar with the Morph3D or Daz3D workflows and are interested in some work contact us here: leatherboundgames.com/jobs
     
    Last edited: Nov 24, 2017
    MrIconic, John-G, Fenris2 and 3 others like this.
  2. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Release may be delayed into next month due to the holidays + finishing the tutorial videos and documentation may take some more time along with the asset store submission process. In the mean time we will remain hard at work creating some great tools for you to use along MCS!
     
  3. KingfisherWyvernStudio

    KingfisherWyvernStudio

    Joined:
    Oct 5, 2011
    Posts:
    324
    Can we also choose to limit what can be changed by others?
     
  4. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Yes, the system supports all blendshapes but this doesn't mean you have to use them all. If you are using the runtime manager along with UI we have put in a lot of support for sliders. You only have to have sliders for the morphs you are going to use, and the sliders have a min/max you can set if you don't want your users making characters with morph values that may be unrealistic or cause clipping problems with animations. (Such as big head tiny body)
     
  5. KingfisherWyvernStudio

    KingfisherWyvernStudio

    Joined:
    Oct 5, 2011
    Posts:
    324
    Sounds good! Thanks :)
     
  6. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    No problem! All questions are welcome. :D
     
  7. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Do you have a good way to serialize the characters? I need to save them online on the gameserver.
    Can I get a JSON of the settings?
     
  8. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Currently we have scripts that support saving to PlayFab (Sent as a Json Key,Value Pair) however this is only for characters that have been created through the character creator atm. We may move saving out into a post-release update so we can cover more use cases such as: Saving client-side, to text, player prefs, xml.

    Essentially we get all the slider values (whole numbers) and convert them into a string that will be the Json value and give it a key. We then have code that loads the string back into blendshape values even if there is not a character creator in the scene, the morphs will adjust based on the loaded values on the character trying to load them.
    To track gender we send PlayFab a string "male" or "female" as the Json value of a separate key.

    It should be pretty easy to modify our saving script to send a Json value wherever you need it.
    To answer your question saving/loading "works", but is considered experimental at this time.

    If you are unfamiliar with PlayFab we are essentially updating user data in a backend database with something like this:
    updateUserData(Key,Value);
    With how PlayFab works we send the Json value directly. I can't recall if you have to Parse the Key,Value pair to Json within Unity, PlayFab might do this for you.

    Note: we have not yet supported saving clothing/hair, the method in how you would go about this may depend on if you are using an inventory system or not. (Inventory system keeps track of what clothes are equipped so no need to save separately)

    Of course we'll be happy to help you if needed. :)
     
  9. KingfisherWyvernStudio

    KingfisherWyvernStudio

    Joined:
    Oct 5, 2011
    Posts:
    324
    Oh, I like the combination with PlayFab as that is what I'm going to use with my project as well.

    Well, back to writing now. I've got a few more days left for #NaNoWriMo2016 before I go fully back to #gamedev :)
     
  10. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    this is exactly what I am looking for as well...
     
  11. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Good to know people are looking for ways to save their characters, I will be sure to prioritize this and try and get the PlayFab scripts out with v1.
     
  12. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    I'm wrapping up character randomization, making sure the characters look natural. Part of this is optional character symmetry, this is great for keeping characters in proportion (so you don't have a big left hand and a small right one).
     
  13. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    you have any screenshots to show us?
     
  14. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Here are some screenshots of some randomly generated characters with symmetry turned on:


     
  15. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    seems like a problem with the link.
     
  16. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    You're right, here is a picture of some randomized faces with symmetry turned on: (Direct link)
    (note the male eyelashes have a material error)
     
  17. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Would it be possible to do some kind of raycast at a point? Click the face or part of the body and get back a list of the blendshapes affecting that point?
     
  18. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Similar to Fallout 4? Sure it probably is possible, however some things in MCS are in DLLs and require their character manager to edit, I think the actual blenshapes are part of the model and any code creating them is in the DLLs. So retriving the blendshapes from the model may be very hard if not impossible to do. However you probably could work around this by setting up colliders around the character that when clicked allow you to drag sliders off screen (or unrendered) in worldspace ui based on the cursor's velocity from the start point. This is something we can look into and add in a future update if requested.
     
  19. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Edit: To clarify, I do not think you can get a blenshape by clicking the mesh since there is no way to access blenshapes to see where they are on the model. But the effect can be achieved with some camera tricks and colliders like mentioned above. I am just speaking in theory, we may look into this further in the future.
     
  20. Fenris2

    Fenris2

    Joined:
    Aug 25, 2014
    Posts:
    61
    I for one would love something that allowed/facilitated a fallout 4 sort of editing. For what its worth. :p
     
  21. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    I think it should be possible to pre-calculate the affected blendshapes per vertex.
    We do know a few things about the blend shapes. Start with a Morph3D model with no animation set.

    1. From the blendshape name we know what body part they are affecting.
    It should then be possible to map that manually per category to bones in the same area in the skinned mesh. You are probably looking for one of the head morphs if you click on the nose, not the age blend shape.

    2. Each vertex in the skinned mesh has a bone weight, you can with this find the relevant body part/bone from the position(hit triangle/vertex) in the raycast

    3. you then save the vertex position, loop through the relevant blendshapes for that bone one by one and set the blendshape value to 100. Bake the mesh. Check the change in vertex position and continue to the next on the list.
    Sort this list on distance from original vertex to blended vertex.

    After doing this for all vertices in the mesh you will end out with a pre-generated vertex to blendshape index list you can store and do lookups in.

    What do you think?
     
  22. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Yes we probably could find what vertex/bones corraspond to what blenshapes in the character manager prior to runtime. I was thinking about trying to do that at runtime but I see what you mean. I think the way Bethesda does this is a mix of being able to move the bones and deform the mesh itself. (allowing you to actually move part of the mesh around within a constraint) but I may be wrong. I have not had time to actually try and do this myslef, I'll read up on how Unity does blendshapes since I have never done anything with them outside of systems like MCS or UMA. I recall seeing a video on Morph3's YouTube channel showing something sort of similar.

    Edit: Found the video:

    So this should be sort of possible, kinda looks like they are using a slider still. If enough people request a fallout 4ish system then we will consider it as a feature for a future release.
     
    Last edited: Dec 2, 2016
  23. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    We might hold off on releasing version 1 until the next MCS update that fixes a bug we have encountered, unless we find a good workaround. At this time I cannot give a good estimate of when this will be on the asset store but hopefully before the 12th. Sorry for the delay.
     
  24. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    I am really excited. I am certainly willing to wait.
     
  25. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    It looks like we will delay until the next MCS update since we could not find a good work around for the bug. However in the mean time we got PlayFab support into version 1 as well as wrote an editor extension for ease of use.
     
    rickcollette likes this.
  26. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    We're going to try and get the PDF Documentation up on this thread as well as some media showing off the system, as for the price of the asset it will probably be around $12 USD to start and be increased with major updates.

    I figure you guys are already paying $100+ for the MCS system so we will keep our asset at more of an indie rate like the other MCS add-ons. Leatherbound Games is primarily a game development company rather than focused on tools, so major updates may not come out very often though.
     
    rickcollette likes this.
  27. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    as soon as its available... I'm in.
     
  28. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    I'm going to try and submit to the asset store today, and hopefully get some videos up too.
    However version 1 will have clothing and hair features disabled until it is fixed in MCS.
     
  29. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Does anyone know how to get rid of the poll? Is it there forever now?
    Edit: I found an old thread, I don't seem to have a delete button for polls. Can a mod remove the poll for me. @Eric5h5
     
    Last edited: Jan 19, 2017
  30. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Videos up now, pictures don't do the system much justice anyways.
     
  31. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    Is it still in review?
     
  32. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Yeah, it's been like 3 weeks in review. Probably due to the holidays.
     
  33. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
  34. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    We have a new asset being developed, and it's a AI development platform!

    However this doesn't mean we have abandoned what just came out, my top priority is getting the character creation camera replaced with one that will smoothly focus on the character's bones even while the character is animating and making sure character saving is fully functional.
     
  35. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    Woot! (sorry; been out a while.. just saw this) - just bought it.
     
  36. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Thanks for your support! Lets us know how integrating PlayFab works for you, we have been able to get characters saving in our own games but I'm not to sure if we got the full functionality into this asset. I believe we included a basic cloud script that goes along with the code for saving but if you need any help just let us know!
     
  37. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Our next update is in the works, we will most likely be adding support for the minotaur and reptilian characters as well as writing a better camera system for the default UI manager, after this updates might take longer to roll out unless an MCS update fixes the "clothing load order bug" in that case a hotfix will be prioritized.
     
  38. keifyb

    keifyb

    Joined:
    Feb 12, 2016
    Posts:
    62
    if you add ufps multiplayer addon intergration i might get this
     
  39. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    A UFPS integration is planned, it will include 1-click ragdoll setup (maybe a way to make the MCS character hands act as UFPS hands in FP perspective) ect.. as far as specifically multiplayer we support saving/loading through PlayFab and plan support for generic JSON and client-side saving.

    You could setup a MCS character with UFPS the same way you would any other character, Runtime Tools for MCS just makes things easier and includes a lot of useful functionality at runtime.
     
  40. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    I should note that MCS 1.6 may introduce some breaking changes (Gen 3 characters) and I have been holding off on implementing some features (and disabled the runtime character randomization) until 1.6 is released and compatible with Unity 5.5 and so on.
     
  41. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    MCS 1.6 breaks Runtime Tools for MCS and will need almost a full re-write in some places. Still looking into this though.
     
  42. drewdough

    drewdough

    Joined:
    Oct 5, 2016
    Posts:
    57
    wow, this is an amazing tool, thank you for putting it in the asset store!

    The thing so far that has made MCS un-usable for me is 2 problems: I can't make ethnic looking people (e.g. latinos, africans etc) and I can't make very muscular people (ripped bodies like a body builder or a fitness trainer).

    I'm wondering if your tool can help me solve these 2 problems with MCS? I see in your demo you can make a space alien but I still don't see ability to make a hispanic person :D

    Thank you for your help!
     
  43. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Morph3D has a Witch Doctor character that has an African material, other than that you will have to create your own materials. MCSRTT does not support material swapping as of version 1.0 but it is something that has been considered.
    The full version of MCS Male and Female have "Body Builder" blendshapes so that is entirely possible if you have the full versions.
     
  44. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    I have deprecated (removed) Runtime Tools for MCS from the asset store due to MCS update 1.6.
    Update 1.6 introduced changes that severely break many core systems of MCSRTT and they will need a full re-write.

    One of two things will happen to this asset going forward:

    1) An alternative solution will be found and the asset re-written then republished on the store.
    2) Version 1.0 will be released for free but incompatible with MCS 1.6+ and will act as a template to learn from.

    Until we can get things figured out, anyone who purchased MCSRTT can still download it but new users will not be able to find it on the store.

    I apologize for this unforeseen inconvenience for many users.
     
  45. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    It looks like some code can be fixed with a simple find and replace but I think they might have removed blendshape IDs and if they did the system will need a re-write for sure.
     
  46. go1dfish

    go1dfish

    Joined:
    Nov 2, 2016
    Posts:
    54
    Sounds like the blendshapes just arent exposed by default and some are renamed.

    Would be nice if MCS runtime tools would automatically expose the blendhshapes it was randomizing or controlling and avoiding those it isn't (like the fantasy racial morphs)
     
  47. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    I'm still looking into how blendshapes (now called morphs) work in MCS 1.6, if you have MCS runtime tools v.1.0.0 how it works is we had a blendshape ID library (a blendshapeID and a Slider UI component) and you would link a slider to a spot in the library and that's how the Id would be referenced (however this was different from the legacy slider system)

    Maybe I don't understand what you are saying but v.1.0.0 only changes blendshapes that you are using a slider for or are randomized on start. Changing races will not override changes to any other blendshape other than the blendshapes in that group as well.

    As for how things will work in the future I do not know as of right now.
     
  48. go1dfish

    go1dfish

    Joined:
    Nov 2, 2016
    Posts:
    54
    Yeah I have 1.0.0 and I'm hoping you will update for 1.6. What I'm saying is that 1.6 doesn't attach (a new thing in 1.6) any blendshapes by default for performance.

    I'm saying that if you update the asset to 1.6 you should make it only attach the blendhshapes that it is changing. (i.e. that you are using the slider for like age or are randomized at start)

    If I didn't select randomize race for example, then MCS runtime tools for 1.6 shouldn't attach the vampire, alien etc.. blend shapes.

    SALSA has updated their MCS integration for 1.6 and it might be helpful to look at how they are altering the blendshapes while we wait for better docs from Morph3d

    https://crazyminnowstudio.com/posts/using-mcs-characters-with-salsa-lipsync/
     
  49. ParadoxSolutions

    ParadoxSolutions

    Joined:
    Jul 27, 2015
    Posts:
    325
    Ok I defiantly see where you are coming from. I'm working with M3D support to see how much of 1.0.0 I can save and learn how morphs work. I defiantly would not attach all blendshapes at once, if I can I will probably only attach blendahpes from the blendshapeId lib (or something similar) that have sliders assigned.

    Edit: Only Morphs that are being edited will be enabled, if at any point in character creation it is set to 0 it will be disabled therefore unused. *This has been added to ensure performance.
     
    Last edited: Mar 14, 2017
  50. swansonator

    swansonator

    Joined:
    May 19, 2016
    Posts:
    19
    Yes please learn as much from M3D as you can and let us know how/why some core stuff was changed. Thanks for doing the heavy lifting for the rest of us.