PK-Editor v2.9

From PopcornFX
Revision as of 12:14, 29 April 2021 by JBilalte (talk | contribs)
Jump to navigation Jump to search

Back to anouncements
Released Apr 9th 2021.
make sure you upgrade your runtime / plugins as well before switching to this version.

! IMPORTANT ! After upgrading a project to 2.9.0, make sure you clear your shader-cache by doing 'Edit > Clear shader cache' !

Release highlights

New material: 6way lightmap Initial support for GPU spatial layers New material: Parallax raymarch Animated thumbnails
New material: 6way lightmap Initial GPU support for spatial layers New material: Parallax raymarch Animated thumbnails


64-bits Windows build MacOS build Linux-64 build
PopcornFX-Editor_v2.9.1.6950_x64.exe (Latest) NewIcon.png
PopcornFX-Editor_v2.9.1.6950_x64.pkg [Experimental] (Latest) NewIcon.png
PopcornFX-Editor_v2.9.0.6738_x64.pkg [Experimental]
PopcornFX-Editor_v2.9.1.6950_x64.tgz (Latest) NewIcon.png

Changelog 2.9.2

Builds Pending (Scheduled for apr 29th 2021)

  • Fixed #7514: Rendering: CameraSortOffset and GlobalSortOverride is ignored for mesh particles
  • Fixed #7607: Glitch with transform UV, altas and negative atlas ID (regression since v2.9.0)
  • Fixed #7487: GPU sim: Vertex-color-weighted mesh sampling does not work: Uses uniform sampling, ignores the vertex colors.
  • Fixed #5493: GPU sim D3D12: sampling mesh submesh ids fallback to submesh id 0
  • Fixed #7490: Effect editor: Crash when closing an effect and not saving timeline modifications
  • Fixed #7489: Effect editor: Crash when adding new timeline payload when keyframe is selected
  • Fixed #7520: Effect editor: When using an animated skinned mesh backdrop with multiple sub-meshes, only the first submesh is animated
  • Fixed #7521: Effect editor: Occasional crash when using animated skinned-mesh backdrops and messing too much with the animation file, bug is here since at least v2.5
  • Fixed #7499: Effect editor: Mesh backdrop: Crash when setting an animation that doesn't match the number of bones of the skeletal mesh (more bones in anim than in skeleton).
  • Fixed #7498: Effect editor: Mesh backdrop: Crash when setting both the 'Mesh Path' and 'Animation Path' properties to a file which has only animations, no geometry
  • Fixed #7528: Effect backdrop: Changing grid settings does not properly update attached mesh backdrop when 'FollowInstances' is set to 'true' in the mesh backdrop
  • Fixed #7537: Effect backdrop: Sometimes respawns attached mesh backdrops incorrectly when seeking in the timeline
  • Fixed #7535: Effect backdrop does not properly start animated mesh backdrops when they are set to follow each effect instance
  • Fixed #7629: Effect backdrop setup with an external effect does not load the external effect properly
  • Fixed #7526: Effect editor: Skinned mesh backdrops with rigid-skinned submeshes will produce visual glitches and their first vertex will never be properly skinned
  • Fixed #7525: Effect editor: Still consumes CPU resources for skinning backdrops even when out of focus and in CPU saving mode
  • Fixed #7530: Mesh importer: Importing animations has terrible performance, extremely slow
  • Fixed #7502: Mesh importer: Does not display animation information when no geometry is imported
  • Fixed #7523: Mesh importer: Switching project axis system does not update some panels & visual infos in the viewport (such as mesh bboxes)
  • Fixed #7616: Mesh importer: UV panel should show a single UV set at any one time. Currently shows UVs of all meshes on top of each other
  • Fixed #7497: Mesh importer: Assert when importing a mesh with a skeleton but no geometry
  • Fixed #7522: Mesh importer: Some skeletal animations are imported with an incorrect axis system
  • Fixed #7519: Mesh importer: Memory panel shows no information about the footprint of the animation files
  • Fixed #7518: Mesh importer: Imported animation files are always imported as text instead of binary, causes ~4-5x large file than necessary
  • Fixed #7615: Occasional crash when editor background-analyzes effects which contain animtrack samplers or animtrack backdrops
  • Fixed #7501: Propertygrid: Asset picker does not display helpful information for skinned meshes & animations.
  • Fixed #7532: Propertygrid: Asset picker has no tooltip, hard to use with long file paths, requires resizing the UI
  • Fixed #7617: Animated thumbnails: Cannot capture animated thumbnails from the Mesh, VectorField, and FeatureSet viewports, only from the Effect viewport.
  • Fixed #7619: Animated thumbnails: Attempting to capture a static thumbnail while an animated thumbnail is being captured messes-up the static tumbnails and stops the animated thumbnail capture.
  • Fixed #7410: Animated thumbnails: Resetting the effect while an animated thumbnail is being captured messes-up D3D rendering, ends up crashing when closing the editor
  • Fixed #7597: Sometimes crashes when upgrading a project to the next version (ex: 2.8 -> 2.9), opening the project, then reverting it back and opening it with the previous version
  • Fixed #7531: Content browser: Animation length of animation files is displayed truncated to the nearest integer. Animations below 1 second are displayed as having no animation.
  • Fixed #7513: Texture viewer: sampling preview ignores RGBA filter
  • Fixed #7570: FXAA post-effect does not work in mesh importer window, only in effect editor
  • Fixed #7630: PNG loader fails loading some images due to internal libpng error, causes memory leaks
  • Fixed #4605: UE4: Some effects fail to load in cooked builds
  • Fixed #7609: UE4: Compilation errors when cooking project on Win64
  • Fixed #7608: UE4: Collision filters aren't correct when creating new UE4 project
  • Fixed #7492: UE4: PopcornFXScene bounds are incorrect, leading to rendering artefacts and prevents culling
  • Fixed #7491: UE4: Bounds are not displayed when selecting PopcornFXSceneComponent and "Bounds" debug mode is enabled in UE4 viewport
  • Fixed #7494: UE4: Billboards with float2 size and rotation are incorrectly rendered when using vertex shader billboarding
  • Fixed #7493: UE4: Active draw batch count isn't displayed anymore in PopcornFX stats

