Re: What would you do with paths?
Re: What would you do with paths?
- Subject: Re: What would you do with paths?
- From: Pierre Jasmin <email@hidden>
- Date: Sat, 27 Jun 2009 14:31:54 -0700
- Organization: RE:Vision Effects
Micah Sharp wrote:
4) 3DStroke, you are welcome to copies of course.
More details so your file is complete:
Actually since we went through this in some other place before, in the
3D stroke case Peder uses the bezier tangents info directly and we
typically don't (we use provided sampling functions).
Just to reiterate a last time, a single mask is often not of much use,
what has value is many.
Embedded rotosplines is much desirable (like Shake, Fusion or Combustion
instead of like AE).
In Fusion for example, when we request to add a rotoshape thing in the
plugin, a container with Add(+) and Delete(-) shows up in the parameter
controls window listing all shapes, and providing as well like that a
way to select a particular shape (aside selecting by clicking on it in
viewer space), and the spline toolbox shows up when you are in the
interaction domain of the tool. Fusion uses the same widget to
encapsulate anything which potentially has a lot of members (eg a set of
trackers, a 3D tracker cloud point, and a variation on that to select
objects from an FBX scene). This is the most elegant implementation I
have seen for such things. I can send screenshots. I heard the latest
Toxik does something similar UI wise (improving upon Combustion embedded
rotosplines UI wise in a way) without an API for third party yet though.
In the case of Shake and Fusion we have to basically manage show-hide
(lock-unlock) parameters ourselves and as well create dynamically per
spline parameters - all this is much more laborious then in the case of
Combustion, where we simply in the Parameter Create stage list a set of
standard parameters after out_data->num_params... and index per spline
params from there using a returned spline number basically, and the
array of per spline parameters is simply created automagically by
Combustion when a user adds a shape (but only in the timeline view - not
in the effects controls). To be complete in Combustion phase 2 of such
was never completed - an AE completely general command is sent after a
spline is created by a user, this allowed us to add a different color
for each spline. The idea before engineers disappeared to some other
projects, over time was to use this as a channel to create automatically
a second rotospline per shape to streamline applications such as warping
which benefits from explicit pairing maintained by tool rather then some
ad-hoc order of splines or some similar to express (from and to...).
You can also look at PV Feather here (where we create an offset shape
for feathering) to see an intrinsic limit of AE -- i.e. how we would
implement this in a manner that makes user sense for more then one shape...
So overall since Combustion uses the AE api, it's basically there is the
AE path suite used as is and some AEGP is replaced by a Combustion suite
since the AEGP is just a mapping of AE UI which would not make sense to
replicate in another app. The best of all worlds would be to make the
implementation as easy as in Combustion for a developer and the UI as
complete as in Fusion.
Also within an embedded rotospline context, you as well open the door to
RGBA shapes not just Alpha shapes.
Another implementation detail to consider:
In practice often this means that if you copy and paste an actual
rotoshape to an embedded rotospline you possibly loose some shape render
info.
For the purpose of providing an example: "feathering",
where feathering is the equivalent of a per spline param - conceptually
imagine your own rotospline being derived from a basic rotospline class
without rendering attributes and a parameter like "feather" being your
own per spline param where if you copy from an embedded rotospline to a
real rotospline you set feather to some default, e.g. 0 and in the
inverse case you loose it - although I can imagine a way around that
using additional function pointers callbacks in a second pass
implementation.
Also here is only discussed within a processing plugin framework, RG,
Silhouette and Imagineer to name a few, do have rotosplines import tools
for other apps. The requirements for that might be different.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Pro-apps-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden