Creative COW SIGN IN :: SPONSORS :: ADVERTISING :: ABOUT US :: CONTACT US
Creative COW's LinkedIn GroupCreative COW's Facebook PageCreative COW on TwitterCreative COW's Google+ PageCreative COW on YouTube
ADOBE AFTER EFFECTS:HomeForumBasicsExpressionsTutorialsPodcastsAE TechniquesTrainingCreative Cloud DebateFAQ

23,976p rolling credits

COW Forums : Adobe After Effects

<< PREVIOUS   •   FAQ   •   VIEW ALL   •   PRINT   •   NEXT >>
Share on Facebook
Samuel Dragon23,976p rolling credits
by on Feb 13, 2009 at 4:22:35 pm

I know, the question pops-up every few weeks/months... But I have spent a few days browsing the Cowrums and the rest of the web only to find empty leads.

I have read in a specific post Dave LaRonde stating he had a solution which he unfortunatly didn't have the time to post. In the same post, he did hint that Kevin Camp had found a much simpler solution than the arithmetic one he himself had.

So far, I've done many tests combining a bunch of different softwares (AE, FCP, Illustrator, photoshop, Flash, Avid) to no avail. I tried using animated vectors or even exporting to QT a roll made in Flash...

Hopefully, someone with a solution will read this and either share or hint towards a solution. I love testing stuff, so if you can't share but still can set me on the right tracks, I'd be extatic still!

Thanks for any help you can provide,

Samuel Dragon


Return to posts index
Reply   Like  


cowcowcowcowcow
Kevin CampRe: 23,976p rolling credits
by on Feb 13, 2009 at 7:11:27 pm

the main thing for creating a credit roll is to limit the vertical movement to whole pixels to avoid inconsistent aliasing of the text edges which can result in 'waviness' as the text scrolls up the screen.

if you have a very simple roll... it starts off screen bottom and marches up, to off screen top at the end, then a simple expression like this in the position property of the credit layer should work well:

n = 2;
y = n - timeToFrames(time);
value + [0,y]


just position the credits to of screen bottom and they will march up the screen until the end of the comp.
the value of 'n' sets the speed of the roll in pixels per frame, since you are rendering progressive, you can use odd or even values. i have found that that value should be less than 1% of the comp height (so, sd would be less than 5; 720p: less than 7; 1080: less than 10, etc) or the scroll will start to look a little strobe-like.

