Version 3.0.0

Pseudo Effect Maker

Version 3.0.0

The simplest way to create custom effect controls

What's new in Pseudo Effect Maker 3.0.0?

Compatibility

Pseudo Effect Maker 3.0.0 is compatible with After Effects CC 2014 and newer. The pseudo effects generated with the Pseudo Effect Maker are compatible with older versions of After Effects. _After Effects CS6 and below* will show "Missing:" next to pseudo effect names if the PresetEffects.xml file is not updated.

Backwards Compatibility

Pseudo Effect Maker 3.0.0 is compatible with all previous versions of the Pseudo Effect Maker. This means that any .ffx files generated with older versions can still be opened with this version. (The .ffx files must have come directly from the Pseudo Effect Maker, not saved from After Effects)

Installing

Pseudo Effect Maker is an extension, not a script or a plugin. It must be installed using an installer. For the Pseudo Effect Maker, the recommended installer is ZXP Installer from aescripts.com which is available for free.

This installer will take care of everything for you. All you need to do is open the .zxp file in the installer and it will become available in all compatible versions of After Effects.

Using the installer is highly recommended, however, if you must install manually, there are instructions here.

Accessing the Pseudo Effect Maker

To open the Pseudo Effect Maker, open a compatible version of After Effects, then go to Window > Extensions > Pseudo Effect Maker.

Remember: It is an extension not a script, it does not show up at the bottom of the Window menu.

Licensing

The first time you open the Pseudo Effect Maker, you will be prompted to register. If you have a license key, you can enter it to unlock the full version. Otherwise you can continue in trial mode.

Trial Mode

Trial mode allows you to test all of the features of the Pseudo Effect Maker, however you will be limited to only adding 3 controls. The controls will also contain a "watermark".

What is a Pseudo Effect?

The Pseudo Effect Maker makes it simple to create custom effect controls, also known as 'pseudo effects'. These controls can then be used to drive expressions and layers within your After Effects project and be saved as presets so that others can use the tools you create.

It is important to remember that Pseudo Effects are not real effects. They do not have any control over a composition without being linked to another property through expressions. You can use your pseudo effect to drive real effects, however you cannot hide the real effects, they will/must always be visible along with your custom control.

Can other people use my pseudo effect without any issues?

This is a common question, and yes, this is the whole point of the Pseudo Effect Maker. You have options for sharing it. For one, you can include your custom control within and After Effects project file. Anyone else can open that project file and use your custom control with no issues. Another option is to save a preset as a .ffx file by dragging your control along with any supporting expressions, effects and layers into the Effects & Presets panel. That .ffx file can be shared and opened by anyone without issue, assuming they are using the same or a newer version of After Effects

If you need to target After Effects CS6 or older, there can be issues when using pseudo effects. If the pseudo effect is not included in the user's PresetEffects.xml file, a 'Missing' warning will appear when the user loads the preset. Everything will still work normally, but the warning can be annoying. The warning can be removed by adding the XML to the PresetEffects.xml file, so if you require support for AE CS6 or earlier, you will have to include the XML along with your control. Some features of pseudo effects created by the Pseudo Effect Maker are not supported by older versions and may not work properly.

Workflow

Getting started with the Pseudo Effect Maker is simple. When first opened, you will be presented with a 2-sided panel. On the left is the "Effect Panel". This panel is meant to provide a visual representation of what your pseudo effect will look like once applied to a layer in After Effects.

This view is only an approximation. Some visual changes have been made to allow controls to be easier to work with within the editor. There may be slight differences once the effect has been applied.

On the right side is the "Control Panel". This is where you can choose what to do. The first section is "Actions". This has functionality like "Undo", "Redo", "Apply", etc. (These are gone over in detail later). The actions that appear in the control panel are just some of what is available. You can customize the control panel to show the actions that you use most often.

Below "Actions" is "Controls". The controls are what you add to your pseudo effect. The controls available to you are:

You can add up to 254 controls in your effect. A counter is displayed just above the "Controls" panel on the right so you can see how many controls have been added so far.

Group and Label controls count as more than 1 control. When you add them, you will notice that the counter increases by 2. If displaying control indices, you will also see an index is skipped at the end of the group or after a label. This is because of the way After Effects handles these controls, not a limitation of the Pseudo Effect Maker specifically.

Adding Controls

To add controls, simply click the button of the control you would like to add. It will appear at the bottom of the list of controls. If you have a group selected, it will appear at the bottom of that group. If you want to place your new control somewhere in the middle, you can drag the buttons from the "Control" section directly into the "Effect Panel" exactly where you want it.

Each time you add a control, you will see its properties displayed at the bottom of the "Control Panel". You can also display the properties for any control by selecting it in the "Effect Panel". These properties can be modified however you like. There are some limitations, but you will be shown warnings as needed if you use incompatible values. You can also edit some values directly in the "Effect Panel".

Getting your effect into After Effects

Once your controls are ready to go, you can apply your control to an After Effects layer. Make sure the layer you want is selected and click the "Apply" button in the "Actions" section. Your effect controls will now be visible in the After Effects Effect Panel. You can then continue to make updates you your control. If you need to apply changes, you can either "Apply" again or, new in Pseudo Effect Maker 3, "Replace" your control. "Replace" will maintain any keyframes or expressions when a new version of the control is added.

Now what?

Once your pseudo effect is in After Effects, you can start adding your expressions and linking your control to other effects or areas of your project. If you want to create a preset, once all your effects and expressions are set up, you can select the whole group of effects and drag them into the Effects and Presets panel. This will generate a new preset that can be used by anyone, your pseudo effect control included!

.ffx files saved directly from the Pseudo Effect Maker are compatible with many versions of After Effects, however .ffx presets saved from After Effects are not backwards compatible. Make sure you are creating your preset in the oldest version of After Effects you would like to support.

Working in older versions of After Effects

This can be a little bit of a hassle, but it can be done. If you want to make a control for older versions of After Effects, you can do it. Open the Pseudo Effect Maker in a newer version of After Effects and create your control. When you are done, "Save" the control, rather than "Apply". This will give you a .ffx file that you can open in older version of After Effects. You can then add your control preset, add any effects and expressions you need, then recreate your preset by dragging everything back into the Effects and Presets panel.

The Interface

The Pseudo Effect Maker Interface

Resizing Panels

To resize the panels, move your mouse to the left edge of the "Control Panel". You mouse cursor will change. You can then click and drag to adjust the size ratio between the panels.

Effect Panel

This panel gives you an approximate visual representation of what your final effect will look like inside of After Effects. You can also make many changes to your effect from within this panel like setting default values and reordering controls. Because this panel is meant to mimic the After Effects effect panel, there are some properties that aren't visible in this panel. Additional options are available in the "Control Panel" after selecting a control.

The Title Bar

The title bar

The effect title bar contains the effect name and the reset button. The open/close toggle and "FX" icon are not functional, they are only there to match the look of the After Effects controls.

Selecting anywhere in this bar will open the "Pseudo Effect Options" in the "Control Panel" if it is not already visible. You can also change the name of your effect directly in the "Effect Panel" by clicking on the name.

Reset

The reset button allows you to clear all of the controls out of the effect so you can start from scratch. The effect's name and matchname are also reset. This is undo-able.

Selecting Controls

Selecting a control is simple. Just click on the one you want to edit. A blue line will show on the right edge of the selected control so that you can see that it is active. Selecting a control in the "Effect Panel" will bring up its properties under "Selected Control Options" in the control panel, allowing you to make edits that aren't available directly in the "Effect Panel".

Moving Controls

Within the "Effect Panel" you can move controls by simply dragging and dropping them. When you hover your mouse over any control, you will see a handle appear on the left side. To move a control, simple click on that handle and drag the control to where you would like it.

Effect panel control handle

If your control is within a group, you will see the handle for that control as well as all of the groups that control is a child of.

Selecting Multiple Controls

To select multiple controls, hold down Shift and click on a second control. This will highlight all controls between the active control and the selected control. Use the Ctrl key (Cmd on Mac) to add individual controls to the selection. Selected controls will be highlighted in blue.

Multiselect example

If a group is selected when multiple controls are selected, it will take precedence over any controls within it. If you use the delete or duplicate options below, it will duplicate or delete the group as a whole.

Drag and Drop Selection

Once you have a selection made, click and drag on the handle for any of the selected controls. When you drop, all of the controls will move to the selected drop location, maintaining their order.

Delete Selection

When multiple controls are selected, you can click the "Delete" button in the "Control Panel" in the "Multi-Select" section to delete all of the controls in the selection.

Duplicate Selection

When multiple controls are selected, you can click the "Duplicate" button in the "Control Panel" in the "Multi-Select" section to duplicate all of the controls in the selection.

Control Panel

The control panel contains all of the options and actions that allow you to work with your pseudo effect. This panel will always show the "Actions" and "Controls" sections, but the rest will switch depending on your preferences and current selection.

Actions

The Pseudo Effect Maker actions give a wide range of functionality that, in general, affects the effect as a whole.

Actions section

Apply

Apply will take your effect and add it to the selected layer within After Effects. Applying multiple times will add multiple copies to the selected layer.

When you use "Apply", the matchname of your effect is not used. Once a matchname is used, it can only ever refer to that exact effect. In order to allow changes to be made and re-applying to be enabled, a randomized matchname is created each time you click "Apply". If you want to use the specified matchname, "Save" your effect and load it as a preset.

