PK-Editor v2.15

From PopcornFX
Jump to navigation Jump to search

Back to anouncements
Released Jan 18th 2023. This version is a Long Term Support version.
Make sure you upgrade your runtime / plugins as well before switching to this version.

Release highlights

Tweak values using mouse drag Shortcuts display in viewports Improved Editor & Project-settings browsing builtin efficient debug.drawValue
Tweak values using mouse drag Shortcuts display in viewports Improved editor & project-settings browsing builtin efficient debug.drawValue

PopcornFX 2.15 release highlights livestream

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.

This release includes improvements & reviews for the O3DE plugin submitted by contributors via GitHub. Special thanks to them for their contributions:

AMZN-Olex, mbalfour-amzn, AMZN-alexpete, santorac, moudgils, kberg-amzn, galibzon, HogJonny-AMZN, moraaar, burelc-amzn, AMZN-Gene, lmbr-pip, akioCL


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

Changelog 2.15.19

Not yet released

  • Fixed #13535: Upgrader: Effects upgraded from v1 have incorrect camera position
  • Fixed #13534: Upgrader: Mesh renderers in effects upgraded from v1 have incorrect orientation when using StaticOffset
  • Fixed #13533: Upgrader: Mesh renderers in effects upgraded from v1 have incorrect orientation when using fields AxisForward and AxisUp
  • Fixed #13532: Upgrader: Meshes DiffuseColor in effects upgraded from V1 have incorrect alpha
  • Fixed #13531: Upgrader: Billboards in effects upgraded from V1 don't handle float2 Size field
  • Fixed #13529: Upgrader: Upgrades lower than v1 -> v2 upgrader synced version are re-applied
  • Fixed #13528: Upgrader: v2.7.0.69 upgrade incorrectly renames renderer node properties if the pkri already has a version superior to
  • Fixed #13522: Upgrader: Upgrading form v1 to v2 fails if there some older v1 assets don't contain the version
  • Fixed #13521: Upgrader: Upgrading v1 pkproj fails

Changelog 2.15.18

Builds (Apr 18th 2024)

  • Fixed #13491: Nodal editor: Renaming a node with a Ctrl+V of text containing multiple lines bugs the UI
  • Fixed #13261: .hdr image loader: Images saved with an x-flip in the header are loaded shifted 1 texel to the right
  • Fixed #13327: Unreal Engine: Dynamic Parameters don't work as intended in UE5.
  • Fixed #13318: Unreal Engine: Custom UE materials using world position offset with pkfx effects have sorting issues.
  • Fixed #13417: Unity: Crash on set attributes when an effect is stopped
  • Fixed #13353: Unity: Reset all custom materials button doesn't reset them for all qualities
  • Fixed #13351: Unity: PKFxEffectAsset inspector throw errors when re-importing if the renderer count changed
  • Fixed #13179: Unity: Renderers using different atlas subdivisions renders incorrectly
  • Fixed #13176: Unity: boolean return values are broken in native call with Il2CPP scripting backend
  • Fixed #13127: Unity: Rendering issues if the bounds of the effect are static
  • Fixed #12755: Unity: Can't disable PopcornFX log in Unity console.
  • Fixed #13312: O3DE: lit shaders not compiling on develop branch

Changelog 2.15.17

Builds (Jan 11th 2024)

  • Fixed #13038: Animated CPU vector-fields: Crash when disabling 'WrapTime' on a VF sampled in 'point' mode, and the provided time goes out of bounds
  • Fixed #13119: Image sampler: In CPU simulations, specifying an R32F (single-channel) inline texture in the propertygrid, without a resource node, will cause a runtime conversion to BGRA8
  • Fixed #13057: Nodal editor: Annotations incorrectly use their invisible titlebar to include nodes, instead of the actual displayed annotation rectangle
  • Fixed #13056: Nodal editor: Occasional crash when Ctrl+X-ing a bunch of nodes that contain passthrough nodes
  • Fixed #13114: Script editor: Changing the font size with the mousewheel marks the script as modified
  • Fixed #3772: Effect thumbnail are broken in Vulkan
  • Fixed #3342: Crash when redoing the slice of the "InnerRadius" or "kernel" link to a spatial query node, when the QueryType has been set to a type which does not have that pin
  • #13198: Unity: early out to reduce runtime overhead when no particles are simulated
  • Fixed #13086: Unity: Alpha remap cursor is sync beetween mesh instances
  • Fixed #13100: Unity: Incorrect mesh texture atlas in URP
  • Fixed #13097: Unity: Sort offset don't work for Mesh renderer in URP
  • Fixed #13107: Unity: Add Menu to reimport effects materials
  • Fixed #13106: Unity: Using the menu item "Create PKFxFX Materials If necessary" unassign custom materials
  • Fixed #13103: Unity: Add Menu to clean unused effects materials