if your roll is more complicated, like it needs to hold at the beginning and/or end, then then i'll post the preset i made a while back that uses dave's calculation method and a bunch of if/else statements which started to become a bit of a monster as i kept adding things upon request. (it used to be downloadable as a preset, but i my friend's server is down right now).

Kevin Camp
Senior Designer
KCPQ, KMYQ & KRCW


Return to posts index
Reply   Like  
+1

Samuel DragonRe: 23,976p rolling credits
by on Feb 13, 2009 at 10:43:22 pm

Wow thanks!

I'll have to try this over the week-end. Undoubtedly, someone will ask me for more complicated rolls at one point or another. So, although I feel greedy of asking for your preset after the help you've provided, I'll take advantage of your generosity one more time.

Thanks alot for sharing your time and knowledge,

Samuel Dragon




Return to posts index
Reply   Like  



cowcowcowcowcow
Kevin CampRe: 23,976p rolling credits
by on Feb 15, 2009 at 5:29:02 pm

you asked for it....

there is one thing you need to do before pasting this expression in. add a check box expression control effect and name it "Field Friendly Movement", the expression is looking for that control (the preset added that effect automatically, but i can't get that posted right now). then paste this expression into the position property:

// FlickerFree Credit Roll
//
// This expression will generate anti-alias friendly or field friendly Y movement of a list of credits (layer).
// When first applied to a credit layer, the layer will move from off-screen bottom to off-screen top of
// the comp based on the height (length) of the credit layer and duration of the comp.
// If different positions or timing is required for the start or end of the credit roll, simply add a keyframe(s)
// with the postion(s) where you need the credit roll to start and/or end, and the move will be recalculated.
// The list length (height), comp duration and any keyframes can be modified at any point and the move
// will be recalculated.
// If the credit roll will be viewed progressively, uncheck the "Field Friendly Movement" Checkbox control.

ySize = height * (scale[1] / 100);
n = numKeys;
if (n > 0){
if (n == 1){ // If only one key, determine if it is start or end key
if (key(1).time < thisComp.duration / 2){ // If key is in the first half of comp, assume start key
startY = key(1).value[1]; // Start postion based on Y position from keyframe
startT = key(1).time; // Start time based on first keyframe
endY = (ySize / 2) * -1; // End postion based on credit length (height)
endT = thisComp.duration;
}else{ // If key is in last half of comp, assume end key
startY = thisComp.height + (ySize / 2); // Start position based on layer Y height;
startT = 0;
endY = key(1).value[1]; // End postion based on Y position from keyframe
endT = key(1).time; // End time based on keyframe
}
}else{
startY = key(1).value[1]; // Start postion based on Y position from first key
startT = key(1).time; // Start time based on first key
endY = key(n).value[1]; // End postion based on Y position from last key
endT = key(n).time; // End time based on last key
}
}else{
startY = thisComp.height + (ySize / 2); // Start position based on layer Y height;
startT = 0;
endY = (ySize / 2) * -1; // End postion based on credit length (height)
endT = thisComp.duration;
}

frameRate = 1 / thisComp.frameDuration;
duration = frameRate * (endT - startT); // Duration (frames) between keyframes
displace = startY - endY;

frameNum = (frameRate * (time - startT));
if (frameNum < 0){ // If uing keyframes, there is no movement until the first key
frameNum = 0;
}else{
frameNum;
}

// Allow Y movement to be calulated as field friendly (multiple of 2) or just anti-alias friendly

if (effect("Field Friendly Movement")("Checkbox") == true){
Yinc = (Math.round(((displace / duration) / 2) + 0.5)) * 2;
}else{
Yinc = Math.round((displace / duration) + 0.5);
}

yPos = startY - (Yinc * frameNum);

if (yPos < endY){ // If using keyframes, take final postion from end key
y = endY;
}else{
y = yPos;
}

[value[0],y]


once you pasted the expression, it will automatically reposition the credit layer and create the upward movement.

the way this expression works is a little different from how many expect it to work... it will fit the credit roll into the duration of the comp. so if the movement is too fast, you'll need to lengthen the comp (you'll need to check the position values to see how many pixel it moves per frame). also, you can set a position keyframe that will tell it when and where to stop and you can set a key frame for where you want the roll to stop, but the timing of when it will stop is based on how it calculates whole pixel movement.

if the expression works you, you can select the position parameter and the expression control and save it as a preset to easily apply it later....

Kevin Camp
Senior Designer
KCPQ, KMYQ & KRCW


Return to posts index
Reply   Like  
+1

Samuel DragonRe: 23,976p rolling credits
by on Feb 18, 2009 at 6:41:51 pm

Thanks alot Kevin, that was definatly what I'd been looking for. Now to try and cheat my way to speeding the roll a little without having it stutter is another matter hehe.

You've been a great help, also thank you very much I didn't know about After-Effects Expressions, (I know, I'm pretty green) guess it gave me a new passion and revived will to learn Javascript now :)

Thanks again for the tremendous help!

Samuel Dragon
Freelancer


Return to posts index
Reply   Like  

Hugh John MurrayRe: 23,976p rolling credits
by on May 17, 2009 at 2:51:03 am

Hello Mr. Camp -

Thank you for the script! Indeed, this works beautifully as a rendered QT, 23.976, animation, but when I bring it into FCP (sony xdcam ex 1080p24 vbr) and render it, it's jump-arama. Maybe you're not the guy to ask as perhaps it's an issue from animation to xdcam ex...but if you have any suggestions, would love to hear them.

Many thanks,


Hugh John


Return to posts index
Reply   Like  

<< PREVIOUS   •   VIEW ALL   •   PRINT   •   NEXT >>
Share on Facebook


FORUMSTUTORIALSMAGAZINESTOCKYARDVIDEOSPODCASTSEVENTSSERVICESNEWSLETTERNEWSBLOGS

Creative COW LinkedIn Group Creative COW Facebook Page Creative COW on Twitter
© 2013 CreativeCOW.net All rights are reserved. - Privacy Policy

[Top]