The PopcornFX v2.17 build is now available!
Make sure you upgrade your runtime / plugins before switching to this version.
You can also check out the changelog on the wiki, where you’ll find all download links and updated patch nodes.
Note: UE4 & UE5 plugin archives are provided as 7z archives for better compression. They can be extracted using 7zip.
Highlights
Check out the PopcornFX 2.17 release highlights livestream, where a few members of the team dive into some of the new features:
Changelog 2.17.4
Builds (Aug 31st 2023)
- Editor
- Plugins
- UnrealEngine Win/Linux/Mac: UnrealEngine_PopcornFXPlugin_2.17.4_Win64_Linux64_Mac64.7z
- UnrealEngine iOS/Android: UnrealEngine_PopcornFXPlugin_2.17.4_iOS_Android.7z
- Unity Win/Linux/Mac/iOS/Android: Unity_PopcornFXPlugin_v2.17.4_Win_Linux_MacOS_Android_iOS.zip
- Unity Win/Linux/Mac: Unity_PopcornFXPlugin_v2.17.4_Win_Linux_MacOS.zip
- Unity URP: UnityURP_PopcornFXPlugin_v2.17.4.zip
- Unity HDRP: UnityHDRP_PopcornFXPlugin_v2.17.4.zip
- AfterEffects Win: AfterEffects_PopcornFXPlugin_v2.17.4_Win64.exe
- AfterEffects Mac: AfterEffects_PopcornFXPlugin_v2.17.4_Mac64.pkg
- O3DE Gem Win/Linux/Mac: O3DE_PopcornFXGem_v2.17.4_Win64_Linux64_Mac64.zip
- Fixed #12852: GPU Texture density sampler: Density textures specified through a property in the propertygrid, without a texture node, do not work in the GPU sim
- Fixed #12773: Effect editor: Big memory leak in D3D12 with skeletal mesh backdrops when seeking in the effect timeline
- Fixed #12753: Nodal editor: Crash on Ctrl+G when the final template has more outputs than inputs (since v2.17.1)
- Fixed #12828: Nodal editor: Using the 0?1 search syntax to create a rand node does not work with multi-dimensional vectors, for example: 0,0,0 ? 1,1,1 does not work
- Fixed #12357: Editor-Mac: cannot import any package
- Fixed #12829: Unity: Diffuse ramp show compression artefacts on URP
- Fixed #12427: Unity: Add auto detect of render pipeline to create the right factory
- All v2.15.13 LTS fixes:
- Fixed #12791: GPU sim D3D12: using sim.wave.or() and sim.wave.and() breaks shader compilation
- Fixed #12800: UnrealEngine: UE5.3 support
- Fixed #12798: UnrealEngine: Drop support for Armv7 (32bit) on UE4.27
- Fixed #12824: UnrealEngine: Update plugin icons to better match UE5 UI style
- Fixed #12856: UnrealEngine: Mesh materials aren’t two sided by default
- Fixed #12855: UnrealEngine: AlphaRemap does not work with mesh particles
- Fixed #12854: UnrealEngine: AlphaBlended meshes default to an Additive material once imported
- Fixed #12780: Unity: ResetAndUnloadAllEffects should clear loaded dependencies
- Fixed #12779: Unity: optimize matching dependencies in resources load
- Fixed #12769: Unity: Use SetVertexBufferParams and SetIndexBufferParams to create the mesh buffers
- Fixed #12844: O3DE: PK_RETAIL not defined for release builds on platforms other than linux
- Fixed #12823: O3DE: RendererLoader does not keeps a reference for model assets
- Fixed #12799: O3DE: Gem fails compilation in release configuration on Linux
- Fixed #12771: O3DE: Failed to get model asset for mesh renderers
- All v2.15.12 LTS fixes since v2.17.3:
Changelog 2.17.3
Builds (Jul 27th 2023)
- Editor
- Plugins
- UnrealEngine Win/Linux/Mac: UnrealEngine_PopcornFXPlugin_2.17.3_Win64_Linux64_Mac64.7z
- UnrealEngine iOS/Android: UnrealEngine_PopcornFXPlugin_2.17.3_iOS_Android.7z
- Unity Win/Linux/Mac/iOS/Android: Unity_PopcornFXPlugin_v2.17.3_Win_Linux_MacOS_Android_iOS.zip
- Unity Win/Linux/Mac: Unity_PopcornFXPlugin_v2.17.3_Win_Linux_MacOS.zip
- Unity URP: UnityURP_PopcornFXPlugin_v2.17.3.zip
- Unity HDRP: UnityHDRP_PopcornFXPlugin_v2.17.3.zip
- AfterEffects Win: AfterEffects_PopcornFXPlugin_v2.17.3_Win64.exe
- AfterEffects Mac: AfterEffects_PopcornFXPlugin_v2.17.3_Mac64.pkg
- O3DE Gem Win/Linux/Mac: O3DE_PopcornFXGem_v2.17.3_Win64_Linux64_Mac64.zip
- Fixed #12727: GPU sim: Layers that do not use any parent payload do not properly apply effect instance transforms, particles ignore the xform nodes and appear at world origin
- Fixed #12735: GPU sim D3D11: Crash when sampled mesh cannot be loaded
- Fixed #12689: GPU sim: undefined behavior when layer generate allocations higher than 4Gib
- Fixed #12711: Baking effects with the keep-sources & inline all dependencies options does not remove the ‘Public’ flag of templates it inlines
- All v2.15.12 LTS fixes:
- Fixed #12734: Runtime: cpu detection not working on macos arm64
- Fixed #12729: Editor crashes when deleting a node if its IR instruction is selected
- Fixed #8397: Editor: Incorrect translation of renderer features
- Fixed #12746: UnrealEngine: ribbon segments incorrectly apply particle diffuse colors, emissive colors..
- Fixed #12739: Unity: UnityPluginLoad is not called on windows x32
- Fixed #12736: Unity: undefined symbols if building for iOS
- Fixed #12733: Unity: Mac silicon support
- Fixed #12713: Unity: DllNotFoundException on linux
- Fixed #12707: O3DE: Uninitialized local variable warning as error in track view attributes
Changelog 2.17.2
Builds (Jul 13th 2023)
- Editor
- Plugins
- UnrealEngine Win/Linux/Mac: UnrealEngine_PopcornFXPlugin_2.17.2_Win64_Linux64_Mac64.7z
- UnrealEngine iOS/Android: UnrealEngine_PopcornFXPlugin_2.17.2_iOS_Android.7z
- Unity Win/Linux/Mac/iOS/Android: Unity_PopcornFXPlugin_v2.17.2_Win_Linux_MacOS_Android_iOS.zip
- Unity Win/Linux/Mac: Unity_PopcornFXPlugin_v2.17.2_Win_Linux_MacOS.zip
- Unity URP: UnityURP_PopcornFXPlugin_v2.17.2.zip
- Unity HDRP: UnityHDRP_PopcornFXPlugin_v2.17.2.zip
- AfterEffects Win: AfterEffects_PopcornFXPlugin_v2.17.2_Win64.exe
- AfterEffects Mac: AfterEffects_PopcornFXPlugin_v2.17.2_Mac64.pkg
- O3DE Gem Win/Linux/Mac: O3DE_PopcornFXGem_v2.17.2_Win64_Linux64_Mac64.zip
- Fixed #12679: Unity: Missing renderers in effects with light renderers
- Fixed #12678: Unity: Binding of normal map fails during import
- Fixed #12447: Unity: Add Sound/Light/Decal renderers infos to PKFxAssetEffect Inspector
- All new v2.16.6 & v2.15.11 LTS fixes since v2.17.1:
- Fixed #5233: Spatial layer : graph build error when exporting spatial layer pin in the layergraph
- Fixed #12640: Node Script: Closing a scope without the semicolon termination token compiles fine and produces undefined behavior
- Fixed #12139: Output event of a layer is broken when multiple event nodes are wired into it and one of them is disabled and has a passthroug node along the wire. Also displays incorrect warning.
- Fixed #11884: Data nodes in layergraph: Changing properties in the layergraph require to manuall hit the ‘recompile’ button to see the changes
- Fixed #12690: Attribute / Effect interface panel: Cannot roll-up categories, annoying when there are large attribute lists
- Fixed #12677: Nodal editor: When creating an input node from a renderer pin, incorrectly auto-names the new input with the category prefix. Ex: “General.Size”
- Fixed #12193: Nodal editor: deadlock when deleting some dangling passthrough nodes
- Fixed #12270: Node creation dialog: Cannot set focus back to search box with keyboard once ‘down’ arrow has been pressed at least once to select an item in the list
- Fixed #8847: Color picker: Picking a screen color is bugged on high-dpi screen setups, does not pick the correct colors on secondary screens that are on the left of the primary screen
- Fixed #12680: Color picker: When picking screen color and moving back and forth between screens in a multi-screen setup, sometimes big black and white squares appear and follow the cursor, obstructing the things underneath
- Fixed #12672: Color-picker: in attribute panel incorrectly interprets the colors as sRGB when in fact they are linear, mismatches the color displayed in the propertygrid and in the viewport.
- Fixed #5232: Layergraph : changing a datacurve link in a layer input pin, doesn’t trigger a graph rebuild
- Fixed #5924: XForm node emits warning when the layer is triggered from two different events, and one of them adds a ‘Position’ or ‘Orientation’ payload, but not the other.
- Fixed #12682: Sometimes invalid effects are written, with null pins or connected pins in some objects
- Fixed #12674: Users tied to an organization without any seat assigned see a ‘license expired’ popup when logging in
- Fixed #12114: Mesh viewer: importing animations/skeleton in a mesh doesn’t refresh the viewport
Changelog 2.17.1
Builds (Jul 6th 2023)
- Editor
- Plugins
- UnrealEngine Win/Linux/Mac: UnrealEngine_PopcornFXPlugin_2.17.1_Win64_Linux64_Mac64.7z
- UnrealEngine iOS/Android: UnrealEngine_PopcornFXPlugin_2.17.1_iOS_Android.7z
- Unity Win/Linux/Mac/iOS/Android: Unity_PopcornFXPlugin_v2.17.1_Win_Linux_MacOS_Android_iOS.zip
- Unity Win/Linux/Mac: Unity_PopcornFXPlugin_v2.17.1_Win_Linux_MacOS.zip
- Unity URP: UnityURP_PopcornFXPlugin_v2.17.1.zip
- Unity HDRP: UnityHDRP_PopcornFXPlugin_v2.17.1.zip
- AfterEffects Win: AfterEffects_PopcornFXPlugin_v2.17.1_Win64.exe
- AfterEffects Mac: AfterEffects_PopcornFXPlugin_v2.17.1_Mac64.pkg
- O3DE Gem Win/Linux/Mac: O3DE_PopcornFXGem_v2.17.1_Win64_Linux64_Mac64.zip
- Fixed #12664: GPU simulation cache used by editor is never reused when the effect editor is reopened on the same effect: Every time everything gets recompiled.
- Fixed #12663: GPU simulation fails to compile after cache is cleared while effect editor is running, requires closing and reopening the effect editor window
- Fixed #12614: GPU sim: particles randomly extract invalid payloads when more than 256 particles are spawned in a frame
- Fixed #12606: GPU Sim: shape misc functions don’t behave like expected for ellipsoid and capsules
- #12625: Editor: Add a ‘Cache Information’ submenu in the ‘Edit > Cache’ menu, that displays more information on the status of the different caches and how much space they take
- Fixed #12644: Unity: Standalone build don’t compile
- #12496: Unity: Add emitter visibility support
- #12495: Unity: Add per emitter timescale support
- All v2.16.6 fixes:
- Fixed #12617: GPU sim D3D11: mesh sampling is broken when the mesh resource is specified through an inline property instead of through a resource node
- Fixed #12605: Crash when sampling mesh with and without pcoords
- Fixed #12630: Nodal editor: Sim location coloring is not displayed correctly in some effects
- Fixed #12518: Using the debugger in a layer that has both CPU and GPU particles causes all subsequent layer compiles to stall the main thread waiting for sim shaders to be compiled
- #12542: Unity: Add errors on PKFxAsset Inspector if effect contains differents quality levels than the current one
- Fixed #12541: Unity: On Plugin import, sync Quality settings
- Fixed #12587: AE: Crash occuring on project info file creation
- Fixed #12586: AE: Reimporting effect reset transform and attributes
- #12585: AE: improve render time for scenes containing multiple effects
- Fixed #12580: AE: Crash on effect load
- Fixed #12338: AE: Reimporting FX reset all parameters
- All v2.15.11 LTS fixes:
- Fixed #12660: Nodal Editor: Grouping nodes sometimes swaps the input and output names
- Fixed #12296: Nodal Editor: Grouping nodes wired in renderer nodes generate verbose names (ie. ‘General.Size’)
- Fixed #12608: GPU sim D3D12: particle runtime stats are not working anymore
- Fixed #12658: CPU simulation: Modulo operator/node returns incorrect results for floating-point modulos with some period values when the simulation back size contains 8 particles or more
- Fixed #12656: UnrealEngine: effects sampling mesh/skeletal mesh attribute samplers do not work if attribute sampler has ‘skinTangents’ enabled
- Fixed #12602: UnrealEngine: FlipUVs & TextureUVs’ FlipU, FlipV, RotateTexture incorrectly handled
- Fixed #12597: UnrealEngine: crash when opening/closing some levels
- Fixed #12596: UnrealEngine: Ribbons CorrectDeformation feature causes particles to disappear
- Fixed #12600: Unity: Incorrect camera culling mask when the distortion is disabled
- Fixed #12592: Unity: texture missing from created material
- Fixed #12666: O3DE: Asset processor fails on fga assets
- Fixed #12659: O3DE: Wind sim interface is not working en editor mode
- Fixed #12661: O3DE: errors on the asset processor even if the effect baked successfully
- Fixed #12651: O3DE: Particles rendering is broken if an atlas failed to load
- Fixed #12642: O3DE: pkat copy builder is not registered correctly
- Fixed #12639: O3DE: AssetBuilder exits abnormally on a baking failure
- Fixed #12612: O3DE: assert in CLightBatchDrawer::EmitDrawCall since range stream is not contiguous
- Fixed #12634: O3DE: Linking error on linux in debug config (missing bfd)
- Fixed #12635: O3DE: does not link with shipping libraries in release
Changelog 2.17.0
Builds (Jun 28th 2023)
- Editor
- Plugins
- UnrealEngine Win/Linux/Mac: UnrealEngine_PopcornFXPlugin_2.17.0_Win64_Linux64_Mac64.7z
- UnrealEngine iOS/Android: UnrealEngine_PopcornFXPlugin_2.17.0_iOS_Android.7z
- Unity Win/Linux/Mac/iOS/Android: Unity_PopcornFXPlugin_v2.17.0_Win_Linux_MacOS_Android_iOS.zip
- Unity Win/Linux/Mac: Unity_PopcornFXPlugin_v2.17.0_Win_Linux_MacOS.zip
- Unity URP: UnityURP_PopcornFXPlugin_v2.17.0.zip
- Unity HDRP: UnityHDRP_PopcornFXPlugin_v2.17.0.zip
- AfterEffects Win: AfterEffects_PopcornFXPlugin_v2.17.0_Win64.exe
- AfterEffects Mac: AfterEffects_PopcornFXPlugin_v2.17.0_Mac64.pkg
- O3DE Gem Win/Linux/Mac: O3DE_PopcornFXGem_v2.17.0_Win64_Linux64_Mac64.zip
Templates & Corelib
- #12474: Physics node: add builtin support for extracting collision surface type
- #12566: Event nodes: Allow specifying an orientation payload directly through an Orientation pin rather than having to override the builtin Orientation payload on the event wire that comes out of the template node
- #12506: debug.drawBox helper: Add additional pins to allow drawing a box using its min and max corners
- #12286: Add an input ‘Scale’ to some default templates: scene.dt, scene.time, effect.dt, effect.age, self.age
- #12350: New ‘view.isVisible()’ helpers to test visibility of primitives against the camera frustum: point, sphere, bbox
- Fixed #12029: Collision node: local space shape collision position and normal are not transformed back to worldspace
- Fixed #12312: ‘rotate_aa’ node: can’t specify an inline value for the ‘Axis’ input
- Fixed #12140: SimpleOnDeath and OnDeath nodes are incorrectly named (upgrade patches existing effects)
- Fixed #12545: effect.age: Does not correctly take effect.timeScale into account, outputs realtime instead of scaled time
- Fixed #12572: Corelib: ‘view.***’ helpers do not have the proper 3D_Coordinate & transform mode semantics on their input & outputs
Simulation & Rendering
- #12492: SetLife node: Now listens to ‘effect.Stop()’ by default when stopping the effect in-engine and auto-kills particles whose life has been set to ‘infinity’ when their effect gets stopped. Add an option to the SetLife node to disable the default check if needed.
- #12408: GPU sim: Add payloads support in spawn IR
- #12483: GPU sim: Spatial layer sort improvements
- #11181: GPU sim: Implement shape.contains/intersect*/project*/sampleDistanceField for primitives
- #7069: GPU sim: add support for texture sample & remap density
- #4755: GPU sim: spawn IR cannot be executed on GPU if layer contains XForm nodes
- #2003: GPU sim: Implement shape project for non-mesh shapes
- #12352: Root events: send ‘EmittedCount’ payloads from the timelines
- Fixed #12454: Using GPU mesh attribute samplers only sample static data, cannot be used to sample skinned meshes (at least in-editor)
- Fixed #12507: GPU sim: Trying to access the surface property of a mesh attribute sampler fails to compile and makes the sim fallback to CPU
Nodal editor
- #12355: Add a way to get the bounding-box of a shape in the simulation graph
- #6969: Add description tooltips on builtin nodes & pins
- #12493: Autofit view to graph bounds when no specific graph location was captured for the current nodegraph
- #12070: Debugger: Orientations should be displayed as easier to understand euler angles
- Fixed #12629: Nodal editor: ‘SimLocation’ and ‘Performance’ view modes do not work when changing between layers and the simulation is paused.
Effect editor
- #11859: Property grid: allow copy/pasting entire property values (ie. float3), using right-click on the property name
- #11331: Better control over CPU-sim layer page sizes
- #12414: Still run the simulation when the sim-speed slider is set to zero, but simulation is not in the ‘Paused’ state
- #10214: Add a ‘Cancel’ button to the compilation progress dialog when opening an effect.
Editor (General)
- #12532: Editor: allow saving / loading entire editor settings instead of individual categories only
- #12511: User settings: Renamed confusing ‘ZoomExtents’ and ‘ResetExtents’ to the more explicit ‘FitView’ and ‘ResetView’
- Fixed #12512: Editor user settings: Cannot override shortcuts that have the same name across different editor sections (Ex: “FitView” in the curve editor, nodal editor, viewports, etc..)
- Fixed #12627: Content browser often does not save last viewed folder when restarting the editor
UnrealEngine plugin
- #12609: UnrealEngine: Add GPU timings to profiler HUD
Unity plugin
- #12497: Unity: Add teleport emitter support
- #12494: Unity: Add Quaternion attribute support
- #12390: Unity: Sound Renderers
- #12449: Unity: Add “Import pkkg” command in “Assets/PopcornFX” menu
O3DE plugin
- #12607: O3DE: Allow retrieving surface types of particle collisions