Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NLA is finicky if you don't have a current writable action #3

Open
shakesoda opened this issue Dec 6, 2018 · 6 comments
Open

NLA is finicky if you don't have a current writable action #3

shakesoda opened this issue Dec 6, 2018 · 6 comments
Assignees

Comments

@shakesoda
Copy link
Member

shakesoda commented Dec 6, 2018

the entire export params nonsense needs to be gutted and switched with NLA, as it is actually designed for animating. unsure how to handle looping flag (magic names?)

also, when working on anything but the current (editing) NLA strip, export errors out from messing with read only params.

@shakesoda shakesoda self-assigned this Dec 6, 2018
@shakesoda
Copy link
Member Author

update: export params nonsense is gone as of rev 3b8b2f5. use NLA strips and set the repeat option above 1 or use cyclic time option for enable looping. respects scene framerates.

it's still a bit finicky if your top action isn't editable, need to figure that out.

@shakesoda shakesoda changed the title export doesn't work properly with NLA strips NLA is finicky if you don't have a current writable action Dec 26, 2018
@scurest
Copy link
Contributor

scurest commented Feb 20, 2019

If I have a bunch of actions I want to export, what do you expect the NLA to look like for that?

I thought I'd just stuff them one after the other in a single track, but this doesn't work because currently the code will take the first (unmuted) strip from each (unmuted) track. But as far as avoiding evaluating the NLA animation goes, it's strips that are above/below one another in different tracks that accumulate into the result, while its strips that are in the same track that don't affect one another right?

@shakesoda
Copy link
Member Author

@scurest they don't accumulate by default when the strips are set to replace, and this just tries to evaluate the actions and not the full NLA mix. this definitely isn't really the right behavior for NLA but it's been a lot more reasonable to work with for me (push an action down, rename it, hit tab in NLA when i need to edit it, reset the action extents when needed...)

it ends up looking like this in my files
image

(this bug applies in the state my screenshot is in - when your current action is green/editing, the export will fail)

@scurest
Copy link
Contributor

scurest commented Feb 21, 2019

I think that behaviour is fine! I really only care about NLA as a container for actions right now, haha. But is there a reason to only take the first strip of a track? I'm basically trying to decide how to import multiple animations into Blender and I'm doing this so you can see them all by just scrubbing the timeline.

nla

If the break after animspecs.append(spec) is removed, exm_export will pick these up fine. What do you think about removing it?

About that error: easy fix is to set animation_data.use_tweak_mode = False before reading action data :) But googling suggests there could be other reasons that action is read-only.

@shakesoda
Copy link
Member Author

there's no profound reason it ignores everything after the first strip, it's just the way that made sense with my existing workflow.

changing this sounds good to me, can you ref this in another issue or PR (so I don't forget)?

@scurest
Copy link
Contributor

scurest commented Feb 21, 2019

Cool, thank you. I opened #7.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants