Connecter uses separate services dedicated (dedicated service) to each host software like 3ds Max, Cinema 4D, and Revit to run their instances and open assets in native file formats (e.g. *.mat, *.rfa, etc.) to execute various automated tasks like generating previews, extracting metadata and others. These processes get completed in the background without interfering with the user's work. Each dedicated service can operate multiple dedicated instances of the host software to execute different or multiple tasks in parallel.
When the user selects an asset in a file format supported by one of the Connecter dedicated services, the service will use a separate instance of the host software (dedicated instance) to open the asset content in the background and gather and generate various metadata to show to the user in Connecter. This data gets stored in the user's local cache so that the next time the user selects or interacts with the same asset, all metadata displays instantly. The services also use dedicated instances to perform other actions with the assets, like generating custom previews and operations with materials in 3ds Max material libraries.
Based on the user's interaction, the service automatically starts a new instance if no one is active. To be able to use dedicated instances, each service requires the following:
- The host software is fully functional (e.g. initialization and licensing, addons and plugins, etc.).
- The user must do the initial setup about which host software version to use as a dedicated instance.
When the user selects an asset for which there's no cached metadata available, the 3ds Max Dedicated Service checks whether a dedicated global instance is running:
- If it's running, the service instructs the instance to open the asset and provide its metadata or execute the required operations.
- If it is not running, the service checks if the user has already successfully set up the dedicated instance (which version of the host software to use).
Similar checks are done for Cinema 4D and Revit dedicated instances.