Changelog 2.15.16

Builds (Nov 30th 2023)

  • Fixed #13007: builtin time & dt values at spawn have incorrect sub-frame values, causes visual glitches & holes in particle jets that should have been smooth
  • Fixed #12981: Mesh viewer: KdTree & UV2PC infos in memory viewer panel are incorrect when mesh has LODs for LODs > 0, always displays the LOD0 values
  • Fixed #12992: UnrealEngine: Random crash when material gets destroyed while effect is still running
  • Fixed #12986: Unity: Color attributes have wrong values in the color picker
  • Fixed #13008: Unity: Null reference exception if the distortion renderer have an invalid material
  • Fixed #12974: Unity: Null reference exception when material factory have invalid entries
  • Fixed #12988: Unity: fix crash on mesh renderer dependencies missing
  • Fixed #13033: Unity: use material override to support more blending modes
  • Fixed #13005: Unity: Opaque billboards ignore vertex color alpha
  • Fixed #12991: O3DE: Particles does not render in release build
  • Fixed #13003: O3DE: doesn't compile with ScriptCanvas 2.0.0 changes

Changelog 2.15.15

Builds (Oct 29th 2023)

  • Fixed #12931: Geometry artifacts with ribbons caused by deferred payloads.
  • Fixed #12247: UnrealEngine: Crash when world partitioned level is unloaded and it contains a PopcornFXSceneActor automatically created
  • Fixed #12953: Unity: Emitter has incorrect transforms if PlayOnStart is false and the emitter is moved between Start() and StartEffect()
  • Fixed #12950: Unity: SampleEffect ParallaxRaymarch & Raymarch crashes when played in Unity
  • Fixed #12945: Unity: Emitter instances of the same effect share attributes
  • Fixed #12933: Unity: dynamic batching can break render of particles.
  • Fixed #12929: Unity: Billboards with emissive color don't render correctly

Changelog 2.15.14

Builds (Sep 28th 2023)

  • Fixed #12667: GPU sim D3D11: Random corruptions of particle data at spawn when first opening an effect
  • Fixed #12870: Crash when disabling or deleting nodes that are inside a circular-dependent graph
  • Fixed #12866: Editor-Mac: cannot import any package
  • Fixed #12838: Nodegraph: creating an Output node from a EventAppendPayload output link does not automatically set the node's ExportedType to 'Event'
  • Fixed #12916: UnrealEngine: Cooking fails with some effects in UE5.3
  • Fixed #12909: UnrealEngine: Ribbons segments incorrectly retrieve per particle values (diffuse color, emissive color, alpha remap cursor, ..)
  • Fixed #12899: UnrealEngine: GPU sim broken on some AMD graphics cards, leading to graphics card crashes
  • Fixed #12875: UnrealEngine: Plugin does not compile when project's IncludeOrderVersion is set to a specific unreal version (i.e. EngineIncludeOrderVersion.Unreal5_3)
  • Fixed #12924: Unity: Invalid geometry generated for billboards in debug
  • Fixed #12923: Unity: Crash with stored buffer size in the PKFXSettings
  • Fixed #12871: Unity: Optimize Vulkan render api data.
  • Fixed #12921: O3DE: AssetBaker compilation error in release
  • Fixed #12891: O3DE: crash when using broadcast node
  • Fixed #12890: O3DE: Incorrect resource mesh path on bake

Changelog 2.15.13

Builds (Aug 31st 2023)

  • 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

Changelog 2.15.12

