Kevin Camp
Forum Replies Created
-
what you’d want to look up in photoshop is how to create an action and then how to do a batch operation using that action. it’s pretty simple, and i can give you the basics.
to create an action in photoshop you’ll just click the ‘new action’ button (looks like the new layer button in the layers palette) at the bottom of the actions palette — if you don’t see the actions palette, choose windows>actions.
once you create the new action click the record button (at the bottom of the actions palette) and start applying the filters that you need and it will record what you do. when you’re done, click the stop button (next to the record button). open a new image and run the action to make sure that it does what you want.
once you have your action, you can select file>automate>batch. in the window that opens you’ll select your action (choose the action set first, then the action). select the folder with the image sequence and then select the destination and click ok. the batch process will the start going through the images in the folder, applying the action and saving.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
[Mike Flinn] “I was aiming for the random position changes by character while the text is already on screen.”
i would do something like that with a wiggle expression on the text layer’s position.
select the position property and choose animation>add expression… and try an expressionl ike this:
freq = 15; // value in times per second
amp = 5; // value in pixels
wiggle(freq, amp)edit the freq and amp values to get the ‘shake’ that you are looking for.
you can use a similar expression for the text color… using a color correction effect like exposure, you could apply the expression to the exposure property to create a flickering/blinking effect.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
take a look at the text animation presets. in my old version of ae, in the presets>text>animate in presets there is one called ‘drop in by character’
add that to a text layer and the text should drop in character by character.
twirl down the text properties to animator1>range selector1>advanced and set random order to on.
then duplicate the animator 1 (it should create animator 2), twirl down the text properties to get to the ‘start’ property (it has the keyframes). select both keyframes and choose aniamtion>keyframe assistant>time-reverse keyframes. goto the last keyframe and adjsut the position property for animator 2 (not the layer), so the text falls off the screen, then move the keyframes down the timeline to where the text should transition off.
now the fall into place randomly, character by character and fall off in a similiar way.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
yep…
i’m not familiar with the tutorial that you mentioned, but if it is using an effect like timewarp, thre may be a setting for scene change detection or cut detection or similar that may help you out here.
you may also be able to split the clip at each cut within the main comp and continue the process. you can split a clip by positioning the cti at the point of the cut and then hit command-shift-d.
worst-case you’d need to split the file into multiple comps, do your process and then reassemble.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
to create the basic outline is pretty simple, just add a stroke layer style to the text (layer>layer styles>stroke).
you’ll find a a new layer property called layer styles for your layer. within that are the properties for stroke (color, size, etc).
to get the emboss effect on that you may be able to get close by adding the bevel and emboss layer style, setting the style to outer or stroke emboss and fiddling with the size and altitude values.
if you wanted it to be more like your example, it would get more complicated… involving having the text from the outline layer and probably having to pre-compose those elements.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
the first instance of write-on would be set to ‘on transparent’, the second would be set to ‘on original’ (or however they phrased the default value)… that may seem a little counter-intuitive, but after the first effect, that becomes the new ‘original’.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
The most straight forward way would be to manually key frame the overshoot… In the scale property set a keyframe value of zero’, move down about ten frames and set one for 110% or so, then move down a few more frames and set a value of 100%. You can also set the last two key frames to easy-ease (animation>key frame assistant>easy-ease).
another way is to use expressions to do the overshoot… First you’d key frame the scale from 0% to 100% (or whatever values you need) over several frames. Then enable expressions for scale (select property, then choose animation>add expression…) and then add the expression. You’ll find a good one here:
https://motionscript.com/articles/bounce-and-overshoot.html#kf-overshoot
If that seems too daunting, there is a useful script called ‘ease and wizz’ you can use that makes the expression work more like a plugin, it also does a variety of useful physics-like interpolations. You can find info on that here:
https://ianhaigh.com/easeandwizz/
As for the text on a bubble/circle the most straight forward way is to make a new shape layer using the shape tool that you need (ie, circle, rectangle, rounded rectangle, etc), then parent that to your text layer so it ‘sticks’ to it and takes on the text layer’s animations. Note, to create a shape layer, make sure no layers are selected when you start making the shape, otherwise you will make a mask on the selected layer.
There are several options for shape layers including fill color and stroke that you can set as needed.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
In the effect’s settings, at the bottom is an option for ‘paint style’. Set that to ‘on transparent’.
Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
i’m not a script guy, but you may be able to use expressions for this.
the script looks like it writes a keyframe each time it changes the text. using expressions you can detect the keyframes on the source text property to drive change in another property.
this example (pasted in the opacity property of the text layer) will create a fade in and out at each source text keyframe:
fadeT = .5; // value in seconds
n = text.sourceText.nearestKey(time);
t = Math.abs(time-n.time);
if (t > fadeT) 100;
else linear(t, 0, fadeT, 0, 100)Kevin Camp
Art Director
KCPQ, KZJO & KRCW -
not really…
if you happen to use a fixed width font (like courier), you could use an expression that counted the number of characters and multiplied it by the width of a single character (you’d need to determine the width of a single character). that expression would look something like this:
target = thisComp.layer("MyText"); // this would be your text layer
w = 25; // set the width for a single character in pixelsoffset = target.text.sourceText.length * w
value + [offset,0]move the null to the end a the text and then apply that expression (changing the target layer to be your text layer and the setting w to the width of a single character) and it should follow the end of the text string if you use a fixed width font.
if you are not using a fixed width font, then it would difficult.
what is it that you are ultimately trying to achieve?
Kevin Camp
Art Director
KCPQ, KZJO & KRCW