Skip to main content
Participant
January 29, 2024
Question

How do I use less processing power?

  • January 29, 2024
  • 1 reply
  • 158 views

Ok I have unique problem here. 

 

Our church has a big stain glass window, so we adopted it into our logo. In our foyer we have TV's that display our logo. What I want to do is make a sequence(s) n after effects that allow each individual pane to flip 360* and display a secondary video image on it. This would make it so if we had video of say the childrens department playing 'behind the panes' (because the panes are just a photoshop overlay) I would like them to all flip and display footage of our sercives, or something. In a nutshell, Video 1 - Flip - Video 2.

 

The second part of this project is the direction of the flipping sequence. Delayer plugin allows me to offset actions to items by a certain amount of frames based on the location inside the composition. So I can tell it to flip from left to right of screen, or top to bottom, and random or whatever. (This is the direction in which the action sequence takes place not the actual direction of the panes - although it would be cool to have control over that as well)

 

So this took me a long time to figure out how to get the panes to offset while still allowing the video inside the panes to be lined up at the end. -  - This is how I accomplished it: I have each pane in a sequence masked to the appropriate shape - duplicated creating two identical panes. Inside those sequences I have 'Video 1' in 'Pane 1' and 'Video 2' in 'Pane 1_2'. Then I hooked a null to these by telling the rotation Y of Pane 1 to be tied to rotation Y of 'Null 1', Then Rotation Y of 'Pane 1_2' to rotation Y of 'Null 1'. Then I hooked Opacity of 'Pane 1' to the expression :

angle = transform.yRotation%360;
minAngle = 263;
maxAngle = 263;
mid = (maxAngle+minAngle)/2;
if (angle < mid)
linear(angle,minAngle,mid,100,0)
else
linear(angle,mid,maxAngle,0,100)

 

Then I hooked Opacity of 'Pane 1_2' to the expression :

angle = transform.yRotation%360;
minAngle = 263;
maxAngle = 263;
mid = (maxAngle+minAngle)/2;
if (angle < mid)
linear(angle,minAngle,mid,0,100)
else
linear(angle,mid,maxAngle,100,0)

 

This causes the opacity to change on the panes as the rotation changes. Now I can just offset the nulls and we have the movement and the videos line up. 

 

Here is the problem... I have 280+ panes. My computer is freaking out. Is there a way to accomplish the same goal and use less processing power? What I am doing will work but it is a beast.

This topic has been closed for replies.

1 reply

Mylenium
Legend
January 30, 2024

Do it once and generate mattes and a UV map pass (https://revisionfx.com/products/remap/) or spend the time to create a custom map for the Shatter effect. Otherwise the answer is probably no. Expressions are a resource hog and all your masking doesn't make things easier. Baking everything into pixel data therefore would be preferable. And ultimately at the end of the day even doing it in a 3D program and modeling the shards while animating them e.g. with MoGraph effectors in Cinema 4D could be simpler and just as versatile.

 

Mylenium