Replace

Replace will allow you to "update" the control in After Effects, rather than adding a new version. This is helpful when adding expressions or keyframes to your control, because it allows you to add or remove controls from your effect without having to manually reconnect everything. It also makes it simpler to work with invisible controls because you can work with all controls visible, then set the control to invisible and run "Replace".

The replacement dialog (optional) is gone over later in this doc

Save

Saving from within the Pseudo Effect Maker generates a .ffx file that can be opened in many different versions of After Effects, down to CS6 (possibly earlier, but that is unsupported).

It is highly recommended that you always save a copy of your pseudo effect directly from the Pseudo Effect Maker. .ffx files that are created by the Pseudo Effect Maker are saved with additional data that allows them to be re-opened. If you create a preset from After Effects, that file will not be able to open within the Pseudo Effect Maker. The Pseudo Effect Maker also can not read a control that has been applied to a layer. The only way to continue work on an old effect is to have a saved copy

Earlier versions will show a "Missing:" label next to the effect name, but otherwise the control will work exactly the same. The "Missing:" label can be removed by adding the control to the PresetEffects.xml file, if needed.

Open

The Open action allows you to open .ffx files that were saved from the Pseudo Effect Maker directly (as described in the "Save" section above). Opening a file will replace all controls that are currently in the "Effect Panel" and will update the name and matchname to the values from the file. (Opening is undo-able in case you accidentally overwrite work in progress)

Combine

Combine is similar to "Open", except that rather than replacing everything in the "Effect Panel", it will append it on to the bottom.

Read Controls

Read Controls will parse any "Expression Controls" on your selected layer and convert them into a pseudo effect within the Pseudo Effect Maker. This allows you to work directly in After Effects and then quickly convert your separated controls into a single effect. Special naming conventions allow you to create groups for your controls as well.

Not all properties are readable or editable within After Effects. For example, a slider "Valid Maximum" and "Valid Minimum" can not be set. These must be edited within the Pseudo Effect Maker. There are also some properties that are not able to be read by the Pseudo Effect Maker. Dropdown Menus (which are available in newer versions of After Effects) are available to you, however the Pseudo Effect Maker can only identify the number of options within the control, but not the name of those options. They would need to be re-edited within the Pseudo Effect Maker.

Copy XML

This function will copy your entire control as XML to the clipboard. It can then be pasted into a standalone file as an alternative "saving" method, or directly into the PresetEffects.xml file if you prefer to work with your controls that way. This XML can also be pasted back into the Pseudo Effect Maker to start from where you left off. (described in the next section)

Paste Controls

Paste Controls allows you to paste your entire effect into the Pseudo Effect Maker from either XML or JSON. The available properties are listed at the end of this document.

Undo / Redo

Undo and Redo are pretty self-explanatory. They allow you to undo or redo any changes made to your control. Most changes made within the Pseudo Effect Maker are undo-able if they affect the pseudo effect. Preference changes are not undo-able.

Preferences

The Preferences action will open the "Preferences Panel", described below.

Controls

There are 10 different controls available to you. They can be used in any order. You are limited to 254 controls.

Controls section

Remember that some "single" controls (groups and labels) actually count as 2.

This section will go through each control and the options that are available.

Common Options

Common options section

Control Name

Every control has a name. This is the visible name of your control. The maximum control name is 30 characters

Allow Keyframes

If the selected control can have keyframes (groups, labels and layer controls cannot) the "Allow Keyframes" checkbox will be visible. If checked, the stopwatch next to that effect will be visible in After Effects, allowing the user to set keyframes. If the "Allow Keyframes" box is un-checked. The stopwatch will not be visible and keyframing will not be allowed.

Force 'Hold' Keyframes

A hold keyframe shows up as a square within the After Effects timeline. Rather than smooth animations, these keys will hold their value until the next keyframe is hit, at which point they will "jump" to the new value, rather than moving there gradually. Checking this option will force any keyframes added to this control to be "hold" keyframes.

This is common for controls like the "Popup" control, but can be applied to any control that allows keyframes.

The "Checkbox" control must have hold keyframes, so this option is not available for checkboxes.

Invisible

Some controls can be marked as "Invisible". This means that they will still be available to expressions and count as a control in the total count, but they will not be visible to the user. If you mark a control as invisible, it can not have expressions added to it. It can only act as an unchangeable value.

The most useful option for invisible control is to place "visible" controls into a group and then mark the group as invisible. This allows expressions to be added to the controls within the groups, even though the controls themselves cannot be seen.

Angle

Total

