Copying //UE4/Release-Staging-4.20 to //UE4/Dev-Main (Source: //UE4/Release-4.20 [at] 4119625)
============================
MAJOR FEATURES & CHANGES
============================
Change 4119625 by Thomas.Sarkanen
Prevented Blueprint notifies from destroying the animation preview actor
We now use a custom actor class in the preview scene.
Also prevented snim instnace class from being altered from Blueprint.
#jira UE-55335 - Modifying animation preview actors from notifies can crash the engine
Change 4119481 by Cosmin.Sulea
UE-58371 - Various actions utilizing Cook by the Book for certain platforms crash the editor
#jira UE-58371
Change 4119455 by Cosmin.Sulea
UE-59711 - TVOS/iOS fails to build from Windows with numerous errors 'no such file or directory' (reviewed)
#jira UE-59711
Change 4119195 by Ryan.Gerleve
Fixing shootergame leaderboards to increment properly. This fixes rows not incrementing properly.
#Jira UE-58999
#AUTOMERGE using branch //UE4/Dev-Networking_to_//UE4/Release-4.20 of change#4085065 by Jake.Leonard on 2018/05/21 20:10:53.
Change 4119192 by Ryan.Gerleve
Fixing the SteamAuth interface from not shutting off if the packet handlers do not exist.
#Jira UE-58697
#AUTOMERGE using branch //UE4/Dev-Networking_to_//UE4/Release-4.20 of change#4072153 by Jake.Leonard on 2018/05/14 18:44:30.
Change 4119191 by Ryan.Gerleve
SetDedicatedServer before login to fix bad functional usage.
#Jira UE-58310
#AUTOMERGE using branch //UE4/Dev-Networking_to_//UE4/Release-4.20 of change#4059028 by Jake.Leonard on 2018/05/08 18:19:10.
Change 4119104 by Shaun.Kime
Syncing with fixing in Dev-Niagara up to CL 4118934
Making it so that you can only AddParameters in graphs where it makes sense to do so. Promoting variables also follows the same logic.
#jira UE-58070
#tests made dynamic input, function, and module graphs and made sure that each one was only capable of creating the types that were proper
Fix for community issue where you could connect an input and output node and encounter a check that the warnings variable array was no longer the same size as the variables array.
#jira UE-60076
#tests auto-tests pass as well as jira use case
Houdini - Niagara:
Added a version to FNiagaraDataInterfaceParametersCS_HoudiniCSV to avoid further issue when deserializing them.
Fixed bug causing no points to spawn when all points in a file spawned at the same time value.
Removed unneeded tests/restriction when calling functions requiring time value on file without time values.
When no time value is in the file, it is cosidered to always be 0.
Fixed differences between GPU/CPU code.
Fixed special attributes column for Vectors in the CSV file not properly named after being expanded.
Houdini - Niagara:
Moved the logic of GetPointIDsToSpawnAtTime to HoudiniCSV so the function can be called from blueprints.
Renamed the MinIndex/MaxIndex parameters on it to MinId/MaxID.
Multiple fixes to the spline component, which hasn't received attention in a long time. It is only supported on CPU VM.
#tests new auto-test now passes
#jira UE-60111
System Sim for Update On Spawn
#jira UE-59518
Fix for crash where dynamic inputs didn't have a proper parameter map input value.
#tests new auto-test added
#jira UE-50994
Houdini-Niagara:
Updated the uplugin file.
Change 4119056 by Nick.Shin
#jira UE-59573 HTML5 foliage is being scaled massively
Change 4119055 by Nick.Shin
#jira UE-58440 HTML package crashes when F5 key is pressed
Change 4118965 by Joe.Conley
#jira UE-59755 "Magic Leap: Project setting to set vulkan or ES2 needs to be removed"
- Removing "EditAnywhere" from ULuminRuntimeSettings::bUseVulkan (and category because it errors if you have a category on something that is not EditAnywhere)
- Defaulting [/Script/LuminRuntimeSettings.LuminRuntimeSettings] bUseVulkan to true
Tested that bUseVulkan is true in a new project, and that the setting is now hidden from Project Settings > Magic Leap > Build
Change 4118929 by Wyeth.Johnson
Niagara Content Examples
Friction and restitution examples
#jira UE-60030
Change 4118832 by Fred.Kimberley
Mirror CL 4070790 from Dev-Framework
fix crash in watch window when blueprints that are being watched get deleted.
Add support to the watch window for renaming assets that are being watched.
Fix a bug that made the non-instanced watches show up if the watch window was opened while execution was paused at a breakpoint.
#jira UE-58974, UE-58977
Change 4118826 by Brandon.Schaefer
Use setlocale to be portable for all locales
#jira UE-59922
Change 4118817 by Frank.Fella
Niagara - Reset cached dependency data when the emitter view models are refreshed in the system. Fixes incorrect dependencies when applying changes from parent emitters in systems.
#jira UE-60005
Change 4118785 by Wyeth.Johnson
Niagara Content Examples
Simple collision example (and collision queries dependencies)
#jira UE-60030
Change 4118775 by Lauren.Ridge
Fix for undo spam when changing colors in the gradient editor
#jira UE-57194
Change 4118724 by Frank.Fella
Niagara - Fix issues with editing burst keys through the timeline context menu.
#jira UE-60133
Change 4118490 by Frank.Fella
Niagara - Prevent parameter store change events with uninitialized data.
#jira UE-60122
Change 4118383 by Frank.Fella
Niagara - Prevent a crash when the user sets the loop duration of their emitter to be negative.
#jira UE-60118
Change 4118297 by Dan.Oconnor
Unhide debug filter for level blueprints - it is useful when a user wants to filter based on the world
#jira UE-59915
Change 4118288 by Ben.Marsh
Force the Visual Studio interop library to be included in the installed build. This isn't technically necessary (it has EmbedInteropTypes=true, so gets compiled into the executable), but QA sometimes attempt to rebuild it in-place.
#jira UE-60048
Change 4118271 by Max.Chen
Movie Scene Capture: Fix crash switching capture protocols.
#jira UE-60113
Change 4118185 by Arne.Schober
RL - Fix circlebreaking code in the resorting of force delete
#jira UE-60083
Change 4118048 by Ben.Marsh
Fix runtime dependencies referenced by precompiled modules for monolithic target platforms not being included in the receipt.
#jira UE-59721
Change 4118015 by Wyeth.Johnson
Niagara Content Examples
Solver position management, event generators, event receivers, ribbon even receiver.
#jira UE-60030
Change 4117936 by Lauren.Ridge
Can attempt to enter simulate no matter what the last play session is. Using Alt+S while using any PIE method other than Play in Current Viewport will silently fail; Alt+S using Play In Current Viewport will transition to simulate.
#jira UE-60075
Change 4117883 by Andrew.Rodham
Sequencer: Fixed crash caused by re-allocation of the same named camera cuts track
#jira UE-47661
Change 4117876 by Mitchell.Wilson
Initial check in of combined PhotorealisticCharacter and DigitalHuman samples.
#jira UE-60097
Change 4117819 by Lina.Halper
Fix issue where master bone map does not exists when master pose component is serialized
- allow force update master pose component
#jira: UE-59634
Change 4117800 by Lina.Halper
Prevent Master pose component chain
#jira:UE-59957
Change 4117750 by Martin.Wilson
Keep source raw animation data in sync with raw when cropping.
#jira UE-58675
Change 4117717 by Frank.Fella
Niagara - Fix an issue where deleting a module and undoing would not restore input values for rapid iteration parameters.
#jira UE-60080
Change 4117702 by Ben.Marsh
Add a static assert that Visual Studio 15.6 must be installed to build the engine. Previous versions had various issues, including bad code generation causing crashes in the editor, UTF-8 BOMs being inserted into source files, etc...
#jira
Change 4117516 by Dmitriy.Dyomin
Fixed: Crash when performing an undo after generating LOD of a level
#jira UE-58293
Change 4117318 by Simon.Therriault
D3D12Viewport
- Fix for D3D12 Invalid Error message
#jira UE-60091
Change 4117293 by Dan.Oconnor
Add warning to detect default value changes when assets were saved in earlier versions of the editor, which may have had bad default value information on some call function nodes
#jira UE-58298
Change 4116709 by Marc.Audy
Fix bitpacking regression in FBodyInstance
#jira
Change 4116693 by Wyeth.Johnson
ContentExamples: Dynamic beams with variable start points, end points, tangents in local or worldspace.
#jira UE-60030
Change 4116691 by Frank.Fella
Niagara - Prevent multiple save prompt dialogs on shut down when you have script or emitter editors open with unsaved changes and you decide not to save them.
#jira UE-60068
Change 4116648 by Michael.Trepka
Updated minumum macOS version required to run the editor to 10.13.5
#jira none
Change 4116639 by mason.seay
Updated Sequence to be 60fps
#jira UE-29618
Change 4116634 by Frank.Fella
Niagara - Prevent missing dependencies from loading all niagara script assets.
#jira UE-60038
Change 4116629 by Frank.Fella
Niagara - Prevent an assert when undoing dependency fixes in the stack.
#jira UE-60039
Change 4116626 by Frank.Fella
Niagara - Fix a crash caused by delegates not being cleaned up properly in the emitter view model.
#jira UE-60063
Change 4116618 by Max.Chen
Movie Scene Capture: Fix to use automated level sequence capture ui name so that it's the same as the dialog settings.
#jira UE-59997
Change 4116522 by Wyeth.Johnson
ContentExamples: Simple sprite emitter, simple mesh emitter, and deleted the temp particle in the content examples stub folder.
#jira UE-60030
Change 4116479 by Francis.Hurteau
fixed compilation by commenting static assert in AddReferencedObject
#jira UE-60058
Change 4116407 by Uriel.Doyon
Fixed texture ending up in the unkown ref heuristic when changing material quality levels.
#jira UE-60060
Change 4116340 by Jamie.Dale
Avoid Memcmp if size is zero
#jira none
Change 4116132 by Francis.Hurteau
fixed a crash when GC triggered while Sequencer FBX import window is opened (i.e. Autosave)
added missing static asserts and fixed resulting compilation error
#jira UE-60049
Change 4116036 by Wyeth.Johnson
Rollback //UE4/Release-4.20/Samples/ContentExamples/ContentExamples.uproject to revision 2
#jira UE-60030
Change 4116011 by Lina.Halper
We set default setting to tick on init - as it's more user friendly option
#jira: UE-56303
Change 4115980 by Michael.Dupuis
#jira none: buildfix linux
Change 4115975 by Wyeth.Johnson
Beam content example, static beams. Adjust size and distribution of content example map
#jira UE-60030
Change 4115900 by Mark.Satterthwaite
More build fixes, this time for Debug on iOS.
#jira UE-59883
Change 4115740 by Uriel.Doyon
Fixed asset thumbnail crash when exiting at the same time the game engine is closing.
#jira UE-58271
Change 4115686 by Francis.Hurteau
Do not import a camera track if we aren't creating cameras or importing on selected objects
#jira UE-59347
Change 4115682 by Marc.Audy
Fix crash when Pin has been deleted already
Use MoveTemp in a few places with construction of FWatchRows
#jira UE-59847
Change 4115673 by Lina.Halper
Fix crash when remapping pose asset to new skeleton
#jira: UE-59499
Change 4115668 by Uriel.Doyon
Re-enabled pix on windows
#jira UE-59174
Change 4115540 by Michael.Dupuis
#jira UE-59256: When rebuilding procedural foliage allow the foliage to be rebuilt
Fixed a scale issue that would give a much lower fistance factor than expected
Change 4115468 by Lina.Halper
Merging using Fortnite-Main<->Release4.20
Change to ensure to track down the issue better.
#jira: UE-58010
Change 4115399 by Mitchell.Wilson
Submitting initial Niagara content examples level and content path.
#jira UE-60025
Change 4115375 by Sorin.Gradinaru
UE-59066 Intermittent RemoteSessionApp crash
#jira UE-59066
#4.30
Memory leak fixed.
Change 4115373 by Sorin.Gradinaru
UE-55180 Cook on the Fly server quits unexpectedly using Windows UFE to iOS
#jira UE-55180
#4.20
rb Jack.Porter
Check if the CookOutputDir exists to prevent exception on EnumerateFiles().ToList()
Change 4115246 by Benn.Gallagher
From Nvidia: Fixes to incremental AABB to better organise the query tree as we were quickly blowing a stack in one of our tests. Test now succeeds with these changes.
#jira UE-59191
Change 4115125 by Benn.Gallagher
Fixed clothing LOD update receiving empty bone transform array on initialization if a master pose component was used
#jira UE-59878
Change 4114593 by Tim.Gautier
Enabling Niagara, Niagara Extras, and HoudiniNiagara by default in QAGame
#jira UE-29618
Change 4114589 by Ryan.Vance
Oculus SI 1.25
#jira UEVR-1143
Change 4114420 by Matt.Kuhlenschmidt
Fix UMG anchor prompts being wrong on mac
#jira UE-59998
Change 4114351 by Uriel.Doyon
Refactor LargeMemoryWriter code so that the DuplicateDataArchive could reuse the large alloc managment.
#jira UE-56509
Change 4114271 by Uriel.Doyon
Changed virtual path when streaming textures, so that it clears the IO requests on an async task instead of in the renderthread.
#jira UE-57614
Change 4114258 by Arne.Schober
RL - The uniformbuffer description is cached in multiple levels for shader compilation. Notable Caches are the ShaderDirectoryFileMapping the MMCP File cache and multiple other smaller file caches along the way. Instead of invalidating those caches I made the Uniform buffer layout completely immutable for all Platform varieties. Differences in lauout are triggered via defines as a progammer would have done it writing the code by hand. THe padding has been unified between GLSL and HLSL padding rules and theoretically work for both of them uniformly.
#jira UE-58707
Change 4114182 by Max.Chen
Sequencer: Expand the clamp range when necessary if the sequencer window expands.
This fixes a new bug where the view range would not update because TimeSliderController::SetViewRange now clamps the incoming view range to the clamp range. In one case, tick marks in the display were cached using the view range and weren't getting updated as the window was resizing because the view range remained clamped.
#jira UE-59982
Change 4114156 by Mark.Satterthwaite
Update for new Xcode metal shader compiler requiring different arguments. Make some slight changes to make some behaviour and error reports clearer.
#jira UE-60011
Change 4114143 by mason.seay
Resaved asset to remove error
#jira UE-29618
Change 4114128 by Chris.Babcock
Add Mali G72 device profile for Android
#jira UE-60009
#ue4
#android
Change 4114070 by Jamie.Dale
Fixed crash on shutdown after binding python member function to delegate
#jira UE-59949
Change 4114030 by Max.Chen
Sequencer: Fix crash with stale section pointer
#jira UE-59971
Change 4113978 by Arne.Schober
RL - D3d12 issues with resource allocation and de allocation when the RHI is not alive yet.
UDN https://udn.unrealengine.com/questions/434516/check-problems-in-shipping.html
#jira none
Change 4113967 by Arne.Schober
RL - The uniformbuffer description is cached in multiple levels for shader compilation. Notable Caches are the ShaderDirectoryFileMapping the MMCP File cache and multiple other smaller file caches along the way. Instead of invalidating those caches I made the Uniform buffer layout completely immutable for all Platform varieties. Differences in lauout are triggered via defines as a progammer would have done it writing the code by hand. THe padding has been unified between GLSL and HLSL padding rules and theoretically work for both of them uniformly.
#jira UE-58707
Change 4113957 by Arne.Schober
RL - The uniformbuffer description is cached in multiple levels for shader compilation. Notable Caches are the ShaderDirectoryFileMapping the MMCP File cache and multiple other smaller file caches along the way. Instead of invalidating those caches I made the Uniform buffer layout completely immutable for all Platform varieties. Differences in lauout are triggered via defines as a progammer would have done it writing the code by hand. THe padding has been unified between GLSL and HLSL padding rules and theoretically work for both of them uniformly.
#jira UE-58707
Change 4113946 by Arne.Schober
RL - Fix issue where force delete materials crashes because the creation order gets out of order
#jira UE-58480
Change 4113936 by Arne.Schober
RL - Fix CPU skin emulation, where the SSE code was unpacking the underlying tangent SNORM data as UNORM
#jira UE-58732
Change 4113881 by Shaun.Kime
Catching up 4.20 to Dev-Niagara as of CL 4111104
Change 4075849 by Wyeth.Johnson
Metadata on location and velocity modules, new DI
Change 4076028 by Frank.Fella
Niagara - Fix an issue where the list of relevant scripts in the shared script view model could get out of sync when changing properties on an emitter such as interpolated spawning and gpu simulation. This could result in an emitter recompiling forever if it started as GPU and was then switched to CPU and then a force compile was requested since it would include the GPU script when determing the compile status, but it would never compile it.
#jira UE-59220
Change 4076925 by Frank.Fella
Niagara - Adding and removing pins from an assignment node wasn't correctly invalidating the graph which I broke with my crash fix 4058428 since I thought the refresh call would do that.
#jira UE-59249
Change 4076971 by Frank.Fella
Niagara - Made few changes to stack issue handling while fixing an issue where the stack error wouldn't change when the compile error changed.
+ Changed the unique identifier for stack issues to be automatically generated from a hash of the combined stack editor data key and the long description of the error.
+ Changed the stack issue unique identifier from an FName to an FString to avoid poluting the name table with lots of generated hash strings.
+ Encapsulated all of the stack issue data to validate the required inputs.
#jira UE-59251
Change 4076974 by Frank.Fella
Niagara - Minor change missed in last checkin.
Change 4076990 by Frank.Fella
Niagara - Fix the assignment node so that it uses a "Begin Defaults" node instead of a regular input node when it's hooking up linked defaults.
#jira UE-59224
Change 4077392 by jonathan.lindquist
Changing pin order
Change 4077426 by Wyeth.Johnson
transform position DI
Change 4077636 by Frank.Fella
Niagara - Fix an issue where the stack function input collection wasn't generating errors correctly due to data being cached between refreshes which became stale.
#jira UE-59269
Change 4078004 by jonathan.lindquist
Submitting progress on a module
Change 4078009 by jonathan.lindquist
changing a variable name in rotate around point
Change 4078043 by Frank.Fella
Niagara - Fix the stack function input so that it cleans up properly when removing pins from assignment nodes, also fix undo for the remove operation.
#jira UE-59271
Change 4078063 by Shaun.Kime
Fixing debug particle data texture usage
#tests n/a
Change 4079110 by jonathan.lindquist
Submitting a cone mask function
Change 4079161 by jonathan.lindquist
Adding a new cone mask module
Change 4079164 by jonathan.lindquist
Adding a description to the cone mask function
Change 4079166 by jonathan.lindquist
Submitting a new cone mask dynamic input
Change 4079988 by Yannick.Lange
Set persistend guid for if node input pins on creating a new output pin.
Change 4080531 by jonathan.lindquist
New cone based mask for curl noise contributions. Additional meta data descriptions for other inputs.
Change 4080541 by jonathan.lindquist
Exposing the cone axis variable
Change 4080544 by jonathan.lindquist
One more meta data tweak :D
Change 4081107 by Shaun.Kime
Fixing underlying GPU collision system after Rendering refactored to use the FSceneTexturesUniformParameters instead of individual textures. Note that GPU collision only works with the primary back buffer. We will need more work to support split-screen or PIP.
#tests Collsion test GPU now is functional, but we still get a few nondeterministic strays in different directions keeping me from turning it on at the moment
Change 4081111 by Shaun.Kime
Updating the compile GUID because the previous change adjusted generated code
#tests n/a
Change 4081231 by Shaun.Kime
Allowing several descriptions to be multiline, accessible by Shift + Enter.
#tests created descriptions for both module fields and modules themselves that were multi-line. confirmed UI was correct.
Change 4081552 by Jonathan.Lindquist
Additional tooltips/documentation
Change 4081566 by Jonathan.Lindquist
Changing split linear color's pin order
Change 4081646 by Shaun.Kime
Added tooltips to the parameter map get and set nodes that should grealy improve understanding.
#tests n/a
Change 4082769 by Yannick.Lange
Pins and parameters unique name on creation
Change 4082792 by Yannick.Lange
Fix: Adding a property pin to a Niagara Module Script map node creates a duplicate of that property in the Properties menu
#jira UE-58823
Change 4082851 by jonathan.lindquist
Ensuring that the latest version of this content is available for Simon
Change 4082875 by Yannick.Lange
Parameter, source and dest pins of a parameter map node have a subcategories. Only pins with the parameter subcategory will be found by the graph.
#jira UE-57692
Change 4083076 by Wyeth.Johnson
Gnomon asset for example content
Change 4083783 by Frank.Fella
Niagara - Fix issues with drag/drop
+ Don't allow the user to drop a module if the usage flags of the target script aren't supported.
+ Allow dragging to different scripts event if they are in different graphs, or different emitters.
+ Transfer rapid iteration paramters correctly when moving modules between scripts.
+ Fix undo for rapid iteration paramters when undoing a move.
#jira UE-59340
#jira UE-59401
Change 4083999 by Bradut.Palas
Improved functionality of module dependencies: intercategory module dependencies now work, module order is fixed.
#tests none
#jira UE-58200
Change 4084002 by Shaun.Kime
Validating modules reads and writes.
You cannot read/write from particles namespace in system and emitter scripts
You cannot write to user or NPC namespaces ever
You cannot write to system/emitter namespaces in particle scripts
#tests auto-tests pass
Change 4084419 by jonathan.lindquist
Changing default texture assignments to work with the new project directory.
Change 4084595 by jonathan.lindquist
Submitting a new material that will generate a 3d sphere on a sprite using world position offset and pixel depth offset.
Change 4084603 by Jonathan.Lindquist
New thumbnail
Change 4084607 by jonathan.lindquist
Submitting final variable settings for the skeletal mesh reproduction particle system
Change 4084649 by jonathan.lindquist
Finalizing sampling mesh code after exploring multiple approaches.
Change 4084746 by Frank.Fella
Niagara - When creating the render state in the niagara component, also send the dynamic data the same frame since the emitter might not actually tick the next frame.
#jira UE-57696
#tests engine tests.
Change 4085536 by Yannick.Lange
Fix assert attempting to add a Niagara emitter parameter to a system before tracking an emitter.
Also passes all graphs to the add button, to avoid any use of Graphs[0] in SNiagaraParameterMapView.
#jira UE-58832
Change 4085757 by Yannick.Lange
Prevent circular connections when trying to connect pins
#jira UE-55541
Change 4086086 by Bradut.Palas
Fixing static code analysis issues by moving the RefreshIssues call inside the FunctionCallNode nullcheck
#tests none
Change 4086155 by jonathan.lindquist
Updating meta data etc.
Change 4086965 by Olaf.Piesche
Fixing uniform buffer alignment and padding to 16 bytes for all vector types; bumping vec2 and vec3 uniforms to vec4, and adding component mask to code chunk for accesses to uniform chunks according to their initial type
OpenGL requires this since because adherence to the std140 memory layout is shaky at best when it comes to sub-16-byte vector types
Change 4086968 by Olaf.Piesche
Making division by 0xFFFFFFFF explicitly unsigned, because OpenGL otherwise assumes it's a signed int, just dividing by -1
Change 4086975 by Frank.Fella
Niagara - Renderer update fixes.
+ Trigger data object changed when adding, removing, and changing the enabled state of renderers so that the simulation updates.
+ Fix undo for changing the enabled state on renderers.
#jira UE-57696
#jira UE-59390
Change 4087008 by Frank.Fella
Niagara - When refreshing the sequencer tracks in the emitter/system editor don't set sequencer the time to 0. This fixes an issue where modifying data in the timeline and undo would reset the time to 0 when paused rather than resimulating.
#jira UE-59463
Change 4087030 by Shaun.Kime
Fixing when you can create certain pin types to prevent invalid types from appearing in the list.
#tests autotests pass on PC
Change 4087271 by jonathan.lindquist
Adding an option to clamp particles.velocity's magnitude.
Change 4087279 by Wyeth.Johnson
Comments and dependencies
Change 4087333 by Wyeth.Johnson
Bitmask useage flags on forces to adhere to standards, plus dependencies
Change 4087636 by Wyeth.Johnson
Age related dependencies on update modules
Change 4087702 by Shaun.Kime
Getting translation set up for Frank's rapid iteration parameter rework in support for default dynamic inputs
#tests n/a
Change 4087992 by jonathan.lindquist
Adding a limit force module
Change 4088872 by Yannick.Lange
Fix renaming variables will not work if the user is only changing capitalization.
#jira UE-59119
Change 4088891 by Yannick.Lange
Fix adding a new attribute makes it hidden in the attribute spreadsheet. Now shows the added attribute when doing a new capture.
#jira UE-57167
Change 4089072 by Yannick.Lange
Reorder parameter list categories
Change 4089164 by jonathan.lindquist
Adding a velocity clamp feature and an acceleration clamp
Change 4089953 by Bradut.Palas
Disabled modules no longer display errors.
Also, enabling/disabling modules is now registered with the Undo system
Also fixed the GUID generation for all issues, now issues are properly differentiated from each other on refresh.
#tests none
Change 4090194 by Shaun.Kime
Fixing auto tests after acceleration force defaulted to world instead of local
#tests all pass
Change 4090195 by Shaun.Kime
Cleaning up UI for code view
#tests n/a
Change 4090198 by jonathan.lindquist
Setting the fallback vector to 0,0,0
Change 4090430 by jonathan.lindquist
Removing a reciprocal operation from the node. Now we use a single divide. Also, I added another length calculation to provide the proper length of the input fallback vector. This is important for cases in which the user specifies that the fallback vector should be 0,0,0 or another unnormalized value. Previously, the fallback vector length always returned 1.
Change 4090512 by Shaun.Kime
Fix for crash during Jonathan's deletion of the Set node in SolveForcesInVelocity.
#tests n/a
Change 4090534 by jonathan.lindquist
New acceleration limit
Change 4090676 by Olaf.Piesche
GPU Spawning auto test
Change 4090770 by Shaun.Kime
Curl noise bug test case
Change 4090796 by Olaf.Piesche
Added missing abs for GPU sim
Change 4091368 by Bradut.Palas
Also removing issues from disabled input collections and renderer items
#tests none
Change 4091417 by Simon.Tovey
Making emitter local space a constant embeded directly into emitter and particle scripts.
Allows a lot of optimization and exposes the value to emitter scripts properly.
Change 4091727 by jonathan.lindquist
Exposing delta time as an advanced input and organizing the graph
Change 4091788 by Bradut.Palas
#jira UE-54678 fIxing issues with refresh of skeletal mesh details
#tests none
Change 4092040 by Frank.Fella
Niagara - Fix some issues with modify, transactions, and change ids which was causing assets to be dirty or modified on load, or were allowing internal operation to be undone.
+ Move some transactions from public utility functions into private functions called by menu items in the UNiagaraNodeWithDynamicPins.
+ Prevent a few modify calls in UNiagaraEmitter from marking the package dirty since they're sometimes called as a result of compiling and in the other cases earlier modifies would have already marked the package dirty.
+ In the system view model, don't create transactions when adding an emitter if the system view model is in emitter asset mode since the user should be able to undo it.
+ In the system toolkit when opening an emitter asset initialize, clean up, and propagate the rapid iteration parameters before copying the emitter to prevent the change ids from getting out of sync after the compile completes.
+ In the system toolkit when trying to see if an emitter has changed using the change ids, use the last synced id from the copied emitter instead of the original emitter since duplicating the emitter can change the id, and there's not way to set it externally.
#jira UE-59517
#jira UE-59566
Change 4092700 by jonathan.lindquist
Removed param groups. We're now using inline bools to enable or disable limits on velocity and acceleration
Change 4093032 by Shaun.Kime
Fixing display of errors
#tests now errors in compilation properly display
Change 4093172 by Shaun.Kime
Curl noise cpu/gpu test map
#tests added last known good
Change 4094156 by Damien.Pernuit
Fixed crash in the editor when opening a Niagara Emitter/Script containing outdated script functions.
Fixed incorrect type cast, FNiagaraFloat instead of FNiagaraInt32.
Change 4094515 by Tim.Gautier
Enabled Niagara + Niagara Extras in QAGame
Change 4094674 by jonathan.lindquist
submitting an example of variable defaults not working as intended
Change 4094712 by Damien.Pernuit
Niagara - Houdini:
Houdini Niagara Data Interface:
- Removed the GetCSVFloatValueByString function as String aren't currently supported by Niagara.
- Particles in the CSV file can now be updated over time (not just spawned)
- Added GetParticlePositionAtTime, GetParticleValueAtTime, GetParticleVectorValueAtTime returning a linearly interpolated value for a given particle at a given time.
- Added GetParticleIndexesAtTime for getting the previous/next row indexes and weight to access the values for a given particle at a given time and handle the interpolation of the values.
- Added GetCSVVectorValue for accessing a Vector value at a given row/col.
Houdini CSV Assets now looks for the following attributes in the CSV "Title" line:
- pos for position.
- id and # for particle ID.
- alive and life for calculating a particles LifeTime.
Change 4094932 by Frank.Fella
Niagara - Fix a few more issues where asset editors would open with their assets modified.
+ Fix rapid iteration parameter preparation so that it doesn't modify the parameter store if it doesn't change after syncing with the graphs and propagating from dependencies. This fixes the emitter editor allowing changes to be applied on open.
+ Refactor the change notification for the script tool kit so that it uses the graph change and property change messages to determine if any changes have been made and can be applied.
#jira UE-59517
#tests auto tests
Change 4094978 by Damien.Pernuit
Niagara - Houdini:
Houdini Niagara Data Interface:
- Since we can now update particles over time, renamed/modified most of the functions to make a clear distinction between row indexes (row) and particle ids (N)
- Replaced GetNumberOfPointsInCSV by GetNumberOfRowsInCSV and GetNumberOfParticlesInCSV
- Renamed GetParticleIndexesAtTime to GetRowIndexesForParticleAtTime and GetLastParticleIndexAtTime to GetLastRowIndexAtTime
- Fixed some DI Functions that were using floats for input parameter instead of using integers.
Change 4095428 by Damien.Pernuit
Niagara - Houdini:
Houdini Niagara Data Interface:
Fixed incorrect behavior of the GetLastRowIndexAtTime and GetParticleIndexesToSpawnAtTime functions due to supporting particle update over time.
Houdini CSV Asset:
Fixed missing UPropery for SpawnTimes and LifeValues array.
Change 4096355 by Damien.Pernuit
Houdini Niagara:
Fixed performance warning for UHoudiniCSV::GetParticleLifeAtTime()
Change 4096419 by Damien.Pernuit
Niagara - Houdini:
Houdini Niagara Data Interface:
Added GetParticleLifeAtTime for accessing a given particle's life at a given time value.
Fixed GetParticleVectorValueAtTime not bound properly.
Fixed GetRowIndexesForParticleAtTime returning incorrect values when the time value was past the particle's last update.
Change 4096466 by Damien.Pernuit
Niagara - Houdini:
- Added GetNumberOfColumnsInCSV to the Houdini Data Interface
- Added descriptions to the functions exposed by the DI
Change 4096528 by Damien.Pernuit
Niagara - Houdini:
Houdini CSV Asset:
- As the DI expects the values to be sorted by time, if it's not the case, the CSV importer will sort them on import.
- As the DI spawning functions relies on the particle IDs starting at zero and increment, the CSV importer will fix the particles IDs on import if it's not the case.
Change 4096838 by Yannick.Lange
Fix focus search box on add parameter menu
#jira UE-59502
Change 4097205 by Bradut.Palas
Fixes for metadata details in script toolkit (now the apply and compile buttons refresh and sort the metadata collection). The metadata functionality is fixed. Delete, add and modify work just as before, but the sorting isn't applied because refreshing the whole collection is skipped for internal changes.
#jira UE-58745
#jira UE-59589
#tests none
Change 4097593 by Shaun.Kime
Now generating compiler debug info for VM shaders just like the rest of Materials using the r.DumpShaderDebugInfo
#tests now properly generate data in a VM folder sibling to other generated debug shader data
Change 4097721 by Frank.Fella
Niagara - Make the lifetime of stack entries well defined so that we can safely remove delegate bindings and clear out pointers.
Change 4097962 by Bradut.Palas
Stack issues now update fix delegates on each refresh, even if the fix GUIDs don't change, to account for other possible changes in the graph. Had to introduce unique identifiers for fixes too, now the issue entry is using the same recycle mechanism for fixes that the base stack entry uses for issues.
#tests none
Change 4098063 by Frank.Fella
Niagara - Fix input initialization for drag/drop with a "Set Variables" node.
#jira UE-57699
Change 4098192 by Damien.Pernuit
Niagara - Houdini:
Houdini CSV Asset:
When importing the CSV file, the importer creates a list of the row indexes updating each particle.
This greatly improves performance when accessing data in large files with a lot of particles updating over time.
Change 4098406 by Damien.Pernuit
Niagara - Houdini:
Houdini Niagara Data Interface:
Added helper functions for accessing Color and Velocity values in the CSV file.
Houdini CSV Asset:
The importer now looks for the Color (Cd, color), Alpha (A, Alpha) and velocity (V) attributes.
Change 4099945 by Frank.Fella
Niagara - Fix op description tool tip and keyword searches in the graph add menu, fix and standardize tool tip handling for script objects in menus, and add support for keyword searches for user defined scripts to match the built in ops.
#jira UE-59402
Change 4100451 by Shaun.Kime
Fixing wyeth's torus error, which was caused by us not properly initializing defaults. We now initialize defaults in three waves in spawn scripts. Wave 1 are any straight up constants at the top of the spawn function. Wave 2 is inlined in spawn just before the function that needs them is called. Wave 3 is at the bottom of spawn in a section called HandleMissingDefaultValues.
Also updated the error and warning messages to be much clearer text.
#jira UE-59723, UE-59762
#tests auto-tests pass
Change 4100568 by Shaun.Kime
Removing the old compile debug file generation and now unified with the existing shader compiler workflow for the future.
If r.DumpShaderDebugInfo=1, make sure that we generate the assembly, ush, and params files in the Saved\ShaderDebugInfo\VM\<SYSTEM_NAME>\<EMITTER_NAME>\<SCRIPT_NAME_AND_USAGE_ID_IF_NONZERO>
#jira UE-59767
#tests auto-tests pass
Change 4100913 by jonathan.lindquist
changing the pin order
Change 4100932 by jonathan.lindquist
setting the input pin order on a, b and alpha
Change 4101546 by jonathan.lindquist
Submitting a dynamic input that returns the exec index as an int
Change 4101734 by Shaun.Kime
Fixing static analysis errors
#tests n/a
Change 4101736 by Shaun.Kime
Creating new last known good for GPU Functional Test auto-test
#tests n/a
Change 4102305 by Simon.Tovey
Fix for VM Crash
#codereivew Frank.Fella, Shaun.Kime, Olaf.Piesche
Change 4102552 by Yannick.Lange
Tooltip variable types
#jira UE-59520
Change 4102599 by Yannick.Lange
New variables in maps or parameter view will get the name Namespace.NewVariable. This is not an actual fix for UE-59633, but gives the user the incentive to rename variables.
#codereveiw Shaun.Kime
Change 4102752 by Yannick.Lange
Fix auto expanding all the sections for the niagara parameters list view.
#jira UE-59121
Change 4102779 by Yannick.Lange
Fix auto expanding all the sections for the niagara parameters list view. Fix incorrect comment changelist: 4102752
#jira UE-59121
Change 4103419 by Shaun.Kime
Fixing build issues
#tests n/a
Change 4103522 by Damien.Pernuit
Houdini - Niagara:
Big renaming pass on the Houdini CSV Assets and Data Interface to follow naming conventions:
Replaced the GetCSVXXX functions by GetXXXX (GetCSVPosition is now GetPosition)
Always use "row" instead of "line", "Point" instead of "Particle", "PointID" instead of "N" or "ID" etc.
Houdini Data Interface:
- Added the GetVectorValueEx and GetPointVectorValueAtTimeEx functions that allow the user to decide how the vector conversion from houdini to unreal's coordinate system is handled.
- Replaced the GetParticleLifeAtTime function by GetPointLife, that returns the life of a particle at spawn time.
- Added the GetPointType function returning the type of a given point.
Houdini CSV Asset:
- Added the editable SourceTitleRow UProperty.
Editing this will trigger a reimport of the source CSV file and might be used to fix/modify column titles in the file.
- Added support for "type" attributes.
- Removed the unused StringValues buffer and GetCSVStringValues() functions.
- Added assetTags so the Houdini CSV asset thumbnails show more infos on the CSV data.
- Added the "FindSourceCSV" asset action to browse to the source CSV file.
Change 4104008 by Shaun.Kime
Missing header in Monolithic builds
Fixed indent issues, was using spaces vs tabs
#jira UE-59705
Change 4105249 by Simon.Tovey
Fixes in VMM backend and propagation visitors to ensure proper optimization for VM external function calls.
also adding a visitor to strip empty stats scopes.
Change 4105250 by Simon.Tovey
Updated windows binaries for hlslcc
Change 4105283 by Yannick.Lange
Fix creating an input parameter node from an input pin.
#jira UE-57362
Change 4105509 by Yannick.Lange
Fix being able to drop parameters in the system view on incorrect execution categories.
Change 4105726 by Wyeth.Johnson
Fix detection of valid toolchain directories with Visual Studio 2017 desktop (change by Ben.Marsh)
Change 4105727 by Shaun.Kime
Fixing nightly build due to missing GetAssetTags definition due to mismatches in WITH_EDITORONLY_DATA
#tests n/a
Change 4106034 by Damien.Pernuit
Houdini-Niagara:
Houdini CSV Asset:
- Fixed build break due to GetAssetRegistryTags()
- Replaced the different hardcoded ColumnIndexes member variables by an array.
Change 4106254 by Frank.Fella
Niagara - Fix playback issues where completed systems wouldn't simulate again until you pressed play.
#jira UE-58616
#jira UE-58721
Change 4106617 by Frank.Fella
Niagara - Prevent crash on shutdown.
#jira UE-59516
Change 4106623 by Frank.Fella
Niagara - Fix static analysis warning for posible null dereference in UNiagaraScriptItemGroup
Change 4106988 by Shaun.Kime
Resaved test assets with latest non-zero version
#tests cooking no longer complains about file versions
Change 4106992 by Shaun.Kime
Now when errors appear in a cook for Niagara GPU shaders, we see them in the same location as the cook log
#tests n/a
Change 4108852 by Simon.Tovey
Fix for transforms in emitter scripts.
Param->Dataset bindings weren't handling structs correctly.
Change 4109260 by Wyeth.Johnson
Normalize Vector dynamic input
Change 4109748 by Marcus.Wassmer
olaf.piesche: Fresh build of hlslcc for Mac
Change 4110624 by Rolando.Caloca
-fresh build of hlslcc for Linux
-fixed a warning in NiagaraStackModuleItem.cpp
Change 4111103 by Shaun.Kime
Fixing nightly build issues with redundant left and right side of &&
CI Issue:
d:\build\++ue4+dev-niagara+compile\sync\engine\plugins\fx\niagara\source\niagaraeditor\private\viewmodels\niagarasystemviewmodel.cpp(1425): warning V501: There are identical sub-expressions 'bStartedPlaying == false' to the left and to the right of the '&&' operator.
#tests auto-tests pass
Change 4111104 by Shaun.Kime
Fix for CI issue:
d:\build\++ue4+dev-niagara+compile\sync\engine\plugins\fx\niagara\source\niagaraeditor\private\viewmodels\stack\niagarastackscriptitemgroup.cpp(553): warning V595: The 'SourceModuleItem' pointer was utilized before it was verified against nullptr. Check lines: 553, 554.
#tests auto-tests pass
Change 4113839 by Ryan.Vance
#jira UE-59992
Enables mobile multi-view for translucent objects.
Change 4113461 by Lina.Halper
Fix build error
#jira: none
Change 4113429 by Brandon.Schaefer
If we are using the native bundled toolchain set LC_ALL=C to avoid locale issues
#jira UE-59416
Change 4113369 by Mitchell.Wilson
Removing bShouldBeLoaded from CinematicPrestreamer BP. The base class ignored the bShouldBeLoaded value, so it was moved out of the class.
#jira UE-59944
Change 4113181 by Phillip.Kavan
Add missing Bookmarks command in macro and interface editors.
- Mirrored from //UE4/Dev-Framework (4113177).
#jira UE-58623
Change 4113010 by Marcin.Undak
Audio: immediately stop sounds when destroying it's data
#jira UE-59823
#jira UE-59593
Change 4112968 by Phillip.Kavan
The Blueprint editor Bookmarks tab now updates when switching to a new graph tab, when showing only the current graph context.
- Mirrored from //UE4/Dev-Framework (4112217).
#jira UE-58588
Change 4112934 by Martin.Wilson
Extra logging for marker sync issue
#jira UE-54705
Change 4112932 by Arciel.Rekman
Vulkan: disable unused device features (UE-59930).
#jira UE-59930
(Edigrating CL 4111492 from Dev-Console to Release-4.20)
Change 4112927 by paulo.souza
ARPG - Fixes impact pause effect not working
#jira UE-59906
Change 4112877 by Mitchell.Wilson
Saving assets to resolve empty engine version warnings.
#jira UE-59947
Change 4112830 by Lina.Halper
Fix issue with displaying class that is in transient due to mid compilation
#jira: UE-58936
Change 4112821 by Lina.Halper
Merging using Dev-Anim_Release-4.20
Fix on changing hierarchy transform
#jira: UE-59964
Change 4112799 by Lina.Halper
#DUPEMERGE
Fix issue with a huge scale of root causing retarget to create invalid transform
#jira: UE-58837
Change 4112795 by Lina.Halper
#DUPE MERGE
- Fix issue where keep state not working properly when montage is used for sequencer because montage is advancing and blends out automaticaly
- added option to "auto blend out" so that we can disable it.
#jira: UE-59049
Change 4112790 by Martin.Wilson
Make sure bone references are up to date on update (skeletal control nodes can crash otherwise)
#Jira UE-56395
Change 4116663 by Andrew.Grant
Fix VirtualCamera plugin no longer working and some RemoteSession tweaks
- Channel selection now done programatically by VirtualCamera plugin
- VirtualCamera no longer creates as ARCameraChannel (wasn't used, and interefered with tracking).
- Fixed missing object references in RemoteSessionApp
- Added some missing devices to UE4Game provisioning file.
#jira UE-59478
#tests Tested RemoteSession in VirtualCameraSample
Change 4116464 by Andrew.Grant
Moved Gauntlet Plugin out of NFL and into experimental folder
#jira UE-59937
#tests Compiled ElementalDemo
#lockdown Nick.Penwarden
#rb none
#ROBOMERGE-SOURCE: CL 4122701 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
#ROBOMERGE-OWNER: jason.bestimt
[CL 4122839 by ben marsh in Dev-VR branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3623004 by Ben.Marsh
Fix RemoteExecutor not taking the remote machine specs into account.
Change 3623172 by Ben.Marsh
UGS: Fix "More Info..." button not using P4 server override.
Change 3628820 by Ben.Marsh
PR #3979: Get working directory from task element, not tool node (Contributed by nullbus)
Change 3630424 by Graeme.Thornton
Make the AES key parameter const in FAES::EncryptData()
Change 3632786 by Steve.Robb
FString constructor fixed to not take an ignored void* parameter, which can be misleading.
Change 3639534 by Ben.Marsh
Remove old P4.NET library. Doesn't seem to be used by anything.
Change 3640536 by Steve.Robb
GitHub #4007 : Delete unnecessary specialization of MakeArrayView
#jira UE-49617
Change 3641155 by Gil.Gribb
UE4 - Speculative fix for problem with summary reading in FAsyncArchive2.
Change 3643932 by Ben.Marsh
Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument).
Change 3644825 by Ben.Marsh
Use VSWHERE to find the location of MsBuild.exe, if available.
https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645
Change 3647395 by Ben.Marsh
Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options.
Change 3650300 by Ben.Marsh
UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis.
Change 3650856 by Robert.Manuszewski
Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread
Change 3651022 by Gil.Gribb
UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher.
Change 3658331 by Steve.Robb
Fix for the parsing of large integer values.
Change 3661958 by Gil.Gribb
UE4 - Fixed rare hang in task graph.
Change 3664021 by Robert.Manuszewski
Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy
See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html
Change 3664254 by Steve.Robb
Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports.
Change 3664436 by Steve.Robb
Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads.
Change 3666461 by Graeme.Thornton
Improvements to signing/encryption key embedding and runtime access
- Changed method of embedding key into the executable to make it more secure
- Added FAESKey class to wrap a 32 byte key
Change 3666462 by Graeme.Thornton
Cut ShooterGame AES key down to 32 characters
Change 3677560 by Ben.Marsh
PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn)
Change 3683534 by Steve.Robb
Refactoring of enum/struct lookup during hot reload.
Change 3683754 by Steve.Robb
Alignment fixes to allow int64 on 32-bit platforms
Support for integral types in IsAligned.
Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types.
Some fixes to existing code.
Change 3686670 by Steve.Robb
Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS.
Change 3687540 by Ben.Marsh
Fix all UBT/UAT output going to stderr rather than stdout.
Change 3688931 by Gil.Gribb
UE4 - Critical fix for a rare race condition in the pak file async IO layer.
Change 3690000 by Graeme.Thornton
Manual copy of 4.18 CL 3687869
Make UBT include the destination INI file for a given hierarchy if it exists
Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name
Change 3690030 by Graeme.Thornton
VSCode fixes
- Source Code Accessor plugin changes. Add new interface method to open a solution at a given path
- GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for
- Various fixes for vscode project file generation
#jira UE-50554
Change 3690885 by Steve.Robb
Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.
Change 3691052 by Steve.Robb
Free stats thread on shutdown.
Change 3695138 by Steve.Robb
AsConst helper function added.
Change 3696627 by James.Hopkin
Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr
(review-3606695)
Change 3697099 by Steve.Robb
GitHub #4105 : Removed redundant class access modifier
Change 3697154 by Steve.Robb
Removal of deprecated functions in delegates.
Mutable lambdas to can now be bound to delegates.
Change 3697180 by Steve.Robb
GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty
Change 3697239 by Steve.Robb
Allow TArray::Insert to take an array with any allocator type.
Change 3697269 by Steve.Robb
RelocateConstructItems instead of MoveConstructItems.
Change 3697558 by Steve.Robb
New _GetRef functions for TArray, which return a reference to the newly-added element.
Unit tests for these functions.
Change 3699776 by Steve.Robb
TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.
Change 3702397 by Steve.Robb
TIsTrivial type trait.
Change 3702569 by Steve.Robb
Allow a TGuardValue to be assigned to a different type from the one being guarded.
Change 3706644 by Robert.Manuszewski
Different stack ingore count for development builds for FArchiveStackTrace
Change 3709272 by Steve.Robb
Removal of redundant UpdateVertices, which causes a race condition on the renderer thread.
Change 3709452 by Robert.Manuszewski
Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies
Change 3709454 by Robert.Manuszewski
Added command line option -NOEDL to disable EDL
Change 3709487 by Steve.Robb
Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.
Change 3709645 by Ben.Marsh
Fix race condition between multiple instances of UBT trying to write out the XML config cache.
Change 3711193 by Ben.Marsh
Add an editor setting for the shared DDC location to use.
#jira UE-51487
Change 3713811 by Steve.Robb
Update .modules files after a hot reload.
Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks.
Pass hotreload flags around in UBT instead of relying on global state.
This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205.
#jira UE-51472
Change 3715654 by Steve.Robb
GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy.
Change 3718782 by Steve.Robb
TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called.
Change 3720830 by Steve.Robb
Initial import of TAtomic object wrapper, which guarantees atomic access to an object.
Change 3720881 by Steve.Robb
FCompression ThreadSanitizer data race fixes.
Change 3722640 by Graeme.Thornton
Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading.
#jira UE-51463
Change 3722655 by Steve.Robb
Don't null name table because it's already zeroed at startup.
Some tidy-ups.
Change 3722754 by Steve.Robb
Thread sanitizer fix.
Small typo fix.
Change 3722849 by Graeme.Thornton
Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server
Change 3723081 by Steve.Robb
TAtomic is now aligned to the underlying integer type.
TAtomic will now static assert with a better error message when given an unsupported type.
Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number.
Misc renames.
Change 3723270 by Ben.Marsh
Include /d2cgsummary argument when running UBT with -Timing.
Change 3723683 by Ben.Marsh
Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance.
Change 3725422 by Robert.Manuszewski
When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning.
Change 3725735 by Robert.Manuszewski
Making all CheckDefaultSubobjects related functions const
Change 3726167 by Steve.Robb
FMinimalName::IsNone added.
Change 3726458 by Steve.Robb
TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer.
Change 3726542 by Ben.Marsh
UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths.
Change 3726595 by Ben.Marsh
Allow building multiple game targets in the example BuildEditorAndTools.xml script.
Change 3726724 by Ben.Marsh
Fix ambiguities in calculating root directory. (GitHub #4172)
Change 3726959 by Ben.Marsh
Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does.
Change 3728437 by Steve.Robb
VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel.
Some improved documentation.
NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping.
Change 3732262 by Gil.Gribb
UE4 - Fixed rare hangs in the task graph.
Change 3732755 by Steve.Robb
Stats TSAN fixes.
Optimizations to FCycleCounter::Start() to only read the stat name once.
Change 3735000 by Robert.Manuszewski
Always preload the AssetRegistry module on startup. even if EDL is disabled.
Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert.
Change 3735292 by Robert.Manuszewski
Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates.
Change 3735332 by Steve.Robb
Refactoring of UDelegateProperty::Identical() to clarify logic.
Fixed UMulticastDelegateProperty::Identical() to compare the bound function names.
PPF_DeltaComparison removed, as it doesn't seem useful.
Change 3737960 by Graeme.Thornton
VSCode - Add launch task for generating project files for the given folder
Change 3738398 by Graeme.Thornton
Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor
#jira UE-51451
Change 3738405 by Graeme.Thornton
VSCode: Format c/cpp settings strings using comment path formatting function
Change 3738928 by Steve.Robb
Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18)
#jira UE-51842
Change 3739135 by Ben.Marsh
Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history.
#jira UE-51855
Change 3739360 by Ben.Marsh
UAT: Fix issue with P4PORT setting not being parsed correctly.
Change 3745959 by James.Hopkin
#core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types
Change 3746125 by Steve.Robb
FName ThreadSanitizer fixes.
Change 3747274 by Steve.Robb
TSAN fix for FMediaTicker::Stopping.
Change 3747618 by Steve.Robb
ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.
Change 3747720 by Steve.Robb
ThreadSanitizer fix for FMessageRouter::Stopping.
Change 3749207 by Graeme.Thornton
First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys.
Change 3749323 by Graeme.Thornton
Fix UAT crash when only -targetplatform is specifiied
Change 3749349 by Steve.Robb
TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.
Change 3749617 by Steve.Robb
Logf static_assert for formatting string enabled.
Change 3749897 by Steve.Robb
FDebug::LogAssertFailedMessage static assert for formatting string enabled.
Change 3754011 by Steve.Robb
Static asserts that the allocator supports move.
Move-enabled our allocators which don't support move.
Change 3754227 by Ben.Marsh
Fix build command line in generated projects missing a space before the compiler version override.
#jira UE-52226
Change 3754562 by Ben.Marsh
PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk)
Change 3755616 by Graeme.Thornton
Runtime code for using the new crypto ini files to define signing/encryption keys
#jira UE-46580
Change 3755666 by James.Hopkin
Used ImplicitConv to remove Casts being used for up-casts
#review-3745965
Change 3755671 by Graeme.Thornton
Add log message in unrealpak to say which config file system it is using for crypto keys
Change 3755672 by Graeme.Thornton
Updating ShooterGame with new CryptoKeys based security setup
Change 3756778 by Ben.Marsh
Add support for running multiple jobs simultaneously on a single builder.
When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used.
Change 3758498 by Ben.Marsh
Re-throw exceptions when a file cannot be deleted when cleaning a target.
Change 3758921 by Steve.Robb
ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access.
DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory.
Change 3760599 by Graeme.Thornton
Added missing epic header comment to some new source files
Change 3760642 by Steve.Robb
ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.
Change 3760669 by Graeme.Thornton
Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually.
Added a test mode to the cryptokeys commandlet to test signing key generation
Change 3760711 by Steve.Robb
ThreadSanitizer fixes to GIsRenderingThreadSuspended.
Change 3760739 by Steve.Robb
ThreadSanitizer fix for FQueuedThread::TimeToDie.
Change 3760763 by Steve.Robb
ThreadSanitizer fix for GRunRenderingThreadHeartbeat.
Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread.
Change 3760793 by Steve.Robb
Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos.
Change 3760817 by Steve.Robb
ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.
Change 3761331 by Josh.Engebretson
UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj
#jira UE-52416
Change 3761521 by Steve.Robb
ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.
Change 3763117 by Graeme.Thornton
PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL)
Change 3763358 by Graeme.Thornton
Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes
Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path
Derived from the content of this PR:
PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang)
Change 3764058 by Graeme.Thornton
Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes
#jira UE-52359
Change 3764705 by Steve.Robb
Better handling of whitespace in ImportText_Internal() for set and map properties.
Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data).
Fix to USetProperty's temp buffer size to avoid buffer overruns.
Duplicate map keys are now skipped during import, same as USetProperty's behavior.
Change 3764731 by Steve.Robb
Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that.
Change 3765923 by Graeme.Thornton
VSCode - "taskName" -> "label" for C# build tasks
Change 3766018 by Steve.Robb
constexpr constructor for TAtomic.
Change 3766037 by Steve.Robb
Misc tidyings in HotReload.cpp.
Change 3766046 by Steve.Robb
ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local.
Change 3766288 by Steve.Robb
Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects.
Change 3766374 by Josh.Engebretson
Fix issue with ini quoted value comparison
#jira UE-52066
Change 3766532 by Josh.Engebretson
PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu)
#jira UE-46156
Change 3766740 by Steve.Robb
TMultiMap::Append added.
Change 3767523 by Steve.Robb
ThreadSanitizer fix for UE4Delegates_Private::GNextID.
Change 3767601 by Steve.Robb
ThreadSanitizer fix for FStats::GameThreadStatsFrame.
Change 3770567 by Ben.Marsh
Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives.
Change 3770826 by Ben.Marsh
Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it.
Change 3770875 by Steve.Robb
Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps.
Change 3772167 by Ben.Marsh
Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data.
Change 3772248 by Steve.Robb
ThreadSanitizer fixes to FMalloc call counters.
Change 3772383 by Ben.Marsh
Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive.
Change 3772906 by Graeme.Thornton
TextAssetCommandlet - Utility commandlet for testing/converting to text asset format
Change 3772932 by Ben.Marsh
Fix "String:" prefix not being stripped from escaped string values.
Change 3772942 by Graeme.Thornton
Add experimental setting to enable in-editor text asset format functionality
Add "export to text" option into the content browser asset actions context menu
Change 3772955 by Ben.Marsh
Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility.
Change 3772963 by Ben.Marsh
Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries.
Change 3773010 by Graeme.Thornton
Added CORE_API to FArchiveFromStructuredArchive
Gave text asset format experimental option a slightly less random tooltip comment
Change 3773057 by Ben.Marsh
Add a flag to FArchive to determine whether the archive is text (IsTextFormat()).
Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive.
Also rename FStructuredArchive::TryEnterSlot() to TryEnterField().
Change 3773118 by Steve.Robb
TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size.
Change 3773122 by Steve.Robb
TAtomic fixes for pointer arithmetic.
TSignedIntType used instead of reimplementing its own trait.
Change 3773123 by Steve.Robb
Unit tests for TAtomic.
Change 3773138 by Steve.Robb
Run numeric tests on integer types instead of basic tests.
Fix for compiler warnings when subtracting from unsigned atomics.
Change 3773166 by Steve.Robb
Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that.
Change 3774216 by Gil.Gribb
UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file.
Change 3774426 by Ben.Marsh
Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all.
See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html
Change 3774658 by Ben.Marsh
Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it.
Change 3775141 by Ben.Marsh
Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor.
Change 3775459 by Ben.Marsh
Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically.
Change 3775522 by Ben.Marsh
UGS: Treat .uproject and .uplugin files as code changes.
Change 3775597 by Ben.Marsh
Fix post-build steps for plugins not being executed.
#jira UE-52754
Change 3777895 by Graeme.Thornton
StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive
Change 3777931 by Graeme.Thornton
Refactored FArchiveUObjects serialization code into some static helpers
Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers
Change 3777942 by Graeme.Thornton
Added missing CORE_API to FStructuredArchive::FStream
Added FStructuredArchive::FSlot insertion operator for char
Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value
Change 3778084 by Graeme.Thornton
Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files
Change 3778096 by Graeme.Thornton
Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class
Change 3778389 by Josh.Engebretson
Fix an optimization issue with CPU benchmarking
Add better support for debugging/testing local rocket builds
UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html
#jira UE-52192
Change 3778701 by Josh.Engebretson
Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets
UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html
#jira UE-40317
Change 3778832 by Chad.Garyet
Adding enterprise path support for PCB's for UGS
Change 3780258 by Graeme.Thornton
TextAssetCommandlet - Accumulate timings for loading packages and saving packages
Change 3780463 by Graeme.Thornton
CryptoKeys improvements
- Enable CryptoKeys plugin by default
- Attempt to inherit settings from the old system by default
- Hide ini/index encryption settings from packaging settings and just inherit previous values into new system
Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings
Change 3780557 by Ben.Marsh
Fix LoginFlow module not being precompiled for the binary release.
Change 3780846 by Josh.Engebretson
Improve filename to long package name resolution when provided a relative path
Change 3780863 by Ben.Marsh
UAT: Add a better error message when a C# project has an invalid reference.
Change 3780911 by Ben.Marsh
Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce.
The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument.
Change 3780956 by Josh.Engebretson
Add support for ! (RemoveKey) config command to UBT
UDN Link: https://udn.unrealengine.com/questions/397267/index.html
#jira UE-52033
Change 3782957 by Robert.Manuszewski
UE4 - Fixed a linear search in EDL that caused performance problems for very large maps.
Change 3784503 by Ben.Marsh
Optimizations for FStructuredArchive:
* Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it.
* Prevent shrinking of arrays when removing elements.
* Add an inline allocator to the scope and container stacks.
Change 3784700 by Ben.Marsh
Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front.
Change 3784989 by Ben.Marsh
Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0.
Change 3786860 by Gil.Gribb
UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely.
Change 3787159 by Ben.Marsh
Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution.
Change 3787493 by Josh.Engebretson
Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores
Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile
Fix for multiple threads parsing ini keys (PR 3995)
#PR 3995
#jira 52913
#jira 49503
Change 3787773 by Steve.Robb
Fix for missing final values from FOREACH_ENUM_ macros.
Change 3788287 by Ben.Marsh
TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique.
Change 3788678 by Ben.Marsh
Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive.
Change 3789353 by Graeme.Thornton
Removed unused/rotten modes from TextAsset commandlet.
Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing.
Change 3789396 by Ben.Marsh
Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h
Change 3789772 by Ben.Marsh
Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line.
Change 3790003 by Ben.Marsh
TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record.
Change 3790051 by Steve.Robb
PIE is disabled during a hot reload.
Hot reload in editor is disabled during PIE.
Hot reload from IDE is deferred until after PIE is exited.
Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change.
#jira UE-20357
#jira UE-52137
Change 3790709 by Steve.Robb
Better move support for TVariant.
EVariantTypes switched over to using an enum class to aid debugger visualization.
Change 3791422 by Ben.Marsh
TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time.
Change 3791489 by Graeme.Thornton
TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record
Change 3792344 by Ben.Marsh
Improvements to base64 encoding library.
* Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations.
* Added support for decoding base-64 blobs without padding marks.
* Added support for decoding into pre-allocated buffer.
* Added constexpr functions for determining the encoded and maximum decoded size of an input buffer.
* Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes).
Change 3792949 by Ben.Marsh
TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.
Change 3794078 by Robert.Manuszewski
Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine
#jira UE-52392
Change 3794413 by Ben.Marsh
TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack.
Change 3794731 by Ben.Marsh
TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable.
Change 3795081 by Ben.Marsh
UBT: Move LinuxCommon.cs into Platform/Linux folder.
Change 3795137 by Ben.Marsh
UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property).
Change 3795247 by Ben.Marsh
Fix missing header when creating a new interface from the editor new code wizard.
#jira UE-53174
Change 3796025 by Graeme.Thornton
Fixed some deprecated "Definitions" warnings in OpenCV build files
Change 3796103 by Graeme.Thornton
Disable experimental text asset option - it does nothing useful yet.
Change 3796157 by Graeme.Thornton
Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open.
#jira UE-53206
Change 3796315 by Ben.Marsh
Move Formatter to the correct position for initializer.
#jira UE-53208
Change 3797082 by Ben.Marsh
UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT.
#jira UE-53232
Change 3799050 by Ben.Marsh
Make UnrealPak.version files writable for Mac and Linux.
Change 3801012 by Graeme.Thornton
VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory
Change 3801214 by Gil.Gribb
UE4 - Remove assert to work around minor problem with lock free lists.
#jira UE-49600
Change 3801219 by Steve.Robb
WeakObjectPtrs now warn when casting away const.
Change 3801299 by Graeme.Thornton
Fix quote issue with foreign project build tasks on PC
Change 3803292 by Graeme.Thornton
Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries
Change 3803559 by Steve.Robb
TSAN fix for FMalloc::MaxSingleAlloc.
Change 3803735 by Graeme.Thornton
Last set of cryptokeys changes
- Added some comments for editor exposed settings
- Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets"
Change 3803929 by Ben.Marsh
UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog.
Change 3624590 by Steve.Robb
AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector.
Tidy-up of existing calls to AddReferencedObjects.
Change 3629473 by Ben.Marsh
Build: Rename the option for embedding source server information in PDB files for installed engine builds.
Change 3632894 by Steve.Robb
VARARG* macros deprecated and usage replaced with variadic templates.
Change 3640704 by Steve.Robb
MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type.
Fix to TWeakObjectPtr's constructor which implicitly removed const.
Fixes to everything which didn't compile as a result.
Change 3650813 by Graeme.Thornton
Removed FStartupPackages and associated code
Change 3651000 by Ben.Marsh
Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out.
#jira UE-49980
Change 3690842 by Steve.Robb
FPlatformAtomics::AtomicRead added - needs optimizing.
AtomicRead() used in FThreadSafeCounter::GetValue().
Change 3699416 by Steve.Robb
Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator.
Improved readability of TSparseArray visualization.
Change 3720812 by Steve.Robb
Atomic functions for 8-bit and 16-bit.
Android, Linux and Switch implementations now just use the Clang implementation.
AtomicRead64 deprecated in favor of the int64* AtomicRead overload.
Change 3722698 by Steve.Robb
VS debugger visualizers for TAtomic.
Change 3732270 by Steve.Robb
Relaxed stores and loads.
Change 3749315 by Graeme.Thornton
If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform
#jira UE-52034
Change 3750657 by Josh.Engebretson
Fixed issue when debugging editor cook/package and project launch operations
#jira UE-52207
Change 3758514 by Steve.Robb
Fixes to FString::Printf having non-literals being passed as its formatting string.
Change 3763356 by Steve.Robb
ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters.
Change 3770549 by Steve.Robb
Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES.
Tidy up of existing code which uses it.
Change 3770553 by Ben.Marsh
Adding structured serialization API to Core/CoreUObject for use with text-based assets.
* FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types.
* Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Maps are string -> value dictionaries where the key names are present regardless of the build type.
* Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects.
* Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type.
* The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Includes implementations of FArchiveFormatter for binary and JSON formats.
Change 3771105 by Steve.Robb
Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS.
Fix for incorrect warning formatting on Clang platforms.
Change 3771520 by Steve.Robb
Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header.
Change 3771564 by Steve.Robb
More common macros moved to the Clang pre-setup header.
Change 3771613 by Steve.Robb
EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.
Change 3772881 by Ben.Marsh
Add support for serializing FName and UObject through FStructuredArchive.
In order to allow custom linker behavior when serializing objects:
* The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer.
* The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table)
Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix).
Change 3772941 by Graeme.Thornton
Make build work when including StructuredArchive.h from core container types
Added standard header to new files
Add structured archive serializer for TArray
Fix bug in structured archive where containers weren't being popped from the scope stack
Change 3772972 by Ben.Marsh
Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot.
Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately.
When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields.
Change 3773006 by Ben.Marsh
Rename FStructuredArchive::FRecord::EnterSlot() to EnterField().
Change 3773013 by Steve.Robb
bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes.
Change 3774499 by Ben.Marsh
Minor fixes for FStructuredArchive related classes:
* Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types.
* FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions.
Change 3774600 by Ben.Marsh
Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data.
This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data.
Change 3789721 by Ben.Marsh
TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing.
Change 3789920 by Ben.Marsh
TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double.
#jira UECORE-364
Change 3789982 by Ben.Marsh
TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter.
Change 3792466 by Ben.Marsh
TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly.
In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations.
Change 3792935 by Ben.Marsh
TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.
Change 3795100 by Ben.Marsh
UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer.
Change 3795106 by Ben.Marsh
Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions.
Change 3796275 by Ben.Marsh
Fix paths to Version.h includes from resource files.
Change 3800683 by Josh.Engebretson
Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format
#jira UE-50073
Change 3803545 by Steve.Robb
TWeakObjPtr const-dropping assignment fix.
Fixes to change.
[CL 3805231 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3627858 by Sorin.Gradinaru
#jira UE-48948 Crash when pressing backspace on empty line
Fixed:
UE-48948 Backspace on empty line crashes app (virtual keyboard)
UE-49112 Virtual keyboard text field isn't visible after rotating from landscape to portrait
UE-49117 Chinese and Korean virtual keyboards don't allow native characters
UE-49120 Virtual keyboard number pad "kicks" user back to regular keyboard
UE-49121 Gboard and Swift swipe entry are not supported by Virtual keyboard
UE-49124 Cursor in virtual keyboard and UMG don't match
UE-49128 Virtual Keyboard text field doesn't appear if there is too much text
UE-49141 Virtual keyboard is unresponsive with repeated tapping in control (some devices)
UE-49139 Tapping in the same text box doesn't make the virtual keyboard disappear
Change 3630732 by Sorin.Gradinaru
#jira UE-43488 GitHub 3440 : Fixes exposure with planar reflections.
#3440
Cancelled the applied exposure scale for non-hdr mobile
Change 3631436 by Nick.Shin
HTML5
recommended fix for "RuntimeError: integer result unrepresentable" from the emscripten makers
#jira UE-49059 HTML5 - Unable to launch project onto HTML 5 from editor
Change 3632689 by Sorin.Gradinaru
#jira UE - 49301 Text in UMG controls flickers during update from Virtual Keyboard
Full refresh of the Slate control for Android experimental VK - the control has focus, but the cursor was removed
Change 3632769 by Adrian.Chelu
#jira UEMOB-403 Improvements to "Device Mobile Preview" feature
Change 3633305 by Allan.Bentham
Print out the callstack when a fatal error occurs.
Change 3633510 by Chris.Babcock
Remove unneeded logging
#jira none
Change 3634827 by Adrian.Chelu
#fixed build editor buildsystem linux
Change 3640610 by Adrian.Chelu
#fixed Cook Win64 warnings
#fixed UE4Editor Static Analysis Win64 warnings
Change 3663057 by Sorin.Gradinaru
UE-49301 Text in UMG controls flickers during update from Virtual Keyboard
#jira UE-49301
#ue4
#android
On some Android devices TextWatcher.onTextChanged gets called multiple times when typing/deleting the content of a EditText (internally, the first call resets the entire content, the second fills it with the new value)
The workaround is to delays sending "empty string" to the Slate, waiting for 100ms to see if there is a second call (the "real" string to update)
The CL contains a fix for a 5/5 crash : select some/all the text from the native edittext, press delete.
Change 3663630 by Jack.Porter
Fix shader compile error on Galaxy S6
Change 3663972 by Allan.Bentham
add ES3.1 framebuffer fetch.
#jira UE-46251
Change 3671843 by Nick.Shin
HTML5 - silence CIS warnings (changed to INFO message type)
#jira UE-50415 ( Pri:1 - 4.18 ) //UE4/Release-4.18: Step "Package ShooterClient HTML5" has completed with 1 Warning: "File packager is creating an asset bundle of 815 MB. This is very large"
Change 3677675 by Sorin.Gradinaru
Android Experimental Virtual Keyboard 4.18 issues
#jira UE-49124 Cursor in virtual keyboard and UMG don't match
#jira UE-49139 Tapping in the same text box doesn't make the virtual keyboard disappear
#jira UE-49141 Virtual keyboard is unresponsive with repeated tapping in control (some devices)
#ue4
#android
UE-49124 Cursor in virtual keyboard and UMG don't match - change in SlateTextLayout.cpp - OnPaint() don't display the cursor
Changed the show/hide vk routines (Game activity.java) to solve low-repro, Android O issues related to multiple click events.
Should also be tested with multiple text boxes (fast click in/out different types of TextBox controls)
Change 3681555 by Adrian.Chelu
UEMOB-403 Improvements to "Device Mobile Preview" feature
Change 3692020 by Sorin.Gradinaru
#jira UE-50645 Carriage returns can be pasted into single line UMG fields on Android
#ue4
#4.19
#android
Change 3692741 by Sorin.Gradinaru
Andoid 3D WebBrowser
#jira UE-32740 Web Browser on a Widget Component appears to be 2D when launching on to Android
#ue4
#android
Change 3695475 by Chris.Babcock
Per project Android NDK/SDK API settings
#jira UEMOB-394
#ue4
#android
Change 3701364 by Dmitriy.Dyomin
Fixed: WEX - Android - Log spammed with "LogRHI: Error: Unsupported EPixelFormat 28"
#jira UE-50714
Change 3701664 by Jack.Porter
Fix typo
Change 3702355 by Cosmin.Sulea
UEMOB-393 - Support "ETC 1.5" packaging
#jira UEMOB-393
Change 3704950 by Chris.Babcock
Add verification of support for cooked texture format(s) on device at runtime (optional with Validate texture formats checkbox in Android project settings) and skipped for cook on the fly
#jira UE-50837
#ue4
#android
Change 3709817 by Nick.Shin
HTML5 - silence CIS warnings (changed to INFO message type)
finally have a repo case to test this proper fix
#jira UE-50415 ( Pri:1 - 4.18 ) "Package ShooterClient HTML5" has completed with 1 Warning: "File packager is creating an asset bundle of 815 MB. This is very large"
Change 3717598 by Chris.Babcock
Fix Android icon paths
#jira UE-51585
#ue4
#android
Change 3718456 by Adrian.Chelu
#fixed spelling in category localized name
Change 3719643 by Nick.Shin
nuke PLATFORM_HTML5_WIN32
more "old" code to remove
#jira UEMOB-433 Remove Win32 SDL "HTML5 Simulator" code
Change 3720342 by Nick.Shin
HTML5 redirect logs to console window
#jira UE-50747 HTML5 log is not easily accessible to users
Change 3720652 by Sorin.Gradinaru
UE-50382 Xcode Address Sanitizer feature does not work on iOS
#jira 50382
#iOS
#ue4
Address sanitizer dylib loader depends on the default SDKROOT parameter (<scheme> => Build Settings => Base SDK => <Build Configuration>)
For macosx or missing (also translated as macosx), the path is incorrect for iphone/appletv.
Change 3720654 by Sorin.Gradinaru
UE-48499 Android Voice Module has a few issues
#jira 48499
#Android
#ue4
1.Circular Buffer: Does the engine already have an implementation? Do we want this into core libraries?
R: There is an generic template class TCircularBuffer, but it lacks functionality like write/read checks, reading/writing data chunks.
Plus the code from VoiceModuleAndroid is optimized for circular byte array. I suggest to keep it.
2. Possible memory leaks: void free_circular_buffer (circular_buffer *p) is implemented, but not used. Presumably a memory leak on the variable inrb. Does CreateAudioRecorder need to be paired with any kind of destroy on shutdown?
R: Fixed. Using an array ActiveVoiceCaptures to store VoiceCapture references (same as on Windows)
3. Init() There are 4 calls to setup/init things that store the result in "result" but only the last call is checked against success. Should more checks against the values be made at each stage with informative log messaging in the event of failure?
R: Fixed.
4. GetVoiceData()
// Workaround for dealing with noise after stand-by
while(bytes<InVoiceBufferSize)
{
OutVoiceBuffer[bytes++]=0;
}
Isn't this just a memzero?
R: Fixed.
5. Missing features. Need to implement GetBufferSize and DumpState
R: Added GetBufferSize. Can be used like in TestVoice.cpp
DumpState is never used (same on Mac, iOS), plus the OpenSL objects do not expose internal properties.
Change 3722554 by Cosmin.Sulea
UE-44224 - iOS - Remote Build - rsync error: files not transferred
#jira UE-44224
Change 3723265 by Allan.Bentham
Assign a texture format priority for ETC1a.
prevents launch on from using ETC1a all the time..
Change 3729764 by Dmitriy.Dyomin
Removed deprecated LightmapUVBias, ShadowmapUVBias from instanced static mesh component per-instance data (80 -> 64 bytes)
Change 3729899 by Dmitriy.Dyomin
Fixed tiled landcape re-import
Change 3730895 by Bogdan.Vasilache
UEMOB-442 --> [ Support texture streaming on Android ES 3.1 ]
#jira UEMOB-442
Change 3733463 by Chris.Babcock
Return error for external texture if not used in pixel shader
#jira UE-51763
#ue4
Change 3736226 by Chris.Babcock
Change ExposureScale to PreExposure
#jira UE-52007
#jira UE-51691
#ue4
#android
Change 3740509 by Allan.Bentham
Add LQ (direct lighting from stationary spot/point lights) to volumetric lightmaps.
#jira UE-50551
Change 3740586 by Cosmin.Sulea
UE-51747 - GitHub 4174 : [BUG-FIX] Invalid ASTC texture versioning is corrected.
#jira UE-51747
Change 3741110 by Chris.Babcock
Fix functional code in checks removed for shipping
#ue4
Change 3741117 by Chris.Babcock
Fix checkin error for check -> ensure fix
#ue4
Change 3741156 by Chris.Babcock
Swap order of SDK and NDK overrides in menu to match Android SDK settings
#jira UE-52019
#ue4
#android
Change 3741271 by Chris.Babcock
Use final NDK and SDK levels only in UEBuildSettings.txt and rename the overrides to be clearer
#jira UE-52058
#ue4
#android
Change 3741464 by Chris.Babcock
Add NDK and SDK platform validation (installed) for Android
#jira UE-52069
#ue4
#android
Change 3744602 by Josh.Adams
From Meerkat: - Added optional 0 or 1 param to showlayer that will set the visibility instead of toggling it for entire layer
Change 3744603 by Josh.Adams
From Meerkat: - Fixed a comment about debug view modes on consoles
Change 3744607 by Josh.Adams
From Meerkat: - Added HWInstances to the PrimitiveStats view in Statistics window
Change 3754890 by Chris.Babcock
Updated IntelISPCTexComp DLLs to fix crashes with some processors on Windows
#jira UE-52281
#ue4
Change 3755147 by Jack.Porter
Fixed Google Cardboard rendering upside down on iPhone 6S+
#jira UE-38555
Change 3755458 by Cosmin.Sulea
UE-47801 - RSync Error when Generating SSH Key for Remote Mac Building when Mac username contains a space
#jira UE-47801
Change 3755492 by Jack.Porter
Fix merge error
Change 3759140 by Bogdan.Vasilache
UE-52396 --> Assertion in FOpenGLDynamicRHI::CreateOpenGLTexture when launching on Mali Galaxy S III
#jira UE-52396
Change 3760536 by Sorin.Gradinaru
UE-51262 values for pinch input produce very different results for same area on android device
#jira 51262
#iOS
#Android
#ue4
1. When the pinch goes beyond the viewport boundaries (when zooming out), the touch that goes off-screen is "released" and the zooming effect is over.
Solved by remembering last pinch event values
2. "Hack" the initial distance for the pinch/ rotate, by touching the screen and moving the finger to another position before using the second finger.
Solved by using the correct values when the pinch event starts
Change 3761279 by Chris.Babcock
Flag vertex and fragment shaders belonging to materials with external textures
#jira UE-52398
#ue4
#android
Change 3761494 by Chris.Babcock
Fix access to FrameUpdateInfo in MediaPlayer14.java and CameraPlayer14.java with Proguard
#jira UE-52471
#ue4
#android
Change 3763146 by Jack.Porter
Default assets for web browser widget
#jira UE-51374
Change 3764242 by Chris.Babcock
Disable Niagara vertex factories for mobile and Switch
#jira UE-52425
#ue4
#mobile
#switch
Change 3766027 by Allan.Bentham
Fix crash when no LQ volumetric lightmap data exists
#jira UE-52508
Change 3766075 by Josh.Adams
- Updating UDKRemote. Still needs art updated, and some some unneeded assets removed
Change 3766141 by Allan.Bentham
Show unbuilt lightmap warning when LQ data is missing from volumetric lightmap in mobile shading mode.
Change 3766163 by Josh.Adams
- Updated icons and added a generator script when we get a new one
Change 3766560 by Allan.Bentham
Workaround for broken offsets with automation screenshots.
#jira UE-52491
Change 3767193 by Peter.Sauerbrei
remove Oculus shader from being cached
force a metal shader re-compile
#jira UE-52587
Change 3767604 by Peter.Sauerbrei
fix the Oculusshader the right way
#jira UE-52587
Change 3768543 by Sorin.Gradinaru
Android WebBrowser 3D - webbrowser plugin contins the assets, 2D behaviour restored
#Android
#UE4
#4.19
#jira UE-51374 Web Browser widget is not working on Android
#jira UE-52399 Android web browser does not accept input
Change 3663915 by Jack.Porter
Prevent FTcpListener from busy polling while waiting for connections
#jira UE-50125
Change 3709224 by Allan.Bentham
Add android target device to gauntlet.
Automation screenshot uses high res screenshot api for mobile.
#jira UEMOB-360
Change 3741453 by Chris.Babcock
Match the 4.18.1 fixes for shipping checks removing code (from CL3741091)
#ue4
Change 3769301 by Peter.Sauerbrei
fix for missing ue4_stdmetal.lib, courtesty of MarkS
#jira UE-52587
Change 3770597 by Sorin.Gradinaru
Android WebBrowser - remove the WebBrowser plugin reference from the Engine
Load the default material directly from the resources.
#Android
#UE4
#jira UE-51374 Web Browser widget is not working on Android
#jira UE-52399 Android web browser does not accept input
[CL 3771573 by Chris Babcock in Main branch]