The Unity plugin is compatible with Unity’s HDRP, URP and legacy renderers (some rendering features are only compatible with HDRP) however it is currently difficult to maintain our Shader graph and HDRP/URP integrations across Unity versions, due to missing API entry points.
Plugins are provided per platform to reduce archive size (ie. Win64, Mac64), you can download all the necessary archives for each target platforms of your project.
Note: PopcornFX v1 Unity plugin is not compatible with PopcornFX v2. PopcornFX v1 effects cannot be run with a PopcornFX v2 plugin.
- Download and extract the package and if necessary the package for URP and/or HDRP
- Import them using the package manager
- Select the PkFXSettings.asset in the assets
- It should be created under “Assets/Resources/” when Unity starts.
- Set the source pack path using the button : “Source Effects Pack” and selecting your PopcornFX project (where the [ProjectName].pkproj is located).
- Set the baked path inside your Unity project. It default to “Assets/PopcornFXAssets/”.
- If your project is using URP or HDRP, create the corresponding PKFxMaterialFactory by right-clicking in your asset tree “Create >PopcornFX > [HDRP/URP] Material Factory.
- It should be created under “Assets/Resources”.
- Select the PkFXSettings.asset and in the category “Rendering”, set the material factory to the newly created asset.
The Plugin is split between several components:
- One main package (com.persistant-studios.popcornfx) contains:
- Native plugins (one per platform) handling the PopcornFX Runtime and emitting all the draw calls
- Base collection of shaders and materials. Those are allowing Legacy Rendering as well as a shader library for other RP
- Script folder contains:
- Internal scripts. These do not have a public interface and therefore will not be maintained. It is not recommended to directly use those as change can occur without warnings.
- Assets definitions, allowing PopcornFX custom file formats to be recognized by Unity.
- Material factories, main entry points for modifying shader bindings, customizing rendering and adding support for different RPs.
- Scripts defining the public API for the plugin: “Components”, “PKFxManager”, “PKFxEmitter”, “PKFxAttribute” and “PKFxSampler”.
- Editor assembly contains necessary scripts for the plugin to expose its interface to Unity Editor.
- com.persistant-studios.popcornfx.urp and com.persistant-studios.popcornfx.hdrp are optional packages if your are using URP or HDRP.
- Collection of shaders and materials allowing rendering for the corresponding render pipeline.
- Material factory default implementation for the corresponding render pipeline.