Builds (Aug 3rd 2023)

  • Fixed #12734: Runtime: cpu detection not working on macos arm64
  • Fixed #12749: GPU sim D3D: fails to compile in GPU sim shaders
  • Fixed #12729: Editor crashes when deleting a node if its IR instruction is selected
  • Fixed #12763: Template icon picker in the propertygrid does not list some icons
  • 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
  • Fixed #12758: Unity: Crash on resize buffer on PS4
  • #12333: Unity: Performance analysis, Add C# markers

Changelog 2.15.11

Builds (Jul 13th 2023)

  • Fixed #12658: CPU simulation: Modulo operator/node returns incorrect results for floating-point modulos with some integer period values when the simulation batches contain 8 particles or more
  • Fixed #12608: GPU sim D3D12: particle runtime stats are not working anymore
  • 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 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 #12296: Nodal editor: Grouping nodes wired in renderer nodes generate verbose names (ie. 'General.Size')
  • Fixed #12193: Nodal editor: deadlock when deleting some dangling passthrough nodes
  • Fixed #12660: Nodal editor: Grouping nodes sometimes swaps the input and output names
  • 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
  • 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 #12661: O3DE: errors on the asset processor even if the effect baked successfully
  • Fixed #12659: O3DE: Wind sim interface is not working en editor mode
  • 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 #12635: O3DE: does not link with shipping libraries in release
  • Fixed #12634: O3DE: Linking error on linux in debug config (missing bfd)
  • Fixed #12612: O3DE: assert in CLightBatchDrawer::EmitDrawCall since range stream is not contiguous
  • Fixed #12597: UnrealEngine: crash when opening/closing some levels
  • Fixed #12596: UnrealEngine: Ribbons CorrectDeformation feature causes particles to disappear
  • Fixed #12602: UnrealEngine: FlipUVs & TextureUVs' FlipU, FlipV, RotateTexture incorrectly handled

Changelog 2.15.10

Builds (Jun 15th 2023)

  • Fixed #12478: Nodegraph: crash when dropping sim interface into sim interface graph
  • Fixed #12189: Nodegraph: event payloads are displayed multiple times when hovering an event wire that comes from multiple signal pins
  • Fixed #12184: Attribute list: Attributes which are unpinned and defined in layers that get optimized out in the final baked effect do not end-up in the final attribute list, they should, the attribute list should be fixed and not depend on build versions
  • Fixed #12221: Editor: crash when full asset analysis occurs while opening a project and some of the destination auto-generated thumbnails for Atlas, Sound, or Texture assets are read only
  • Fixed #9299: Editor: effect creation dialog presets description ignores some formatting tags
  • Fixed #12560: Unity: Clean unused soundManager class
  • Fixed #12559: Unity: reduce number of allocation made on play mode by mesh renderers
  • Fixed #12543: Unity: PopcornFX Camera layer are not created
  • Fixed #12427: Unity: Add auto detect of render pipeline to create the right factory
  • Fixed #12082: Unity: "read/write enabled" not enabled on texture attribute sampler default value
  • Fixed #12547: O3DE: missing default seed list file required by released games
  • Fixed #12537: O3DE: Asset builders crash when PopcornFX SDK emit asserts and engine is ran in debug
  • Fixed #12536: O3DE: AlphaRemap, DiffuseRamp, EmissiveRamp renderer features are incorrectly implemented in shaders, produces visual artefacts depending on the texture
  • Fixed #12535: O3DE: Lit renderers are not visible and produce errors in the console log
  • Fixed #12534: O3DE: Emissive renderer feature does not work
  • Fixed #12527: O3DE: compilation error in previewer factory with -DLY_UNITY_BUILD=OFF
  • Fixed #12485: O3DE: p_PopcornFXMaxSlices (enable slicing) has no effect
  • Fixed #12562: UnrealEngine: AlphaRemap, Linear & MotionVectors atlas blending do not work anymore

Changelog 2.15.9

Builds (Jun 1st 2023)

  • Fixed #12508: GPU sim: bool2/bool3/bool4 built at spawn aren't properly uploaded to GPU
  • Fixed #12481: Triangle renderer: Crash when a triangle has a constant position (over particles) for one of its vertices
  • Fixed #12502: Editor freeze & crash when hitting Ctrl+S in some effects with deep asset dependencies (since at least v2.13)
  • Fixed #11905: Editor rendering is broken when creating a project on a remote network drive with a path of the form '//'
  • Fixed #12509: Unity: Fix intermitent crash caused by effects with a short lifetime
  • Fixed #12332: Unity: Improved effects profiler UI
  • Fixed #12331: Unity: Migrate PKFXSettings to Unity settings
  • Fixed #12488: O3DE: Renderers GlobalSortOverride has no effect
  • Fixed #12487: O3DE: Gem is not compatible with Atom's new Vulkan memory allocator
  • Fixed #12486: O3DE: Gem does not register correctly in 23.05
  • Fixed #12484: O3DE: PopcornFX draw calls for are submit for all views including shadow cascades even when cast shadows is disabled
  • Fixed #12477: O3DE: PopcornFX runtime startup cleanup
  • Fixed #12467: O3DE: PopcornFX logs aren't logged into O3DE's log system
  • Fixed #12472: UnrealEngine: random crashes in shipping when emitters are destroyed/recreated by GC
  • Fixed #12471: UnrealEngine: PSO caching does not work with default vertex factory

Changelog 2.15.8

Builds (May 11th 2023)

  • Fixed #12459: Nodegraph: Using a debug.drawValue node makes the layer fall back to CPU sim
  • Fixed #12343: Mesh viewer: checkerboard texture isn't applied when enabling the option in the viewport
  • Fixed #12342: Editor: debug.draw* persists when paused and resetting the sim.
  • Fixed #12465: Unity: High memory usage of PopcornFX shaders due to high permutation count
  • Fixed #12438: Unity: Add import .pkkg support
  • Fixed #12437: Unity: Fix Particle stats showing incoherent timings
  • Fixed #12457: O3DE: Plugin doesn't work with the unified launcher
  • Fixed #12456: O3DE: Asserts at shutdown

Changelog 2.15.7

Builds (Apr 27th 2023)

  • Fixed #12415: Spatial layers leak performance & memory when the simulation is updated with dt = 0, goes back to normal as soon as the sim is unpaused. Only happened in SDK integrations & engine plugins, not in the editor.
  • Fixed #12412: Incorrect value-ranges computed from 'extract payload' nodes when layer is triggered from different parent layers and one of them doesn't append the extracted payload
  • Fixed #12418: F1 on renderer nodes opens a 404 page instead of opening the proper documentation page
  • Fixed #12417: F1 to show the documentation of local templates does not jump to the proper location in the documentation page, only works for public templates
  • Fixed #12433: Unity: IndexOutOfRange when registering a camera without enough layer mask set

Changelog 2.15.6

Builds (Apr 13th 2023)

  • Fixed #12368: Using the Attractor node without wiring in the input 'Position' freezes the effect compiler and causes the effect editor to hang when closed
  • Fixed #12264: Cannot set a switch node to have 6 cases if it was previously set to the default value
  • Fixed #12373: Importing/Exporting a package that contains filenames with unicode characters replaces those characters by '?' or '_'
  • Fixed #12280: Moving a 3DCoord attribute with the viewport gizmo does not update the default value reset indicator
  • Fixed #12172: Property grid: math expressions do not have any effect on values associated with a slider
  • Fixed #12329: Performance regression when compiling nodegraph
  • Fixed #12283: Compiler: incorrect display when switching to Shipping mode
  • Fixed #12271: Node creation dialog: Typing 'pi' doesn't work, even though it works in regular numeric inputboxes
  • Fixed #12326: UnrealEngine: UE5.2 preview support
  • Fixed #12374: UnrealEngine: drop vs2015 support
  • Fixed #12321: Unity: PKmm builder fail to output a file in Unity project
  • Fixed #12358: Unity: effects profiler displayed timings are 'flat' simulation time instead of estimated wall time
  • Fixed #12239: Unity: Renderer CameraSortOffset does not work
  • Fixed #12361: O3DE: DX12 driver crash related to BillboardDistortion shader
  • Fixed #12341: O3DE: crash with null rhi
  • Fixed #12334: O3DE: could not compile without O3DE_USE_PK defined for headless servers
  • Fixed #12337: AE: Reimport effect button doesn't update effect correctly

Changelog 2.15.5

