MB-Lab icon indicating copy to clipboard operation
MB-Lab copied to clipboard

Remove finalisation step

Open mklemarczyk opened this issue 4 years ago • 18 comments

Is your feature request related to a problem? Please describe. The feature is not related to any problem. It is request for simplification. The question is: Is it possible to keep only one state of character? Why the finalisation operation exists and is it possible to make that operation more transparent?

Describe the solution you'd like Remove finalisation operation. That the options for new created character and finalised character are available all the time. I would like to keep all options available all the time.

Describe alternatives you've considered Alternative 1: Clear description of the reason why finalisation operation exists and benefits of having it. Alternative 2: Is it possible to replace finalise operation with baking operation?

Additional context Current finalisation operation is not very clear why is needed. It disables some options that are no longer available on the MB-Lab character. Moreover, it is not presented anywhere that character is finalised.

Status (21st December 2020) :

  • [x] remove standard code errors so flake8 returns no errors (PR #312),
  • [ ] simplify __init__.py and move non necessary code into separate file,
  • [ ] collect list of actions done during "finalisation step",
  • [ ] design new data structure for "baked" model, ...

mklemarczyk avatar Nov 02 '19 18:11 mklemarczyk

As the current documentation says the step is not reversible and Lab is not able to update the character anymore. https://mb-lab.readthedocs.io/en/latest/finalize.html

The goal is to create hybrid approach that will allow user to work on the character will all available tools (creation and after-creation all the time). To achieve such goal the add-on should be adopted. I will create branch to test approach and show how much is it possible.

Good thing is that Blender can keep, save and maintain metadata of object event the add-on is no longer available in the system. Thanks to hybrid approach we can achieve as follows:

  • ability to check parameters of created MB-Lab characters in the scene,
  • modify creation parameters of many MB-Lab character in single scene,
  • update created MB-Lab characters with new features after some time (right now it is possible thanks to backup files),
  • add/remove/update armature from MB-Lab after new version release, so user do not need to recreate character from backup,
  • revert manual object modifications to original stage without using backup files,
  • no need to maintain additional files saved outside of blend file

Other drawbacks are addressed on the page: https://mb-lab.readthedocs.io/en/latest/save_export.html

Additional goal, not yet in the scope of the issue itself is additional research how animations from one character can be reused/recomputed on another character (with different age, mass, size, gender etc.). I will create separate issue to address that research.

Let me know what do you think about the idea itself. I personally think it would be very interesting to be able to tweak some parameters once character is finalised, animated and dressed. Of course I do not want to erase all changed applied after creation of character but rather introduce merge process to keep them and apply new creation parameters.

mklemarczyk avatar Nov 02 '19 19:11 mklemarczyk

I like this idea. It has been requested before so I can see this being a feature many people would rejoice to. It would also help people just starting with Blender / MB-Lab kind of ease their way into it, the addon is quite unique and not so user friendly at times, many people try to move their character around before finalizing or try to do other things that break their characters. I've done it myself in the past so I know.

By the way it's a pleasure to have you on board :)

animate1978 avatar Nov 05 '19 04:11 animate1978

@animate1978 I will start the work than. I expect basic study to finish at beginning of December 2019, since it will be a big project. I would like to create separate branch in main repo, that everybody can try it when it will be possible.

mklemarczyk avatar Nov 07 '19 21:11 mklemarczyk

@animate1978 Can you assign me to this issue? I do not have an access to assign myself to issue of change labels.

mklemarczyk avatar Nov 09 '19 20:11 mklemarczyk

The issue with this is that while in the creation phase you can only work on one character at a time, and MBLab expects only one character in the scene. Once the characters are finalized MBLab assigns expressions and poses to the one you have selected, but not to the other ones. If this was implemented incorrectly it could lead to not being able to have different expressions and animation on each character in the scene, or worse, only being able to have one character in the scene, which could make the software unusable for film or animation. I would love to help with this issue to make sure it is implemented in a way that works for both single character stills and multi character animations

AreebDurrani avatar Nov 17 '19 04:11 AreebDurrani

So basically it should work like this: The character holds the data and parameters and editor shows the data of selected character, if You select the other one editor shows the other character parameters accordingly,

TheBricktop avatar Dec 16 '19 12:12 TheBricktop

Another faster solution can be having a "revert" button or "make it editable" button to make the character as if it was unfinished. So there you can take care of having only one character per time in editable or creation mode. And I think it can be implemented for now as a workaround meanwhile.

Anyeos avatar Mar 21 '20 23:03 Anyeos

Hello, I'm sorry for long silence. I started new chapter in my life in France. I started major refactoring of the interface of the MB-Lab.

Since the development slow down a bit it will be secure for me to release it in chunks.

I expect first chunk with new "create" operator in the end of May 2020.

Stay tuned.

mklemarczyk avatar May 15 '20 20:05 mklemarczyk

It is quite okay @mklemarczyk I had spent 2 months away myself for personal reasons and am slowly getting back into development of MB-Lab.

animate1978 avatar Jul 02 '20 10:07 animate1978

Its good to see You guys back at it again!

TheBricktop avatar Jul 02 '20 12:07 TheBricktop

Hello @animate1978 , I tried to integrate changes for long time. I will have to wait or coordinate with issue #234. It is making much changes to the code structure. It would be danger to proceed with both at the same time.

mklemarczyk avatar Jul 25 '20 08:07 mklemarczyk

Yes there has been quite a lot of changes to the code for the MB-Dev framework and tools. If removing the finalization feature is not needed at this time there is no need to change.

I agree it would be dangerous at this time to consider.

animate1978 avatar Jul 25 '20 13:07 animate1978

Hello guys, I think a good replacement can be a "lock" mode where not all but some things are modificable. I know that the most difficult part is the code, I only say it if someone wants a "finalize" like feature.

Another good feature can be a UI mode (Expert, advanced, simplified) where not all but some options are available.

But I don't want to distract you or get out of the point.

Anyeos avatar Aug 01 '20 01:08 Anyeos

Hello, I am finally back to Blender. Sorry for so much delay. I would like to create fork for the experimenting in December. Important question: are there any UI changes ongoing?

mklemarczyk avatar Dec 01 '20 16:12 mklemarczyk

Hello, I am finally back to Blender. Sorry for so much delay. I would like to create fork for the experimenting in December. Important question: are there any UI changes ongoing?

No the UI is pretty much done for this version

Welcome back! I too took a long time to get back into this. I just got internet service yesterday at my new place so I will be working on some things and making changes soon, once I get caught up on everything.

animate1978 avatar Dec 13 '20 13:12 animate1978

Welcome in the new place. I hope you feel well there. I do review what modifications are applicable and what I need to rewrite. I will move after Christmas too, I hope the internet will be connected from day 1, anyway I can work some time without it. ;)

mklemarczyk avatar Dec 17 '20 13:12 mklemarczyk

I started the works, the next version will contain feature I like to call "Fluid UI" and it will not require finalisation step.

mklemarczyk avatar Dec 21 '20 13:12 mklemarczyk

Any word on progress related to this?

animate1978 avatar Feb 11 '21 01:02 animate1978