Changelog 2.9.1

Builds (Apr 22nd 2021)

  • Fixed #7300: Random crash when opening or recompiling effects
  • Fixed #7446: Editor: upgrade v2.9.0.6568 breaks auto-exported values on layer nodes
  • Fixed #5492: GPU sim D3D11: particles are not visible when sampling a mesh
  • Fixed #6475: GPU sim D3D12: Small memory leak when using curve samplers
  • Fixed #7408: Curve-folding to polynomial function breaks the VRP analysis (so some optimizations are missed)
  • Fixed #7407: CPU billboarding: incorrect U axis computation
  • Fixed #7308: Material editor: can't undo after saving
  • Fixed #6731: Changing curves does not properly update the value-range of the sampler node output pin
  • Fixed #7445: Animated thumbnails: Editor does not warn about unused dangling animated thumbnails, unlike regular thumbnails.
  • Fixed #7444: Animated thumbnails: Not properly renamed when renaming the effect
  • Fixed #7442: Animated thumbnails: Selecting multiple assets with animated thumbs excessively degrates UI performance
  • Fixed #7441: Animated thumbnails: Not included in a package when exporting an effect into a package.
  • Fixed #7404: Animated thumbnails: Zero user feedback when the capture is running and when it has finished. If the effect editor is closed before it's finished, the thumbnail is not saved.
  • Fixed #7479: UE4: Occasional crash when billboard particles are rendered with CPU billboarding and scene casts shadows
  • Fixed #7448: UE4: plugin prevents blueprint nativization if blueprint contains any reference to PopcornFX
  • Fixed #7464: Unity: Standalone build is broken in legacy rendering pipeline
  • Fixed #7462: Unity: Atlas rendering feature is disabled after importing effects
  • #6506: Unity: Added support for triangle Renderer
  • Fixed #7438: AE: expose downsampling params to Image/Video samplers

Changelog 2.9.0

Builds (Apr 9th 2021)

  • Windows: PopcornFX-Editor_v2.9.0.6738_x64.exe
  • macOS: PopcornFX-Editor_v2.9.0.6738_x64.pkg
  • Linux: PopcornFX-Editor_v2.9.0.6738_x64.tgz

