Thanks for the response. I will use the fixed version until then -- and compare myself.
I finally got some time to look into this bug.
First I tracked two things in my shot. Then I made a solid layer and duplicated it, and did not touch the name of it. So the name of the solid in the project window was also the name of the same solid, used twice, in my comp. I set TrackerViz to "Layers" and "Expressions", selected the two solid layers with the same name, and averaged them, and it worked fine. So then I left it on "Expressions", switched it to "Trackers", opened up the motion tracker drop down on my main footage layer (where I tracked the fooatage twice) in the timeline, selected both Tracker 1 and Tracker 2, and averaged them together, and again it worked fine.
Basically, I tried averaging both layers and trackers using expressions, and I didn't change the name of anything from what AE automatically named things, and everything worked fine.
Can you please explain what you found a little bit more? Or maybe even post a project file, if there's a way you can save it that can let me see the problem happening. If this is a definite bug, I'd love to nail it down and get it fixed ASAP. And thanks for posting!
I can't seem to replicate it when working with a new project for some reason.
i just upgraded to cs4 so maybe something got automatically fixed in the process.
I'll try to open the project i was working when i discovered the thing.
Good job with the autorenaming stuff in 2.1, the older behaviour was rather annoying!
I haven't upgraded yet, so I'll be on the lookout for it (as I always am with bugs in general for TrackerViz).
In the future, if you do find a little bug like that in TrackerViz, try closing it and reopening it. And if its still there, save your project, close AE, reopen in, and reopen TrackerViz. Then, if its still there, it's definitely a bug. Sometimes I think other processes might mess with TrackerViz's operation while it's open.
After Effects warning: Bad argument: couldn't find layer named 'Something Super.seq' Expression disabled.
Error occurred at line 1.
A workaround is to give the layer another name. But I thought I'd mention it.
Still a great tool. It's hard to work without it nowdays. How did I do it?
If this could be changed to:[code]L = comp("compName").layer("layerName");[/code]we make manual editing more intuitive in cases where the compositor precomposes the source layer and thus breaks the expression layer.
hype wrote: So the only difference that scripting change makes is that it doesn't break when you precompose? That sounds like a great change to me if that's the case.
I have to get back on that.. they both have downsides, depending on what you want to do with the layers.
comp("compName") breaks scripts when you include the source track layers with the precomposition, because obviously (but I failed to notice until something broke) it won't reference the correct composition anymore when referencing layers are precomposed.
So, honestly, I don't know which is better.
My workflow is often having an expression-based final matchmove track layer outputted by trackerviz, duplicate it, precompose it with stuff I want to do and be happy.
But if that is uncommon and people are more prone to precompose everything in order to create a parent-comp for some reason, the comp-referencing-naming-concept might look more logical the way it used to be.
Anyway, since I am the only one mentioning this, maybe no one uses either way of precomping those layers in combination with expressions.
I think the workflow most people have adopted if they're going to use the same tracked solid in multiple precomps is to just use "Keyframes" instead of "Expression" and then just copy/paste the solid layer into whatever precomps need it.
Yeah, layers should have different names anyway when using TrackerViz for it to work properly, but it's interesting that it didn't offer to automatically rename it for you, since it should be doing that. Thanks for posting it.
So probably not an issue for you, but now that I have precomped a lot of previously tracked stuff, my opinion is that a script break when you move the source layer away makes more sense than a script break when you move the source WITH the trackers away.
Therefore I would change comp(name) back to thisComp in the next version. I'm sorry that I totally missed this problem when I previously suggested the change.
Also, "save settings" doesn't save my settings in the 2.x version?
Finally, I'd like the option in settings to enter a name (like for the tracker solid) that is used for the layer name, which gets appended the same number as the solid.
This way, when I replace certain trackers' solid with another solid (ie to change color), the expressions which are based on the tracker won't break.
Adobe Live Help wrote: If a script has been written to provide a user interface in a dockable panel, the script should be put in the ScriptUI folder. ScriptUI panels work much the same as the default panels in the After Effects user interface.
But there is no ScriptUI folder. You have to make it yourself. Where? In the scriptsfolder. And how do you spell "ScriptUI"? Wrong, it is "ScriptUI Panels"
And last time I edited it myself, a much better and greater version came out a week later.
"When there's an unrelated layer in the comp with a name of more than 31 characters...."
""save settings" doesn't save my settings in the 2.x version"
These bugs will be fixed in the next version.
"I'd like the option in settings to enter a name..."
Could you elaborate on this, or provide a simple screenshot to illustrate your purpose.
"But there is no ScriptUI folder. You have to make it yourself. Where? In the scriptsfolder..."
In CS4 the "ScriptUI Panels" folder exists by default (or perhaps I've created it myself and I don't remember ). In CS3 you have to create it yourself (in the Scripts folder).