The total is the combined Rotations and Degrees values. Each rotation is 360 degrees, so the total is calculated as Rotations x 360 + Degrees. The "total" is not shown to the user in the effect panel, but it is the actual value of the control.

Rotations

Each full rotation adds 360 degrees to the total angle. This value is displayed to the user

Degrees

Additional degrees added to the full rotations. This value is displayed to the user and sets the angle of the rotation gizmo that the user sees

Checkbox

Checked by default

Sets whether the default value of the checkbox is checked or unchecked.

Label

This is different from the control name. This text will display just to the right of the checkbox control

Color

Selected Color

This is a square color swatch that shows the currently selected color. Clicking on this swatch will bring up the color picker. (In CC 2014, the system color picker is used)

Hex Value

This allows you to set a hexadecimal color value directly in the "Control Panel", rather than using the color picker. (Hex values can only include the numbers 0-9 and the letters A-F)

Group

Groups do not have any additional options. They help you to organize complex controls by putting related controls in one place and giving the user the ability to hide/show them all together. Groups can be placed within groups, however it is not recommended to have too many nested groups as the interface will eventually become difficult to navigate

Groups count as 2 controls, one when the group starts and one at the end of the group. If you have control indices visible, you will notice a skipped index at the end of each group. This is correct. That is how After Effects handles groups and is not a decision made by the Pseudo Effect Maker.

Label

Labels, like groups, count as 2 controls. In fact, under-the-hood, a label control is actually just an empty group. Labels allow you to add details like copyright info or other text, but have no edit-ability once in After Effects or any use other than to display text. (In previous versions of the Pseudo Effect Maker, this control was called Text, however that gave the impression that this control was like a textbox, so it was changed for clarity.)

Dimmed text

If this option is unchecked, the text is displayed at the same brightness/color as the other options. If the option is turned on, the text will be set to a dim / disabled loo

Layer

Default Selection

Sets the default selection of the drop-down to either 'none' or the layer to which the pseudo effect is applied.

In the Pseudo Effects Maker, these are the only two options, however in After Effects, the user can additionally select any layer in the current composition

Point / Point 3D

Percent X/Y/Z

Percentage values are what the point controls actually use to set the user-visible Point values. The final values are completely dependent on the dimensions of the layer that the effect is being applied. to. An X percentage of 50% will be 500 for a layer that is 1000px wide, and 250 for a layer that is 500px wide. Because of this, it is recommended that you use percentages like 0, 50, 100, etc. rather than something like 2.343750. This may show a specific point value for the layer your currently have selected, but a different layer will show something completely different. It's best to use generalized defaults and then you can set specific values using expressions, if needed.

Point X/Y/Z

These are explicit X. Y and Z values. These values are for display purposes only. They are based on the size of the layer the effect is applied to, depending on the Percent values described above. It is not possible to set specific point values. They will always be based on a percentage of the layer size.

This is called Popup because within the PresetEffects.xml file, that is what they are called. More recently, Adobe added the Dropdown Menu effect control, which is actually a Popup control. (But "dropdown" is a more generally understood name)

Default Selection

The item that will be selected when the control is reset

This textbox is where you create all of your popup's options. Put each new option on a separate line (by pushing the enter key). Values that are too long will be cut off in the After Effects interface, so try to keep your options as short and concise as possible. Popup controls are limited to a maximum of 254 characters (this is an After Effects limit, not a Pseudo Effect Maker limit). Empty lines will add a separator in the popup menu, however they also count as 2 characters towards your 254 character limit.

Slider

Default

The when the Pseudo Effect is applied and the user hits the reset button, this is the value that the control will be set to.

Slider Min / Slider Max

The min and max values are the lowest and highest values that the slider can scroll to. The output value can be lower or higher than these values by setting it manually, but these are the limits when the user drags the slider handle.

Valid Min / Valid Max

The valid min and max are the lowest and highest possible values the control can output. Note: Valid Max cannot be less than the Slider Max and Valid Min cannot be more than Slider Min

Precision

The number of digits after the decimal point

Display '%'

Simply puts a percent symbol after the slider values. It does not affect the output values in any way, it only adds a visual element

Pixel Values

Modifies your slider properties based on the number of Bits Per Channel in the current project.

Pseudo Effect Options

These options are not always visible by default (although that can be set in the preferences). To show these options, select the "title bar" or in the empty space below any other controls.

Pseudo Effect Name

The name of our pseudo effect is what the user will see at the top of the control in After Effects. You can also set the name by editing it directly in the 'Effect Panel'.

Pseudo Effect MatchName

The matchname is only used when saving your pseudo effect. Matchnames are what After Effects uses to identify your pseudo effect so it is important that your matchname is unique.