Builds (Mar 30th 2023)

  • Fixed #12275: Editor: crash when .fbx file is modified on disk while mesh viewer is opened for that mesh file
  • Fixed #12273: Rendering: Visual flickering of mesh particles when MeshLOD is enabled
  • Fixed #12261: Mesh importer: Animation files added through the BAT export window aren't taken into account at export time
  • Fixed #12259: Mesh importer: BAT export window incorrectly translates animation paths
  • Fixed #12299: Nodegraph: F1 on some builtin nodes does not jump to the proper section of the online documentation page
  • Fixed #12192: Nodegraph: deleting a node disconnects unrelated event wires
  • Fixed #12302: Propertygrid: Right-click 'Copy color' on a color widget doesn't work if the property is disabled (due to a wire being plugged in the pin for example)
  • Fixed #12263: Unity: IOS compile error due to distortion
  • Fixed #12284: Unity: Animtrack fails to load
  • Fixed #12255: Unity: Alpha remap cursor on mesh renderer is reversed in Unity
  • #12240: Unity: Switch all Legacy mesh shaders to double-sided
  • Fixed #12290: O3DE: Ribbon particles rendering artifacts when RHI is Vulkan

Changelog 2.15.4

Builds (Mar 9th 2023)

  • Fixed #12246: Editor: crash when importing some skeletal meshes exported from Maya
  • Fixed #12231: IR Panel: Compiler tab shows constant values as "0.0", when they are smaller than 1.0e-6. Only an UI display bug, actual compiled values are correct.
  • Fixed #12243: UnrealEngine: Add an option to enable bake D3D11 & D3D12 GPU sim bytecodes when importing an effect
  • Fixed #12242: UnrealEngine: crash when level contains GPU simulated effects when RHI is D3D11 in UE5.1
  • Fixed #12234: UnrealEngine: compilation fails on Linux
  • Fixed #12232: UnrealEngine: imported effects do not simulate on GPU anymore when RHI is D3D12 in UE5.1
  • Fixed #12257: O3DE: Renderer Loader fails to load the model when not connected to the asset processor
  • Fixed #12251: O3DE: Effect asset type id is not publicly exposed

Changelog 2.15.3

Builds (Feb 23rd 2023)

  • Fixed #12204: Editor preferences panel: Version control tab resize the category column
  • Fixed #9739: Editor: missing vs2010 vcredist, cannot launch editor on fresh Windows installs
  • Fixed #12186: Script editor: Shift+insert paste shortcut does not properly sanitize the clipboard text, only Ctrl+V does.
  • Fixed #12182: Layergraph: layers which are never triggered due to optimizations removing the trigger or generate nodes are not disconnected anymore and stay in the final baked effect
  • Fixed #12217: UnrealEngine: crash when duplicating emitter actors
  • Fixed #12216: UnrealEngine: crash when emitter playing in scene actor while having events registered on another scene actor, and other scene actor gets destroyed
  • Fixed #12211: UnrealEngine: crash when active emitter's parent effect is unloaded in cooked builds
  • Fixed #12191: UnrealEngine: Mesh default materials sample textures with incorrect UVs when MeshAtlas is disabled
  • Fixed #12208: Unity: Skinned mesh renderers have incorrects bounds
  • Fixed #12203: Unity: custom bindings for materials produce an error in the UI

Changelog 2.15.2

