PK-Editor v2.14

From PopcornFX
Revision as of 13:46, 6 January 2023 by Hugo (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Back to anouncements
Released Oct 12th 2022.
Make sure you upgrade your runtime / plugins as well before switching to this version.

Since v2.14 there is no need to manually clear your shader cache anymore when upgrading a project from 2.13

Release highlights

Particle skinned meshes using BAT material Mesh LOD & Texture Atlas Swizzle nodes Skeleton Tree in Mesh Viewer
Particle skinned meshes using BAT material Mesh LOD & Texture Atlas Swizzle nodes Skeleton Tree in Mesh Viewer

PopcornFX 2.14 release highlights livestream

Starting at v2.12.0, the full sources of the UnrealEngine, Unity, and O3DE plugins are freely available on github:

Source code is available for everyone, can be freely used, modified and shared under the Community License terms.
Note: UE4 & UE5 plugin archives are provided as 7z archives for better compression. They can be extracted using 7zip.


64-bits Windows build MacOS build Linux-64 build
PopcornFX-Editor_v2.14.5.15603_x64.exe (Latest) NewIcon.png
PopcornFX-Editor_v2.14.5.15603_x64.pkg (Latest) NewIcon.png
PopcornFX-Editor_v2.14.5.15603_x64.tgz (Latest) NewIcon.png

Changelog 2.14.5

Builds (Jan 05th 2023)

  • Fixed #12028: Two or more integer divisions by the same value in the same nodegraph cause the optimizer to incorrectly replace the result by zero.
  • Fixed #12034: CPU backend: during peephole optimization, allow combining integer mul and adds to integer madd (already done for fp madd)
  • Fixed #12037: Upgrader: v1->v2 upgrader fails upgrading some assets due to editor-only data not supported in v2
  • Fixed #12038: UnrealEngine: random deadlock when quitting a level containing GPU simulated particles and RHI is D3D12
  • Fixed #12022: O3DE: incorrect tangents in mesh resource handler
  • Fixed #11864: Unity: static mesh resource is broken when used in physics shape property

Changelog 2.14.4

Builds (Dec 15th 2022)

  • Fixed #11993: Showing the documentation from the editor (either through F1 on nodes, or through the script editor toolbar button) opens the web browser with an outdated documentation
  • Fixed #12002: Graphic-crash with multiple spatial-layers (GPU sim)
  • Fixed #11779: Editor: crash when changing mesh attribute sampler used by D3D12 GPU sim to Box/Cone/other primitive
  • Fixed #11997: Optimizer: combination of mul/add chains by constants on integer types cause saturation on overflow, lead to totally incorrect results.
  • Fixed #11996: Script editor: Modification indicator in breadcrumb sometimes does not refresh when applying changes
  • Fixed #11995: Script editor: Right-click menu is missing items, has no icons, and does not display shortcuts
  • Fixed #11994: Script editor: No way to apply changes without knowing the shortcut Ctrl+Enter. Add a context menu entry and toolbar button
  • Fixed #11976: O3DE: Async loading of meshes cause rendering errors
  • Fixed #4006: Unity: Lit materials for CPU billboarding
  • Fixed #9410: Unity: Merge SceneMeshBuilder inside Rendering plugin
  • Fixed #12007: Unity: Add Distortion support for URP
  • Fixed #12003: Unity: 'Create Mesh Data' output mesh in a wrong folder
  • Fixed #11983: Unity: update PopcornFX simulation after a specific ECS system.
  • Fixed #11979: Unity: texture atlases for meshes
  • Fixed #11977: Unity: Change ownership of customs materials to the asset and removed it from the material factory
  • Fixed #11998: Unity: Urp Lit materials bindings have wrong mandatory shader variation

Changelog 2.14.3

Builds (Dec 2nd 2022)

  • Fixed #11973: Content-browser: .pkma files that have been modified outside the project appear as always "loaded" in the content-browser when the project is opened the next time.
  • Fixed #11972: Editor: Secondary shortcuts are not saved and reset at editor launch
  • Fixed #11945: O3DE: Distortion not working
  • Fixed #11944: O3DE: Soft particles not working in premultiplied alpha
  • Fixed #11939: O3DE: Incorrect scale and rotate order in the billboarding
  • Fixed #11956: O3DE: header-only target Gem::PopcornFX.API
  • Fixed #11946: O3DE: Use dynamic pass injection for the distortion
  • Fixed #11941: Unity: Check if dll is loaded before pulling logs from cpp
  • Fixed #11937: Unity: Drop x32 support for Linux as Unity doesn't support it anymore

Changelog 2.14.2

Builds (Nov 10th 2022)

  • Fixed #11882: Editor: GPU simulated meshes ignore the LOD pin
  • Fixed #11932: GPU sim D3D11: Using most of the '' functions unexpectedly cause a fallback to CPU sim due to a shader compile error
  • Fixed #11929: 'discretize' node does not display proper range of output value
  • Fixed #11927: 'discretize' node & script function are broken on PS5 & ISPC backends, and on all platforms when the input value is a constant
  • Fixed #11916: UnrealEngine: AnimTrack attribute samplers (Spline components) are corrupting few bytes of memory
  • Fixed #11911: Unity: Mesh sampler are broken if the sampled mesh is used in rendering
  • Fixed #11910: Unity: MaterialFactory don't show assigned customs materials
  • #11906: UnrealEngine: Add support for UE5.1

Changelog 2.14.1

Builds (Oct 20th 2022)

  • Fixed #11881: GPU simulated meshes do not support Texture Atlas
  • Fixed #11901: Atlas file thumbnails are not displayed in the property grid asset preview
  • Fixed #11887: GPU sim: transforms of shape sampler are not longer updated
  • Fixed #11886: GPU sim D3D12: random crashes when editing effect containing curves
  • Fixed #11874: GPU sim D3D12: Instabilities with effects with spatial layers
  • Fixed #11858: Add Github PopcornFX organization quick access link in the Help menu
  • Fixed #11885: Unity: Add helpers to get attributes types, name and range from the emitter component

Changelog 2.14.0

Builds (Oct 12th 2022)

Templates & Corelib

  • #11161: Skeletal Animation Texture material
  • #11839: Corelib: New node "Color Lerp" : does an interpolation between two colors, but in HSV space instead of RGB space
  • #11544: Add Restart and Reset pins to the Timer node
  • #11730: CurveOverTime template: Allow retreiving sampling cursor that was used for sampling as an output of the node
  • Fixed #11726: Trail node ignores explicit 'Velocity' input when using 'Cubic Interp Position' option, recomputes path tangents with dxdt node from position only.

Simulation & Rendering

  • #11539: Spatial-layers: allow direct queries to the spatial grid
  • #11398: GPU sim D3D12: Spatial layers performance improvements
  • #8398: Mesh renderer: Allow using texture atlases


  • Fixed #11413: User should not need to explicitly clear editor cache when opening a project with a more recent PopcornFX Editor version
  • #11526: Mesh viewer: Add a skeleton bone tree panel to visualize the bone hierarchy
  • #11523: Mesh importer: add builtin support for mesh LODs

Effect editor

  • #10229: Render opaque particles in a separate pass than the GBuffer pass, to avoid inter-particle collisions of GPU simulated particles colliding with the depth buffer
  • #10228: Dispatch GBuffer or render-target (texture attribute samplers) dependent command buffers after the GBuffer pass finished to avoid a 1-frame lag of sampled data
  • #8461: Background backdrop: Add Theta/Phi angle controls to rotate the background cubemap & gradient
  • Fixed #11846: Renderer properties are displayed in an incorrect order
  • Fixed #11844: Nodegraph: Power-of-two warning on textures is emitted on any texture resource node even if they are only used in renderers, where it is mostly OK. Should only be emitted when used for in-graph sampling
  • Fixed #11843: Nodegraph: Some textures on renderer nodes cannot be exposed to the graph
  • Fixed #11333: Node creation dialog: Typing an hexadecimal value starting with '0x...' suggests to create a float node as the top suggestion, should suggest an int node

Nodal editor

  • #11396: Node creation dialog: Allow typing ".xyz" to create a permute/swizzle/shuffle node and convert RGBA to RGB or XYZW vectors to XYZ. Allow typing any swizzle code.
  • #3281: Implement missing constructs of data-nodes-in-layergraph
  • Fixed #4896: Template inputs are 0 instead of pin value
  • Fixed #3369: Putting an event multiplier in a template and setting its properties with computations involving template inputs doesn't work
  • Fixed #8883: Renderer properties auto-export: conflict between names produces warnings and does not work

Compiler & Optimizer

  • #11757: Optimizer: Replace multiple divisions that have identical divisors by an rcp(divisor) + mul instructions
  • #11372: Nodegraph, IR, & Backends: add SLR node & instruction (logical right-shift)
  • #11371: Add a reverse-bits builtin to the nodegraph to optimize decimation effects that require doing bit interleaving by hand
  • #11148: GPU layer compilation: add an option to keep generated sources for easier troubleshooting (devs)

Plugins & Third-Party

UnrealEngine plugin

  • #11163: UnrealEngine: implement skeletal animation texture
  • #11740: UnrealEngine: Per particle LOD support for Static & Skeletal mesh particles
  • Fixed #7717: UE4: Mesh particles do not support ShaderInput3, ShaderInput2 and EmissiveColor

Unity plugin

  • #11162: Unity: implement skeletal animation textures
  • #11787: Unity: Implement level of details for mesh renderers

After-effects plugin

  • Fixed #11815: AE: PopcornFX Panel doesn't show its content.


  • v2.14.0.14121: Timer node: Replace 'Stop' by 'Pause', and add new 'Stop' control that also resets the timer

Content examples update

New "Tutorials" effects

Particle skinned meshes using BAT material Updated mesh LOD tutorial
Particle skinned meshes using BAT material
Updated mesh LOD tutorial, using MeshID or LOD

New Marketplace packages (Paid license)

FPS startup pack Alien weapons Space weapons
FPS Startup Pack (12 FX)
Alien weapons (6 FX)
Space weapons (6 FX)

New Marketplace packages (Free)

Alien weapon muzzleflash Space weapons impact Frag grenade Bullet impact on concrete
Alien weapon muzzleflash
Space weapons impact
Frag grenade
Bullet impact on concrete