When using the 'Apply' function of the Pseudo Effect Maker, the matchname property is ignored and your pseudo effect will be given a random matchname. When you save your control, your matchname will be used and your control can be referred to by that matchname when it is imported into After Effects.

Another note: All pseudo effect matchnames will always have 'Pseudo/' added at the beginning. Without this prefix there would be errors when applying the pseudo effect. You should not manually add 'Pseudo/'. It will be added for you.

Alerts

If there are any issues with your current effect, the Alerts section will be visible. It will list out any problems.

The alerts section

Selected Control Options

Whenever a control is selected, the "Selected Control Options" section will be visible. On the left hand side (or the top if you are working with a smaller window) there are 4 buttons that are always displayed.

Selected control options

Move Up / Down

Moves the active control up or down one index at a time. If the control is above or below a group, the arrows will move that control into or out of that group. Using the arrow controls on a group will move all of the contents of the group along with it.

Duplicate

Creates a copy of the active control (added into the same group if in a group). Duplicated controls will automatically get an incremented name.

Delete

Deletes the active control

Preferences

The preferences allow you to control many different aspects of the Pseudo Effect Maker depending on the way that you like to work.

Preferences Menu

The preferences menu has 3 options that display at the top of the preferences window.

Restore Defaults

Resets all of the preferences to their default values.

Save

Saves the currently set preference values

Cancel

Discards any changes made to the preferences and reloads what was previously set.

Display Value Parameters

These values are used to provide more accurate display values within the Pseudo Effect Maker's effect panel. They do not affect the resulting control, they are only used to give a better idea of the values that will be seen in After Effects.

Layer Dimensions

Layer Dimensions are only used by Point and 3D Point controls. The actual values for these controls are percentages, not coordinates. The coordinate values are created by multiplying the percentage by the layer's dimensions. This means that depending on the size of the layer the controls is applied to, the point values will show differently, but the percentage is consistent. Within After Effects, the end user sees the point value, not the percentage. This preference allows you to set a mock layer size to give you a better idea of the values that a user would see for a given comp size.

Use Selected Layer Dimensions

Checking this option will automatically update the coordinates of point and 3D point controls to show the values that would be used for the currently selected layer in After Effects. As you select new layers in the composition or timeline panel, the coordinates will update as soon as you click back into the Pseudo Effect Maker.

When this option is turned on, the "Layer Dimensions" values are used as a fallback when a non-layer is selected in After Effects

Color Depth

Color Depth is only used by slider controls specifically with the "Display Pixel" option is selected. When this option is activated, the display values of the slider are multiplied by different values depending on the project's color depth.

By changing the Project BPC, you will be able to view the different values the end user will see. The true values of the control do not actually change, only the displayed value is affected

Slider Property Order

When a slider is selected, its property settings show up in the control panel. This preference allows you to change the order in which they are displayed.

The control at the top of this list will be placed on the left of the control panel. Each following control will be placed to its right. Once there is no more room on the row, controls will be shifted on line down. That pattern continues.

Sliders have 6 main settings:

Effect Panel Interface

These preferences control settings dealing with the Effect Panel

Effect Panel Style

The visual style of the effect panel. This has no effect on the result, it just allows you to see what your control will look like in different versions of After Effects

Show Slider Valid Min / Max

Within the After Effects effect panel, a slider control only ever will show the slider min and max values. This settings will not change that. This setting displays the valid minimum and maximum values in the Pseudo Effect Maker effect panel to give you quick access to those values.

Show Control Indices

Turning on this setting will show each controls index on the right side of the effect panel.

If you are working with expressions on your controls, it can be useful to know the control's index. Expressions can use these indices to reference controls, rather than the control names.

Note: You may notice a "skipped" index after the end of a Group. Within After Effects, the close of a group takes up an index, so this skipped index is intentional

Dim Group Indices

If control indices are visible (described above), this setting will make the indices of groups show up slightly dimmer than other controls. This can make it easier to reference the index in large controls

Angle / Slider Start Closed

By default, when an Angle or Slider is added to the effect panel, they are toggled open, which means they take up more space on the panel and their visual controls are visible. Checking this will keep them closed when first added.

This preference has no affect within After Effects.

Correct Control Name Placement

In After Effects, controls without keyframes have their names shifted to the left to take up the empty space and align them with the other controls. In the Pseudo Effect Maker, this space is maintained, allowing you to click on the empty space to enable keyframes from the effect panel. If you would like to get a more visually accurate display, you can turn on this option, but you will lose the ability to turn keyframes on from the effect panel.

Control Panel Interface

These preferences control settings dealing with the Control Panel

Control Icons Only

Turn this on to hide the control names and only display their icons. This will make the controls section smaller, giving you more screen real estate.

This setting is only for the controls section. There is a separate setting in the "Action Buttons" settings for the action buttons