Builds (Feb 9th 2023)

  • Fixed #5049: Crash when undoing operation that caused a graph compilation error, and an attribute sampler is bound
  • Fixed #12117: UnrealEngine: cannot build executables for Android / Oculus Quest2
  • Fixed #12135: Cannot set attribute slider value using right-click
  • Fixed #12126: Editor-Mac: Opening an effect editor displays an error (failed to initialize OpenGL)
  • Fixed #12168: Mesh importer: Does not select the default animation by default anymore
  • Fixed #12158: Mesh importer: crash when importing some mesh animations
  • Fixed #12181: Build version dropdown is never visible on effects that did not override the preview build version before 2.15
  • Fixed #12143: Effect backdrops that are only spawned through effect-interface external events are never triggered properly unless 'AutoStart' is checked.
  • Fixed #12125: Color-picker: Sometimes crashes when tweaking color sliders on color attributes
  • Fixed #12163: Nodal editor: Creating a template from a bunch of nodes whose input wires cross passthroughs never picks up the correct name, always uses the generic "Value" naming
  • Fixed #12162: Nodal editor: Creating a template from a bunch of nodes whose input wires cross passthroughs never picks up the correct type, always sets it as 'auto'
  • Fixed #12161: Nodal editor: Create input node from pin: Does not always set default value to pin's value
  • Fixed #12170: Nodal editor: Input nodes of type event do not properly display their output pin as an event pin
  • Fixed #12150: Nodegraph: Resource nodes at layergraph level do not show warnings. Warnings are shown in the layers they are used in, but not in the layergraph.
  • Fixed #12152: Texture viewer: Cannot save any format to LA16F or LA32F
  • Fixed #12151: Image sampling & Texture viewer: .hdr files cause extremely bright texels to wrap to negative values on some CPUs when loaded, resulting in black spots on overbright areas
  • Fixed #12148: Node creation dialog: Search results are sometimes weirdly sorted
  • Fixed #12144: IR Panel: When a layer is entirely optimized out (happens mostly in shipping), the 'Compiler' tab incorrectly says the layer failed compiling, and asks to check the compilation errors
  • Fixed #12141: Incorrect new project location path, misses a '/' in the path
  • Fixed #12136: Propertygrid: Slider right-click to edit value does not validate value when using 'TAB' to edit next value, or when clicking elsewhere. Cancels the edit, should instead validate it.
  • Fixed #12105: Editor: can't edit viewport input boxes using Ctrl+Mouse move
  • Fixed #11907: Editor: renaming an effect does not patch its own templates
  • Fixed #12167: Editor: Add project name in the title bar of the content browser and asset windows
  • Fixed #12166: Audio files with filenames containing special unicode characters appear with no thumbnail in the content browser and do not playback properly in an effect
  • Fixed #12012: Exported events are not triggered when they have no payload attached
  • Fixed #12174: Shape sampler box: Build parametric coords regular function sometimes produces a few incorrect samples due to a stack use-after-scope bug in the last iterations of a SIMD loop unroll (couple years old bug, never caught before)
  • Fixed #12149: Texture loader: When loading dds with BC4 compression (not natively supported by popcorn runtime), loader incorrectly expands them to BGRA8 instead of Lum8
  • Fixed #12130: Image sampling is broken in CPU & GPU sim for non-power-of-two DXT1 (BC1) textures when the size is not a multiple of the block size, in both 'point' and 'linear' modes
  • Fixed #12129: Image sampling is broken in CPU sim for non-power-of-two textures when sampling in 'linear' mode
  • Fixed #12127: Image attribute samplers: SampleDensity and RemapDensity are broken when using an atlas and different per-instance textures are bound at runtime to the same attribute sampler
  • Fixed #12153: Runtime: Cannot load LA32F / LA16F / RG32F / RG16F textures into CPU textures

Changelog 2.15.1

Builds (Jan 26th 2023)

  • Fixed #12089: Re-loading a custom layout will keep the unsaved changes since the last time you loaded it
  • Fixed #12083: Content browser doesn't show warnings on some effects
  • Fixed #12092: GPU spatial layers glitches when CellSize is small
  • Fixed #12107: Exporting a package sometimes pollutes the 'Thumbnails' directory with auto-generated texture thumbnails
  • Fixed #12103: Export to package does not properly auto-generate thumbnails of assets whose thumbnails should be auto-generated (Texture-altases, Textures, Sounds, ...)
  • Fixed #12106: PK-Editor.exe commandline help arg '-h' or '--help' on windows does not show anything
  • Fixed #12095: Project Launcher: Package details shows some corelib files in some packages
  • Fixed #12086: Editor: do not display the eye icon to display a saved password when logging in
  • Fixed #12076: Editor auto-translations: Some tooltip contents are translated when they shouldn't be
  • Fixed #11419: Editor: Memory inspector panel does not display GPU simulation bytecode size
  • Fixed #12119: AssetBaker: Ignores per-effect .pkcf configs, only for effect configs (works for other assets such as textures, meshes, etc...)
  • Fixed #12113: UnrealEngine: Re-enable VRP pass when importing / baking effects
  • Fixed #12102: UnrealEngine: PopcornFXVertexFactory.ush doesn't compile in UE4
  • Fixed #12100: Unity: Rendering break when using procedural altas with no subdivision
  • Fixed #12091: Unity: Camera support slider do not dirty the scene when modified

Changelog 2.15.0

