Table of Contents
Introduction to Template Development
Beginning with Final Cut Pro X, Apple's professional video application no longer supports FxPlug plug-ins directly. Visual effects may only be delivered through a technology called Motion Templates, based on the Motion project file format.
A template does not need to rely exclusively on Motion's built-in features. It may also use FxPlug plug-ins. Motion Templates have thus become the only vehicle to deliver products based on FxPlug plug-ins to Final Cut Pro X users. Certain limitations are imposed by this technology:
- Slower to load and render than native plug-ins, presumably due to the extra work required to load and render a Motion project.
- Poorer output quality than it is generally possible with a native plug-in. Footage may be scaled to full-frame, cropped, etc. thereby introducing filtering artifacts. Results vary according to the version of Final Cut Pro used and the snapshots included by the Motion Template.
- Templates cannot be deployed or installed easily. Developers and end-users have additional responsibilities to ensure that visual effects can be found and loaded by Final Cut Pro X.
- Templates are inherently open. The architecture contains no provision which prevents end-users from editing and/or redistributing your templates.
- No parameter grouping. The specification contains no official method for grouping parameters together in groups, thus making it extremely hard for users to learn and use complex products where a large number of parameters is unavoidable.
Custom UI is not allowed.Beginning with Final Cut Pro 10.1, it is now possible to publish custom parameter UI from a Motion template.Dynamic UI is not supported. Beginning with Final Cut Pro 10.0.6, it is now possible to implement dynamic parameter UI.
To help make Motion Templates a viable platform for visual effects development and distribution, FxFactory has introduced a new product type: FxTemplates.
FxTemplates
To create a new FxTemplates-based product, launch the FxFactory application and select the New > Templates command under the File menu:
At the heart of each FxTemplate is a new document format1) which groups multiple Motion Templates inside a single logical container. The FxTemplate stores your Motion projects, effect thumbnails and any media referenced by the template.
A unified development UI provides access to both basic and advanced features that are available with FxTemplates:
The idea is simple: you use FxFactory to build your product, and let FxFactory handle product installation, licensing and asset management for you.
Overview of Basic Features
- Existing Motion Templates can be imported to a new product simply by dragging Motion project files from the Finder onto the Templates list.
- Templates are arranged in groups. Different types of effects may be grouped under a single category. FxFactory will take care of installing each template in the correct location based on its type (effect, generator, transition or title).
- The template theme can be changed easily, without having to edit the XML data in the Motion project.
- The group and theme correspond to the labels used by Final Cut Pro X to display each effect in the effect browser.
- Only a single thumbnail graphic is stored for each template. FxFactory will create the correct representations needed by Final Cut Pro X when the product is installed2).
- Media files used by each template are automatically imported and stored in the FxTemplate. Multiple templates can reference the same media files in order to make product packaging more efficient.
Overview of Advanced Features
- Developers can rename templates, template categories and/or themes without fear of breaking project compatibility for end-users. This allows developers to easily re-categorize their effects within the Final Cut Pro X effect browser even after products have shipped.
- FxFactory guarantees reliable deployment of your products. Templates are installed and deployed consistently on all systems. This ensures that users do not have to deal with effect missing/offline errors.
- An FxTemplate may have dependencies on another product, be it an FxPack or a different FxTemplate. The FxTemplate can share a single licensing structure and inherit state 3). This allows for seamless deployment of products that are a combination of Motion Templates for Final Cut Pro X and native plug-ins for all other video applications.
- If you have created high-quality thumbnail graphics to represent your product in Final Cut Pro X, you do not have to worry about Motion overwriting those thumbnails when you save the template: FxFactory will preserve the thumbnail graphic until you explicitly request it to use a different one.
- Multiple versions of a template can exist within the same product. FxFactory allows you to assign version numbers and mark templates as “Obsolete”, which has benefits for developers and end-users alike4).
- If multiple templates within your product reference the same Media (e.g. a large movie), there is no need to distribute multiple copies of those files to your users. FxFactory lets you embed a single copy of an asset which may be referenced by multiple templates.
- FxFactory can apply a watermark to the output of any templates being used without a license. The watermark allows you to distribute a trial version of your product. The user can unlock the product and remove the watermark simply by purchasing a registration code from our online store.
- FxFactory performs product-integrity checks to ensure that users are indeed using the product you shipped to them. Any changes to the Motion projects are detected and - whenever possible - fixed automatically.
- FxFactory handles systems with multiple user accounts seamlessly. Products are automatically installed for any new user the first time they fire up Final Cut Pro or FxFactory.
Immediate Benefits for Users
- Users can disable products simply by toggling a checkbox inside the FxFactory application.
- Users can easily license your FxTemplate-based products via the FxFactory application. Our advanced licensing options allow you to create product families, allowing a single registration code to unlock any combination of FxTemplates and FxPacks.