ControlRig: Support for comment blocks
Comments were not part of the MVC layer - this change is adding them back in.
#rb none
Merging
//Tasks/Fortnite/Dev-UEA-ControlRig/...
to //Fortnite/Main/Dev-UEA-ControlRig/...
#ROBOMERGE-SOURCE: CL 6685421 via CL 6752148
#ROBOMERGE-BOT: (v365-6733468)
[CL 6752571 by helge mathee in Main branch]
Font size changes will once again immediately update comment node title sizes
#jira UE-60455
#rb Michael.Noland
#ROBOMERGE-SOURCE: CL 4129106 in //UE4/Release-4.20/...
#ROBOMERGE-BOT: RELEASE (Release-4.20 -> Release-Staging-4.20)
#ROBOMERGE-AUTHOR: dan.oconnor
[CL 4129107 by dan oconnor in Staging-4.20 branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3853627 by Shaun.Kime
Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse VectorVM
#tests non-gpu auto tests pass
Change 3853628 by Shaun.Kime
Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse Runtime
#tests all non-gpu auto tests pass
Change 3853629 by Shaun.Kime
Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse Engine\Shaders
#tests all non-gpu auto tests pass
Change 3853630 by Shaun.Kime
Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse Engine\Plugins\FX
#tests all non-gpu auto tests pass
Change 3853631 by Shaun.Kime
Jonathan's material function from Orion\DevNiagara
#tests all non-gpu auto tests pass
Change 3853633 by Shaun.Kime
Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse EngineTest
#tests all non-gpu auto tests pass
Change 3853911 by Shaun.Kime
GPU rendering now works
#tests GPU tests now pass
Change 3854179 by Shaun.Kime
Removing dead system
#tests now just with a warning
Change 3854731 by Shaun.Kime
Checkpointing current work
#tests n/a
Change 3855080 by Shaun.Kime
Fixing not all control paths return a value error
#tests n/a
Change 3856185 by Bradut.Palas
MultiStack with pinning support.
#jira UE-53459
#tests none
Change 3856615 by Shaun.Kime
Preventing a null pointer dereference when copying unallocated data
#tests auto tests pass
Change 3856622 by Shaun.Kime
Getting rid of the bogus get alias method
#tests auto tests pass
Change 3856644 by Shaun.Kime
Adding the ability to query the number of filtered triangles, index those triangles directly, and compute the position, velocity, UV, and NBT of a triangle.
#tests all auto tests now pass
Change 3856645 by Shaun.Kime
Added several new auto tests and tweaked existing ones.
+ PerParticleRandom still had some randomness in it
+ UserColorCurve has a user color curve defined in 3 different components referencing the same system
+ BasicSkinnedEmitter has 4 skinning sub-tests, attached as a subcomponent, referencing a world skeletal mesh, using a material filter, and using a bone filter
+ added a skinning module that spawns based off exec index and a data interface that queries the number of triangles on a skeletal mesh.
#tests auto tests pass
Change 3856675 by Shaun.Kime
Fixing crash on delete of an emitter
#tests removed one and multiple emitters from active multi-emitter. No crash
#jira UE-54378
Change 3860613 by jonathan.lindquist
New dynamic input
Change 3862549 by Shaun.Kime
Missing last known good images
Change 3864525 by Simon.Tovey
Fix for vm compiler crash when using structs as constants.
#tests No longer crashes.
Change 3864729 by Frank.Fella
Sequencer - Fixed a few places which were modifying sequencer data, but not calling the NotifySequencerDataChanged.
Change 3864737 by Frank.Fella
Niagara - Fix the timeline in the niagara editor plus other fixes.
+ Turned on looping in the timeline by default.
+ Added simulation options to control playback in the editor, including turning off auto-play, disabling reset on change, and disabling resimulation when changing while paused.
+ Added a buttons to the timeline for each renderer an emitter has which shows a renderer specific icon and will allow navigation directly to the renderer with future stack changes.
+ Fixed issues in the emitter life cycle and spawn rate modules which were preventing delay and looping from working consistently. (includes auto-test)
+ Added top level metadata for modules.
+ Added the ability to add metadata to a module and it's inputs to allow it to be edited directly using timed sections in the timeline. Currently configured for the emitter life cycle module.
+ Changed the way the "MaxSimTime" on niagara component works so that it now represents the maximum frame time which should be used when seeking the component to the desired age. This previously was the maximum amount of simulation time to run which would prevent simple effects from simulating quickly, and would also allow more complicated effects to hang the UI while seeking.
+ Changed the behavior of niagara component when seeking to desired age so that it always uses the exact specified seek delta instead of trying to seek to the exact desired age.
+ Fixed the component so that systems which are seeking to the desired age in the editor no longer draw in fast forward mode.
+ Changed the default playback range for effects in the timeline from 1000 seconds to 10 seconds, and fixed the timeline so that the playback range is serialized into the asset which will persist the setting across loads.
+ Fixed scrubbing in the timeline so that it doesn't immediately reset when scrubbing backwards.
+ Added a button to the timeline track for enabling and disabling isolation mode for emitters.
+ Added a checkbox to the timeline to enabled and disable emitters from the timeline.
+ Fixed PinToNiagaraVariable so that it asserts if bNeedsValue is specified and it can't actually provide a value.
+ Create a class called FNiagaraStackFunctionInputBinder which allows binding to an input of a function on a stack so that you can easily set and get the value of the input without having to worry about modifying the graph or rapid iteration parameter sets directly.
#tests Existing auto-tests and 1 new test for life cycle changes.
Change 3867179 by Frank.Fella
Niagara - Turn off GPU simulation for test assets for Shaun.
Change 3869201 by Simon.Tovey
Bypassing JonLs issue
#tests no longer crashes.
Change 3869897 by Frank.Fella
Niagara - Fix crashes when using the skeletal mesh data interface. NOTE: The change to the actual skeletal mesh data interface code doesn't seem needed, but without it, it crashes with the stomp allocator on. We'll have to investigate further.
Change 3870487 by Frank.Fella
Niagara - Always generate cached skin data immediately, and make sure we're not indexing triangles that don't exist. This is a temporary fix to avoid a crash when changing the skeletal mesh source on an effect in the level from the details panel.
Change 3877378 by Frank.Fella
Niagara - Update the burst and lifecycle modules with new metadata for incoming timeline changes.
Change 3877564 by Frank.Fella
Sequencer - Fix a few more places which were modifying sequencer data without calling NotifyMovieSceneDataChanged.
Change 3877565 by Frank.Fella
Niagara - Remove old unused burst code from some runtime classes.
Change 3877567 by Frank.Fella
Niagara - Add support for keying bursts on the timeline which is configured using script metadata.
Change 3877699 by Frank.Fella
Niagara - Fix a crash in the new timeline code for when you have bursts, but you have inputs on the emitter lifecycle bound, also set lower bound of view range of the timeline to be -.1 so that you can more easily interact with keys at 0.
Change 3877715 by Frank.Fella
Sequencer - Update the change type when pasting keys from the clipboard from Unknown to TrackValueChanged to avoid unnecessary work. From code review on last change.
Change 3879285 by Simon.Tovey
A couple of fixes for using struct constants
#tests Jon's case now compiles and works correctly.
Change 3879378 by Frank.Fella
Niagara - Fix a few spots where recursive graph traversal was visiting nodes multiple times because of diamonds in the pin connections. This reduces a terrible hang in UNiagaraScriptSource::InitializeNewRapidIterationParameters from 5 minutes to 5 seconds but there are futher issues to investigate becasue even 5 seconds it too long.
Change 3879858 by Shaun.Kime
Moved the VM script compilation to the DDC in order to facilitate better team compilation behavior. Significant changes to the translator and overall compile workflow to make the data behave better for a future multi-threaded compilation path.
In order to know when to compile, a key is generated that uses the compile id's of the graphs that influence the compilation of our node. In this way, if an end user goes and edits a function or module and checks in, the overall compile id will not match b/c that function is in the dependency list of a system downstream. The system will then know to recompile. However, everyone else on the team will generate the same key because the asset in question was checked in with its local compile id already changed.
Additionally, we now employ change tracking on traversals from a node graph. These traversals walk through all the nodes leading to a given output node and see if they've been altered. If they have, a new compile id is generated. If not, the old compile id is used. This also means that if you edit a particle update section in the stack, the emitter section won't force the system to recompile.
GPU scripts now have their own script slot rather than riding alongside particle spawn scripts. This allows us to address them independently in the translator and put them in the DDC as well. Once the text is generated, we then go back out to the DDC to generate the shader associated.
Known issues:
+ Emitters are sometimes marked dirty on open
+ Nodes connected to event writes aren't part of the hashing
+ DataInterface signature changes don't dirty the compiles
+ Struct changes don't dirty the compiles
+ On system loading, we go out to the DDC instead of using existing scripts, which is slower..
#tests all auto-tests pass, additional tests run to validate proper behavior
Change 3879859 by Shaun.Kime
Content update post DDC change
Change 3879862 by Shaun.Kime
Niagara plugin content to ddc
Change 3879958 by Frank.Fella
Niagara - Actually fix the bad recursion in this function by using the existing traversal method.
Change 3881727 by Damien.Pernuit
Niagara - Houdini - Created a separate plug-in for the Houdini CSV Data Interface.
Change 3881877 by Simon.Tovey
Fix for mac compile issue
Change 3882773 by Simon.Tovey
Actual fix for Mike
Change 3882822 by Shaun.Kime
Rather than throw a check, I instead emit an error when we can't match up a data interface and instantiate a CDO version. Not perfect, but this will let you recompile.
#tests allows me to open jonathan's file
Change 3883538 by Shaun.Kime
Moving particle-level scripts to compile with the emitter named Emitter in their internal scripts. This simplifies the dependencies quite a bit, but causes some complexity on the wiring side (most of which we were already doing anyway).
Getting rid of some allocations in translation (still more to go).
Fixed some of the logic for emitters that had modules of the same name to now properly concatenate.
Compile version bumped, so all scripts will be forced to recompile. Not saving this into the test files for now, as I expect this to happen a bit for the near term.
#tests all auto-tests pass, creating a new emitter and system on PC works
Change 3883552 by Shaun.Kime
Fixing renaming to work properly now. It just invalidates the system script compile id's, forcing it to auto-compile.
#tests auto-tests pass
Change 3884722 by Bradut.Palas
Added searchbar with basic name search for Niagara stack
#tests none
#jira UE-53469
Change 3884793 by Shaun.Kime
Adding pragma once
#tests no longer complains about duplicate definition
Change 3885629 by Wyeth.Johnson
Setting up a transient meshrotation framework pre-integration
Change 3887440 by Wyeth.Johnson
Custom HLSL failure for Shaun
Change 3888911 by Bradut.Palas
stack search box now has a minimum width of 300 pixels
#tests none
Change 3890843 by Shaun.Kime
Creating a Niagara quaternion type.
#tests created in editor, saw default was correct, carried through to VM runtime through attribute viewer
Change 3890849 by Shaun.Kime
Porting over 4.19 fix to Dev-Niagara
#tests allows creation of valid scripts even when ini is cleared.
Change 3891088 by Frank.Fella
Sequencer - When getting selected tracks for the external selection api, include tracks if any of their child nodes are selected. This matches the behavior object guid external selection.
Change 3891114 by Bradut.Palas
Fixing crash that sometimes happens if a stack tree changes while a stack search is active
#tests none
Change 3891131 by Frank.Fella
Sequencer - Move section headers for bool, int, vector, and color to the public directory so they can be used by the niagara level sequence integration.
Change 3891165 by Wyeth.Johnson
error for shaun
Change 3891354 by Shaun.Kime
Adding Quat struct to more locations. Now treated like hlsl float4.
#tests EulerToQuaternion now compiles
Change 3891463 by Bradut.Palas
Fix crash that sometimes happens when deleting module and hitting Ctrl-Z to undo (the condition for removing the listeners from the rootentry should not be tied to the validity of weak pointers for system and emitter, because sometimes they are out of sync when changing the graph)
#tests none
Change 3891641 by Wyeth.Johnson
resave node
Change 3893143 by Shaun.Kime
Fixing issue where you try to bind a vertex color sampler to a mesh without it. We failthe binding rather than crash due to a check later. Also fixed up error logging to only mention the one that failed.
#tests can open NiagaraSystem'/Game/FX/SkeletalMeshDissolve/EmittersAndSystems/FightSceneDissolve.FightSceneDissolve' with an error..
Change 3893528 by Bradut.Palas
fix another crash when search results are invalidated during search
#tests none
Change 3893830 by Shaun.Kime
Fix for copy & paste of comment boxes
#tests can now copy and paste comment boxes
Change 3894012 by Bradut.Palas
no longer executing search tick if the rootentry is null
#tests none
Change 3894828 by Frank.Fella
Niagara - Runtime changes to support sequencer animation
+ Reset the simulation when force solo is changed on the component.
+ Invalidate the render data and clear the buffers when resetting to avoid previously rendered particles from drawing.
+ Automatically sync the override parameters in the component when the source assets exposed parameters change and removed forced syncing from various places.
+ Remove lots of refresh code from the niagara component details which should not be neccessary anymore.
#TESTS Ran autotests, tested through the UI while building the sequencer tests asests.
Change 3894832 by Frank.Fella
Niagara - Level sequence support for spawning and animating system life cycle and select user parameter types.
#Tests Ran existing tests and added a new test to verify added functionality.
Change 3896944 by Bradut.Palas
safeguard entries with no search items (it actually can be null)
#tests none
Change 3896948 by Bradut.Palas
Fix assert when dereferencing source array (no need for a raw pointer to the array since it's initialized with the content anyway)
#tests none
Change 3896950 by Bradut.Palas
fix compile error with previous commit
#tests none
Change 3897698 by Frank.Fella
Niagara - Fix some safety issues with parameter initialization on the niagara component.
+ Kill the current system if we synchronize parameters to avoid issues with data interface lifetime.
+ Always sync parameters when the asset is set to prevent missing data interfaces in the override list.
+ Add an enum to control how data interface parameters are handled when calling CopyParametersTo.
+ When the system instance is copying the asset parameters, have it copy data interfaces by reference so that it's not creating data interfaces copies which will be deleted at the next garbage collection.
#Tests Auto-tests, also doesn't crash anymore when opeining Jonathan's disolve effect and then opening a level.
Change 3897953 by Frank.Fella
Niagara - Remove some namespace restrictions from the code that generates the available parameters to read from in the stack UI since it was preventing the use of custom namespaces in modules and it was not clear what issue it was solving since we already prevent scripts from addressing parameters from lower level scripts. Also move user parameters to their own menu section.
#Tests Custom namespaces are usable again in the stack.
Change 3898926 by Bradut.Palas
Fix for crash caused by garbage collection and async search
#jira UE-55284 (Stack search doesn't work on collapsed entries) now searching through unfiltered children, will need extra fixes on the stack to eliminate "ghost" results"
Both are still under code review, submitting because they are simple to rollback and harmless to other features.
#tests none
Change 3899069 by Shaun.Kime
Parallel compilation
Major changes:
Rather than a custom streaming version that we know influences a rebuild, I'm moving away to a guid that you need to regenerate if you change the compiler in any meaningful way
needed for multiple reasons,
1) if two people are making changes to the compiler, having something other than a guid as the value makes the content of the ddc ambiguous
2) when iterating I often need to make multiple changes to get to a working final result, bumping the version number each time that happens gets old fast
We fully clone the input graph to do the compile in the background. While the translation step is not a huge amount of time, it keeps the main thread responsive.
We currently have a big critsec around the crosscompiler to bytecode as it isn't threadsafe. Future changes will push this to the ShaderCompilerWorker.
#tests all tests pass as well as stress tests around saving while compilng, long compile times, etc.
Change 3899071 by Shaun.Kime
Fixing the availability flags for system and emitter scripts.
#tests all auto tests pass
Change 3899077 by Shaun.Kime
Fixing assets to have their wait on compile finished checkbox checked in the editor for testing
#tests n/a
Change 3899114 by Wyeth.Johnson
Random bool custom hlsl node
Change 3899184 by Bradut.Palas
implemented categories for module inputs (now inputs can be assigned a category in the module editor and they will be grouped by those categories in the Niagara stack)
#tests none
Change 3899329 by Bradut.Palas
fix broken commit by adding missing new files NiagaraStackInputCategory.cpp and .h
#tests none
Change 3899439 by Yannick.Lange
Niagara reroute node.
Change 3899516 by Shaun.Kime
Official angle conversion modules.
#tests made a local test emitter that converted back and forth between angles. Results were correct.
Change 3900193 by Shaun.Kime
Fixing build
#tests now compiles
Change 3900474 by Shaun.Kime
Fixes to help Mac compile
#tests n/a
Change 3901131 by Simon.Tovey
Warmup feature.
CPU Sim only.
Also has ability to advance simulation by tick count or seconds via BP/C++.
Includes some engine tests.
#tests editor + autotests
Change 3901455 by Frank.Fella
Niagara - Add WITH_EDITORONLY_DATA to prevent non-editor compile failures.
Change 3902477 by Frank.Fella
Niagara - Fix FNiagaraEditorTypeUtilities to be a thread safe TSharedFromThis since it's always created with a thread safe shared pointer, also fix up issues related to this change. Fixes a crash which occurrs when it's the target object of a delegate binding.
#Tests adding a curve data interface to a parameter collection no longer crashes.
#jira UE-55403
Change 3903478 by Shaun.Kime
No longer doing the check if compiling on load is enabled as this always forces different change ids'
#tests n/a
Change 3903783 by Shaun.Kime
Trimming down excess log spew
#tests auto-tests pass
Change 3905753 by Shaun.Kime
Made Sine(Degrees), Sine(Radians), and Sine, and the variants thereof for trig functions.
#tests n/a
Change 3905759 by Shaun.Kime
Auto tests for mesh orientation
#tests these now pass
Change 3905762 by Shaun.Kime
These files needed to be resaved for some reason to keep passing.
Change 3906727 by Bradut.Palas
Curve UX improvements
#jira UE-55134
#tests none
Change 3908177 by Shaun.Kime
Fixing build due to typo
#tests now compiles
Change 3908199 by Shaun.Kime
Trying to fix compilation when destroying objects. We cannot safely attach anything beneath us at this point ,we just need to clear out the queues.
#tests normal work day-to-day
Change 3908201 by Shaun.Kime
Working to fix crashes where the component was destroyed out from underneath us due to PIE shutting down and we have a Niagara item editable in Blueprint or world editor.
#tests n/a
Change 3908985 by Bradut.Palas
Renaming ColorCurveAsset to CurveAsset to better reflect the actual usage of the variable (fixing copy-paste issue)
#tests none
Change 3909222 by Yannick.Lange
Niagara graph connection colors
Change 3909436 by Bradut.Palas
fix crash in curve ux when importing a linear curve (curve of floats)
#tests none
Change 3909561 by Bradut.Palas
Updating LUT before sending NotifyPostChange when editing curves inline (so that LUT will not go out of sync)
#tests none
Change 3910010 by Yannick.Lange
Use new Niagara Actor icon
Change 3910191 by Yannick.Lange
Fix viewport widget showing up in the viewport when pressing W, E or R.
#jira UE-55142
Change 3910213 by Frank.Fella
PropertyEditor - PropertyRowGenerator - Added features and fixes to support integration into niagara's stack view.
+ Added a method to get filter/search strings for an IDetailTreeNode to support external searching and filtering.
+ Added a delegate to the layout builder for when one of it's owned nodes has it's visibility forcibly changed by a customization.
+ Changed the filtering so nodes are generated for properties marked as advanced.
+ Pass the notify hook down to the detail utilities so that change notifications work as expected.
+ Add layout data for the widgets returned from the IDetailTreeNode to prevent alignment and sizing issues in custom implementations.
Change 3910307 by Frank.Fella
PropertyEditor - Missed in last checkin.
Change 3910509 by Frank.Fella
Niagara - Removed nested details panels from the stack and integrate them properly plus other fixes.
+ Generate rows for nested objects using the details panel property row generator.
+ Fix the horizontal sizing for niagara parameter editors.
+ Add an IsValid() method to the base niagara stack entry so that derived classes can know if the associated view models are still valid when processing events. This is a temporary measure to fix a crash in the user parameter UI.
+ Set stack entries to be expandable by default and delete usages which were setting it to true.
+ Highlight the active search result with a border since property rows can't highlight text.
Change 3911653 by Frank.Fella
Niagara - Fix stack spacer sizing.
Change 3911667 by Frank.Fella
PropertyEditor - Actually fix the notify hook handling in the property row generator.
Change 3911896 by Yannick.Lange
Niagara function input context menu.
Change 3911900 by Yannick.Lange
Project setting for not showing comment bubbles.
Change 3911996 by Yannick.Lange
Niagara fix if node persistent guids for older nodes. The OutputVarGuids are always synced on PostLoad.
Change 3912221 by Wyeth.Johnson
Renderer Icons for timeline
Change 3912608 by Bradut.Palas
stack style refactor
#jira UE-55399
#tests none
Change 3913063 by Wyeth.Johnson
Icons for stack added, including new system param png
Change 3913618 by Shaun.Kime
Fixing two of the most common Illegal call to StaticFindObject() errors while compiling.
#tests ran through compilation after changes.
Change 3914369 by Bradut.Palas
Using new SystemParams.png icon provided by Wyett (instead of the old "Parameters.png")
#tests none
Change 3914782 by Wyeth.Johnson
Adjusting icon for update to not indicate "flow"
Change 3915738 by Shaun.Kime
Moving away from the generic and super-slow EdGraphSchema ShouldAlwaysPurgeOnModification being true to using the same mechanism we use to invalidate the compile to synchronize nodes. This should be substantially faster.
#jira UE-55463
#tests ran through a variety of tests creating and wiring nodes
Change 3915739 by Shaun.Kime
Assignment nodes need to invalidate the graph for compile.
Change 3915741 by Shaun.Kime
Making default values more accessible and making it possible to route renderers to use different values than the defaults.
#tests n/a
Change 3915798 by Frank.Fella
SearchBox - Add options to show the number of search results and an option to show a throbber when a search is active.
Change 3915966 by Shaun.Kime
Changing the default for velocity to 0,0,0 as requested by Wyeth
#tests n/a
Change 3915982 by Shaun.Kime
Making the default text more readable
#tests n/a
Change 3916237 by Frank.Fella
PropertyEditor - Change the DetailCategoryBuilderImpl so that it sets the horizontal alignment to fill for value widgets when generating stand alone widgets so that the behavior in the property row generator matches the behavior of the property grid.
Change 3916240 by Frank.Fella
Niagara - Should prevent some recent crashes due to stack entry delegates and lifetime.
Change 3916261 by Frank.Fella
Niagara - Lots of minor stack ui fixes and adjustments
+ Tweaked padding in a bunch of different places.
+ Added a dark background behind the stack and stack header to prevent the colors from bleeding together.
+ Fixed the group text not being white anymore.
+ Hooked up new features of the search box for showing the search result data and an is searching throbber.
+ Fixed an issue where the current search result couldn't be interacted with.
+ Fix some other inconsistencies with searching where you might jump more than one result.
+ Replace the checkbox for showing curve in the curves tab with an icon based button. (icon is placeholder)
Change 3916833 by Shaun.Kime
Fixing issue where the system wasn't set to wait for compilation on load, sometimes leading to failures for auto-tests
#tests this test now passes when forced to recompile
Change 3916846 by Shaun.Kime
Missed one system in the scene.
#tests n/a
Change 3917458 by Shaun.Kime
Fixing another potential race condition on the DDC.
#tests n/a
Change 3918349 by Frank.Fella
Niagara - Invalidate the node visuals when reallocating pins.
#Jira UE-55698
Change 3918783 by Olaf.Piesche
Correct 'temp' to 'Temp' in map set
Change 3919262 by Shaun.Kime
We weren't properly updating the default values for user data interface components when tweaked in the editor.
#tests open skinned mesh auto test system change the preview for the user skinned mesh to be SK_Mannequin_Niagara. It now updates, it didn't before.
Change 3919602 by Shaun.Kime
Fixing the skeletal mesh to now clamp to the end of the index buffer for safety as well as adding IsValidTriCood. This lets us keep going even when swapping out the skeletal mesh underneath.
Tested out isvalidtricoord in the test skinning module.
#tests auto tests pass
#codereivew simon.tovey
Change 3921701 by Yannick.Lange
Make Vector2 and Vector4 default blue color to be consistent with blueprints.
Change 3922331 by Damien.Pernuit
Niagara - Houdini - Added support of CSV File as UAsset (HoudiniCSV)
Modified the Data Interface to use the CSV asset instead of the imported buffers from the CSV File Path.
Added some new functions to the DI:
GetLastParticleIndexAtTime()
GetCSVPositionAndTime()
GetCSVVectorValue()
GetCSVFloatValueByString()
Change 3923118 by Simon.Tovey
PS4 compile fix.
Change 3924934 by Bradut.Palas
fix Mac compile issues
#jira UE-55426
#tests none
Change 3925168 by Bradut.Palas
Curve logspamming
#jira UE-55593
#tests none
The UpdateCompiledDataInterfaces would end up comparing LUTs when copying curves and the source LUT was out of date.
Change 3925366 by Frank.Fella
Slate - SMenuAnchor - Fix the implementation of "BelowRightAnchor" to align the right edge of the menu with the right edge of the anchor. There aren't any other usages of this in the engine as far as I can tell, hopefully people weren't relying on the broken behavior in a game somwhere.
Change 3925423 by Frank.Fella
Niagara - Remove the large add buttons from the stack and add smaller add buttons in the group headers.
Change 3925877 by Olaf.Piesche
New collision modules, separating query, linear and angular impulse; Solve forces and velocity takes care of integrating f->v->p and fA->vA->O; linear impulse module would probably be cleaner by zeroing velocity on collision and calculating a force instead of setting new velocity directly
Change 3926582 by Simon.Tovey
PS4 compile fix
Change 3927401 by Shaun.Kime
Fixing events due to added member
#tests all tests pass as of 3925423 with this change
Change 3927496 by Shaun.Kime
Getting auto-tests to run
Questions: Why did I have to recompile the GPU tests... something is missing in their key generation?
Resaved several files.
#tests almost all pass now
Change 3927582 by Shaun.Kime
Fixing last failing auto test
#tests all tests now pass
Change 3927924 by Simon.Tovey
Chunk level vm parallelism.
Any execution processing > batch_size chunks will go wide.
The batch size is 4 currently but adjsutable via vm.ParallelChunksPerBatch.
VM parallelism can be disabled by vm.Parallel 0
Change 3927990 by Shaun.Kime
Submitting redirector
Change 3928426 by Frank.Fella
Niagara - Always propagate rapid iterations parameters when merging an emitter.
Change 3929823 by Frank.Fella
Niagara - Fix hlsl generation for system/emitter spawn script so that we read the engine and user parameters from the data set instead of initializing them to 0.
#Tests Full recompile + auto-tests
Change 3929983 by Simon.Tovey
Curve LUT Interpolation
+ updated test altered by it.
Change 3930551 by Frank.Fella
Niagara - Fix what looks like a copy/paste error in the SNiagaraSelectedEmitterGraph destructor which was preventing clean removal of delegates and causing a crash.
#Tests closing the "Selected Emitter Graph" tab and then changing the selected emitter no longer crashes.
Change 3932695 by Damien.Pernuit
Niagara - Houdini:
Houdini CSV Asset:
- Packed vector values in the CSV file are now properly supported (not just for Position/Normal) and can be of any size.
- Added support for reimporting Houdini CSV files.
- Added an "open in text editor" entry in the context menu.
- Improved error/warning logging during the parsing of the file
Houdini Niagara Data Interface:
- Added GetParticleIndexesToSpawnAtTime():
New helper functions returning the min index, max index and number of particles to be spawned for a given time value.
Uses an internal LastSpawnIndex to avoid spawning the same particles twice.
- Modified GetLastParticleIndexAtTime():
If the CSV file doesn't have time informations, returns false and set the LastIndex to the last particle
If desiredTime is smaller than the first particle, LastIndex will be set to -1
If desiredTime is higher than the last particle in the csv file, LastIndex will be set to the last particle's index
Change 3933425 by Shaun.Kime
Made the spreadsheet debugger capable of capturing in-world systems as long as they are solo'ed.
#tests have been running with it for several days, debugging real-world assets stably
Change 3933986 by Frank.Fella
Niagara - Fixed a bug with merging where added dynamic inputs which changed names could end up with the wrong rapid iteration parameters. Also fixed an issue where added dynamnic inputs would be renamed when they didn't need to be.
#Tests Engine tests and fixes custom repro.
Change 3934052 by Frank.Fella
Niagara - Added a console command to dump rapid iteration parameters for a system or emitter asset.
Change 3934436 by Simon.Tovey
Fixes for sprite VF depth test failure issue
Change 3934658 by Frank.Fella
Niagara - Make disabled modules visually distinct.
#Tests General stack use.
Change 3935383 by Shaun.Kime
Fixing mac compile errors
#tests n/a
#jira UE-55911
Change 3935420 by Yannick.Lange
Niagara parameter UI first version.
Change 3935482 by Yannick.Lange
Add missing files for parameters
Change 3935591 by Shaun.Kime
more macos compile
#tests na
Change 3935637 by Shaun.Kime
Reverting to prior behavior
#tests na
Change 3936541 by Yannick.Lange
Remove the merge up menu entry for set variables module items.
Change 3936841 by Wyeth.Johnson
Bool comparison dynamic input
Change 3936895 by Simon.Tovey
A few perf improvements and fixes to the SetSolo transfering between solo and batched so all lightning sims can run batched after they're warmded up.
Change 3936899 by Simon.Tovey
Missed a file
Change 3937178 by Krzysztof.Narkowicz
Fixed bHasSkipOutputVelocityParameter for shaders without PreviousLocalToWorldMatrix (e.g. particles)
#jira UE-50914
Change 3937222 by Yannick.Lange
Random event spawn
Change 3937292 by Yannick.Lange
Fix Adding a new parameter then renaming it the default name deletes the new parameter
#jira UE-55994
Change 3938472 by Yannick.Lange
Fix new parameters in emitters saving by using the editable emitter.
Change 3938474 by Yannick.Lange
- Store graphs as weak object pointers in the parameter UI.
- Allow right mouse menu on parameters in the system toolkit.
- Refresh only the parameter actions when deleting an entry instead of refreshing the graphs aswell.
Change 3938525 by Yannick.Lange
Fix creating an unique FName every tick for parameterstores by using a FString instead.
Change 3938596 by Shaun.Kime
Macos compile
#tests n/a
Change 3939362 by jonathan.lindquist
Adding a new Component Spacing input to the debug value functions. This will allow users to make better use of space when debugging values.
Change 3939365 by Shaun.Kime
Back out changelist 3936895 and 3936899
Leaving in some changes around stats as they should be harmless.
These changes were removed b/c they added poor perf to Jonathan's dissolve effect and also caused multiple tests to fail in engine tests.
#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)
Change 3939367 by jonathan.lindquist
Adding greyscale output
Change 3939368 by jonathan.lindquist
Changing the pin order
Change 3939377 by Shaun.Kime
Allows the unnormalized lut table flag to be copied over
#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)
Change 3939379 by Yannick.Lange
Rename FParameterStore Name to DebugName to prevent loading a FName into a FString with existing assets.
Change 3939382 by Shaun.Kime
Adding the ability to have a default curve index with a custom switch node.
#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)
Change 3939383 by Shaun.Kime
Converting existing curves over to using the new default pin
#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)
Change 3939501 by Shaun.Kime
Submitting missing files
#tests n/a
Change 3939580 by Wyeth.Johnson
Default curve indexing to three more DIs
Change 3940122 by Yannick.Lange
Parameters view: - Jump to new parameter added and request rename for new parameter.
- Remove adding parameters to the parameterstore when a pin is requested.
- Only show make new parameters in the dropdown to add a new parameter.
- Use Sections of UI as types instead of int32.
Change 3940214 by Bradut.Palas
fix crash when rename skeletal mesh user variable
#jira UE-55236
#tests none
Change 3940215 by Bradut.Palas
undo not working in graph editor
#jira UE-55466
#tests none
Overriding the BreakPinLinks methods to include a transaction
Change 3940250 by Bradut.Palas
Creating stats tab in module toolkit to show LastOpCount
#tests none
Change 3940251 by Bradut.Palas
#jira UE-55684 create inline menus for stack
#tests none
Change 3940262 by Simon.Tovey
Back out changelist 3939365 with fixes
Tests all now pass
Change 3940333 by Shaun.Kime
Nullptr check
#tests n/a
Change 3940338 by Krzysztof.Narkowicz
Niagara sprite particles - implemented get previous position in order to fix sprite particle motion vectors
#jira UE-52865
Change 3940407 by Yannick.Lange
Create pin on map get and set node when dragging without recompiling the graph.
Change 3940534 by Shaun.Kime
Making sure that collision returns defaults of 0 if nothing was found.
#tests auto-tests that have been passing still pass
Change 3940709 by Simon.Tovey
Temp hacks for the skeletal mesh painting issues.
Change 3940960 by Yannick.Lange
Only build parameter menu once when graphchanged is called multiple times in a frame.
Also use the existing metadata from graph to build the parameter menu, because the metadata already looped through all nodes and pins.
Change 3941019 by Yannick.Lange
Meta data UI refresh next tick to avoid refreshing multiple times a tick.
Change 3941853 by Simon.Tovey
Adding more dynamic parameters
Change 3941957 by Frank.Fella
Property Editor - Fix issues with property row generator to support the niagara stack.
+ Make the detail tree node name accessible through the interface, and fix the implementations for category group and property item.
+ Add a temporary fix for passing instance customizations from the property row generator to the detail property row through the detail layout builder. This should be unified in a nicer way, but this will work for the time being.
Change 3942174 by Frank.Fella
Niagara - Stack UI Pass
+ Advanced rows are not handled properly per item.
+ Expanded and scroll state is now saved in editor data per asset.
+ Added a "View Options" drop down for showing all advanced rows, and for showing/hiding outputs.
+ Added an option to collapse all stack items from the emitter header context menu.
+ Added support for "Edit Conditions" on module and dymaic inputs which will enable and disabled an input based on the value of another input. This includes showing a checlbox inline for the edit condition toggle input.
+ Added support for "Visible Conditions" on module and dynamic inputs which will hide and show inputs based on the value of another input.
+ Removed the pencil icon for locally editable values in the stack.
+ Fixed issues with invisible search results. It's still possible for a search result to not highlight the text correctly, but the outline never disappears.
+ Removed pinning for module inputs.
+ Fixed the event handler properties so that they use the property row generator instead of an embedded details panel.
+ Unified indent handling across all stack classes.
+ Unified stack editor data across all stack classes.
Change 3942427 by Simon.Tovey
Another hack for vertex painting tool
Change 3942453 by Simon.Tovey
Some more hacks for skel mesh vertex painting until Jurre's rework is ready.
Change 3942799 by Yannick.Lange
Rebuild metadata, input and output parameters UI next frame instead of on every graph changed call.
Change 3942833 by Frank.Fella
Niagara - Fix the visibility of the advanced expander item.
Change 3942923 by Yannick.Lange
Revert using metadata for parameters to looping through pins to find parameters in maps not connected to anything.
Temporary fix to remove used parameters if they are found in the graph.
Change 3943094 by Wyeth.Johnson
Rollback //UE4/Dev-Niagara/Engine/Plugins/FX/Niagara/Content/Modules/Spawn/Location/SphereLocation.uasset to revision 5
Change 3943154 by Wyeth.Johnson
Metadata to sphere location module
Change 3943256 by Wyeth.Johnson
Testing out sweet new metadata control
Change 3943374 by Olaf.Piesche
Fixing mesh motion blur
Change 3943382 by Olaf.Piesche
Turning on base pass velocities until I can fix separate vel pass for particles
Change 3943471 by Yannick.Lange
Emitter view stats only show particles count. Use Niagara.EmitterStatsFormat 0 and 1 to switch between all data and only particle count. Default is 1 to only show particle count.
Change 3943497 by Yannick.Lange
Paramater map remove FTickableEditorObject and use SWidget::Tick
Change 3943589 by Olaf.Piesche
-Fix for linear impulse (offset by 1/2*velocity*dt instead to avoid distracting bounciness)
-Collision Rest; add after impulse modules to make particles rest if in collision under threshold velocity magnitude
Change 3943644 by Olaf.Piesche
Turn shader development mode back off
Change 3943718 by Olaf.Piesche
Fix vertex factories
Change 3943776 by Olaf.Piesche
Properly calculate old particle position using dt for velocity rendering
Change 3943780 by Frank.Fella
Niagara - Fix ensure when removing dynamic inputs due to incorrect logic which would have left unused nodes in the graph.
Change 3943870 by Yannick.Lange
Parameter drag drop window
Change 3943994 by Frank.Fella
Niagara - Fix some editor settings not saving across sessions.
Change 3944056 by Shaun.Kime
Updating to replace values reset when Wyeth resaved files.
#tests DrawOrderGPU, DrawOrder, and TestDifferentInactiveEmitters now pass
Change 3944068 by Simon.Tovey
Back out of my changes to vertex painting and replaced with Jurre's fixes.
Change 3944174 by Frank.Fella
Niagara - Fix stack categories so that they don't freak out when the stack is refreshed, and also remove the uncategorized heading and move uncategorized inputs to the top.
Change 3944313 by Shaun.Kime
Updated screenshots after motion blur
Change 3944321 by Shaun.Kime
Fixing error message to be clearer about a disconnected Get node.
#tests n/a
Change 3944351 by Shaun.Kime
Making safe against weak pointers going away.
Track error encountered by Jonathan.
#tests n/a
Change 3944368 by Yannick.Lange
Remove automatic adding prefix "particles." when renaming functioninput.
Change 3944383 by Shaun.Kime
Just adding some more nullptr check
#tests n/a
Change 3944384 by Shaun.Kime
Providing more context for a check that existed previosuly and was encountered by Wyeth today
#tests n/a
Change 3944872 by Yannick.Lange
Remove old material parameter node.
Change 3945209 by Shaun.Kime
Fixing possible infinite recurson on child array size of zero
#tests n/a
Change 3945865 by Yannick.Lange
Spreadsheet filter for output attributes
Change 3946091 by Simon.Tovey
Per particle sorting for translucent sprites and meshes
Change 3946095 by Simon.Tovey
Updated screens for dynamic param tests
Change 3946378 by Olaf.Piesche
Another sprite motion blur fix
Change 3946864 by Shaun.Kime
SkinnedMesh per-instance data requires 16 byte alignment due to usage of FMatrix. We were not guaranteeing that in our per-instance data system. We are now enforcing that to be true by aligning all memory size requests.
#tests autotests pass
Change 3946928 by Wyeth.Johnson
Skeletal mesh location metadata. THIS VERSION ALSO CRASHES ON SAVE FYI
Change 3946934 by Frank.Fella
Niagara - Clean up rapid iteration parameters on compile.
#Tests - Fixes the jira below, all auto tests which were currently passing still pass, and GDC effects load and look correct.
#jira UE-55932
Change 3946936 by Frank.Fella
Niagara - Fix crash when undoing adding a dynami input.
Change 3947213 by Simon.Tovey
Fix for thread safety in collision data interface.
Previously I'd made them thread safe between VM chunks but they already weren't safe between system instances.
Change 3947279 by Simon.Tovey
Fixed thread safety issue with niagara global dynamic buffer
Change 3947788 by Simon.Tovey
Fix enum property warnings
Change 3947849 by Olaf.Piesche
Normalize orientation quats. Safety first.
Change 3947877 by Frank.Fella
Niagara - Fix a crash when editing meta-data for a module currently open in a system or emitter editor stack. This updates the FNiagaraStackFunctionInputBinder to track the lifetime of the default pin correctly.
Change 3948445 by jonathan.lindquist
Inverting alpha output
Change 3948615 by Olaf.Piesche
Don't access data layouts that are invalid because their bindings don't exist
Change 3949361 by Yannick.Lange
Command to expand all groups and collapse all items of those groups in the stack.
Change 3949365 by Yannick.Lange
Missing file for change 3949361
Change 3951123 by Simon.Tovey
Fix bug with dynamic parameters in Niagara mesh particle VFs
Change 3951199 by Simon.Tovey
Fix for issues caused by unsafe reads of GT data from RT
Change 3951293 by Olaf.Piesche
Workaround for jittering particles with collision at rest state; will need to revisit after GDC
Change 3951533 by Yannick.Lange
Collapse parameter menu by default
Change 3952106 by Frank.Fella
Niagara - Fix data interface input initialization when inserting modules and dynamic inputs. We now put all inputs into categories in the stack and this code didn't handle that.
Change 3954809 by Frank.Fella
HoudiniNiagara - Add include to fix CIS incremental build.
Change 3954857 by Frank.Fella
Niagara - Accept newer versions of 3 automated tests images as they are stable and still look correct for what they are testing.
Change 3954935 by Frank.Fella
Niagara - Fix a crash in the skeletal mesh sampling info details customization when a mesh has no skeleton.
Change 3954969 by Simon.Tovey
Compile fix for gpu emitters
Change 3955012 by Frank.Fella
Niagara - Fix clang and deprecation warnings.
Change 3955988 by Olaf.Piesche
Fixing collision queries (separating line query trace direction and velocity, so we can look a frame ahead properly); various fixes to the impulse modules; rest module now allows for color change when particles are set to rest. This checkin should stabilize collision dynamics substantially.
Change 3956730 by Yannick.Lange
Cleanup parameter
Change 3957065 by Bradut.Palas
enable/disable mechanism for renderers
#tests none
Change 3957802 by Olaf.Piesche
-Removing Velocity parameter from collision query DI, since velocity at query time is known and can just be passed along in temporary parameter; this stops the compiler from falling over in unity builds and also makes the Perform Query function more sane as an actual line check
-Put some safeguarding against non-collisions (v.n>0) reported as intersections into the collision query module to avoid instances of particles being pushed through geometry
-Updated modules to use the new function signature
#tests modular explosion test map, EngineTests
Change 3957804 by Olaf.Piesche
Updated tests for 3957802
Change 3957859 by Frank.Fella
Niagara - Add missing #if to fix some of the nightly build errors.
Change 3958065 by Olaf.Piesche
Fix GPU sim hlsl for the collision data interface; should make GPU collision bounce test run again
Change 3958302 by Olaf.Piesche
modified test for sane depth bounds; accepting new results; some changes to hlsl for collision data interface
Change 3959007 by Simon.Tovey
Further defining the barrier between GT and RT data.
Not finished yet, especially for GPU sims but we're heading in the right direction.
Change 3960004 by Bradut.Palas
QOL change, now committing search text in the stack (pressing enter) will jump to the next occurrence.
#tests none
Change 3960019 by Frank.Fella
Niagara - Preemptively fix up stack related header includes to avoid manual merges.
Change 3964217 by Bradut.Palas
Fixing compile issue after renderer enable feature(the Isolate features require the WITH_EDITORONLY_DATA preprocessor directive to be enabled)
#tests none
Change 3964581 by Frank.Fella
Niagara - Get things compiling again after merge. Mostly include fixes and commeting out lots of sequencer related stuff that needs to be fixed.
Change 3965057 by Frank.Fella
Niagara - Fix compile issues in the houdini plugin. Also add the houdini pluging to EngineTest so that it compiles by default when running tests.
Change 3965075 by Frank.Fella
Niagara - Fix another include issue that was caught on the build machine.
Change 3965308 by Frank.Fella
Niagara - One more header fix. Should fix the win64 build in CIS.
Change 3965313 by Frank.Fella
Niagara - Fix in editor playback. The timeline data is still broken.
Change 3965482 by Yannick.Lange
Stack source taken apart into different files.
Change 3965863 by Shaun.Kime
Fixes scope level variable definition causing my local build to fail
#tests n/a
Change 3965866 by Shaun.Kime
Crash fix when the module is missing. Now show an error message as well as checking for script validity before calling method on it
#tests n/a
Change 3968174 by Frank.Fella
Niagara - Fix more merge fallout. The emitter/system editor timeline now matches the stack data again.
Change 3968183 by Frank.Fella
Niagara - Delete commented out include from merge.
Change 3972162 by Frank.Fella
Niagara - Updated level sequence testing assets.
Change 3972880 by Shaun.Kime
Merging using DevNiagaraToGDC2018
Allowing disabled modules to still influence parameter maps.
#tests n/a
Change 3973269 by Shaun.Kime
Disabling warning about divide by zero as it is often incorrect
#tests n/a
Change 3973273 by Shaun.Kime
Forcing all three planes to be GPU
#tests n/a
Change 3973307 by Shaun.Kime
Fixing CIS win32 errors
#tests n/a
Change 3973374 by Shaun.Kime
Fixing minor static analysis warnings
#tests n/a
Change 3976107 by Shaun.Kime
Updating multiple files as they have the unversioned file warning
#tests auto tests now show green
Change 3976114 by Shaun.Kime
Taking snapshots after the integration for time control to clear automated tests. Frank was uncertain about the current behavior being correct, but didn't want to hold up integration for that.
#jira UE-57117
Change 3976119 by Shaun.Kime
Makiing GPU shaders contain the dependencies and the compile id's and other items so that they update properly.
#tests auto-tests now pass
Change 3976449 by Shaun.Kime
Adding additional debugging to logs
#tests n/a
Change 3977172 by Frank.Fella
Niagara - Fix issues with the level sequence integration for niagara caused by the integration from main, and accept the new test image. This code should be updated at some point to use the new channel blending in sequencer.
NOTE: There is still a timing issue that is evident in the automated test screen shot due to float timing and rounding issues in niagara, but the sequencer code is functioning correctly.
Change 3977362 by Bradut.Palas
UE-55601 curve snapping not working in Niagara curve editor
#tests none
Change 3977363 by Bradut.Palas
exposed added external asset for function input so it would appear in context menu in the Niagara stack.
#tests none
Change 3977368 by Bradut.Palas
#jira UE-51052 If you undo an emitter rename we get invalid values
The CachedUsageInfo got emptied but it didn't get restored by the undo, sending the system in an endless Compile() loop
Added a Modify() call in the UNiagaraScriptSource::InvalidateCachedCompileIds()
#tests none
Change 3978716 by Shaun.Kime
Fixing half of CIS static analysis warnings and localization symbol dupe warnings from Jamie Dale
#tests auto tests pass other than known level sequence test
Change 3978857 by Shaun.Kime
The map SpawnTest niagara actor didn't have its wait for compilation flag set, potentially leading to artifacts. Disabling for now as that didn't resolve the issue.
Change 3979594 by Shaun.Kime
Potential fix for cook on Orion
#tests n/a
Change 3979713 by Shaun.Kime
Fixing several more CIS static analysis warnings as well as duplicate localization string warnings from Jamie Dale
#tests n/a
Change 3980017 by Shaun.Kime
Fixing CIS static analysis warnings as well as duplicate localization string warnings from Jamie Dale
#tests n/a
Change 3981859 by Shaun.Kime
Fixing crash in Paragon when the normals buffer was not present during startup with just UI screens.
#jira UE-57188
#tests got through to paragon main screen, related auto-tests pass
Change 3982685 by Shaun.Kime
For some reason, when Lightmass is spinning off workers, the render thread is null, causing us to trigger checks that we shouldn't trigger when killing of system instances.
#jira UE-57214
#tests all auto-tests pass
Change 3983902 by Simon.Tovey
Speculative fixes for mac errors regarding niagara vertex decls.
Change 3984023 by Andrew.Rodham
Sequencer: No longer upgrade bIsInfinite for section types that do not support open ranges
Change 3986727 by Wyeth.Johnson
Fixed add velocity from point to work in more situations, not cause errors regardless of stack location, made it more programmable with inputs, and added metadata
Change 3988114 by Wyeth.Johnson
fixed color and inherit parent vel
Change 3989175 by Simon.Tovey
Improved VM error reporting.
#tests engine tests
Change 3995007 by Yannick.Lange
Parameter menu in system layout
Change 3995192 by Yannick.Lange
Fix niagara script details panel search
Change 3995291 by Yannick.Lange
Parameter menu tooltip fix
Change 3997804 by shaun.kime
Lookup table is off for this. Keys are 0,0 and 1,1, so you'd expect normalized age as a sampler to just return the same value from lookup. If LUT is disabled, this is true. If LUT is enabled, it isn't, especially the farther one gets from 0.
Change 3998124 by Simon.Tovey
Fixed Curve LUT generation
#tests editor
#jira UE-57604
Change 3998286 by Wyeth.Johnson
Fixed normalized execution index to, you know, work.
Change 4000324 by Shaun.Kime
Replacing a thread-safety issue where we get an enum on an as-needed basis. This was causing crashes in cooking as you cannot find from the global table while serializing.
#tests have not gotten the crash since
Change 4000428 by Bradut.Palas
UE-55750 focus curve editor when "show" button is pressed
UE-55791 user variable curves cannot be shown in the Curve tab
These issues were related and touched the same area of code, so I fixed them together. UE-55791 is basically just getting curve data from the system exposed variables too.
#tests none
Change 4001094 by Frank.Fella
Niagara - Fix slowdown in the metadata editor due to delegate rebinding.
Change 4001098 by Frank.Fella
Niagara - Remove the tool tip from the additional options drop-down for modules since it covers the drop down menu.
Change 4001133 by Bradut.Palas
Fix curve editor getting focused each time a curve was changed.
#jira UE-57708
#tests none
Change 4001253 by Frank.Fella
PropertyEditor - Fix issues with external root handling.
+ Fix external nodes not being cleaned up correctly when custom node builders rebuild children.
+ Fix expanded state being trampled when processing external nodes due to the expanded nodes list being emptied every time RestoreExpandedItems was called.
+ Fix performance issues with refreshing during tick by moving all calls to RestoreExpandedItems to UpdateFilteredDetails, and then only calling UpdateFilteredDetails once per tick as needed instead of per root property node and per root external node.
Change 4003365 by Shaun.Kime
If the physical material has gone away, make sure to set value values. Note that if this data interface is going to go on in parallel to the game thread, we'll need something more sophisticated.
#tests Win64 tests pass
Change 4003367 by Shaun.Kime
Making sure that the system has finished compiling before we begin cooking.
#tests n/a
Change 4003374 by Frank.Fella
Niagara - Fix a crash when adding and removing modules and dynamic inputs with data interfaces.
#jira UE-57749
Change 4003696 by Shaun.Kime
Getting rid of whitelist, now open on all platforms.
#tests n/a
Change 4005368 by Shaun.Kime
Fixing compile error on Linux
#tests n/a
Change 4013779 by Shaun.Kime
Interpolated spawn on GPU does not yet work but checkpointing work.
+ Added AdditionalDefines to the VMCompileId, switched interpoalted spawn to use that
+ Added rough interpolated spawn support to translator by refactoring away from specific calls and hard-coded update/spawn somewhat... could improve for events
+ Revised shader variables away from Phase0/Phase1 terminology to the true Update/Spawn meaning. Leaving the phase numbers as an implementation detail within the usf.
+ Added ToString to ParameterStores for debugging
+ Changed GPU ExecIndex() logic to actually work similar to the VM
#tests collision gpu fails
Change 4015355 by Simon.Tovey
Persistent IDs final.
Still need to change the compile ID parts over to use the new additional defines but the core functionality is in.
#tests editor + engine tests
Change 4018445 by Simon.Tovey
Some missing assets
Change 4021647 by shaun.kime
Moving jonathan's DebugParticleData to Niagara Extras
Change 4024809 by Yannick.Lange
Parameter map hover text using metadata description.
Change 4025042 by Wyeth.Johnson
Dogfooding the skeletal Mesh location module w/ comments, reroute pins, map gets and sets, metadata, tooltips, etc.
Change 4025236 by Shaun.Kime
Working on getting interpolated spawning working. Submitting to get assistance from Simon.
... PLEASE DON'T SYNC UNLESS YOU'VE SPOKEN TO ME...
#tests collision test on GPU is better, but not yet right.. ribbon id emitter is ensuring on LUT table generation
Change 4025372 by Shaun.Kime
Making the debug particle data stay the same size as the base particle for easier debugging.
#tests n/a
Change 4025701 by Shaun.Kime
Debug asset for Simon
#tests n/a
Change 4027865 by Shaun.Kime
Fixing parameter map stores to properly handle reset. Previously was leaving around padding info from previous version of the script which could be totally wrong.
#tests now don't crash
Change 4029638 by Wyeth.Johnson
Refactor Skeletal mesh location module to test some ideas on coding standards and shake out workflow issues
Change 4030135 by Shaun.Kime
Interpolated spawning now works on the GPU.
#tests collision gpu has stray collisions and the GenerateLocationEvent was recently updated that broke . will fix in a later update
Change 4030197 by Wyeth.Johnson
Refactor static mesh location module
Change 4033437 by Simon.Tovey
Adding a few simple new functions for direct access to vertex positions for cannabis.cod3r.
Change 4033937 by Shaun.Kime
Setting the wait for compilation flag
#tests now pass consistently
Change 4034391 by Shaun.Kime
Created a parameter map default node to start default call chains.Updated standard modules and dynamic inputs.
#tests all previoulsy passing tests pass
Change 4035002 by Shaun.Kime
Updated to work with latest main integration
#tests n/a
Change 4035523 by Wyeth.Johnson
Refactor Cone stuff to coding standards, replace some things with functions
Change 4035672 by Shaun.Kime
Fixing build warnings
#tests n/a
Change 4036887 by Wyeth.Johnson
Some metadata, some optimization, some additional refactoring and swapping in functions. Straight Dogfoodin'
Change 4037132 by Shaun.Kime
Adding GPU test versions of several assets
Change 4037241 by Wyeth.Johnson
Optimizing, metadata, and making some coding standards changes
Change 4037436 by Wyeth.Johnson
Fixing a pointless module to make it... pointful?
Change 4037629 by Frank.Fella
Niagara - Fix issues with data interfaces as parameters
+ Collect data interface reads and writes from parameter maps during compilation so they can be hooked up a runtime.
+ Add new runtime parameter stores for systems and emitters at runtime which bind the exposed data interfaces into the execution contexts.
+ Fix the editor code which updates the compiled data interfaces so that it updates the correct ones regardless of where they are defined.
+ Fix an issue where failed compiles weren't being propgated to the UI correctly.
Change 4037832 by Shaun.Kime
Properly handling nullptr references
#tests deleting a module from the stack after it was recently refreshed now doesn't crash
Change 4037917 by Wyeth.Johnson
Fix add velocity from point (needed begin defaults), reorg, comment and metadata
Change 4038250 by Wyeth.Johnson
Big refactor of spawn per unit
Change 4038665 by Shaun.Kime
Events now take parameter map in/out pins
#tests now the events auto-tests should pass
Change 4038723 by Shaun.Kime
Now renderers can say if they are compatible with the SimTarget mode.
#tests now changing to GPU doesn't crash a light renderer
Change 4038731 by Shaun.Kime
Missing file from prior checkin
#tests n/a
Change 4038742 by Shaun.Kime
Attempting to fix editor build, which is unfortunately fine on my machine
#tests n/a
Change 4040069 by Wyeth.Johnson
Refactor of Event Generator and Event Receiver, new coding standards for events
Change 4040377 by Wyeth.Johnson
Refactor the solver to adhere to coding standards (and remove some reroute pins, sorry Shaun)
Change 4040639 by Wyeth.Johnson
Vector Noise Force refactor and optimization
Change 4041031 by Shaun.Kime
Making the modulo functions on the gpu return a value.
#tests passes cook on PS4 and gets past this in compile on Mac
Change 4041254 by Wyeth.Johnson
Refactor Point Attraction, change some behavior also
Change 4041999 by Yannick.Lange
Parameters refactor:
- Find parameters and references in graph
- Renaming parameters, includes renaming all pins in the graph
- Removing parameters
- Find metadata when finding parameters, so we are not looping through all nodes/pins twice
- Parameters list supports multiple emitters in systems
Change 4042058 by Simon.Tovey
Refactored GPU parameters.
- Shader now uses the DI default object to create the correct parameters struct.
All parameter and buffer management now being handled inside this parameter struct.
This allows far more encapsulated code for each DI.
Allows us to reamove the GPU buffers from and the Scene texture refs that were in the base DataInterface class.
Simplifies the API and process of implementing DI's on the GPU considerably.
- Removed all existing GPU buffer support code and usage. All DIs now use a parameters struct.
- Have moved tons of curve code into the base class, simplifying the child implementation classes.
- Implemented GPU curve interpolation.
- Removed bAllowUnnormalizedLUT. Confusing and now unnessessary. All curves do this by default.
- Modified FNiagaraShaderMapId to use the latest FNiagaraCustomVersion::LatestScriptCompileVersion and bumped it.
- Created NiagaraCore module and moved a few classes into it. Anything needed by both the shaders and runtime should be here.
- Refactored DI hierarchy to base from a new UNiagaraDataInterfaceBase which is inside NiagaraCore.
- Removed constness from many UStruct/UEnum/UClass pointers. Technically we don't ever need these to be non const so initialy coded as const. Some existing engine code however requires these be non const so had to propagate that back through our code.
Change 4043427 by jonathan.lindquist
Submitting a material function that will allow users to reproduce mesh surfaces.
Change 4043448 by Olaf.Piesche
Async GPU buffer readbacks and updates
Change 4043679 by Shaun.Kime
Fixing Mac compile issue. Not sure if correct, but unused code so good for now.
#tests n/a
Change 4044000 by Simon.Tovey
static analysis fix
Change 4044001 by Simon.Tovey
Fix for gpu scripts with multiple curves.
Change 4044124 by Yannick.Lange
Fix persistent guid for parameter map set pins.
Change 4044230 by Simon.Tovey
I didn't forget to check these in. Nothing to see here.... *whistling*....
Change 4044584 by Bradut.Palas
Module dependency properties are now available (to be used by technical artists before the functionality is done and submitted)
#jira UE-58200
#tests none
Change 4044663 by Wyeth.Johnson
Jitter position needed begin defaults, got a refactor which I was in there
Change 4044894 by Yannick.Lange
Rename parameter and all referenced pin when renaming a pin on a map set or get.
Also fixes renaming a pin not deleting the old metadata.
Change 4045383 by Wyeth.Johnson
Fix up and comment/tooltip on mesh rotation, look at, and rot rate
Change 4045488 by Wyeth.Johnson
Update Age reorg just for readability
Change 4045799 by Shaun.Kime
Reworking test art to get rid of known issues and put known issues into their own assets.
Change 4046328 by Wyeth.Johnson
Some optimizations, options to polar/cartesian, starting in on Dynamic Inputs
Change 4046728 by Shaun.Kime
Fixed error where we were writing to Loca.Module.EventVelocity instead of Local.Module.EventVelocity.
Change 4047423 by Frank.Fella
Niagara - Fix post load code for the assignment node which was not conditionally post loading another object it was using which now has a custom post load. This resulted in strange pin renaming which was breaking merging and automated tests.
Change 4047425 by Frank.Fella
Niagara - Make the merge manager a little more resistant to malformed stacks.
Change 4047788 by Bradut.Palas
#jira UE-57902 Module input sort priority
#tests none
Change 4048063 by Yannick.Lange
Fix don't show context menu on parameter view categories.
#jira UE-57196
Change 4048068 by Yannick.Lange
Fix create system from emitter
#jira UE-57186
Change 4048132 by Yannick.Lange
Add missing includes.
Change 4048269 by Shaun.Kime
Removing ensure that we log later
#tests n/a
Change 4048273 by Shaun.Kime
Really doing it this time
#tests n/a
Change 4048595 by Yannick.Lange
Fix niagara if node input disconnect on output pin rename.
#jira UE-58095
Change 4049640 by Simon.Tovey
Daft mistake in curve hlsl gen.
Change 4050270 by jonathan.lindquist
Submitting a module that lerps each of a particle system's intrinsic particle values. Each variable set utilizes an opt-in bool.
Change 4050282 by jonathan.lindquist
Submitting newly formated Mesh Reproduction modules. They now contain documentation, be fully generalized and meet our updated coding standards.
Change 4050566 by Olaf.Piesche
-More fixes and changes for async gpu buffer readback
-removed more CPU intervention; spawning and death now happen largely without CPU direction, other than determining the number of particles to spawn
-Added piping number of vert indices per instance from the renderer down to the GPU context and CS; as a result, GPU simulated mesh emitters are working again; this will need a bit of additional work to handle multiple renderers (will need multiple DrawIndirect parameter buffers reflecting the different renderers)
-General cleanup and prettification
Change 4050907 by Frank.Fella
Niagara - Add support for default dynamic inputs on modules and dynamic inputs.
Change 4051436 by Simon.Tovey
Forcing a refresh of curve LUTs on assets with old versions.
Change 4051463 by Simon.Tovey
Compile fix
Change 4051900 by Frank.Fella
Niagara - Fix linux warning.
Change 4052253 by Olaf.Piesche
GPU sim interpolated spawn fixes - Look Ma, no gaps!
Change 4052321 by Frank.Fella
Niagara - Enable the level sequence test.
Change 4052353 by Shaun.Kime
Renamed variable after Wyeth's change
#tests MeshOrientationTests now pass
Change 4052627 by jonathan.lindquist
Submitting a new spline function.
Change 4052648 by Shaun.Kime
PS4 development builds don't seem to be able to remove generated data for structs like this even though it is in a non-editor build.
#tests n/a
Change 4052661 by Olaf.Piesche
-Avoid branching on every OutputData operation by allocating a scratch instance at the buffer end and setting the default index from AcquireIndex to that.
-bit of shader code cleanup
Change 4052706 by jonathan.lindquist
Adding a module that supports a single segment spline
Change 4052712 by jonathan.lindquist
Adding a below threshold output to the direction and length safe function
Change 4052786 by jonathan.lindquist
Submitting a new height lerp function
Change 4053126 by jonathan.lindquist
Submiting a function that calculates a triangle's surface area.
Change 4053132 by jonathan.lindquist
Changing the category to geometry
Change 4053141 by jonathan.lindquist
Moving the asset back to a generic math category
Change 4053166 by jonathan.lindquist
Submitting a new threshold function that removes threshold downtime.
Change 4053564 by Shaun.Kime
Added staging to ini as requested by cook
#tests n/a
Change 4053619 by Shaun.Kime
Fixing defaults
#tests used by Orion art
Change 4054171 by Yannick.Lange
Remove bold font for parameters.
Change 4054183 by Yannick.Lange
Syncing system exposed parameters and parameters list. Includes adding, removing and renaming parameters.
Change 4054313 by Wyeth.Johnson
Refactor spawnrate to (mostly, other than a bug) conform to coding standards, and set begin defaults on a few things.
Change 4054840 by Shaun.Kime
Fixing redundant branch for CI
#tests n/a
Change 4055492 by Shaun.Kime
Updating compile version since I changed the usf
#tests n/a
Change 4055550 by Shaun.Kime
Disabling rendering of middle module as it differs between machines.
#tests LevelSequenceTestsNiagara now passes
Change 4056256 by Shaun.Kime
Disabling the ensure and turning into log statements for curve copying
#tests n/a
Change 4056287 by Shaun.Kime
Now using GLobalCompileShader. There are still issues with cooking as there is sometimes a runtime streaming error that we didn't read in the correct amount of data. I think the logic for when/if we stream out the compiled shader might still need TLC.
#tests n/a
Change 4056381 by jonathan.lindquist
A new quat to angle axis and angle axis to quat conversion mat function
Change 4056513 by Frank.Fella
Niagara - Fix crashes for default data interfaces where the pin default was empty or the data interface wasn't initialized.
#jira UE-58789
Change 4056734 by Frank.Fella
Niagara - Drag and drop for modules.
Change 4056880 by Simon.Tovey
Replacing engine tests shots for RibbonID test.
Some slight changes introduced, likely curve or recent module changes.
Change 4056894 by Bradut.Palas
UNiagaraStackEntry Error refactoring + Module dependency warning feature.
#jira UE-58199, UE-58200
#tests none
Change 4056916 by Bradut.Palas
Add missing files from shelved changelist.
#tests none
Change 4056937 by Bradut.Palas
#jira UE-54678 The skeletal mesh customisation did not update when the mesh was changed through the data interface or mesh editor
#tests none
Change 4057014 by Frank.Fella
Niagara - Fix cis initializer order warning.
Change 4057542 by Bradut.Palas
#jira UE-58554 Remove Refresh UI button from Niagara script editor
#jira UE-58555 Remove Numeric Output Type Selection Mode from Niagara script UI
#tests none
Change 4057702 by Bradut.Palas
The stack editor priority in the variable metadata now properly has zero as default value.
#jira UE-58740
Change 4057758 by Frank.Fella
Niagara - Fix text wrapping for error items.
Change 4057990 by Bradut.Palas
Stack error tweaks (added error count to the stack errors button and also updating icon according to highest severity issue in the subtree)
#tests none
Change 4057996 by Shaun.Kime
Trying to fix the static analysis header tool error in CIS
#tests n/a
Change 4058027 by Shaun.Kime
Fixing compilation on other platforms
#tests compiles on playstation
Change 4058356 by Frank.Fella
Niagara - Fix an assert that happens when adding a module or dynamic input with a boolean or enum input.
Change 4058428 by Frank.Fella
Niagara - Fix a crash when removing an input from a set variables node in the stack which was caused by the function losing an input without the stack being refreshed. This also fixes an issue where add and remove actions on a set variables module wouldn't take affect until the graph was compiled.
Change 4059924 by Wyeth.Johnson
Rollback //UE4/Dev-Niagara/Engine/Plugins/FX/Niagara/Content/Modules/Spawn/Velocity/AddVelocity.uasset to revision 5
Change 4060256 by Wyeth.Johnson
Forces are now dependent on a solver
Change 4060430 by Wyeth.Johnson
Velocity modules depend on a solver
Change 4060949 by Shaun.Kime
Fixing pragma once definition as well as a possible null deref
#tests n/a
Change 4060955 by Shaun.Kime
Fixing due to changes in defaults
#tests all now pass PC
Change 4061000 by jonathan.lindquist
Debug particle material improvements which includes comments in the shader, rearranged layout with a vector 2 input for particle id, new texture, a new instance that includes "focus masking"
Change 4061804 by Wyeth.Johnson
Optimized out a couple unnecessary bits of math from some axis alignment stuff, solver dependencies
Change 4061974 by Simon.Tovey
Fixed GPU cooking.
- Removing check for emitter SimTarget in CanBeRunOnGpu() and relying only on the script usage having been loaded already.
We can't rely on properties in the emitter being loaded before the call to UNiagaraScript::PostLoad() so this is unsafe.
- Adding some dummy gpu buffers to bypass validation ensures in rhi when we need to set params for SRVs that have not been allocated yet.
- Fixed bug in RHI that was returning FGPUFenceRHIParamRef and so the created fence was immediately freed and boom.
Change 4062269 by Shaun.Kime
Re-enabling most of the tests.
#test n/a
Change 4062414 by tim.gautier
QAGame: Updated QA-Effects for mobile compatibility
- Removed Atmospheric Fog (not supported on Mobile)
- Added SkySphere (resolved lighting issues)
Change 4062651 by Shaun.Kime
Saving with versions
Change 4062673 by Shaun.Kime
Making emitter names without spaces so that they can be blacklisted if need be
Change 4062686 by Shaun.Kime
Getting ready for CI for 4.20
Change 4062687 by Shaun.Kime
Updating mac images
Change 4063298 by Shaun.Kime
Disabling collision test gpu for now. Need to investigate what broke it tomorrow.
#tests CollisionBounceGPU
Change 4063373 by Shaun.Kime
Blacklisting mac tests that still need work
Change 4063434 by Shaun.Kime
Cleaning out previous debug code
#tests n/a
Change 4063618 by Yannick.Lange
Fix dragging an input pin to the add pin of an if node
#jira UE-58600
Change 4063847 by Frank.Fella
Niagara - Rename RibbonSortKey to RibbonLinkOrder, change it from an int32 to a float, and disable uv age offset when using link order instead of normalized age to order particles in the ribbon. This should fix the issues preventing beams from being implemented nicely.
#tests Auto-tests
Change 4064150 by tim.gautier
QAGame: Removing floating NewWidgetBP from /Content
Change 4064237 by Shaun.Kime
Disabling the level sequence test for now
Change 4064902 by Shaun.Kime
Fixing compile errors on linux editor build
#jira UE-58620
#tests n/a
Change 4065167 by tim.gautier
QAGame: Submitting temporary update to TM-ShaderModels, adding Niagara station
Change 4065400 by tim.gautier
QAGame: Submitting updated (temp) TM-ShaderModels. Set NewNiagaraEmitter to Local Space by default
Change 4065540 by Frank.Fella
Niagara - Temporarily disable the module dependencies until they can be fixed.
Change 4065570 by Shaun.Kime
Fixing linux build
#tests n/a
#jira UE-58979
Change 4066753 by Shaun.Kime
Updating custom version after previous change to shader includes
#tests autotests pass
Change 4067981 by Frank.Fella
Niagara - Fix potential null dereference found by CIS
#jira UE-59013
Change 4067998 by Shaun.Kime
Nullpointer checks on shutdown
#jira UE-59000
Change 4068104 by Frank.Fella
Niagara - Change the prefix for the previous parameter values from PREV__ to PREV_ since the cross compiler reserves all symbols with double underscores for opengl.
Change 4068118 by Frank.Fella
Niagara - Fix an open GL crash where we weren't passing the correct buffer index when setting parameters for compute shaders.
Change 4069299 by Olaf.Piesche
Async GPU readback/update mobile platform fixes
CPU particles should work on Android
#jira UE-58986
Change 4069603 by Shaun.Kime
Making it possible to see the debug output if the console variables are set for shaders.
#tests auto-tests pass
Change 4069628 by Shaun.Kime
OpenGL is very picky about shutting down its texture buffers. We were improperly holding onto static resources and leaking OpenGLShaderResourceViews until module shutdown. Unfortunately, this is *after* the renderer has been shut down and the corresponding OpenGL managers have been deleted, causing us to call into deleted memory. By making several classes FRendererResources, we now register at the appropriate times. In several cases, since the buffers are special purpose fallbacks I moved them into helper locations that are build on demand.
Removed FNiagaraVertexFactoryBase::DummyBuffer
Created FNiagaraDummyRWBufferInt and FNiagaraDummyRWBufferFloat so that I could wrap several dummy RW buffers in RendererResources and TGlobalResource.
Removed NiagaraEmitterInstanceBatcher::DummyWriteIndexBuffer
#tests all auto-tests pass on PC and OpenGL and we can open and close OpenGL after using Niagara assets
#jira UE-59000
Change 4069646 by Shaun.Kime
Disabling Niagara component activation on Switch. This is an attempt to bypass a crash after the assets have been loaded on Switch.
#tests auto-tests on PC still pass
#jira UE-59048
Change 4069660 by Shaun.Kime
Updated Niagara version
#tests Auto tests pass
Change 4069714 by Shaun.Kime
Fixing Olaf's checkin prior adding offset to the base readback call
#tests autotests pc pass
Change 4070785 by Olaf.Piesche
Make RWBuffer available on Metal, Vulkan, and ES3.1 with SRVs
Change 4070888 by Olaf.Piesche
#jira UE-57657
Reenable ribbon custom facing mode
Change 4071570 by Shaun.Kime
Removing thread pool size log item as it comes up thousands of times in a cook and is purely for debugging.
#tests n/a
Change 4071926 by Shaun.Kime
Disabling Olaf's change from earlier in the day as it doesn't work on PS4.
#tests Ribbon test now works again
Change 4073700 by Shaun.Kime
Fixing compiler warning about float4 being used as a float.
#tests pc auto tests pass
#jira UE-59157
[CL 4075457 by Shaun Kime in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
#rnx
============================
MAJOR FEATURES & CHANGES
============================
Change 3431439 by Marc.Audy
Editor only subobjects shouldn't exist in PIE world
#jira UE-43186
Change 3457323 by Marc.Audy
Undo CL# 3431439 and once again allow (incorrectly) for editor only objects to exist in a PIE world
#jira UE-45087
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3522783 by Zak.Middleton
#ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before).
Change 3544641 by Dan.Oconnor
Remove conditional that is no longer needed, replace with ensure. It is unsafe to change CDO names
#jira OR-38176
Change 3544645 by Dan.Oconnor
In addition to marking nodes as not transient, FBlueprintEditor::ExpandNode needs to mark them as transactional
#jira UE-45248
Change 3545023 by Marc.Audy
Properly encapsulate FPinDeletionQueue
Fix ensure during deletion of split pins when not clearing links
Fix split pins able to end up in delete queue twice during undo/redo
Change 3545025 by Marc.Audy
Properly allow changing the pin type from a struct that is split on the node
#jira UE-47328
Change 3545455 by Ben.Zeigler
Fix issue where combined streamable handles could be freed before their complete callback is called if nothing external referenced them
Copy of CL#3544474
Change 3545456 by Ben.Zeigler
Allow PrimaryAssets to update their AssetData based on in-memory changes when launching 'Standalone Game' and 'Mobile Preview' from the editor. As it was, changes could be detected and propagated through UPrimaryDataAsset::PostLoad, but the changes would always reapply whatever already exists in the AssetRegistry. The primary use-case for this: making AssetBundle tag changes and allowing them to propagate without resaving/recooking all affected assets.
Copy of CL #3544374
Change 3545547 by Ben.Zeigler
CIS Fix
Change 3545568 by Michael.Noland
PR #3758: Fixing a comment typo from Transistion to Transition (Contributed by gsfreema)
#jira UE-46845
Change 3545582 by Michael.Noland
Blueprints: Prevent duplicate messages from being added to the compiler results log (fixes a crash when resizing the results log while a math expression node has an error)
Blueprints: Fixed the tooltip of math expression nodes not showing up, and error messages getting cleared on subsequent compiles
[Duplicating fixes for UE-47491 and UE-47512 from 4.17 to Dev-Framework]
Change 3546528 by Ben.Zeigler
#jira UE-47548
Fix crash when a map's key type has changed but value has not, it was passing the UStruct defaults in when serialize was expecting the default instance, so pass null instead as we don't have the instance
Change 3546544 by Marc.Audy
Fix split pin restoration logic to deal with wildcards and variations in const/refness
Change 3546551 by Marc.Audy
Don't crash if the struct type is missing for whatever reason
Change 3547152 by Marc.Audy
Fix array exporting so you don't end up getting none instead of defaults
#jira UE-47320
Change 3547438 by Marc.Audy
Fix split pins on class defaults
Don't cause a structural change when reapplying a split pin as part of node reconstruction
#jira UE-46935
Change 3547501 by Ben.Zeigler
Fix ensure, it's valid to pass a null path for a dynamic asset
Change 3551185 by Ben.Zeigler
#jira UE-42835 Fix it so SoftObjectPaths work correctly when inside levels loaded for the first time from PIE. Added code to do in-place PIE fixup for levels that are loaded instead of duplicated, and changed the fixup logic to fix all level references, not just ones being explicitly duplicated
Change 3551723 by Ben.Zeigler
Improve UI for displaying actor soft references. Add an error/warning icon if the cross level reference is broken or unloaded, and fix various display and copy/paste behaviors
Change 3553216 by Phillip.Kavan
#jira UE-39303, UE-46268, UE-47519
- Nativized UDS now support external asset dependencies and will construct their own linker import tables on load.
Change summary:
- Modified FCompactBlueprintDependencyData and FFakeImportTableHelper to be more relevant to UStruct and not just UClass-derivative types.
- Modified FBlueprintDependencyData to accept a single FCompactBlueprintDependencyData struct rather than its individual fields.
- Modified FBlueprintCompilerCppBackendBase::GenerateCodeFromStruct() to emit dependency assignment and static type registration functions for nativized UStruct types.
- Modified FBlueprintNativeCodeGenModule::FStatePerPlatform to include an array for tracking UDS assets that need to be converted during the nativization pass at cook time.
- Modified FBlueprintNativeCodeGenModule::GenerateFullyConvertedClasses() to generate nativized code for UDS assets. This ensures that UDS conversion falls under the same scope as BPGC conversion, so that they both feed into the same NativizationSummary context for asset dependency tracking (i.e. since we only have a single global dependency table in the codegen). Also modified InitializeForRerunDebugOnly() to do the same.
- Modified FBlueprintNativeCodeGenModule::Convert() to defer UDS conversion so that it's done at the same time as BPGC conversion (see note above).
- Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to include support for UStruct types and to conform to changes made to FCompactBlueprintDependencyData.
- Modified FEmitDefaultValueHelper::AddRegisterHelper() to include support for UStruct types.
- Modified FBlueprintNativeCodeGenModule::FindReplacedClassForObject() to ensure that converted User-Defined Enum types are switched to a UEnumProperty at package save time so that any import tables contain the proper class. This is necessary because we nativize User-Defined Enum types as 'enum class' types, and UHT will generate code for those as a UEnumProperty with an "underlying" property. However, non-nativized User-Defined Enum types are referenced as a UByteProperty with a UEnum reference, so we have to fix up all the import tables before saving. Otherwise, EDL will assert on load (see UE-47519).
Change 3553301 by Ben.Zeigler
Fix ensure when passing literal None to SoftObjectPath, it now treats them as empty instead
Change 3553631 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker. This change was originally submitted in 3499927, but it was incorrectly clearing the UField::Next pointer in UField::Serialize.
#jira UE-43458
Change 3553799 by Ben.Zeigler
Fix issue where calling WaitUntilComplete on a combined handle with Stalled children wouldn't work properly. It now forces all stalled children to start immediately. I also added a warning log when this happens and an ensure if somehow the force didn't work
Copy of CL #3553781
Change 3553896 by Michael.Noland
Blueprints: Allow the autowiring logic to better break and replace existing connections when made (e.g., when dragging a variable onto a compatible pin with an existing connection, break the old connection to allow the new connection to be made)
#jira UE-31031
Change 3553897 by Michael.Noland
Blueprints: Adjust search query when doing 'Find References' on variables from My Blueprints so that bound event nodes show up for components and widgets
#jira UE-37862
Change 3553898 by Michael.Noland
Blueprints: Add the name of the variable directly in the get/set menu options (when dragging from My Blueprints into the graph)
Change 3553909 by Michael.Noland
Blueprints: Added the full name of the type, container type (and value type for maps) to the tooltips for the type picker elements, so long names can be read in full
#jira UE-19710
Change 3554517 by Michael.Noland
Blueprints: Added an option to disable the comment bubble on comment boxes that appears when zoomed out
#jira UE-21810
Change 3554664 by Michael.Noland
Editor: Renamed "Find in CB" command to "Browse" and renamed "Search" (in BP) to "Find", so terminology is consistent and keyboard shortcuts make sense (Ctrl+B for Browse, Ctrl+F for find, not using the term Search anywhere)
#jira UE-27121
Change 3554831 by Dan.Oconnor
Non editor build fix
Change 3554834 by Dan.Oconnor
Actor bound event related warnings now show up in blueprint status when opening level blueprint for first time, improved warning message. Removed unused delegate and return value from FixLevelScriptActorBindings. Can now pass raw strings to blueprint results log (no need for Printf, although padding is not great), UClasses in compiler results log will open the generated blueprint when clicked on
#jira UE-40438
Change 3556157 by Ben.Zeigler
Convert LevelSequenceBindingReference to use FSoftObjectPath so it works properly with redirectors and fixups
Change 3557775 by Michael.Noland
Blueprints: Fixed swapped transaction messages when converting a cast node between pure and impure
#jira UE-36090
Change 3557777 by Michael.Noland
Blueprints: Allow 'Goto Definition' and 'Find References' to be used while stopped at a breakpoint
PR #3774: Expose GotoFunctionDefinition during BP debugging (Contributed by projectgheist)
#jira UE-47024
Change 3560510 by Michael.Noland
Blueprints: Add support for 'goto definition' on Create Event nodes when the Object pin is not hooked up
#jira UE-38912
Change 3560563 by Michael.Noland
Blueprints: Disallow converting a variable get node to impure/back when debugging (no graph mutating operations should be allowed)
Change 3561443 by Ben.Zeigler
Restore code to support gc.DumpPoolStats, was accidentally removed when FGCArrayPool was moved to a header.
Clean up comments around Cleanup function, the functionality to trim the memory pools was integrated into ClearWeakReferences on a prior change
Change 3561658 by Michael.Noland
Blueprints: Refactored 'Goto Definition' so there is no per-class logic in the Blueprint editor or schema any more; any node can opt in individually
- Added a key binding for Goto Definition (Alt+G)
- Added a key binding for Find References (Shift+Alt+F)
- Collapsed 'Goto Code Definition' for variables and functions into the same path, so there aren't separate menu items and commands
- Added new methods CanJumpToDefinition and JumpToDefinition to UEdGraphNode, the default behavior for UK2Node subclasses is to call GetJumpTargetForDoubleClick and call into FKismetEditorUtilities::BringKismetToFocusAttentionOnObject
- Going to a native function now goes thru a better code path that will actually put the source code editor on the function definition, rather than just opening the file containing the definition
Change 3562291 by Ben.Zeigler
Fix issue where calling FSoftObjectPtr::Get during a package save would result in that ptr being forever marked broken, because the ResolveObject fails during save. It's too risky to change that behavior, so change it so the TagAtLastTest doesn't get updated in that case
Change 3562292 by Ben.Zeigler
#jira UE-39042 When renaming or moving actors between levels it now attempts to fix any soft object references from blueprints or sequencer
When deleting actors that are soft referenced by actor/sequencer it will now warn the same way it does for level script. Added IAssetTools::FindSoftReferencesToObject to perform this search
Change it so saving a non-primary world does not result it being dirtied due to the temporary physics scene fixup
Fix issue where the actor name was shown incorrectly in the SSCS tree for actor instances, which meant that if you renamed it you would end up renaming it to the BP's name
Change 3564814 by Ben.Zeigler
#jira UE-47843 Don't set InputKey output pins to AnyKey if empty, this was causing blueprints with key events to constantly dirty themselves
Change 3566707 by Dan.Oconnor
Remove unused code, UClassGenerateCDODuplicatesForHotReload was attempting to create a CDO with a special name, which triggered an ensure. The Duplicated CDO was never used (callign code removed in 3289276 as it was a waste of cycles)
#jira None
Change 3566717 by Michael.Noland
Core: Remove all defintions that contain "_API" from the command line when compiling .rc files (they do not support repsonse files and a too-long command line will fail the compile)
Change 3566771 by Michael.Noland
Editor: Fixing deprecation warning
#jira UE-47922
Change 3567023 by Michael.Noland
Blueprints: Change various TArray<> uses to TSet<> throughout name validation and related code to enable it to scale better to high component or variable counts
Adapted from PR #3708: Fast construction of bp (Contributed by gildor2)
#jira UE-46473
Change 3567304 by Ben.Zeigler
Add bCheckRecursive option to IsEditorOnlyObject that is enabled by default and will check outer/archetype/class.
This is needed for places that call this function from outside of SavePackage.cpp when the editor only mark is set, such as the automation test code
Change 3567398 by Ben.Zeigler
Fix crash when spawning a widget that has no editor WidgetTree, but does have a cooked widget tree template due to tree inheritance
Change 3567729 by Michael.Noland
Blueprints: Clarified message about "{VariableName} is not blueprint visible" to define what that means "(BlueprintReadOnly or BlueprintReadWrite)"
Change 3567739 by Ben.Zeigler
Don't crash if PropertyStruct cannot find it's struct. The function half handled this before, but Preload crashes with a null parameter
Change 3567741 by Ben.Zeigler
Disable optimization for a path test that was crashing in VC2015 in a monolithic build
Change 3568332 by Mieszko.Zielinski
Prevented UAIPerceptionSystem::GetCurrent causing a BP error when WorldContextObject is null #UE4
#jira UE-47948
Change 3568676 by Michael.Noland
Blueprints: Allow editing the tooltip of each enum value in a user defined enum
#jira UE-20036
Known issue: Undo/redo is not currently possible on the tooltip as it is directly stored in package metadata
Change 3569128 by Michael.Noland
Blueprints: Removing the experimental profiler as we won't be returning to it any time soon
#jira UE-46852
Change 3569207 by Michael.Noland
Blueprints: Allow drag-dropping component Blueprint assets into the graph to create Add Component nodes and improved the error message when dragging something that cannot be dropped into an actor Blueprint
#jira UE-8708
Change 3569208 by Michael.Noland
Blueprints: Allow specifying a description for user defined enums (shown in the content browser)
#jira UE-20036
Change 3569209 by Michael.Noland
Editor: Allow adjusting the font size for each individual comment box node in Blueprints and Materials
#jira UE-16085
Change 3570177 by Michael.Noland
Blueprints: Fixed discrepancy between the Structure tab name and the menu option for the tab in the user defined structure editor (now both say Structure Editor)
#jira UE-47962
Change 3570179 by Michael.Noland
Blueprints: Fixed the tooltip of a user defined structure not updating immediately in the content browser after being edited
Change 3570192 by Michael.Noland
Blueprints: Added "(selected)" after the label (in the 'debug filter' dropdown in the Blueprint editor) for actors that are selected in the level editor, which should make it easier to choose the specific actor you want to debug
#jira UE-20709
Change 3571203 by Michael.Noland
Blueprints: Cleanup and refactoring to prepare for turning commented out nodes into an official feature
- Made EnabledState and bUserSetEnabledState private on UEdGraphNode and added new getters/setters
- Introduced IsAutomaticallyPlacedGhostNode() and MakeAutomaticallyPlacedGhostNode() to start decoupling the concept from commented out nodes
- Updated a couple of places that used a hardcoded UberGraphPages[0] into instead editing the most recently interacted with event graph if possible
- Updated 'is data only blueprint' logic to allow multiple ubergraph pages, as long as they're all empty of non-disabled nodes
Change 3571224 by Michael.Noland
Blueprints: Draw banners on development-only and user disabled nodes (excluding 'ghost' nodes like autogenerated event entries in new BPs)
Adapted from PR #2701: Differentiate development nodes in BP (Contributed by projectgheist)
#jira UE-29848
#jira UE-34698
Change 3571279 by Michael.Noland
Blueprints: Changed UK2Node::GetPassThroughPin so that only the execution wire on nodes with exactly one input and one output exec wire will have a corresponding pass-through pin (when there is ambiguity in which exec would be used, e.g., with a branch or sequence or timeline node, the subsequent nodes are now effectively disabled as well)
Change 3571282 by Michael.Noland
Blueprints: Fixed the tooltip for dragging a variable onto an inherited category not showing the 'move to category' hint
Change 3571284 by Michael.Noland
Blueprints: Made wires into/out of a user-disabled node draw verly dimly (other than the passthrough exec if it exists)
Change 3571311 by Ben.Zeigler
Add ActorIteratorFlags which allows overriding which types of actors/levels are iterated by ActorIterator, to allow iterating levels that are not visible.
All of the iteration logic is now in the base and the children just set different flags, which fixes it so TActorIterator does the same level collection check as FActorIterator
Change 3571313 by Ben.Zeigler
Several fixes to automation framework to allow it to work better with Cooked builds.
Change it so the automation test list is a single message. There is no guarantee on order of message packets, so several tests were being missed each time.
Change 3571485 by mason.seay
Test map for Make Set bug
Change 3571501 by Ben.Zeigler
Accidentally undid the UHT fixup for TAssetPtr during my bulk rename
Change 3571531 by Ben.Zeigler
Fix warning messages
Change 3571591 by Michael.Noland
Blueprints: Made drag-dropping assets into a graph to create a component transactional (allowing the action to be undone)
#jira UE-48024
Change 3572938 by Michael.Noland
Blueprints: Fixed a typo in a set function comment
#jira UE-48036
Change 3572941 by Michael.Noland
Blueprints: Made the compact node title for cross and dot product the words cross and dot rather than hard to see . and x symbols
#jira UE-38624
Change 3574816 by mason.seay
Renamed asset to better reflect name of object reference
Change 3574985 by mason.seay
Updated comments and string outputs to list Soft Object Reference
Change 3575740 by Ben.Zeigler
#jira UE-48061 Change it so Editor builds work like cooked builds and always try to reuse existing packages when loading them instead of recreating them in place. Recreating in place does not work well for levels and blueprints, and blueprints already had a hack that was causing this behavior to not activate
Change 3575795 by Ben.Zeigler
#jira UE-48118 Call into the AssetManager as part of the DistillPackages commandlet. This makes sure that ShooterGame and EngineTest end up with the correct content in launcher builds
Change 3576374 by mason.seay
Forgot to submit the deleting of a redirector
Change 3576966 by Ben.Zeigler
#jira UE-48153 Fix issue where actors in streaming levels weren't properly replicating in PIE. It now does the remap path on both send and receive for the manual PC level streaming commands
Change 3577002 by Marc.Audy
Prevent wildcard pins from being connected to exec pins
#jira UE-48148
Change 3577232 by Phillip.Kavan
#jira UE-48034 - Fix EDL assert on load caused by a native reference to a nativized BP class that also references a nativized UDS asset.
Change summary:
- Modified FNativeClassHeaderGenerator::ExportGeneratedStructBodyMacros() to emit the 'ReplaceConverted' package name for the FCompiledInDeferStruct global associated with the nativized UDS asset in the UHT codegen. This brings nativized UDS to parity with nativized BP class assets (it was likely just an oversight initially).
Change 3577710 by Dan.Oconnor
Mirror of 3576977:
Fix for crash when loading cooked uassets that reference functions that are not present
#jira UE-47644
Change 3577723 by Dan.Oconnor
Prevent deferring of classes that are needed to load subobjects
#jira UE-47726
Change 3577741 by Dan.Oconnor
Back out changelist 3577723 - causes crash when starting QAGame in Dev-Framework - not in Release-4.17
Change 3578938 by Ben.Zeigler
#jira UE-27124 Fix issue where renaming a map with legacy map build data would end up with a half-loaded redirector package, becuase the old map build data was still in use. It's possible the call to HandleLegacyMapBuildData should just be in World PostLoad instead of piecemeal in several other places but I am unsure.
Fix it so the redirector cleanup code on map change will not be stopped by non-standalone top level objects, which could be left behind by issues in other systems
Change 3578947 by Marc.Audy
(4.17) Properly expose members of DialogueContext to blueprints
#jira UE-48175
Change 3578952 by Ben.Zeigler
Fix ensure where ParentHandles on a StreamableHandle could be modified while iterating
Change 3579315 by mason.seay
Test map for Make Container nodes
Change 3579600 by Ben.Zeigler
Disable window test on non-desktop platforms as they cannot be resized post launch
Change 3579601 by Ben.Zeigler
#jira UE-48236 Disable optimizations on PS4 for certain math tests pending fixing of platform issue
Change 3579713 by Dan.Oconnor
Prevent crashes when bluepints implement an interface that was deleted
#jira UE-48223
Change 3579719 by Dan.Oconnor
Fix two compilation manager issues: Make sure CDOs are not renamed under a UClass, because they will be considered as possible subobjects, which has bad side effects and make sure that we update references even on empty functions, so that empty UFunctions are not left with references to REINST data
#jira UE-48240
Change 3579745 by Michael.Noland
Blueprints: Improve categorization and reordering support in 'My Blueprints'
- Allow drag-dropping functions, macros, delegates, etc... to reorder them within a category or to change categories (bringing them to parity with variables)
- Make category ordering on all categories sticky so you can reorder categories (the relative ordering will be the same within different sections like variables and functions)
- Added hover cues when drag dropping some items that were missing them (e.g., event dispatchers)
- Added support for renaming categories using F2
Known issues (none are regressions):
- Timelines cannot be moved to other categories or reordered
- Renaming a nested category will result in it becoming a top level category (discarding the parent category chain)
- Some actions do not support undo
#jira UE-31557
Change 3579795 by Michael.Noland
PR #3867: Fix for not releasing Local Notification Delegate. (Contributed by enginevividgames)
#jira UE-48105
Change 3580463 by Marc.Audy
(4.17) Don't crash if calling PostEditUndo on an Actor in the transient package
#jira UE-47523
Change 3581073 by Marc.Audy
Make UK2Node_SpawnActorFromClass inherit from K2Node_ConstructObjectFromClass and eliminate duplicate code.
Correctly reconnect split pins when changing class on create widget, construct object, and spawn actor nodes
Change 3581156 by Ben.Zeigler
#jira UE-48161 Fix issue where split pins would not be restored if a Struct type was changed due to refactoring of parent variables/functions. For structs we want to copy the pins, if they're invalid due to other changes they will be individual orphaned
Also fix bug where the category of parent pins was being set incorrectly while changing variable type, we only want to override type for wildcard pins
Change 3581473 by Ben.Zeigler
Properly turn off optimization for PS4 test
Change 3582094 by Marc.Audy
Fix anim nodes not navigating to their graph on double click
#jira UE-48333
Change 3582157 by Marc.Audy
Fix double-clicking on animation asset nodes not opening the asset editors
Change 3582289 by Marc.Audy
(4.17) Don't crash when adding a streaming level that's already in the level
#jira UE-48928
Change 3545435 by Ben.Zeigler
#jira UE-47509 Rename and refactor internals StringAssetReferences and AssetPtrs to become SoftObjectPath/Ptr. This is to prepare them for use for subobjects like actors. Here is the rename table:
FStringAssetReference -> FSoftObjectPath
FStringClassReference -> FSoftClassPath
TAssetPtr -> TSoftObjectPtr
TAssetSubclassOf -> TSoftClassPtr
The old headers are deprecated, and FSoftClassPath is now in the same header has FSoftObjectPath.
This change increments the UE4 version because FSoftObjectPaths are now stored as a name + substring instead of one giant name, which in practice will improve performance and memory while manipulating them. Also the package table of soft referenced packages is now stored as FNames instead of FStrings as these packages names will already be in the name table due to the AssetRegistry
Remove automatic support for loading Objectpaths starting with engine-ini:, as it was only partially supported and is very outdated. ResolveIniObjectsReference can still be called manually
Changed TPersistentObjectPtr and TLazyObjectPtr to be structs instead of classes
Change UnrealHeaderTool to read configuration such as StructsWithNoPrefix out of inis instead of using a hardcoded list. Add support for TypeRedirects, which is used to make the old type names automatically remap to the new ones
Clean up FRedirectCollector to remove some of the functionality that is no longer used by the cooker, and disable tracking of redirects in standalone -game builds
Change 3567760 by Ben.Zeigler
Fix it so EngineTest can be cooked by moving some utility functions to EditorTestsUtilityLibrary and adding an EditorFunctionalTest. The core EngineTest module is safely runtime-only now and can run it's tests locally in windows cooked
Merge FuncTestManager into FunctionalTestModule to avoid confusion with FunctionalTestingManager UObject
Add EngineTestAssetManager and override the cook function to cook all maps with runtime functional tests
Change actor merging tests to be editor only, this stops them from cooking
Several individual tests crash on cooked builds, I started threads with the owners of those
Change 3575737 by Ben.Zeigler
#jira UE-48042 Change it so playing via PIE Standalone, multiprocess networked PIE and external cook launch on does not save temporary levels to UEDPC and instead prompts the user to save. This is how launch on works by default already, and this fixes cross level references/sequencer. The UEDPC code has been removed entirely.
As part of this change, connecting a -game client to a PIE server and vice versa is much more likely to work. You may still have game-side problems, look at UEditorEngine::NetworkRemapPath for an example of how to do the PIE prefix conversion
Remove advanced CreateTemporaryCopiesOfLevels option from sequencer capture, it has not been tested in multiple years and does not work with newer sequencer features
#jira UE-27124 Fix several possible crashes with changing levels while in PIE
Change 3578806 by Marc.Audy
Fix Construct Object not working correctly with split pins.
Add Construct Object test cases to functional tests.
Added split pin expose on spawn test cases.
#jira UE-33924
[CL 3582334 by Marc Audy in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
#UE-9118 - Graph comments (Blueprints, Materials, Sound cues, etc...) should support multiline text editing
#UE-12964 - Comment box hits (Title bar) are offset
#Branch UE4
#Proj GraphEditor, Kismet, Slate
[CL 2546952 by Ben Cosh in Main branch]
#UE-12866 - Have node comments and reroute node comments act the same
#Branch UE4
#Proj Engine, GraphEditor
#includes some more general comment node / comment bubble fixes
[CL 2528202 by Ben Cosh in Main branch]
#UE-3724 - LIVE: BP: If a comment box is created inside of another larger comment box the smaller box is no longer editable
#Branch UE4
#Proj GraphEditor
[CL 2397421 by Ben Cosh in Main branch]
#UE-3724 - LIVE: BP: If a comment box is created inside of another larger comment box the smaller box is no longer editable
#Branch UE4
#Proj UnrealEd, GraphEditor
#info this issue came about after recent changes to slate resulted in OnHitTest no longer being called by design. This changelist seeks to eliminate the requirement for this by correctly sorting the comments in arrangedchildren.
codereview Nick.Atamas
[CL 2377331 by Ben Cosh in Main branch]
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
#TTP 314475 - k2: comment boxes within other comment boxes do not move if the outer most box is moved. Also, if two nested comment boxes are moved, the nodes within move 2x as much as they should (video)
#Branch UE4
#Proj GraphEditor, BehaviourTreeEditor
#Add SNodePanel::SNode::FNodeSet typedef for conveniance and clarity
#Change Changed SNodePanel::MoveTo to take an FNodeSet as an exclusion filter on the moved nodes, once moved nodes are appended into this set.
CodeReview Chris.Wood, Nick.Whiting
[CL 2064255 by Ben Cosh in Main branch]