Builds (Jan 18th 2023)

Templates & Corelib

  • #11930: Corelib: remap node: Add an optional 'clamp' checkbox that allows to clamp the output value to 'outMin' / 'outMax'
  • #11917: Corelib: Add a 'kill' input pin to the multiplier node to allow cleanly stopping infinite multipliers based on a custom condition

Simulation & Rendering

  • #11980: Add a random node that takes an explicit seed
  • Fixed #12074: GPU sim D3D11: does not properly kill newborn particles
  • Fixed #12013: When Spawning more that 255 particles there's always one more particle spawned
  • Fixed #12023: Incorrect vignetting with over-exposed scene in editor viewport
  • Fixed #7474: Glitch with transform UV, atlas and mipmaps
  • Fixed #12065: Shader compile error on vulkan

Editor (General)

  • #8213: Settings: add a search bar on the user and project settings
  • #11918: When pressing a modifier key in a viewport, display the list of associated shortcuts
  • #11304: Save layout/choose between several layouts
  • #8957: Project Launcher: Add new tab with download access buttons for plugins
  • #8503: New project dialog: Does not remember location of previous projects
  • #9178: Editor UI: The new dropbox for assets selection is not intuitive.
  • Fixed #12067: Editor: crash when importing animation/skeleton of .fbx file
  • Fixed #12050: Missing dependency on popcornfx installer
  • Fixed #12048: Editor: vulkan: crash / glitch in cubemap generation
  • #11968: Project settings & Editor settings: Add a short description to some "obscure" panels to quickly explain what those settings do.
  • #11807: Project settings: Add per-project feature configuration (samplers, sim interfaces, etc...)
  • #11967: Search boxes in the editor: Search with a '!' negation symbol does not work, contrary to what is described in the search tooltips
  • #11957: Content browser details view: When a column item is "N/A" or "0", display text in a dimmer color, so that it doesn't distract from the actual data present in other cells
  • #11774: Right-click export to package: In final export dialog, add a "Copy path to clipboard" button

Effect editor

  • #5437: Attributes: Editor-only "local" Attributes
  • #11834: Attributes: When value is setup as an enum, use a dropdown widget like for enum template properties
  • #11823: Attributes: Add an optional "one-shot trigger" control for bool attributes (ex a push-button) in addition to the checkbox
  • Fixed #11954: Attributes: Text attribute sampler external file path does not properly refresh on Ctrl+Z
  • #8462: Propertygrid: allow edition of 'auto' values
  • #5482: Propertygrid: Allow editing numeric values with a slider / mouse cursor instead of typing values with keyboard
  • #8533: Propertygrid: Color properties: Allow right-clicking on the color widget to copy or paste the color
  • #12041: Propertygrid: setting a float value and changing the type to int resets the value
  • #11958: Propertygrid: For properties with a "Scale" semantic, make the UI have the float3 channels "locked" together so that setting a single channel broadcasts the value to all channels
  • Fixed #11969: Propertygrid: Asset picker: need to press down arrow key twice instead of once to select items in the asset list popup
  • #11970: Propertygrid: Asset preview widget: Display the number of LODs of mesh assets that have LODs
  • #11781: Propertygrid: Pressing TAB key does not enter edit mode for next property if it's a slider
  • #6869: Curve editor: allow editing tangents of all selected control points
  • #5161: Curve Editor: Allow snapping keyframes to other channels
  • #11820: Curve Editor: Applying a 1D curve preset should not stomp the curve dimensions, but instead apply the preset to the active channels
  • #7486: Mesh backdrop: Allow specifying Lit-related texture maps
  • #11873: Effect editor: 'LoopDeterminismConstantSeed' in scene properties should be OFF by default
  • #5058: Effect treeview: Add search box in layer treeview, in addition to existing template treeview search
  • #12008: Move the particle-debugger buttons from the viewport toolbar to the nodegraph toolbar
  • #3925: Editor: Add markdown support for user strings (annotations & descriptions), in addition to current HTML tags
  • #9083: IR-panel: Show the list of all spatial-layers in the effect
  • Fixed #12043: Crash when sampling texture attribute sampler bound to editor render target and viewport is resized (CPU sim)

Nodal editor

  • #11831: Add per-particle 'debug.drawValue()' debugging helper, that can display a text value next to the particle onscreen.
  • #11835: New switch node: takes an 'int' value and 'n' input pins, as well as 'n' values to compare the input against, and internally chains 'if' nodes to output the input pin corresponding to the current value.
  • #11928: New 'round' node, allowing to pick between different rounding modes
  • #11842: Allow deprecating templates so they are hidden in the node creation menu and emit a deprecation warning when used in an effect
  • #11991: Nodal editor: Select all nodes upstream or downstream of the current selection with 'Home' and 'End' keys
  • #11953: Nodal editor: Node creation dialog: Renderers are listed as "Mesh", "Billboard", "Light", "Sound", "Triangle"... without specified that it's a renderer, can be confusing when reading the node list. Should instead say "Mesh Renderer", "Light Renderer", ...
  • #11895: Nodal editor: Make 'DefaultValue' input of template input nodes not visible by default, rarely used, and now adds unnecessary visual noise with the pin-values displayed by default since 2.14
  • #11880: Nodal editor: Curve previews in node: Normalize the preview below [0,1] so that very small curves do not appear as a flat line at the bottom of the preview, but instead can have their curve shape be visualized properly
  • #11878: Nodal editor: Always show pin values by default
  • Fixed #5910: Nodal editor: Plugging a wire on a passthrough which is too close to another passthrough wires it into both passthroughs
  • Fixed #11961: Nodal Editor: Ctrl+G offsets the new node position compared to the old node, causes wires to be slightly unaligned
  • #5861: Nodal editor: Double-click on a post-it or annotation: Pop text edit window to edit contents
  • #11879: Nodegraph: Display default values of 'auto' pins as '0' instead of 'N/A'
  • #8884: Input/Property nodes in the root layer graph should produce errors or warnings

Compiler & Optimizer

  • #11908: Compiler: Value-range propagation: Compute proper value-range of VectorField sampler in 'Procedural Turbulence' mode
  • Fixed #11965: Value-range propagation (Nodal editor & Runtime): 'reinterpret' nodes (asFloat and asInt nodes) do not properly transmit constant ranges
  • Fixed #11909: Value-range propagation of rotate function always propagates full rotation range even when input rotation is constant
  • Fixed #5280: Value-range propagation: unable to produce a [-1,1] range for normalization patterns
  • Fixed #12072: Value-range propagation: miss to detect all-negative ranges for scalars or vectors smaller than 4 dimensions
  • Fixed #11931: Value-range propagation: Range::Ceil/Floor/Trunc/Round functions do not properly handle the edge inclusive/exclusive state
  • Fixed #11964: Bitwise AND node with an 'int' and a 'bool' input does not broadcast the bool to int, only ends-up AND-ing one bit and clearing the 31 others, outputs an int with only the least-significant bit set.
  • #12033: Scripts: New horizontal bi-lerp function 'hblerp' to efficiently perform bilinear interpolation on transposed 2x2 tiles sampled from a texture sampler

Texture viewer

  • #7509: Texture viewer: allow specifying preview texture atlas path or atlas sub div

Mesh viewer

  • #12042: Mesh viewer: layout is reset when re-opening window
  • #11971: Mesh viewer: Show LOD information in the asset details panel
  • #12075: Add an animation index to the mesh animation importer to choose which animation contained in the FBX should be used

Material editor

  • #7732: Material editor: crash when changing the main "Geometry" rendering feature from one renderer type to another

Plugins & Third-Party

UnrealEngine plugin

  • #12094: UnrealEngine: crash when launching editor when project has instanced stereo rendering enabled

Unity plugin

  • #12073: Unity: Description for attributes and samplers in tooltip
  • #12047: Unity: Add settings to choose in which layer each camera should have its particles rendered
  • #12020: Unity: Refactor exported events payload data to use vector Types
  • #12018: Unity: Material keywords are not bound in 2021.3
  • #6482: Unity: Shadergraph support (URP)
  • Fixed #12017: Unity: huge iOS libraries size


  • Upgrade @ v2.15.0.14729: Template export input node: Make 'DefaultValue' pin invisible by default

Content examples update

New "Tutorials" effects

Debug draw value Rand seed Rand seed offset
Showcases the new debug.drawValue node
Shows the new seeded rand node
Shows seed offsetting (fast-forward)