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?
- Replace - The most requested feature is now a part of the Pseudo Effect Maker. This feature allows you to update the pseudo effect without having to manually reconnect expressions and remake keyframes. This makes working with invisible controls much simpler
- Improved Support for special characters
- More customization preferences
- Updated user interface for a cleaner and more consistent design experience
- Improved drag-and-drop
- Renamed "Text" control to "Label" for clarity. "Text" gave the impression that the values were user-editable.
- Other bug fixes and minor improvements
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:
- Angle
- Checkbox
- Color
- Group
- Label
- Layer
- Point
- Point 3D
- Popup (aka Dropdown Menu)
- Slider
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
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 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.
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.
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.
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.
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
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.
Popup (aka Dropdown Menu)
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
Popup Content
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.
- 8bpc: Values multiplied by 255.
- 16bpc: Values multiplied by 32768
- 32bpc: Values are not multiplied, but values always have a precision of 4 (four places after the decimal)
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.
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.
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.
- 8bpc: Values are multiplied by 255
- 16bpc: Values are multiplied by 32768
- 32bpc: Values are not modified, but the values will always have 4 decimal places
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:
- Default Value: The slider value that will be set when the effect is applied or reset
- Slider Minimum or Maximum: The lowest and highest values the visual range control can be dragged to
- Valid Minimum or Maximum: Sliders can be set to values outside of the slider range by typing them manually or by dragging on the number, rather than the slider handle. The valid min and max are the lowest and highest possible values that can be set.
- Precision: The number of decimal places to be displayed
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
Menu
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
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.
- Slider max and min
- Dropdown Menu content. It can only read the number of items, but not the content of those items
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 anendgroup
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" }
Popup (Dropdown Menu)
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 }