Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions Could be big: (Auto-Orient Y) * .5

  • Could be big: (Auto-Orient Y) * .5

    Posted by Craig Wall on July 25, 2007 at 5:48 pm

    Please forgive my expressions naivety but I’m excited about a possible solution.

    I am an code softie and I could be flat wrong about this but I think I have a bona-fide idea. And if my idea does work it could be very useful in improving an inherent AE problem….My idea was inspired by Dan’s working solution to the same problem. I can’t code my own idea yet. Maybe Dan might give it a spin.

    For him I bet it’s an easy handful of lines.

    Dan on your motionscript.com site you use a trick where you auto-orient the Y only.

    This was an insightful way for you to resolve two problems: the “cut out nature” of characters when doing sweeping camera changes and then the problem of auto-orienting on both axis, whereby the feet start dancing up off the ground.

    There is an inherent price however in selecting auto-orient, however. The final solution starts to lose dimensionality. The objects no longer gaze where they should.

    Here is a tweak that I think might be the best of both worlds–it certainly wouldn’t work for a 360 degree camera turn to be sure, but might prove quite useful for the common camera moves we often use. (see my .mov link below)

    The expression in it’s default state would functionally HALVE the value change of a Y auto-orientation.

    I think in many cases halving the angle change of auto-orient would resolve the cut-out issue but it would reduce the associated price in dimension loss.

    In some cases you might want to change the variable to
    (auto orientation y only angle change) * .3

    I can imagine this variable being attached to an expression slider…where you could tweak to taste or keyframe the value of the auto-orient bias.

    Intuitively I think this might resolve the cut out issue (in many cases) yet preserve some of the attitude of the object/character.

    For those of you lost…check out Dan’s page here:
    https://www.motionscript.com/design-guide/auto-orient-y-only.html

    Dan what do you think?

    -Craig Wall

    Take a peek at the following movie. Had I known it then, this approach might have allowed me another 20-40 degrees of functional camera latitude, while still remaining realistic.

    https://www.access2interactive.com/SoccerShow.mov

    Craig Wall replied 18 years, 9 months ago 2 Members · 9 Replies
  • 9 Replies
  • Dan Ebberts

    July 25, 2007 at 7:02 pm

    This should do it:

    factor = .5;
    delta = toWorld(anchorPoint) – thisComp.activeCamera.toWorld([0,0,0]);
    radiansToDegrees(Math.atan2(delta[0],delta[2]))*factor + value*(factor – 1)

    Adjust factor between 0 and 1 to get less or more follow.

    Dan

  • Craig Wall

    July 25, 2007 at 7:34 pm

    Wow you are scary good…and fast.

    I’m curious to see if this matches my internal hype — or not.

  • Dan Ebberts

    July 25, 2007 at 7:40 pm

    >I’m curious to see if this matches my internal hype — or not.

    Me too. 🙂

    Dan

  • Craig Wall

    July 25, 2007 at 8:04 pm

    Played around with it–that is SAAAAWEEEEEET.

    You made my day.

  • Craig Wall

    July 25, 2007 at 8:33 pm

    I find that VERY useful.

    I haven’t been giving back to this community as much as I’ve received from it.

    If I wanted to do a tute on this …like what Aharon or Andrew Kramer do…

    I know how to put it together…but is there a protocol for how it would be posted or shared with the community?

  • Craig Wall

    July 26, 2007 at 2:54 am

    Dan,

    I assume if I wanted to auto-orient the other axis that the expression would be almost identical. I am not sure though what exactly gets tweaked.

    factor = .5;
    delta = toWorld(anchorPoint) – thisComp.activeCamera.toWorld([0,0,0]);
    radiansToDegrees(Math.atan2(delta[0],delta[2]))*factor + value*(factor – 1)

    BTW…I posted this sample for you to see. I think this test does validate my opinion (though it’s still just my opinion!) I want to experiment adding .1 -3 of auto-orient bias in my other axis.

    I will ultimately post some video comparisons and we can take it to the people for a panel review!

  • Craig Wall

    July 26, 2007 at 2:55 am
  • Dan Ebberts

    July 26, 2007 at 4:18 am

    You mean the x axis? I think it would be like this:

    factor = .5;
    delta = toWorld(anchorPoint) – thisComp.activeCamera.toWorld([0,0,0]);
    radiansToDegrees(Math.atan2(-delta[1],delta[2]))*factor + value*(factor – 1)

    I’m not sure how they’ll interact if you use x and y at the same time though.

    Dan

  • Craig Wall

    July 26, 2007 at 5:24 am

    Thanks again!

    Once again…that worked well.

    It’s all about fudging 2d to look 3d… and managing compromises.

    This gives a lot more flexibility for differing objectives and different scenes. I’ll try to post some comparisons…

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy