Use XR Plugins
- Last UpdatedDec 04, 2023
- 2 minute read
How to use XR Plugins
Plugins are not supplied in XR projects by default. Before you can consume plugins in a project, you will need to complete two actions:
-
Copy the plugin library with all its related dependencies and configuration files into the relevant project folder. The best practice is to add a /Plugins folder in the project and use a separate subfolder for each needed plugin. The plugins together with XR Studio offer a way to do the import through the Item Template instancing of the Graphic Context Editor. See Add Instance Templates.
-
Explicitly load the plugin. This is done by including the plugin statement in scripts. Plugin node types can be declared in scripts only after the corresponding plugin load statement.
Note: In XR Studio, when loading another graphic context or reloading the open graphic context, the plugin is unreferenced. Therefore, the plugin statement must be included in linked scripts to reference again. When, the plugin is loaded the first time, its DLL cannot be moved, deleted, or removed. To do that, you have to close the XR Studio instance.
Security notes
Please be aware that only AVEVA signed assemblies are allowed as plug-in entries in the library. This ensures that third party-signed, unsigned, or self-signed assemblies are not allowed. Even with this security check in place, it is strongly recommended to restrict the plug-in folder UAC to read and execute on your deployments to further mitigate a possible DLL hijacking.
Important: We recommend that you develop your plug-in following all AVEVA SDL rules, and make sure to have your plug-in formally reviewed by the AVEVA security team before deployment. The plug-in assembly you are producing is not part of this platform security scope.