I opened a 2.79 blend file in B28 today. I got the following surprising result:
On opening the file, all object and action references are empty.
This is B28, daily build on MacOS 10.13, just after updating the SDK to latest. This also happens with the Armory 0.6 version of B28 (also with SDK updated to latest).
How to prevent this from happening? I would very much like to not have to redo every node tree when I switch from B2.79 to B2.80.
I think we just need to add a migration step to Armory to automatically update the references to the actions. There were several updates to object references with the upgrade to Blender 2.8.
You can open up an issue on GitHub for it.
I think that happened because of this:
Lubos droped b2.79 props migration, because some people were getting strange red nodes
You can check this out and pull before that commit is done and then migrate you .blend file and then update it.
For example, open terminal in
armory folder and then enter following command:
git clone https://github.com/armory3d/armory.git
git checkout eeb81e22c313f7376a2ecd5eac10c7a88d8df8cd
which will give you armory before of droping of props migration
Thanks for that, @BlackGoku36. I’m not ready to move to B28 yet, though. Blender itself and the addons I currently use are not sufficiently stable or available for me to work with full-time.
By the time Blender 2.8 is sufficiently stable for me to work with, Armory will have gone further as well. Going back to the version of Armory before this commit might work, but be a serious hassle by then.
I dislike the decision to drop properties migration very much. It sounds to me like ignoring an issue instead of finding a solution. For people waiting for a better moment to move to B2.8, it means redoing all node trees in every .blend file when they move over. That doesn’t sound like a solution to anything to me. What will happen when Armory 0.7 arrives? And 0.8? will everyone have to redo their work for each version?
Armory 0.6 was to a large degree atypical because it was the jump from Blender 2.7 to 2.8 and the prop changes were to fascillitate the differences between the two APIs. I don’t think that there will be as much changes like that in the future.
I agree that it is very lame to have to redo all of your work. I don’t think it would be difficult to take the code that was removed for the migrations and just paste it into the Blender console or put it in a python script and run it inside of Blender to do the migrations. If somebody wanted to test something like that, we could create a migration script and document how to use it to upgrade from 0.5 to 0.6. Then when we find problems like these, we can add the logic to that script to add the extra migrations.