Always Show Effect Info

By default, the effect's Name and Matchname settings are only displayed when no other controls are selected, or when you click on the effect name at the top of the effect panel. Turning this setting on will keep these settings visible at all times.

Select All In Text Box

If this is turned on, when you click into an input within the control panel, the current text or value will be selected. If this is turned off, nothing will be selected and your cursor will be placed at the location you clicked

Always Match Manually

This setting is specific to the "Replace" action. By default, "Replace" will do an auto-match. If the auto-match has trouble figuring out what to connect, it will display the manual matching dialog. If you would prefer to always show the replacement dialog, you can enable this setting.

Warn About Duplicate Control Names

If there are duplicate control names, the Pseudo Effect Maker will warn you about them when applying, replacing, saving or copying your control XML. Un-checking this preference will disable the alert.

Duplicate control names can cause headaches when writing expressions. If your expressions refer to the control's name rather than its index, then having multiple controls with the same name will cause conflicts. Whichever control has the name first, even if its in a group, will always be the control that is matched.

Action Buttons

Display Icons Only

Turn this on to hide the action names and only display their icons. This will make the actions section smaller, giving you more screen real estate.

This setting is only for the actions section. There is a separate setting in the "Control Panel Interface" settings for the control buttons

Button Order / Hidden

This section allows you to fully customize which action buttons are on screen at all times. Drag items between the two lists to determine both which buttons will be visible as well as their order

Keep in mind that the order of buttons in the "Button Order" list controls the order that the buttons are displayed in the control panel. The order of the "Hidden" list does not matter

All of the actions will still be available from the side menu whether they are hidden or not. This only controls the actions visible in the control panel

The menu is hidden by default. To display the menu, click the hamburger (3 line) icon at the top right of the "Control Panel". Moving your mouse out of the menu will automatically close it.

Help

Most of the options available in the menu are the actions that have already been explained in the earlier sections of this document. The "help" section has a few items that are not available as actions.

About

This option will open a second panel with license and version information for the Pseudo Effect Maker. This panel can also be used to check for updates or report bugs.

Report a Bug

This opens the same panel as the "About" option, but takes you directly to the bug reporting page.

Register

This option is only available if your version of Pseudo Effect Maker has not been registered. It opens the same panel as the "About" page where you can enter your license key.

Pseudo Effect Replacement

Replacing pseudo effects can greatly improve your workflow. Rather than having to re-apply and reconnect any expressions or keyframes, the Pseudo Effect Maker can now do it for you.

This process is not exact. Once an effect is added to an After Effects layer, the Pseudo Effect Maker no longer "knows" anything about it. This means that in order to replace it, it needs to analyze the effect as much as possible and then make guesses about which effects match to the new version of the control. In general, it does a pretty good job at guessing correctly, however if you make major changes to your control, there is a chance the replacement will be incorrect or fail. In these cases, you can use the new "Replacement Dialog" to specify which controls match. The Pseudo Effect Maker will then take care of all the expression copying and keyframing.

If you would always prefer to use the "Custom Mapping Dialog" rather than using auto-matching, that can be specified by checking the "Always Match Manually" preference.

The Custom Mapping Dialog

The Custom Mapping dialog

If you are matching manually, the Custom Mapping dialog will appear. This dialog allows you to connect controls from the old effect to controls in the new effect. On the upper part of the dialog, you will see 2 lists. The list on the left is the current control, the one that is already applied in After Effects. The list on the right has all the controls for the new effect, the one that you are about to apply.

To connect 2 controls, select the name of the control from each list, then click the Connect button. You can undo a connection by selecting the control and clicking Break. You can use the Auto button to have the Pseudo Effect Maker make its best guess and then make edits from there.

At the bottom of the panel, you will see a table of each connection result. You can select the rows of this table to highlight that connection in the lists above.

Once you are satisfied with all of the connections, click the Replace button at the bottom. You can also Cancel if needed.

Read Controls

If you prefer to work by creating your controls in After Effects with expression controls, you can quickly convert all your controls to a single pseudo effect using the "Read Controls" action. There are a couple of simple features that you can use t customize your effect.

Effect Name

The name of the pseudo effect will be set to the name of the layer the expression controls are applied to

Groups

Groups are generated based on naming conventions for each expression control.

Group Name>Control Name
Group Name>Control Name 2

2 Controls named like this will generate a single group with both controls inside. You can further nest groups by using more > characters. This is all based on the names being accurate, so be sure to spell group names consistently, or the Pseudo Effect Maker will not realize they are the same thing.

Limitations

There are a few properties of expression controls that After Effects does not make available to read. These things will have to be tweaked after reading them in.

Writing Controls in XML or JSON

The Pseudo Effect Maker allows you to paste XML or JSON data, instantly converting your markup to a pseudo effect control. If you have old pseudo effect controls created in the PseudoEffects.xml file, you can easily copy and paste them into the Pseudo Effect Maker in order to edit, update or just convert them to controls that don't require PseudoEffects.xml editing.

The ability to paste XML or JSON also means that if you'd prefer, you can create your controls by writing markup, rather then by using the GUI. If you are familiar with the nodes and attributes of the PresetEffects.xml file, you can write controls exactly as you would for that. There are a few additional attributes and attribute alternatives that are described below

You will notice that some of the attributes are grouped together. Using any of these options will do the same thing, they are just for different user preferences. For example, in the Color control, these will all do the same thing:

default_red="100", red="100", r="100"

Effect - Required

All pseudo effects must contain the parent effect data. If you are using XML, this means that everything must be wrapped in an <Effect /> tag. In JSON, the parent object must have the controlName property. All controls must go into an array under the controlArray property.

Attribute Requirement Type Default Description
name Required string none The name of the effect. Maximum 30 characters
matchname Optional string none A custom matchname for the control. Matchnames on pseudo effects will always have the 'Pseudo/' prefix, however it will be automatically added by the Pseudo Effect Maker, so it is not necessary to include here. Maximum 24 characters NOT including the 'Pseudo/' prefix

Examples:

XML

<Effect name="The Pseudo Effect" matchname="BFRM Psuedo Effect" >
     <!-- More Controls Here -->
</Effect>

JSON

{
  "controlName": "The Pseudo Effect",
  "matchname": "BFRM Psuedo Effect",
  "controlArray": [{CONTROL},{CONTROL}, ...]
}

Angle

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default, value Required float none The total number of degrees in the angle control.
CANNOT_TIME_VARY Optional boolean false If set to true, this control will not be allowed to have keyframes.
keyframes Optional boolean true Same as CANNOT_TIME_VARY, but reversed (which is why its listed separately. The choice is only personal preference). If true, the control will be allowed to have keyframes.
hold Optional boolean false If true, forces keyframes to be hold keyframes. If false, keyframes will be standard keyframes. If the 'hold' attribute is not included with your 'angle' control, the hold value will default to false.

XML

<Angle name="The Angle Control" value="180" keyframes="false" />

JSON

{
  "type": "angle",
  "name": "The Angle Control",
  "keyframes": false,
  "default": 180
}

Checkbox

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default, checked Required boolean false If true, the checkbox will be checked. If false, the checkbox will be unchecked.
label Optional string none If included, this text will be shown to the just to the right of the checkbox, separate from the control name.
CANNOT_TIME_VARY Optional boolean false If set to true, this control will not be allowed to have keyframes.
keyframes Optional boolean true Same as CANNOT_TIME_VARY, but reversed (which is why its listed separately. The choice is only personal preference). If true, the control will be allowed to have keyframes.
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Checkbox name="The Checkbox Control" checked="true" label="On / Off" CANNOT_TIME_VARY="true" />

JSON

{
  "type": "checkbox",
  "name": "The Checkbox Control",
  "checked": true,
  "label": "On / Off",
  "keyframes": false
}

Color

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default_red, red, r Required integer none Value between 0 - 255 for the red channel
default_green, green, g Required integer none Value between 0 - 255 for the green channel
default_blue, blue, b Required integer none Value between 0 - 255 for the blue channel
CANNOT_TIME_VARY Optional boolean false If set to true, this control will not be allowed to have keyframes.
keyframes Optional boolean true Same as CANNOT_TIME_VARY, but reversed (which is why its listed separately. The choice is only personal preference). If true, the control will be allowed to have keyframes.
hold Optional boolean false If true, forces keyframes to be hold keyframes. If false, keyframes will be standard keyframes. If the 'hold' attribute is not included with your 'angle' control, the hold value will default to false.
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Color name="The Color Control" default_red="100" green="50" b="20" keyframes="true" hold="true" />

JSON

{
  "type": "color",
  "name": "The Color Control",
  "default_red": 100,
  "green": "50",
  "b": 20
}

Group

The group control is the only element that will contain other elements. Any control nodes placed within the group tag will be included in the group.

In JSON, you need 2 separate objects, you do not have embedded controls. There is a group type to mark the start of the group and an endgroup to mark the end.

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Group name="The Group" >
     <!-- More Controls Here -->
</Group>

JSON

{
  "type": "group",
  "name": "The Group"
},
{CONTROL},
{CONTROL},
{
  "type": "endgroup"
}

Label

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
dim Optional boolean false Default is false. If set to true, the text will be dimmed

XML

<Label name="This is some text" dim="true" />