Assets & core-lib

  • Fixed #7016: The self.age node doesn't properly take the effect time-scale into account
  • Fixed #6992: Dynamics node: Expose as a public template
  • Fixed #6233: Rigid VATs diffuse color is taken into account while it shouldn't
  • Fixed #7399: Event multiplier: Allow triggering 'OnDeath' event even when effect is stopped
  • #7036: EventVersionSwitch, VersionTest, VersionSwitch nodes are incorrectly named
  • #6997: Render-features: Write proper descriptions for input pins
  • #6996: Timer node: Expose "Enabled" and "TimeScale" pins by default, don't expose "Start" and "Stop" by default
  • #6991: Physics node: Add new output "DistanceTravelled"
  • #6833: Add 'view position to world', 'view direction to world', 'world position to view', and 'world direction to view' helper nodes
  • #6766: Texture node: 'SampleGammaSpace' property is confusing, split into more explicit 'SourceGamma' and 'OutputGamma' properties


  • Fixed #7071: GPU sim: layers containing several texture samples fallback to CPU sim
  • Fixed #6422: Particle mediums consume lots of "non-particle" memory.
  • #7304: GPU sim PS5: Initial implementation of the GPU simulation for PS5
  • #5356: GPU sim: add support for ribbon renderers in editor
  • #7398: GPU Sim: First implemention of spatial-layers
  • #7239: GPU sim: view.orientation is not implemented
  • #6958: GPU sim D3D12: Poor performance and high CPU overhead


  • Fixed #7327: Rendering interface editor: several rendering feature with the same name can be added while it's not supported
  • Fixed #7326: Rendering interface editor: several rendering feature properties with the same name can be added while it's not supported
  • Fixed #7310: Rendering interface editor: rendering feature properties do not refresh after adding new properties
  • Fixed #7060: Ribbon CPU bb: correct deformation discrepancy in regards with flip U-V
  • #7372: Texture atlases: Lifted limit of 16x16 tiles
  • #6872: Rendering: Clamp diffuse alpha to 0-1 range
  • #6757: Rendering interface: hide unrecognized properties when editing rendering feature properties
  • #6561: Rendering: 6-way lightmap example material
  • #6560: 2D Volumetric rendering example material for billboard particles
  • #7565: Materials: Volumetric rendering example material
  • #6436: Materials: new set of experimental materials with factorized shader code
  • #6051: Shader - Transform UVs Rotate (change Radians to degrees)
  • #7564: Material editor: Add support for including external shader files
  • #2825: Material editor: 3D viewport


  • #7567: Experimental UI auto-translation using google translate API
  • Fixed #7376: Editor: importing a package does not generate version control transactions
  • Fixed #7325: Editor: Upgrading a project sometimes corrupts the written version on the upgraded .pkproj file
  • Fixed #7321: Editor: crash when using a material containing duplicated rendering feature properties
  • Fixed #6942: Asset picker: pasting an absolute file path with backslashes, that is contained in the project is not accepted as a valid input
  • Fixed #6848: Asset baker: baking dependencies bakes resources while they are unused by the effect
  • Fixed #5418: Asset dependencies window: Does not remember window layout / size.
  • #6782: Editor: move effects presets into a different folder
  • #6563: Editor: effects runtime memory inspector / visualization
  • #7503: Editor: Evaluate simple math expressions in property grid numerical text boxes
  • #6375: Content browser: Display mesh asset details (triangle count, vertex count, submesh count, animation info, ...)
  • #6374: Content browser: Display vector-field asset details (dimensions, format)
  • #6373: Content browser: Display texture asset details (dimensions, format)
  • #5736: Content browser: Content browser: Animated effect thumbnails
  • #6371: Mesh importer: Add option to clamp UV & Color streams to predetermined values (ex: [0,1] range)
  • #6349: Mesh importer: add default color generation option for imported meshes that do not have a valid color stream
  • #6377: Mesh importer: Allow displaying a default debug checkerboard texture to visualize UV mapping & density in the viewport
  • #6348: Editor: focus assets selected in package importer window after import is complete
  • #6448: Editor: Allow controlling '3D_Coordinates' attributes using the viewport gizmo
  • #4606: View .pkpr files in the editor: Double-click on a .pkpr to open it

Editor (macOS)

  • Fixed #7320: macOS editor: EXR files cannot be loaded
  • Fixed #3738: macOS editor displays no particles on some machines.
  • Fixed #7354: RHI: CopyTexture not implemented on Metal, breaks multiple editor features (cubemaps, animated thumbnails, ...)
  • Many fixes on the macOS editor build

Effect editor

  • Fixed #7312: Curve editor: When curve quality is not 'Exact', the curve editor doesn't display the real lower-precision curve that gets sampled at runtime
  • Fixed #7234: Selecting light renderers while paused causes a display glitch
  • #7392: Animtrack backdrop: Cannot be offset/rotated/scaled
  • #6760: Improve granularity of progressbar when opening an effect that takes a long time to open
  • #6752: Display material thumbnail in renderer property grid
  • #5951: Curves: Add 'step' mode in addition to 'linear' and 'spline'
  • #1286: Compiler panel: Display combined timings and stats of all selected instructions

Nodal editor

  • Fixed #7074: Editor: can't auto-export properties sharing the same name from a renderer even if they are from different rendering features
  • Fixed #6834: Curve preset 'blackbody normalized' can't be used as a 'Color' curve like the other color gradients, because it's a float3 curve, not a float4 curve
  • #7236: Nodal editor search: Add an option to search only in the current effect: IE, don't dive into external templates
  • #6486: Nodal editor: Make it more visually explicit when viewing a sim interface graph.

Graph compiler & optimizer

  • Fixed #7001: Graph compiler warning: Reading uninitialized variable
  • Fixed #6761: ISPC sim: Fails compiling when layer uses 'sim.isRunningOnGPU()' or 'sim.backendType()'
  • Fixed #6238: Compilation pipeline freezes (AssetBaker, EffectEditor), whenever a commandline freezes. Add user-configurable timeout.
  • #6748: Compiler: Fold curves to polynomial functions when they are cheaper to evaluate

Plugins & Third-Party

UE4 plugin

  • Fixed #7306: UE4: PopcornFX SDK profile nodes do not appear in Unreal Insights in UE4.26
  • Fixed #7298: UE4: Occasional crashes when manually reloading effects in editor or when re-importing an effect, while it has GPU simulated layers active
  • #7274: UE4: Prompt to patch distortion textures when importing effects
  • #6971: UE4: Effects played in editor should have the 'editor' tag, allowing to keep debug display in editor but stripped in cooked builds
  • #6892: UE4: GPU simulation settings rework
  • #6891: UE4: HUD profiler improvements
  • #6890: UE4: Prewarm support
  • #4273: UE4: Scalability settings support

Unity plugin

  • Fixed #7383: Unity: Bool attribute default values are ignored
  • Fixed #7370: Unity: DefaultMaterialFactory default values are null
  • #4054: Unity: Add support for TransformAllParticles()

Lumberyard plugin

  • #7221: LY: Handle overdraw debug in PopcornFX shaders
  • #6898: LY: Prewarm support

After-effects plugin

  • Fixed #5838: AE: Reloading Fx doesn't refresh it if new version is available
  • #5960: AE: Added Reimport button in emitter interface to hotreload effects


  • v2.9.0.4341: Renderer transform UVs feature: rotation now with angle semantic (expressed as degrees)
  • v2.9.0.4890: Texture node: Split 'SampleGammaSpace' property into 'SourceGamma' and 'OutputGamma'
  • v2.9.0.4990: Move & rename 'Editor/Templates/*.pkfx' to 'Editor/Presets/Effects/*.pkfx'
  • v2.9.0.4991: PopcornProject.pkproj: Renamed 'Editor/Templates' to more appropriate 'Editor/Presets'
  • v2.9.0.6030: Material shaders: Upgrade project settings allowed extensions for shader includes
  • v2.9.0.6079: Texture UVs feature: Fixed rotation applied before flip when no correct deformation
  • v2.9.0.6139: Renamed 'VersionSwitch' / 'VersionTest' nodes to 'BuildTagSwitch' / 'BuildTagTest'
  • v2.9.0.6246: Prefix parent rendering feature name to all CParticleNodeTemplateExport 'ExportedName' properties of .pkri files
  • v2.9.0.6304: .frag: rects are now get from raw buffer instead of fragment input
  • v2.9.0.6357: Add new Corelib files
  • v2.9.0.6358: Corelib upgrade
  • v2.9.0.6568: Patch effects CParticleNodePinIn 'SelfName' property: Following, all template input pins connected with auto-exported nodes coming from a renderer need to be renamed into the renderer pin's full name. This upgrade can also touch CParticleNodeTemplateExport 'ExportedName' and 'CategoryName' of some pins Connected with template inputs themselves linked with auto-exported renderer pins.
  • v2.9.0.6714: Corelib upgrade

Content examples update

New "Samples" effects

6Way Lightmap Parallax raymarching Texture raymarching
6way lightmap material for billboards
2D fake volumetric billboards
Volumetric rendering with raymarched texture