The Exocortex Crate product suite is a set of Alembic plugins and tools that enable VFX studios and independent VFX professionals to standardize their tool chains around the Alembic file format as the core data interchange and automation format.
At a high level, the biggest benefit of the Exocortex Crate suite is that it enables your artists to use their preferred content creation tools while providing a professional, consistent, fast and reliable data interchange method to the other tools in your pipeline. Additionally, the Exocortex Crate suite enables you to automate your pipeline at the content level: from data import/export, scene composition, versioning, to rendering.
The Alembic file format is a true game changer in the VFX industry. Initially the realization of this vision had been previously hampered because of a lack of truly professional grade tools that provided complete, reliable and consistent interfaces backed up by commercial quality support. The Exocortex Crate suite was created to address this market gap and has since helped numerous companies realize the transformative Alembic vision across the whole of the VFX industry.
Full-Featured Alembic Import/Export Plugins
The Exocortex Crate suite consists of four 3D digital content creation (DCC) plugins for Alembic import/export. These three full-featured plugins provide a consistent interface and guaranteed data convertibility between other Exocortex Crate components:
- Crate for Softimage (Supports Softimage 2010 and newer)
- Crate for 3DS Max (Supports 3DS Max 2010 and newer)
- Crate for Maya (Supports Maya 2010 and newer)
Exocortex Crate supports the following scene elements for Alembic import/export:
- Animated meshes.
- Dynamic topology meshes.
- Particle systems (including PFlow, Thinking Particles, ICE).
- Instanced particle systems (Softimage and Maya only).
- Animated transforms/nulls/dummy objects.
- Scene hierarchies (we can optionally flatten hierarchies).
- Point caches + transform caches.
- Material metadata.
- ICE stands, ICE particles.
- Custom attributes (Softimage only).
- Multiple indexed UV sets.
- Explicit indexed normals.
- Subdivision meshes (imported as PolyMesh with MeshSmooth in 3DS Max).
- NURBS curves, ICE stands, Softimage hair, Maya curves, 3DS Max splines.
- Imported data is compatible with V-Ray, Arnold, Mental Ray, FumeFx, GrowFX, and many other plugins.
Complementary Alembic Tools
In addition to the three DCC plugins, we have also created two complementary tools:
- Crate for Python, a powerful Python extension that enables quick and easy arbitrary manipulation of Alembic files from the command-line. This Python extension is the perfect tool for automating Alembic-related processes within your pipeline. Our python extension can be used both from the command line and from within Maya or Softimage.
- Crate for Arnold, is a production tested render-time DSO plugin for the Arnold renderer. Crate for Arnold supports polymeshes, subdivision surfaces, stands and particle systems (including efficient instancing.)
The Unique Aspects of Exocortex Crate
The key aspects of our Alembic-oriented solution are:
- A Consistent and Expansive Feature Set. Our Alembic suite is not a proof of concept, rather it is designed to be one of the foundations of your content creation pipeline. As such, our plugins load and save all the major scene elements that you would expect. We have extended the Alembic file format to support NURBS curves, multiple UV sets, instanced particle systems and point cache workflows, although it is possible to save out vanilla Alembic files without these extensions as well for guaranteed compatibility with other tools.
- An Optimized Core. We have created a core shared framework that builds upon the features of the Alembic library to enable even higher performance for both reading and writing, especially on multi-core computers. The framework also minimizes, as much as possible, network bandwidth demands via identification of stream redundancies across multiple Alembic files.
- Designed with Leading VFX Studios. Our suite of Alembic plugins have been created in input from more than a dozen top studios from around the world including Psyop, Rodeo FX, Oblique FX, Shed MTL, Hybride, Ingenuity Engine, Crate Studios, Sehsucht, Blur Studio, and ScanlineVFX to name just a few. The diverse pipelines and needs of these leading VFX studios have enabled us to create a well-rounded and robust solution.
- Responsive Development. At Exocortex we have full time staff constantly improving our suite of Alembic tools. We are adding features and tweaking how they work based on the feedback of our users on an almost weekly basis. We do this in order to ensure you can get the most out of Exocortex Crate with the least amount of effort.
The Power of Exocortex Crate and Alembic
The Exocortex Create suite along with the Alembic file format enables significantly more flexibility in VFX pipelines than is currently offered by existing tool sets:
Using the Best DCC Tool for the Job
Alembic is enabling VFX studios to be, for the first time, truly flexible when it comes to which DCC tools they employ as it is the first true high fidelity interchange format. It is now possible for your best artists and TDs to create their work in their tool of choice and then share it, in its full fidelity, with the rest of the studio via Exocortex Crate.
Exocortex Crate, by being consistent in the features it supports across all DCC packages, enables you to employ a mixed DCC pipeline without dealing with unexpected losses in fidelity.
Psyop used Exocortex Crate to combine Houdini, Softimage, Maya, 3DS Max, and Nuke together to create the impressive visuals in their recent JBL advertisement. Full details available here: http://goo.gl/Z697M
For scenes with gigantic complexity it is beneficial to only load some data within the renderer and not with the DCC tool itself. Exocortex Crate for Softimage supports this capability with Solidangle’s Arnold renderer. This feature is extensively used in production.
Sharing Data Between VFX Companies
Besides enabling the sharing of data between DCC tools within the same studio, Alembic also opens up easier data sharing between VFX studios themselves. Instead of receiving a DCC-specific scene file that may require one or more third party plug-ins that you don’t yet have, you can now ask just for an Alembic file. Using Exocortex Crate you are free to select the DCC tool you prefer, rather than having it forced upon you by your collaborator.
Exocortex Crate also enables you to share partial non-rendered data back to your collaborators in a fashion that is significantly more reliable, efficient and less error prone than in the past.
The Ultimate Animation Cache
Rigs can be slow to compute and temperamental. High end production rigs can take more than ten seconds to advance to a frame, if not longer if complex muscle systems are employed. Once an animation has been locked down, it is inefficient to require the constant recomputing of the rig. In these situations, many studios will convert an animation to a baked point cache which the rendering department can use to drive a mesh animation. Once baked, an animation can be reliably loaded in a fraction of a second by the rendering department, thus making their lives easier and reducing costs. Exocortex Crate has been specially designed to accommodate this workflow in a pain-free and cross-DCC fashion.
Our testing, and that of our lead customers, have shown that Exocortex Crate is as fast as the PC2 special purpose point cache format in both reading and writing while the produced Alembic files require up to 50% less disk space than the PC2 special purpose format (thus reducing storage costs and load on network bandwidth.)
Modern VFX pipelines these days involve multiple departments creating elements which are then combined in various ways into the final render setup which are then sent to your render farm. The act of combining these data flows from various departments can be a job in itself.
Exocortex Crate for Python provides the ability, at the command line outside of any DCC tool, to query, read, manipulate and write Alembic files at full speed. We include a number of example files for merging, concatenating, filtering and retiming your alembic files. This allows for your studio to write smart Alembic processing tools. We have seen studios utilize Exocortex Crate for Python to combine various individual Alembic resources into a full scene directly from the command line. The full scene can then be imported into their DCC tool of choice.
Reducing Software License Costs
High fidelity caching can reduce the cost of VFX production by isolating special purpose and often costly tools into just the department that is creating that component of the effect. That department's results can then be exported via Exocortex Crate and passed to other departments in the form of Alembic files that are completely independent of the licensed creation tools.
Specifications & Licensing
OS: Windows x64 and Linux x64
Host software: Maya 2010 or newer, Softimage 2010 or newer, 3DS Max 2010 or newer
RLM-Based Floating Licenses
Exocortex's plugins now support RLM-based licensing. RLM stands for "Reprise License Manager." Conceptually RLM is similar to the FlexLM/LMtools system that is employed by Autodesk products.
RLM Server Setup
To utilize RLM-based floating licenses, you must have an RLM license server setup.
The following is a quick-start guide to using RLM. This is a very simplistic setup, but it should get you going quickly:
- Download Exocortex's RLM tools package (from here ) and unzip it somewhere.
- Create a directory in the root drive called "rlmtools", so that it looks like this c:\rlmtools
- From the Exocortex RLM Tools package, copy the two exe's for your platform and the *.set file (exocortex.set, rlmutil.exe and rlm.exe) into c:\rlmtools
- Start a command prompt and navigate to c:\rlmtools
- Run "rlmutil rlmhostid", and you get a host ID. If you have multiple hostids, just use the first one.
- Run "rlm" and you get a server name (licenseserver) and license port (5053 - for you, and 5054 - for the webserver).
- Fill-in the Exocortex webform for the license with your hostid, license server name, and license port. The webform will generate for you a RLM license file with a *.lic extension.
- Place a RLM license file (.lic) in the c:\rlmtools folder, and re-start "rlm" (press Ctrl-C to exit RLM, type "rlm" at the command prompt to run it again.
- Firewalls will block RLM license server requests, thus to get going quickly, it is easiest to disable them. Please consult the RLM User Guide for proper firewall configuration.
If you want a permanent RLM license server setup, you will have to install RLM as a service. This can be done via calling "rlm" with the "-install_service" command line option once you know everything is working properly.
Reprise Software has a detailed online manual that describes how to setup the RLM server and its associated options. It is available online here:
In order to serve licenses to Exocortex products, you require from Exocortex both its vendor specific setting file, which is called exocortex.set and your license files. Exocortex's RLM daemons for both Windows and Linux can be found in the Exocortex RLM Tools package, which can be downloaded from here:
The configuration options related to Exocortex's ISV-specific daemon are fully described in the RLM End User manual above.
Working with other RLM-licensed products
Different RLM licensed products, even from different vendors, can usually be served from the same RLM server. Generally the procedure to server multiple products from the same RLM server installation is straightforward. The main requirement is to place all the license files and all the vendor/ISV specific deamons/*.set files into the same directory. Each license file must specify the same host along with the same host port. It is this shared server port (usually 5053, although it can be customized) which one should specify that each client should connect to.
RLM Client Setup
To setup your clients so that they can check out licenses, you need to configure either the RLM_LICENSEenvironment variable (which is shared by all RLM licensed products) or the exocortex_LICENSE environment variable (which is specific to Exocortex products) so that they are in the form "[port]@[licenseserver]". Once you have done setup the license server as well as the client environment variable, it should be possible to use the RLM floating licenses with your Exocortex products.
There are a number of options for setting these environment variables. You can set it globally on the machine or you can set it specific to Softimage (Go to Softimage setenv and write exocortex_LICENSE=port@licenseserver.)
Disabling Node-Locked Activation to enable RLM
In some cases our node locked activation can prevent you from using your RLM licenses. This can happen when you activate a trial license and then switch over to using RLM during your trial period. This issue is fixed in our more recent plugins, but for earlier plugins you can fix this issue by deleting the *.lic that is located in the equivalent directory:
Resolving issues with RLM Floating Licenses
Exocortex's products that have RLM capabilities will display RLM-specific diagnostic information in the Softimage log when it is looking for an RLM license and one can't be found or accessed. If there are issues with RLM now working, checking the log information can be very helpful in resolving the issue.
If you are unable to resolve the issue, please contact email@example.com and provide as much detail as you can about your configuration and the error that is occurring.
Upgrades / Support
RFX is available for all your support needs. Call us at 323-962-7400
Enhance your pipeline with the following products:
- Autodesk Softimage
- Autodesk 3DS Max
- Autodesk Maya