JSON

{
  "type": "label",
  "name": "This is some text",
  "dim": true
}

Layer

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default, default_self Required boolean none If true, the layer that this control is applied to will be selected by default. If false, the layer control will be set to 'None' by default.
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Layer name="The Layer Control" default_self="true" />

JSON

{
  "type": "layer",
  "name": "The Layer Control",
  "default": true,
}

Point / Point 3D

Point and Point 3D controls have the exact same properties, with the exception that the 3D version had Z axis properties.

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default_x, percent_x Required float none Value between 0 - 1 representing a percentage of the layer width for the default X coordinate
default_y, percent_y Required float none Value between 0 - 1 representing a percentage of the layer height for the default Y coordinate
default_z, percent_z Required float none (Point 3D only) Value between 0 - 1 representing a percentage of the layer height for the default Z coordinate
CANNOT_TIME_VARY Optional boolean false If set to true, this control will not be allowed to have keyframes.
keyframes Optional boolean true Same as CANNOT_TIME_VARY, but reversed (which is why its listed separately. The choice is only personal preference). If true, the control will be allowed to have keyframes.
hold Optional boolean false If true, forces keyframes to be hold keyframes. If false, keyframes will be standard keyframes. If the 'hold' attribute is not included with your 'angle' control, the hold value will default to false.
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Point name="The Point" default_x="0.5" default_y="0.2" />

<Point3D name="Three Dimensional Point" percent_x="0.2" percent_y="0.3" percent_z="0.4" />

JSON

{
 "type": "point",
 "name": "The Point Control",
 "default_x": 0.5,
 "default_y": "0.2",
 "point_x": 960,
 "point_y": "200"
}

{
 "type": "point3d",
 "name": "The 3D Point",
 "default_x": 0.5,
 "default_y": "0.2",
 "default_z": "0"
}

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default, value Required integer none 1 based index representing the default selection of the popup
popup_string, content Required string none A string that contains the selections for the popup. Separate each option with the | symbol. (- will give you a separator.
CANNOT_TIME_VARY Optional boolean false If set to true, this control will not be allowed to have keyframes.
keyframes Optional boolean true Same as CANNOT_TIME_VARY, but reversed (which is why its listed separately. The choice is only personal preference). If true, the control will be allowed to have keyframes.
hold Optional boolean false If true, forces keyframes to be hold keyframes. If false, keyframes will be standard keyframes. If the 'hold' attribute is not included with your 'angle' control, the hold value will default to false.
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Popup name="The Popup" value="2" popup_string="Option One|Option Two|Option 3|Option 4" keyframes="true" hold="false" />

JSON

{
  "type": "popup",
  "name": "The Popup",
  "default": 1,
  "content": "Option 1|Option 2|(-|Option 3 Separated"
}

Slider

Attribute Requirement Type Default Description
name Required string none The name of the control. Maximum 30 characters
default Required float none The default value for the slider. Must be greater than the valid minimum and less than the valid maximum
slider_min, smin Required float none The lowest value the slider can be dragged to
slider_max, smax Required float none The highest value the slider can be dragged to
valid_min, vmin Required float none The lowest possible value the control can be set to. The slider will stop at the slider minimum, but the user can input values manually as low as the valid minimum
valid_max, vmax Required float none The highest possible value the control can be set to. The slider will stop at the slider maximum, but the user can input values manually as high as the valid maximum
precision Optional integer 2 Sets the number of digits after the decimal point. Can be anywhere from 0 - 6.
DISPLAY_PERCENT, percent Optional boolean false If set to true, a percent (%) symbol will be shown next to your values. This does not actually affect the output value in any way, it only adds a visual element to let the user know that the value is a percentage
DISPLAY_PIXEL, pixel Optional boolean false If set to true, your values will be multiplied based on the current bits-per-channel settings.
CANNOT_TIME_VARY Optional boolean false If set to true, this control will not be allowed to have keyframes.
keyframes Optional boolean true Same as CANNOT_TIME_VARY, but reversed (which is why its listed separately. The choice is only personal preference). If true, the control will be allowed to have keyframes.
hold Optional boolean false If true, forces keyframes to be hold keyframes. If false, keyframes will be standard keyframes. If the 'hold' attribute is not included with your 'angle' control, the hold value will default to false.
invisible Optional boolean false True for an invisible control, otherwise the property can be omitted.

XML

<Slider name="The Slider" default="1" smin="-10" smax="10" vmin="-100" vmax="100" precision="0" pixel="true" />

JSON

{
  "type": "slider",
  "name": "The Slider",
  "default": 1,
  "smin": "-10",
  "smax": 10,
  "vmin": -100,
  "vmax": "100",
  "precision": 0,
  "pixel": true
}