# Pre-Rendering

## Pre-Render

<div align="left"><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FF9KQmrqtOGdZenjb70GB%2Ficon_prerender_00000.png?alt=media&#x26;token=92c4f2a9-fdce-46ac-b60e-8993e97444e7" alt="" width="30"></div>

**(Added in** [**version 2.5**](https://workflower.constantin-maier.com/releases#id-2-5)**)**

Pre-renders the selected groups, regular layers, [Precomp Clones](https://workflower.constantin-maier.com/cloning#clone-and-precomp) & precomps. (Win: Ctrl+F2, Mac: no default shortcut).

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FxQUrbbNzr5AqX9wxdTAN%2Fpre-render-top.jpg?alt=media&#x26;token=b3c576af-470d-4f50-950e-8964596e3fa8" alt="" width="228"><figcaption><p>Pre-Rendered Group Clone as indicated by the  Ｒ  Icon</p></figcaption></figure>

Renders in selection order. Already rendered elements will be used in containing elements - that's why you preferably want to select (= render) a *Precomp Clone* that's contained in another one before the containing clone.

In addition to selected layers, the function also renders selected precomp items in the project panel (if no layer in your current comp is selected).

When pre-rendering a group or regular layer, the function effectively renders group's/layer's *Precomp Clone*, so if they don't have an existing, corresponding clone, it will be created.

After finishing, the render will be set as an AE proxy to the project item of the *Precomp Clone* or precomp.

{% hint style="info" %}
Please note that there is a difference between an **AE Proxy** and a **WF Proxy**:

All *Workflower* pre-renders will be set as an *AE Proxy* to the pre-rendered *Precomp Clone* or precomp.

A *WF Proxy* is a lower-quality version of a pre-render that can be rendered additionally (if enabled). You can [toggle the WF Proxy on and off](#show-hide-pre-render-wf-proxy).

This means that both the regular render AND the *WF Proxy* render will be set as an *AE Proxy*.
{% endhint %}

To customize the image format, potential WF proxy, footage interpretation, output path and more, go to the [Pre-Rendering Settings](#pre-render-settings).

To create a new pre-render version, simply execute the function again. The old version will be deleted from disk (can be disabled in the *Pre-Render Settings*).

With no layer selected, the *Pre-Render* function pre-renders either entire the comp or all groups in comp. Renders the latter from bottom to top. To exclude certain groups when pre-rendering all groups, use [Mark Pre-Render State](#mark-pre-render-state) and choose to skip.

Pre-rendered [Group Clones](https://workflower.constantin-maier.com/cloning#group-clone) are identifiable by a capital Ｒ icon. Pre-rendered precomp layers, pre-rendered [Dependent Clones](https://workflower.constantin-maier.com/cloning#duplicate-and-create-dependent-precomp-clone) as well as pre-rendered group headers are identifiable by a lowercase ｒ icon:

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FjTexeRvx88FkPw0WRgBb%2Fpre-render-icons.jpg?alt=media&#x26;token=a1693f1c-34d4-4d7f-bc98-900b8812b9e9" alt=""><figcaption><p>Top: Pre-Rendered Group Clone as indicated by the  Ｒ  Icon; Bottom: Pre-Rendered Dependent Clone as indicated by the  ｒ  Icon</p></figcaption></figure>

### Final Rendering

{% hint style="warning" %}
For visible pre-renders to appear in final render, set AE's *Proxy Use* to *Current Settings* in your final render's *Render Settings* (or to any other setting with AE proxy usage).
{% endhint %}

### Showing / Hiding Elements

To show actual layers of pre-rendered *Precomp Clone*, execute [Show Clone Layers](https://workflower.constantin-maier.com/cloning#show-clone-layers) (Ctrl/Cmd+click on 'Cloning'-button):

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FxIDOY9vgsw8uvkzWj6QZ%2Fpre-render-top-4.jpg?alt=media&#x26;token=598302c1-9a4e-4da9-aeda-a7704dd2ec3f" alt="" width="228"><figcaption><p>Shown Clone Layers of Pre-Rendered Group Clone as indicated by the  ≫  Icon</p></figcaption></figure>

To show the *Precomp Clone* itself or precomp itself instead of the pre-render, execute [Show / Hide Pre-Render](#show-hide-pre-render):

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2Fme5qOn0NnZjowJKmlQxS%2Fpre-render-top-2.jpg?alt=media&#x26;token=bf5b70a9-5c7e-4a5b-bed2-9552591128df" alt="" width="228"><figcaption><p>Hidden Pre-Rendered Group Clone as indicated by the  -- Ｒ --  Icon</p></figcaption></figure>

To show/hide WF Proxy of pre-render, execute [Show / Hide Pre-Render WF Proxy](#show-hide-pre-render-wf-proxy):

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FpUuP20jc6C7E4UZneyuS%2Fpre-render-top-3.jpg?alt=media&#x26;token=f9d3a4db-a388-49f0-9ee8-a86b97cf44e8" alt="" width="228"><figcaption><p>Shown WF Proxy of Pre-Renderd Group Clone as indicated by the  ＰＲ  Icon</p></figcaption></figure>

### Unset or Delete Pre-Render

To either unset or delete a pre-render, select the desired layers with pre-render and execute [Delete Layer / Clone / Group](https://workflower.constantin-maier.com/group-functions/ungroup-dissolve-and-delete-groups#delete-layer-clone-group).

It will give you the option to either:

* Unset the pre-render but keep the layer as well as the pre-render file on disk
* Remove the layer but keep the pre-render file on disk
* Remove the layer as well as remove the pre-render file on disk

### Pre-Rendering Trimmed Elements

By default, *Workflower* will pre-render only the portion of in- and out-points of all layers within the pre-render element combined (whether it be a layer, group, clone or precomp).

Pre-rendering trimmed elements, however, requires [FFmpeg](https://www.ffmpeg.org/) to be installed. In case, FFmpeg was not installed successfully during the initial Installation of *Workflower*, you can install it manually by going to *Settings > Pre-Rendering > Miscellaneous*. If FFmpeg is not installed, the entire duration will be rendered.

Tip for trimming a comp to be rendered: To quickly trim all layers within a comp to a certain area (without expanding trims), you can set AE's work area to it and then execute [Trim Layer to Layer](https://workflower.constantin-maier.com/miscellaneous-layer-functions#trim-layer-to-keyframes-1) with no layer selected.&#x20;

Please note: Concerning video files (not image sequences), elements will only be rendered trimmed when the in-point is more than 60 frames into the composition. Given a short in-point like this, rendering those empty frames using AE is the more efficient method. However, on in-points longer than this, the missing empty frames will be concatenated using FFmpeg.

### Pre-Render Settings

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FD2fAWv8LJkoxOpAeh94j%2FScreenshot%202024-08-30%20at%2022.18.36.png?alt=media&#x26;token=6d5f1bb7-0f5b-4fb0-acf9-9ee49ef2791e" alt="" width="563"><figcaption><p>Pre-Render Settings</p></figcaption></figure>

The *Pre-Render Settings* allow you to customize the format, output, performance and miscellaneous settings.

Please note that format and output settings are saved on a project-basis whereas performance and miscellaneous settings are saved across the entire application. To make the current format and output settings the standard for all new projects, click on *Current Settings to Default in New Projects*. Shift+click on the button to reset the default to the standard settings.

You may save and load format and output settings as *Pre-Render Profiles*.

All Pre-Render output module templates are created with a *Straight (Unmatted)* alpha. This is highly recommended too when creating your own templates. Altough *Premultiplied (Matted)* is possible to use too, only *Straight (Unmatted)* guarantees to retain information beyond the rendered alpha matte.

To quickly access the *Pre-Render Settings* from the [Main Menu](https://workflower.constantin-maier.com/main-functions/main-menu), right-click on the *Pre-Render* button. Additionally, you have access to other features by holding one of the modifier keys when hovering over the *Pre-Render Settings...*-button:

* Shift+Click: *Open Pre-Render Path*
* Ctrl/Cmd+Click: *Open Currently in Timeline Selected Pre-Render in File Browser...*
* Alt/Option+Click: *Find / Remove Pre-Renders in Folder Path*

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FYjgQsnoqrKuWPMXpZaQB%2FScreen%20Recording%202024-09-30%20at%2011.44.15%20(00363).jpg?alt=media&#x26;token=87719f58-ee8a-40c8-9641-865e0c6bdb19" alt="" width="563"><figcaption></figcaption></figure>

### Find / Remove Pre-Renders in Folder Path

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FIWiEoGYSCJky5gEiWFLI%2FScreenshot%202024-09-22%20at%2000.11.22.png?alt=media&#x26;token=9b97a980-fef8-4b15-9ce1-b2fc3d63a092" alt="" width="370"><figcaption><p>Find / Remove Pre-Renders Dialog</p></figcaption></figure>

If you want to find unconnected pre-rendered files (in case you switched your computer for example), or you want to remove old pre-renders, you can do so by going to *Settings > Pre-Rendering > Output* and click on *Find / Remove Pre-Renders in Folder Path* (or right-click on the *Pre-Render* button, then *Alt/Option+click* on *Pre-Render Settings*...)

{% hint style="danger" %}
Please note that removing pre-render files cannot be undone!
{% endhint %}

### Known *Pre-Render* Bugs

#### Windows

When executing *Pre-Render*, sometimes *Workflower* queues the renders but then stops before starting the render with this error: *An unexpected error occurred while exporting a composition. Error Code: 3. Please restart After Effects and retry the export.*

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FGwHLCjnlsfju9ApMqpwq%2Fae_error_scale.png?alt=media&#x26;token=deb3cdd9-0367-4f6b-a26b-7dac0cd948a3" alt=""><figcaption></figcaption></figure>

*Workaround:* To our knowledge, this problem only occurs very infrequently. Simply restart After Effects or your computer, and try executing *Pre-Render* again. This should get rid of the error. If it doesn't, please contact customer support.

#### Mac

When executing *Pre-Render*, sometimes After Effects freezes after finishing the render, and it has to be force quit it or it crashes with this error message: *Sorry, an error occurred.*

<div data-full-width="false"><figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FiQsFUd2SFgj8biB5ykKZ%2FScreenshot%202025-08-09%20at%2018.26.03.png?alt=media&#x26;token=5e73bada-6750-468b-8f9b-315d7986dadb" alt="" width="375"><figcaption></figcaption></figure></div>

*Workaround:* In our testing, this problem only occurs infrequently. Simply restart After Effects or your computer, and try executing *Pre-Render* again. (Sometimes, you have to restart a second time.) This should get rid of the error. If it doesn't, please contact customer support.

#### Other known *Pre-Render* Bugs

{% hint style="warning" %}
[There are other](https://workflower.constantin-maier.com/known-bugs#pre-render-bugs)[ known *Pre-Ren*](https://workflower.constantin-maier.com/known-bugs#pre-render-bugs)[*der* bugs. Click here to read up on their descriptions as well as potential workarounds.](https://workflower.constantin-maier.com/known-bugs#pre-render-bugs)
{% endhint %}

## Show / Hide Pre-Render

<div align="left"><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2Fvq1YvNteeQGfimZ7viyq%2Ficon_show-prerender_00000.png?alt=media&#x26;token=1385f2a2-6f45-4d4d-9252-03d73ec34d6e" alt="" width="30"></div>

**(Added in** [**version 2.5**](https://workflower.constantin-maier.com/releases#id-2-5)**)**

Shows or hides pre-renders. (Win: Ctrl+Alt+Space, Mac: no default shortcut).

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2Fme5qOn0NnZjowJKmlQxS%2Fpre-render-top-2.jpg?alt=media&#x26;token=bf5b70a9-5c7e-4a5b-bed2-9552591128df" alt="" width="228"><figcaption><p>Hidden Pre-Rendered Group Clone as indicated by the  -- Ｒ --  Icon</p></figcaption></figure>

Needs either pre-rendered *Precomp Clone*, group or contained layer of group with pre-rendered *Precomp Clone*, or pre-rendered precomp layer selected.

With no layer selected, shows/hides all pre-renders in comp or comp's pre-render.

{% hint style="warning" %}
If you want to show the layers of a pre-rendered group/clone instead of the *Precomp Clone* itself, please use [Show Clone Layers](https://workflower.constantin-maier.com/cloning#show-clone-layers).
{% endhint %}

## Show / Hide Pre-Render WF Proxy

<div align="left"><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FyovMvDXX7p80fSddGecm%2Fdoc---proxy.png?alt=media&#x26;token=eafc5c3d-266b-4a79-9b2e-e7eaa52ffb8d" alt="" width="30"></div>

**(Added in** [**version 2.5**](https://workflower.constantin-maier.com/releases#id-2-5)**)**

Shows or hides WF proxies (= Workflower's proxies) of pre-renders.

<div align="center" data-full-width="false"><figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FpUuP20jc6C7E4UZneyuS%2Fpre-render-top-3.jpg?alt=media&#x26;token=f9d3a4db-a388-49f0-9ee8-a86b97cf44e8" alt="" width="228"><figcaption><p>Shown WF Proxy of Pre-Renderd Group Clone as indicated by the  ＰＲ  Icon</p></figcaption></figure></div>

Needs *Precomp Clone* or precomp layer with pre-render WF proxy selected.

With no layer selected, shows/hides all WF proxies in either your comp or the entire project.

Before pre-rendering, it is recommended to hide all WF proxies in order to pre-render with full quality.

{% hint style="warning" %}
To avoid confusion with *After Effects'* proxies, *Workflower's* pre-render proxies are consistently called ***WF Proxies*** (as opposed to ***AE Proxies***).
{% endhint %}

### Show / Hide Footage AE Proxies

If you want to show or hide only footage AE proxies, right-click on the *Show / Hide Pre-Render WF Proxy* button and click on *Show/Hide Footage AE Proxies*.

## Push Frame to Photoshop

<div align="left"><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FifrG263xC9F37KdQtWmF%2Fdoc---ps.png?alt=media&#x26;token=3a25e862-5e0a-4bd9-a124-5a5537c44715" alt="" width="30"></div>

**(Added in** [**version 2.5**](https://workflower.constantin-maier.com/releases#id-2-5)**)**

Renders the current frame as Photoshop file, opens it in Photoshop and imports it into After Effects' timeline (only available via [Main Menu](https://workflower.constantin-maier.com/main-functions/main-menu): Alt/Option-click on *Pre-Render*-button).

The file is opened in the Photoshop version matching your After Effects version (otherwise the latest installed Photoshop version).

Customize the format in the *Pre-Rendering* settings. It's recommended to use *Straight (Unmatted)* alpha settings as Photoshop doesn't recognize a premultiplied alpha properly.

*Push Frame to Photoshop* always uses the *Main Render Settings* as well as the *Pre-Render* output pat&#x68;*.*

{% hint style="info" %}
*If you want to only push certain layers to Photoshop, you can solo them in your AE timeline before pushing them.*
{% endhint %}

## Mark Pre-Render State

**(Added in** [**version 2.5**](https://workflower.constantin-maier.com/releases#id-2-5)**)**

Marks a pre-render element with a specific render state (only available via [Main Menu](https://workflower.constantin-maier.com/main-functions/main-menu): Right-click on [Pre-Render](#pre-render)-button, then click on *Mark Pre-Render State*).

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FMDvDYRkYSc8QQthCrgrN%2FScreenshot%202024-09-26%20at%2015.49.29.png?alt=media&#x26;token=dde5b71f-5012-4089-b686-ce56b388d868" alt="" width="223"><figcaption><p>Mark Pre-Render State Dialog</p></figcaption></figure>

### Pre-Render Still Only

Marks an element (group, *Precomp Clone* or precomp) to only render a still.

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2FOqwBeA7TCcyKl8y35vcW%2FScreenshot%202024-12-12%20142032.png?alt=media&#x26;token=02d5cc21-ad7c-4c9f-a476-ccc0aa494321" alt=""><figcaption><p>Group 'BG' marked to Pre-Render a Still Only</p></figcaption></figure>

The function uses the [Photoshop output module](#push-frame-to-photoshop).

This function adds a marker named *\[\[\[STILL PRE-RENDER]]]* to the element. Do not modify or remove this marker as only the exact name signals the still state.

Remove the still state by executing the function again.

### Skip when Pre-Rendering All

Marks a group to be skipped when pre-rendering all groups:

<figure><img src="https://3790197535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQrCmGZz5honeHZINyR%2Fuploads%2F12imQ4M8s4LYZmF0TBCQ%2Fskip-pre-render.jpg?alt=media&#x26;token=876694b0-3d39-4a3d-ad02-695c7e16e4d8" alt=""><figcaption><p>Group 'DESPILL' marked to be skipped when Pre-Rendering</p></figcaption></figure>

Useful on groups that only contain utility layers, groups with only very few layers that don't need pre-rendering, or groups with adjustment layers (since they can't be rendered only by themselves).

This function adds a marker named *\[\[\[SKIP PRE-RENDER]]]* to the group header. Do not modify or remove this marker as only the exact name signals the skip state.

Remove the skip state by executing the function again.
