We've had several cases where the previously default alphabetical sorting caused performance issues when it wasn't needed. We now require you to explicitly choose either slow alphabetical sorting or fast non-alphabetical order.
The fast order does not decode, access or compare actual string data, but the order is not stable between process runs.
#rb steve.robb
[CL 5915265 by Johan Torp in Dev-Core branch]
Encoding improvements
* New hash table implementation
--- Move away from 16-bit hashes since we need more than 64k buckets to hold 2M entries efficiently
--- Change to CityHash64, which is faster and stronger
--- Remove hardcoded max limit
* NAME_INDEX changed from contigouos int to monotonically increasing int
--- Opens up for future deduplication schemes that are better than number suffix dedup.
--- Saves some memory since we don't need to maintain a contiguous array
--- Typed up to cause compile errors when used as integer directly
* Avoid touching data repeatedly, normal path only does single hash of data
* New constructor that allows supplying string length up front
* Avoid dynamic allocations in string conversions >= 128 characters
* Avoid extra copying when splitting numbers
* More efficient IsPureAnsi check
* Only do one global lazy initialization call instead of multiple
* Switch to faster RW locks
* Switch from single lock to sharded hash map with separate locks
* Memory optimizations that reduces per entry overhead: 4 bytes slots, 2 byte headers and don't store null terminator
Improved API & documentation
* Document that IsValid() rarely makes sense
* Hide global state such as GetNames()
* Reduce amount of implementation details visible in header
* NameTypes.h size down by ~1/3 while adding documentation, stronger type safety and new APIs
Future possibilities
* Memory savings: Removing public NAME_INDEX and global FName array allows using the 32-bit FNameEntryId for arbitrary deduplication schemes. This can save both actual stored strings memory by deduplication and half the size of FName instances from 8B to 4B in shipping / test configs by removing the number part.
* Implementation can be tweaked further, for instance could persist 32-bit slot index hash inside slot to increase encoding performance in development / debug at the cost of memory.
Perf & mem results for internal project:
* Editor startup wall time: 12% speedup, 22.0s -> 19.5s
--- Warm disk and asset registry cache
--- Some gains from nametable serialization improvements
--- Some of these gains might be from orthogonal asset discovery optimizations
* Win64 Test Client memory usage with ~400k names: 30.3Mb -> 22.2Mb
#rb steve.robb, pj.kack
#jira UE-59973
[CL 5774657 by Johan Torp in Dev-Core branch]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3774677 by Arne.Schober
DR - Deprecated SetLocal from the RHICmdlist
Fixed some unnecessary PSO collisions.
Change 3809579 by Chris.Bunner
Back out changelist 3774677.
#jira UE-53483
Change 3810363 by Mark.Satterthwaite
More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible.
This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere.
Change 3810407 by Marcus.Wassmer
PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster)
Change 3810676 by Guillaume.Abadie
Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size.
Change 3810696 by Guillaume.Abadie
Adds support for #include "../MyFile.ush" in the shader compiler.
Change 3810698 by Guillaume.Abadie
Implements enum class based shader permutation dimension.
Change 3810699 by Guillaume.Abadie
Implements Diaphragm DOF ground work.
Change 3811536 by Guillaume.Abadie
Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF.
Change 3811958 by Mark.Satterthwaite
More fixes for mtlpp.
Change 3811964 by Mark.Satterthwaite
Only views onto a mtlpp::Buffer should return a valid parent-buffer.
Change 3812604 by Guillaume.Abadie
Changes Diaphragm DOF's source file layout.
Change 3812827 by Mark.Satterthwaite
More missing/broken functionality in mtlpp fixed and fixed obvious leaks.
Change 3812920 by Guillaume.Abadie
Adds support for per mip level UAV in FSceneRenderTarget.
Change 3812926 by Mark.Satterthwaite
Change the way we handle mtlpp resource construction to avoid leaks.
Change 3812960 by Rolando.Caloca
DR - vk - Disable DFGI
Change 3812968 by Rolando.Caloca
DR - Linker fix
Change 3813318 by Mark.Satterthwaite
Fix linear texture allocation from a buffer sub-view.
Change 3813326 by Mark.Satterthwaite
Fix another Metal mtlpp sub-buffer allocation failure.
Change 3813328 by Guillaume.Abadie
Removes global samplers in TAA for GL4, Vulkan and Switch.
Change 3813937 by Rolando.Caloca
DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on
Change 3813947 by Rolando.Caloca
DR - noshaderworker should override r.XGEShaderCompile
Change 3817017 by Uriel.Doyon
Fixed texture editor black screen
#jira UE-53653
Change 3818568 by Rolando.Caloca
DR - Fix log when shader jobs crash
- Move log10 to common
- Added COMPILER_VULKAN define
Change 3818603 by Uriel.Doyon
Fix to static analysis warning
Change 3818623 by Rolando.Caloca
DR - Workaround hlslcc loop unrolling bug
Change 3819070 by Uriel.Doyon
Fix to stat duplication.
Change 3819105 by Uriel.Doyon
Refactored volume sample shader to avoid using texture dimension.
Change 3819136 by Rolando.Caloca
DR - vk - Per platform files (empty)
Change 3819180 by Rolando.Caloca
DR - vk - Move defines out of config into per platform
Change 3819247 by Rolando.Caloca
DR - vk - Remove more defines into platform settings
Change 3819318 by Rolando.Caloca
DR - vk - Fixes for linking
Change 3819868 by Rolando.Caloca
DR - vk - Linux & Android fixes
Change 3819873 by Guillaume.Abadie
Adds support for PermutationId on r.DumpShaderDebugInfo=1
Change 3819940 by Rolando.Caloca
DR - vk - Fix Linux issues
Change 3819956 by Rolando.Caloca
DR - vk - Invalid check
Change 3819961 by Michael.Lentine
Hide attributes when plugin is not present
Change 3819980 by Rolando.Caloca
DR - vk - Standard validation always
Change 3820039 by Rolando.Caloca
DR - vk - Fix invalid ensure
Change 3820326 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3820422 by Michael.Lentine
Add back GBufferAO.
Change 3820433 by Rolando.Caloca
DR - Fix D3D12 crash on 20 thread (10x2 cores) machines
Change 3821677 by Rolando.Caloca
DR - vk - Win32 compile fix
Change 3821961 by Rolando.Caloca
DR - Vulkan uses real UB by default on non-Android
Change 3821968 by Rolando.Caloca
DR - vk - Update glslang 1.0.65.1
Change 3821969 by Uriel.Doyon
Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME.
Change 3821983 by Rolando.Caloca
DR - vk - Change to static array (0.1ms on 10k draw calls)
Change 3824141 by Rolando.Caloca
DR - vk - Fix static analysis
- Bumped up some (c) 2017->2018
Change 3824355 by Rolando.Caloca
DR - vk - Accessor to find out if a cmd buffer has been submitted
Change 3824420 by Rolando.Caloca
DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs
Change 3824463 by Rolando.Caloca
DR - Removed dummy ensure for D3D12
Change 3824609 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3826074 by Mark.Satterthwaite
Start IMP-caching the various descriptor types in mtlpp.
Change 3826098 by Rolando.Caloca
DR - vk - Dump layer compile fixes
Change 3826113 by Rolando.Caloca
DR - vk - Missing dump functions
Change 3826302 by Rolando.Caloca
DR - vk - Compile fix
- Change dump handles to %p
Change 3826635 by Mark.Satterthwaite
Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler.
Change 3827072 by Mark.Satterthwaite
Switch some more mtlpp descriptors over to IMPTables from objc_msgSend.
Change 3827909 by Guillaume.Abadie
Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass.
Change 3827952 by Guillaume.Abadie
Updates copy right to year 2018 on diaphragm DOF's new files.
Change 3828055 by Rolando.Caloca
DR - vk - Rename in prep for changes
Change 3828229 by Guillaume.Abadie
Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map.
Change 3828427 by Guillaume.Abadie
Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation.
Change 3829979 by Guillaume.Abadie
Fixes a color NaN source in diaphragm DOF's TAA pass.
Change 3830116 by Rolando.Caloca
DR - vk - Fix GPU queries/frame time on old system
- New system in place, disabled temporarily
Change 3830169 by Rolando.Caloca
DR - vk - Fix async pso creation crash
Change 3830193 by Rolando.Caloca
DR - vk - CPU RHI thread improvement
Change 3830291 by Guillaume.Abadie
Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller.
Change 3830300 by Rolando.Caloca
DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h
Change 3830589 by Mark.Satterthwaite
In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change.
Change 3830793 by Mark.Satterthwaite
Fix a small number of bugs introduced with the mtlpp descriptor and table caching.
Change 3831491 by Jian.Ru
Fix driver version unknown
#jira UE-53688
Change 3832335 by Rolando.Caloca
DR - vk - Change include
Change 3832550 by Rolando.Caloca
DR - vk - Occlusion query rewrite WIP
Change 3832589 by Rolando.Caloca
DR - vk - Minor refactor to pools in prep for timestamps
Change 3832618 by Rolando.Caloca
DR - vk - Do not block timestamp queries
Change 3832636 by Rolando.Caloca
DR - vk - Fix old timestamp queries
Change 3833138 by Rolando.Caloca
DR - vk - Fix timestamp queries
Change 3833249 by Rolando.Caloca
DR - vk - Test lock
Change 3833667 by Rolando.Caloca
DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled)
Change 3833907 by Daniel.Wright
Fixed NextStartOffset UAV index out of bounds
Change 3833918 by Daniel.Wright
D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox. The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled.
Change 3834852 by Rolando.Caloca
DR - vk - Missing file
Change 3834858 by Guillaume.Abadie
Implements r.DOF.MinimalFullresBlurringRadius
Change 3834979 by Rolando.Caloca
DR - vk - Fix
Change 3836117 by Rolando.Caloca
DR - vk - Update to 1.0.65.1
Change 3836122 by Rolando.Caloca
DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer
- Added new error codes/messages
Change 3836421 by Mark.Satterthwaite
For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C.
Change 3836896 by Uriel.Doyon
Fixed concurrency and exit issues around d3d12 pipeline states on windows.
Change 3837385 by Rolando.Caloca
DR - vk - Dump memory on OOM
Change 3837427 by Rolando.Caloca
DR - vk - Change some arrays to array views
Change 3837800 by Guillaume.Abadie
Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0.
Change 3838128 by Rolando.Caloca
DR - vk - Support for non-cached memory types
Change 3838540 by Guillaume.Abadie
Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability.
Change 3838731 by Rolando.Caloca
DR - vk - Descriptor pools per command buffer pool (turned off)
Change 3838961 by Rolando.Caloca
DR - vk - Use ring buffer for per frame uniform buffers
- Enable descriptor pools per layout recycled per command buffer
Change 3839087 by Rolando.Caloca
DR - vk - Compile fixes for Android
Change 3839106 by Marcus.Wassmer
PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema)
Change 3839252 by Mark.Satterthwaite
Fix mtlpp::Resource move operators.
Change 3839426 by Marcus.Wassmer
Duplicate 380972
Make PC GPU Benchmarks more reliable
Change 3840041 by Guillaume.Abadie
Fixes shader compilation failure in TAA with alpha channel through post processing support.
Change 3840257 by Chris.Bunner
Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket.
Change 3840308 by Rolando.Caloca
DR - vk - Support for UB & non-UB on emulation mode
Change 3840586 by Rolando.Caloca
DR - Copy 3840577
Fix for CPUs with more than 16 cores
Change 3840671 by Rolando.Caloca
DR - vk - Copy from 3840663
Fix for layout ensure on HMD projects on Vulkan
Change 3840980 by Rolando.Caloca
DR - vk - Android compile fixes
Change 3841989 by Guillaume.Abadie
Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time.
Change 3842216 by Guillaume.Abadie
Fixes DDOF's foreground alpha channel.
Change 3842217 by Guillaume.Abadie
Implements r.DOF.MaximalForegroundBlurringRadius
Change 3842353 by Guillaume.Abadie
Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0
Change 3842747 by Rolando.Caloca
DR - vk - Missing use of GPoolSizeVRAMPercentage
- Support for smaller allocations if page size is not available
Change 3842791 by Rolando.Caloca
DR - vk - Use 95% of available GPU memory to handle some fragmentation
Change 3843690 by Guillaume.Abadie
Fixes diaphragm DOF's foreground after all this refactoring.
Change 3844439 by Guillaume.Abadie
Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation.
Change 3844946 by Mark.Satterthwaite
rd_route v1.1.1 with attached TPS approval.
For macOS function interposition which is useful for debugging and the occasional workaround.
Change 3845164 by Mark.Satterthwaite
Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate.
We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem.
Change 3845849 by Marcus.Wassmer
Fix clang and some normal refactor errors
Change 3846026 by Rolando.Caloca
DR - vk - Descriptor set allocation scheme rewrite
- Type hash for each pool
- Desc sets Pool on device
Change 3846169 by Rolando.Caloca
DR - vk - Remove old code for non-layout descriptor set pools
Change 3846205 by Mark.Satterthwaite
Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha.
Change 3846346 by Arne.Schober
DR - Missing Vector instructions
Change 3847037 by Arne.Schober
DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer.
Fixed MorphTarget Skincache Offset mixxup
Change 3847275 by Marcus.Wassmer
Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering)
Change 3847464 by Rolando.Caloca
DR - vk - Fix static analysis warning
Change 3847707 by Michael.Lentine
Only use MorphTargetOffset when the shader enables morph targets.
Change 3848533 by Richard.Wallis
Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs. SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader.
#jira UE-51716
Change 3848625 by Richard.Wallis
Compile Fix
Change 3848725 by Rolando.Caloca
DR - Remove use of Build/SetLocalGraphicsPipelineState
Change 3848797 by Rolando.Caloca
DR - Deprecate Build/SetLocalGraphicsPipelineState
Change 3849237 by Arne.Schober
DR - AddCustom Ver for ModelVertex Serialization
Change 3851247 by Rolando.Caloca
DR - vk - Util functions
Change 3851523 by Arne.Schober
DR - Update Reflection Comparission shot from the BuildFarm.
Change 3851859 by Rolando.Caloca
DR - vk - Skip loader
Change 3851889 by Krzysztof.Narkowicz
Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case.
#jira UE-51512
Change 3852181 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3852547 by Uriel.Doyon
Fixed Pre-Exposure shader compilation and Temporal AA issue.
#jira UE-54276
Change 3852637 by Arne.Schober
DR - Fixing Normal Automated Test Result
Change 3853167 by Richard.Wallis
AvfPlayer - support for streaming media. Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid the memory corruption.
#jira UE-35637
Change 3853447 by Chris.Bunner
Fixing typos.
Change 3853645 by Krzysztof.Narkowicz
Fixed light functions on subsurface materials
Removed strange code from blending between static and dynamic shadows
#jira UE-50275
Change 3853660 by Rolando.Caloca
DR - Fix OpenGL overwriting texture samplers on forward renderer
Change 3853945 by Mark.Satterthwaite
Duplicate #3831616
Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error.
#jira UE-53720
Change 3853966 by Mark.Satterthwaite
Duplicate #3835852
Fix tessellation shaders in Metal with Manual Vertex Fetch enabled:
- The control points idnex buffer shouldn't collide with anything else.
- We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures.
#jira UE-53851
Change 3854250 by Uriel.Doyon
Fix fbx automation tests
Change 3854736 by Uriel.Doyon
Added a tooltip to the EV100 slider in the exposure menu.
Using game settings now disables the slider.
#jira UE-53945
Change 3855047 by Jian.Ru
Fix DFAO getting NANs when samples out of ViewRect
#jira UE-54403
Change 3858197 by Krzysztof.Narkowicz
View frustum shadow caster culling for pointlights/spotlights
#jira UE-54381
Change 3860081 by Krzysztof.Narkowicz
Tighter bounding sphere for a spotlight
Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights
Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds
#jira UE-54258
Change 3860324 by Mark.Satterthwaite
Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings.
Change 3860945 by Arne.Schober
DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer.
#jira UE-54587
Change 3861129 by Jian.Ru
Prevent distance culled objects from casting distance field direct shadows
#jira UE-54533
Change 3861502 by Jian.Ru
Exclude distance culled objects from DFAO calculation
#jira UE-54533
Change 3862243 by Krzysztof.Narkowicz
Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box
Change 3863476 by Krzysztof.Narkowicz
Added BuildReflections option to ResavePackages commandlet
#jira UE-54581
Change 3863717 by Rolando.Caloca
DR - vk - Missed using pipeline cache on compute PSOs
Change 3865332 by Arne.Schober
DR - Fix UE-52356 Bone Weight
Change 3866220 by Rolando.Caloca
DR - vk - Fixed GetNativeResource missing on textures
- Added support for -preferNvidia|AMD|Intel
- Added VulkanRHIBridge.h
- Minor fixes
Change 3866222 by Rolando.Caloca
DR - vk - Missed file
Change 3866951 by Krzysztof.Narkowicz
Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel.
#jira UE-53640
Change 3867231 by Guillaume.Abadie
Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry.
Change 3867233 by Guillaume.Abadie
Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2
Change 3867594 by Daniel.Wright
Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup
Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow
Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors
Change 3870048 by Daniel.Wright
Cleaned up formatting in TranslucentRendering from merges
Change 3870106 by Krzysztof.Narkowicz
Fixed some FArchive Tell()/Seek() 64bit->32bit truncations
Change 3870211 by Rolando.Caloca
DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line
Change 3870225 by Rolando.Caloca
DR - vk - Some platforms do not use a standard swapchain
Change 3870267 by Arne.Schober
DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources)
Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary
Change 3870647 by Daniel.Wright
Moved FogRendering.h to Renderer
Change 3872130 by Krzysztof.Narkowicz
Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI
Merging GitHub Pull request #4459
"When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials."
#jira UE-54616
Change 3872145 by Rolando.Caloca
DR - vk - Optional SupportsMarkersWithoutExtension
Change 3872404 by Uriel.Doyon
Added some guards when streaming virtual textures.
Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice.
Fixed bad mipmap generation with UCanvasRenderTarget2D.
Change 3872507 by Arne.Schober
Back out changelist 3870267
Change 3874176 by Ben.Marsh
IncludeTool: Add an flag to prevent scanning source files for exported symbols.
Change 3874935 by Krzysztof.Narkowicz
Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized.
#jira UE-54656
Change 3875710 by Daniel.Wright
Renamed uniform buffer member macros to be much shorter for readability
Change 3876665 by Guillaume.Abadie
Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones.
Change 3876666 by Guillaume.Abadie
Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity.
Change 3876677 by Guillaume.Abadie
Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass.
Change 3876680 by Guillaume.Abadie
Cherry-pick 3872357: Oups... fixes build...
Change 3876683 by Guillaume.Abadie
Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass.
Change 3876687 by Guillaume.Abadie
Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering.
Change 3876690 by Guillaume.Abadie
Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance.
Change 3876694 by Guillaume.Abadie
Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation.
Change 3876695 by Guillaume.Abadie
Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event.
Change 3876783 by Rolando.Caloca
DR - Static analysis fix
Change 3876845 by Guillaume.Abadie
Implements USceneCaptureComponent::ProfilingEventName
Change 3877197 by Rolando.Caloca
DR - vk - OQ fixes (disabled)
Change 3877428 by Krzysztof.Narkowicz
Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426):
-The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls
-Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature.
-Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables)
-The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library.
-Letterboxing is now removed during multi-part capture, d'oh.
-Tiled shots are taken at full resolution even if ScreenPercentage < 100
-SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts
-Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots.
#jira UE-54244
#4426
Change 3879086 by Krzysztof.Narkowicz
Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world
Change 3879090 by Guillaume.Abadie
Fixes tones of regressions on diaphragm DOF's recombine passes.
Change 3879198 by Rolando.Caloca
DR - vk - Support for real uniform buffers on Android platforms
Change 3879993 by Krzysztof.Narkowicz
-Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData
-Fixed FSerializationHistory bug, when trying to serialize 0 bytes
#jira UE-43203
Change 3881462 by Guillaume.Abadie
Implements full res DOF's setup pass for cheaper full res gathering in recombine pass.
Change 3881524 by Krzysztof.Narkowicz
Fixed compilation by removing FTickableEditorObject from FPreviewScene
Change 3881724 by Chris.Bunner
Static analysis fix.
#jira UE-54762
Change 3881861 by Rolando.Caloca
DR - vk - Fix layout warning when generating mip chain
Change 3881864 by Rolando.Caloca
DR - Use render passes on HZB
Change 3882236 by Yuriy.ODonnell
IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting.
#jira UE-42534
#github 3326
Change 3882325 by Guillaume.Abadie
Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability.
Change 3882340 by Rolando.Caloca
DR - vk - Fix api dump
Change 3882430 by Rolando.Caloca
DR - vk - KHR_maintenance2
Change 3882563 by Rolando.Caloca
DR - Add depth-stencil access mode to PSO initializer
Change 3882929 by Rolando.Caloca
DR - vk - Proper fix for maintenance extension macros
Change 3883087 by Mark.Satterthwaite
Allow disabling VSync in windowed mode for macOS 10.13.4+ and above.
Change 3883597 by Guillaume.Abadie
Collapses full and half res DOF setup passes together.
Change 3883702 by Guillaume.Abadie
Fixes mac's build.
Change 3884747 by Uriel.Doyon
Fix for static analysis warning
Change 3884975 by Rolando.Caloca
DR - vk - Move some platform defines to platform properties
Change 3884988 by Rolando.Caloca
DR - vk - Make an override per platform
Change 3885832 by Rolando.Caloca
DR - vk - Cosmetic change to group similar members
Change 3885891 by Rolando.Caloca
DR - vk - Some _RenderThread functions to avoid stalls
Change 3886044 by Rolando.Caloca
DR - Added RHI api _RenderThread version of
RHICreateTextureReference
RHICreateShaderLibrary
RHICreateRenderQuery
Change 3886560 by Guillaume.Abadie
Fixes strong aliasing on TAAU's fast shader permutation.
This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation.
Change 3886749 by Guillaume.Abadie
Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation.
Only used in hybrid scattering for now.
Change 3886750 by Guillaume.Abadie
Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh.
Change 3886752 by Rolando.Caloca
DR - Fix metal static analysis
Change 3887460 by Uriel.Doyon
Fixed to more static analysis warning.
Change 3888201 by Rolando.Caloca
DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass
- Fixed bad layout on rendering back buffer
Change 3888209 by Rolando.Caloca
DR - vk - Unity compile fix
Change 3888254 by Rolando.Caloca
DR - vk - Fix async texture layout
Change 3888893 by Guillaume.Abadie
Simulates bokeh in DOF's slight out of focus.
Change 3889085 by Guillaume.Abadie
Fixes DOF's reduce pass sampling outside viewport.
Change 3889924 by Rolando.Caloca
DR - vk - Skip seemingly bad validation error
Change 3890573 by Daniel.Wright
Only initialize FDiaphragmDOFGlobalResource in Feature Level 5
Change 3890590 by Arne.Schober
DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead.
#jira UE-55063
Change 3890638 by Arne.Schober
DR - Better fix for Paper2d which honors batching
#jira UE-55063
Change 3891099 by Krzysztof.Narkowicz
1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request
#jira UE-54985
#4485
Change 3891234 by Krzysztof.Narkowicz
Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request
#jira UE-55121
Change 3891407 by Rolando.Caloca
DR - vk - Set vendor id earlier
Change 3891417 by Rolando.Caloca
DR - vk - Missing layout transitions
Change 3891718 by Arne.Schober
DR - Do not recreate one Frame Resource for dynamic draws
#jira UE-55063
Change 3891925 by Yuriy.ODonnell
Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64.
NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime.
The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules.
The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput.
Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668).
#jira UE-53065
Change 3891987 by Rolando.Caloca
DR - vk - Support for dedicated allocations
Change 3892339 by Jian.Ru
Fix a crash when tessellation shaders are used in dx12
#jira UE-55127
Change 3892528 by Rolando.Caloca
DR - vk - Update Linux headers
Change 3892867 by Rolando.Caloca
DR - vk - Don't create swapchain if not needed
Change 3893416 by Guillaume.Abadie
Implements bokeh simmulation on foreground and background gather.
Change 3893732 by Chris.Bunner
GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset.
#jira UE-53404
Change 3893868 by Guillaume.Abadie
Allocates diaphragm DOF's buffers and structered buffer only on supported platforms.
Change 3893917 by Chris.Bunner
Potential fix for CIS.
Change 3893933 by Chris.Bunner
Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now.
Change 3894218 by Rolando.Caloca
DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator
Change 3894579 by Arne.Schober
RT - Fix assert not in RenderingThread from Triangle Renderer.
#jira UE-55247
Change 3894724 by Rolando.Caloca
DR - vk - New API for batching barriers
Change 3894909 by Arne.Schober
DR - Fix crash in Speedtree wind where Renderdata is unavailable
#jira UE-54544
Change 3895414 by Rolando.Caloca
DR - Add a configurable threshold for SCWs time outs
Change 3896429 by Marcus.Wassmer
Allow variable frame-latency delay in FrameGrabber frames. For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU.
Change 3896495 by Marcus.Wassmer
Set pointer properly
Fix CIS
Change 3897253 by Guillaume.Abadie
Fixes CIS warning in diaphragm DOF
Change 3899179 by Guillaume.Abadie
Implements background hybrid scatter occlusion for diaphragm DOF.
Change 3903654 by Rolando.Caloca
DR - vk - Rework dump layer to allow other layers
Change 3903766 by Rolando.Caloca
DR - vk - More wrappers
Change 3904025 by Rolando.Caloca
DR - vk - More wrappers
Change 3904342 by Rolando.Caloca
DR - vk - Track image resources & callstacks
Change 3904346 by Rolando.Caloca
DR - vk - Copy fix from 4.19 for flickering grass
Change 3904510 by Rolando.Caloca
DR - vk - Compile fix
Change 3904914 by Daniel.Wright
[Integrate] Fixed PS4 transitions with forward shading
Change 3904916 by Daniel.Wright
[Integrate] Fixed PS4 transitions with occlusion queries
Change 3905975 by Rolando.Caloca
DR - vk - Missing wrappers
Change 3905977 by Rolando.Caloca
DR - vk - Missed file
Change 3907829 by Rolando.Caloca
DR - Move depth bounds to the PSO
Change 3907832 by Rolando.Caloca
DR - vk - Prep for delaying transitions
Change 3907834 by Rolando.Caloca
DR - vk - Fix for depth stencil issues/validation errors
Change 3907967 by Rolando.Caloca
DR - vk - Linux compile
Change 3908093 by Rolando.Caloca
DR - vk - Fix depthstencil layout on descriptors
Change 3908393 by Rolando.Caloca
DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series
Change 3908401 by Rolando.Caloca
DR - Do transitions outside render pass
Change 3908422 by Rolando.Caloca
DR - vk - Fix transition state not getting stored
Change 3908735 by Guillaume.Abadie
Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV.
#jira UE-55317
Change 3908736 by Guillaume.Abadie
Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU.
#jira UE-55019
Change 3908753 by Guillaume.Abadie
Lets the renderer layout the views in the internal render targets like it prefers.
Change 3909119 by Daniel.Wright
Fix some static analysis warnings
Change 3911943 by Rolando.Caloca
DR - vk - Fix for packaging Vulkan projects
Change 3912145 by Rolando.Caloca
DR - vk - Fix layout on streaming textures
Change 3913029 by Rolando.Caloca
DR - Fix missing transition
Change 3913048 by Rolando.Caloca
DR - Fix for hlslcc
Change 3913054 by Rolando.Caloca
DR - vk - Fix number of layers on barrier
Change 3913171 by Rolando.Caloca
DR - vk - Fix for decal missing transition
Change 3913211 by Rolando.Caloca
DR - vk - Add debug name to image tracking
Change 3913449 by Rolando.Caloca
DR - vk - Restore transition
Change 3913466 by Rolando.Caloca
DR - Fix Vulkan EngineTest
Change 3913537 by Rolando.Caloca
DR - vk - Fixes independent samplers & textures (contributed by AMD)
Change 3913548 by Rolando.Caloca
DR - vk - Warning fix
Change 3913691 by Rolando.Caloca
DR - vk - Fixes for parallel (wip)
Change 3914656 by Rolando.Caloca
DR - vk - Fix bug when using separate samplerstates and textures
Change 3914730 by Rolando.Caloca
DR - vk - Bump version
Change 3914764 by Rolando.Caloca
DR - vk - Don't crash on exit
Change 3915532 by Rolando.Caloca
DR - vk - Parallel context fixes
Change 3915589 by Rolando.Caloca
DR - vk - Hoist and rename transition and layout manager class out of the context
Change 3915592 by Rolando.Caloca
DR - Fix gpu marker name
Change 3917607 by Rolando.Caloca
DR - vk - Fix depth bounds on Vulkan
Change 3917609 by Rolando.Caloca
DR - vk - Fix static analysis
Change 3917616 by Rolando.Caloca
DR - Fix D3D11 initialization
Change 3920569 by Rolando.Caloca
DR - vk - Prep for layout mgr refactor
Change 3921023 by Rolando.Caloca
DR - vk - Dump layer fixes
Change 3921623 by Rolando.Caloca
DR - vk - Prep refactor for layouts
- Dump now shows marker tree
Change 3922007 by Rolando.Caloca
DR - vk - Fix extra allocation per draw call
Change 3922442 by Rolando.Caloca
DR - vk - Detect potential issues
Change 3922470 by Rolando.Caloca
DR - vk - Minor optimization
Change 3922482 by Rolando.Caloca
DR - vk - More minor optimizations
Change 3923158 by Rolando.Caloca
DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan
Change 3923486 by Rolando.Caloca
DR - vk - Minor cpu optimizations
Change 3923505 by Rolando.Caloca
DR - vk - Use bigger allocations for uniform buffers
Change 3923516 by Rolando.Caloca
DR - vk - Android compile fix
Change 3923557 by Rolando.Caloca
DR - vk - Cache descriptorset layouts, refactor duplicated code
Change 3923851 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3924153 by Rolando.Caloca
DR - vk - Support for dynamic UBs
Change 3924193 by Rolando.Caloca
DR - vk - Remove old per pso descriptor pools
Change 3924197 by Rolando.Caloca
DR - vk - Remove unused global uniform buffer pool
Change 3924220 by Rolando.Caloca
DR - vk - Wrap some unused classes in their define
Change 3924234 by Rolando.Caloca
DR - vk - Show ring buffer wrapping messages
Change 3924243 by Rolando.Caloca
DR - vk - Fix bad dynamic buffer
Change 3924902 by Rolando.Caloca
DR - vk - Fix crash running infiltrator
Change 3925209 by Rolando.Caloca
DR - vk - Fix bug with dynamic buffers
- Remove old defines
Change 3925300 by Rolando.Caloca
DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs)
Change 3925627 by Rolando.Caloca
DR - vk - Move DynamicOffsets into the pipeline state
Change 3925834 by Rolando.Caloca
DR - vk - Cache per stage information
Change 3925835 by Daniel.Wright
Fixed DisplayName for UParticleModuleCollisionGPU
Change 3925897 by Rolando.Caloca
DR - vk - Split update descriptors loop
Change 3926488 by Rolando.Caloca
DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile
Change 3928168 by Guillaume.Abadie
Cherry-pick 3917219: Implements r.DOF.RecombineQuality
Change 3928173 by Guillaume.Abadie
Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled.
Change 3928216 by Rolando.Caloca
DR - vk - Fix Android
- Fix static analysis
Change 3929119 by Rolando.Caloca
DR - vk - Rename some classes for clarity
- Fix read-only cvar
Change 3929151 by Rolando.Caloca
DR - vk - Rename class
Change 3930046 by Rolando.Caloca
DR - Temp fix Vulkan flickering grass
Change 3930148 by Rolando.Caloca
DR - vk - Only update dirty descriptors
- Use dynamic descriptors for packed global uniform buffers
Change 3930998 by Guillaume.Abadie
Packs shader permutation in different XGE submissions.
Change 3931079 by Rolando.Caloca
DR - vk - Fixes for Android and non-real ubs platforms
Change 3931942 by Krzysztof.Narkowicz
Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones
#jira none
Change 3932819 by Daniel.Wright
[Integrate] Scene Textures uniform buffer
* Base Pass Uniform Buffer now contains a Scene Textures uniform buffer. Previously the translucent base pass had to check ~40 loose scene texture parameters every draw.
* FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer. For most passes this is just FSceneTextureUniformParameters.
* FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created.
* Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them
* Separate Mobile Scene Textures uniform buffer to silo the platform complexities
Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters
Removed per-frame material uniform expressions. GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision.
* Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp.
Moved forward shading data into the Base Pass Uniform Buffer
Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw
Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw
Fixed padding in nested uniform buffer structs
Skip SRV members on Feature Level SM4 and below
Change 3932964 by Rolando.Caloca
DR - vk - Renderdoc on Android
Change 3933095 by Daniel.Wright
Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer.
* Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface. These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it.
* Opaque materials can no longer use EyeAdaptation.
Change 3933096 by Daniel.Wright
Better d3d11 assert message when a uniform buffer was not set by the renderer
Change 3933176 by Rolando.Caloca
DR - vk - Prefer mailbox if available
Change 3933271 by Ryan.Vance
#jira UE-55936
Fixed missing referenced uniform bindings on AR pass-through camera shaders.
Change 3934000 by Guillaume.Abadie
Fixes Win32 build in ShaderCompilerXGE.cpp
Change 3934299 by Guillaume.Abadie
Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground.
Change 3934699 by Daniel.Wright
Added bAffectDistanceFieldLighting to landscape
Change 3935190 by Daniel.Wright
Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing
Change 3935606 by Daniel.Wright
Removed LightmapPolicy::Set which was needed for vertex lightmaps
Renamed FVertexFactory::Set to SetStreams to make it findable
Change 3936510 by Rolando.Caloca
DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders
Change 3936545 by Richard.Wallis
Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/
Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture.
Change 3938061 by Daniel.Wright
Vulkan: Added support for SRV's in Uniform Buffers
Change 3938123 by Daniel.Wright
Vulkan: Slightly better assert for null resources in uniform buffer
Change 3939197 by Rolando.Caloca
DR - vk - Disable custom memory mgmt
Change 3939677 by Rolando.Caloca
DR - vk - Fix static analysis warning
Change 3939809 by Rolando.Caloca
DR - vk - Fixes for async compute
Change 3939875 by Rolando.Caloca
DR - vk - Support for -vktrace
Change 3939977 by Rolando.Caloca
DR - vk - Skip a condition during gather UBs
- Set up efficient compute async var
- Fix validation cmd line
Change 3939982 by Rolando.Caloca
DR - vk - Revert mipchain
Change 3939984 by Rolando.Caloca
DR - vk - Remove unnecessary asserts
Change 3940082 by Rolando.Caloca
DR - vk - Custom mem mgr
Change 3940475 by Rolando.Caloca
DR - vk - Fix DFAO (indirect draw offset)
Change 3940555 by Rolando.Caloca
DR - vk - Minor fixes
Change 3940675 by Rolando.Caloca
DR - vk - Fix indirect type mismatch
Change 3941111 by Rolando.Caloca
DR - Renderpass bGeneratingMips
Change 3941847 by Daniel.Wright
Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before
Change 3941978 by Rolando.Caloca
DR - vk - Minor fixes for presenting on compute queue
Change 3942074 by Rolando.Caloca
DR - vk - Remove some RHI stalls
- Fixed swap chain stat
Change 3943946 by Daniel.Wright
Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles.
Change 3944065 by Daniel.Wright
Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering
Change 3944158 by Daniel.Wright
Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen
Change 3944865 by Rolando.Caloca
DR - vk - Prep for render passes
Change 3945196 by Rolando.Caloca
DR - Move render pass validate to cpp
Change 3945202 by Rolando.Caloca
DR - vk - Some fixes for using real render passes
Change 3945357 by Rolando.Caloca
DR - Fix bad condition
Change 3946295 by Yuriy.ODonnell
Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction().
This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593
Change 3946407 by Rolando.Caloca
DR - vk - Prep for refactor
Change 3946648 by Rolando.Caloca
DR - vk - Fixes for async compute (wip)
Change 3947299 by Rolando.Caloca
DR - vk - FIx static analysis
Change 3948434 by Rolando.Caloca
DR - vk - Fix exiting with parallel
Change 3948928 by Rolando.Caloca
DR - vk - Fix enabling draw markers for tools
Change 3949021 by Rolando.Caloca
DR - vk - Buffer tracking layer
Change 3949602 by Rolando.Caloca
DR - vk - static analysis fix
Change 3949757 by Rolando.Caloca
DR - vk - Remove bogus parameter
Change 3949810 by Rolando.Caloca
DR - vk - Move waits for cmd buffer
Change 3950270 by Guillaume.Abadie
Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground.
Change 3950272 by Rolando.Caloca
DR - vk - Minor refactor for semaphores
Change 3950279 by Guillaume.Abadie
Oups... fixes build
Change 3950298 by Rolando.Caloca
DR - vk - Gather wait semaphores in the cmd buffers
Change 3950371 by Rolando.Caloca
DR - vk - fixes for async compute
Change 3950597 by Rolando.Caloca
DR - vk - Fix for clip distance (fixes planar reflections)
Change 3951075 by Rolando.Caloca
DR - vk - Fix for async compute
Change 3952524 by Guillaume.Abadie
Some DOF enum refactoring.
Change 3955016 by Daniel.Wright
Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package
Change 3955668 by Guillaume.Abadie
Fixes a bug where full res coc buffer was computed even if not doing slight out of focus.
Change 3956722 by Guillaume.Abadie
Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent.
Change 3959212 by Guillaume.Abadie
Prefixes all DOF's shaders files with DOF keyword.
Change 3959705 by Guillaume.Abadie
Optimises the DOF setup pass outputing half res and full res with LDS downsample.
Change 3959941 by Guillaume.Abadie
Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes.
Change 3962273 by Rolando.Caloca
DR - Fix typos
#jira UE-56317
PR #4586
Change 3962615 by Rolando.Caloca
DR - vk - Compile fix
Change 3962949 by Rolando.Caloca
DR - Fix DOFDownsample extension
Change 3962993 by Guillaume.Abadie
Back out changelist 3962949
Change 3963016 by Guillaume.Abadie
Adds missing DOFDownsample.usf
Change 3963041 by Rolando.Caloca
DR - vk - Misc changes to help integrate
Change 3964293 by Guillaume.Abadie
Fixes DOF's setup pass reading outside of the viewport.
Change 3964475 by Guillaume.Abadie
Collapses DOF's hybrid scatter compilation passes into reduce passes.
Change 3964883 by Daniel.Wright
Fixed 3d texture in uniform buffer on unsupporting RHI
Change 3964897 by Rolando.Caloca
DR - Compile fixes
Change 3964914 by Guillaume.Abadie
Fixes a bug on r.DOF.RecombineQuality=0
Change 3965153 by Guillaume.Abadie
Fixes compile warning in D3D12Commands.cpp.
Change 3965814 by Rolando.Caloca
DR - Prep for integration conflict resolve
Change 3965899 by Rolando.Caloca
DR - Fix odd linkage issue
Change 3966072 by Rolando.Caloca
DR - More prep for merge
Change 3966163 by Rolando.Caloca
DR - Merge prep
Change 3966844 by Guillaume.Abadie
Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can.
Change 3967116 by Rolando.Caloca
DR - Compile fixes for integration
Change 3967273 by Rolando.Caloca
DR - Use same path for mip generation
Change 3967277 by Rolando.Caloca
DR - vk - Fix mips on cubemaps
Change 3967693 by Rolando.Caloca
DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders
Change 3967851 by Rolando.Caloca
DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2
Change 3968083 by Rolando.Caloca
DR - Integration compile fixes
Change 3968240 by Rolando.Caloca
DR - Shader compile fixes for integration
Change 3968270 by Rolando.Caloca
DR - Fix for missing hash calculation
Change 3969426 by Rolando.Caloca
DR - vk - Fix warning
Change 3969869 by Krzysztof.Narkowicz
Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel.
#jira none
Change 3969944 by Rolando.Caloca
DR - Warning fix
Change 3970020 by Rolando.Caloca
DR - Bump after integration
Change 3970052 by Rolando.Caloca
DR - Fix for mobile
Change 3970236 by Daniel.Wright
Causing decal shader to recompile to fix a merge bug
Change 3970270 by Daniel.Wright
Bump shader version from merge
Change 3970339 by Olaf.Piesche
Replace series of locks/unlocks with a single one for curve injection
#tests QAGame
Change 3970390 by Rolando.Caloca
DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters
- Remove duplicate method for occlusion queries
Change 3970523 by Rolando.Caloca
DR - Fix serialization of shaders
Change 3970533 by Arne.Schober
DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between.
#jira UE-56322
Change 3971160 by Guillaume.Abadie
Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU.
Change 3971516 by Guillaume.Abadie
Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera.
#jira UE-55353
Change 3971594 by Krzysztof.Narkowicz
Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel.
#jira UE-56321
Change 3971622 by Krzysztof.Narkowicz
Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that.
#jira UE-56171
Change 3974788 by Rolando.Caloca
DR - Remove GSupportsGenerateMips
Change 3974789 by Rolando.Caloca
DR - Remove bogus function
Change 3974986 by Rolando.Caloca
DR - vk - Tracking fixes
Change 3974989 by Rolando.Caloca
DR - vk - Don't submit dummy barriers
Change 3975075 by Olaf.Piesche
Update for particle curve injection improvement, fixing ES2 problems
#tests QAGame tm-shadermodels, various color curve tests in-editor
Change 3975957 by Uriel.Doyon
Fixed invalid max texture resolution when using the bake material tools.
Change 3978471 by Daniel.Wright
New cvar r.SkylightUpdateEveryFrame
Change 3978779 by Rolando.Caloca
DR - Accessor for texture sizes
Change 3978797 by Rolando.Caloca
DR - Clean up RHI CopyTexture API
Change 3978832 by Rolando.Caloca
DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset
Change 3978836 by Rolando.Caloca
DR - vk - Remove generate mips
Change 3979201 by Rolando.Caloca
DR - vk - RHI CopyTexture. Uses general layout for generating mips
Change 3979204 by Rolando.Caloca
DR - Use render passes and CopyTexture to generate mips
Change 3979592 by Rolando.Caloca
DR - Warning fix
Change 3980855 by Krzysztof.Narkowicz
Optimize bounding sphere radius after non-uniform scale by using bounding box extent.
#jira UE-56227
Change 3981065 by Rolando.Caloca
DR - vk - Fix bad layout
#jira UE-56238
Change 3981346 by Rolando.Caloca
DR - Copy from 3707257
Support for not flushing compute jobs (r.D3D11.UAVFlushNV)
Change 3981347 by Rolando.Caloca
DR - Copy from 3707257
Don't flush between morph dispatched
Change 3981932 by Mark.Satterthwaite
Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on.
Change 3982442 by Rolando.Caloca
DR - Fix warning
Change 3982652 by Rolando.Caloca
DR - vk - Signal semaphore cleanup
Change 3983917 by Richard.Wallis
Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt:
Fix for black flickering on first paint with weighted material landscape on Mac. When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations.
Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action. Updated to include the other async functions.
Change 3984409 by Guillaume.Abadie
Attempts to make static analysis happy again.
Change 3984435 by Nick.Bullard
Checking in Performance Test level provided to us by Tor Frick based on UE-44841.
This has been utilized for checking issues against Aftermath performance impact.
The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode
Change 3985087 by Mark.Satterthwaite
Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo.
Change 3985201 by Rolando.Caloca
DR - Fix bad CopyTexture
Change 3985258 by Mark.Satterthwaite
Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990.
#jira UE-55756
Change 3986449 by Rolando.Caloca
DR - vk - Update & consolidate Vulkan headers to 1.1.70.1
Consolidate SDK into one
Change 3986571 by Guillaume.Abadie
Makes PVS-Studio happy again in DOF.
Change 3987039 by Yuriy.ODonnell
Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms.
Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory.
Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing).
`r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical.
`TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup.
Change 3987074 by Yuriy.ODonnell
Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts.
Change 3987160 by Yuriy.ODonnell
Added thread naming and ordering to the tracing profiler output
Change 3987331 by Mark.Satterthwaite
Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees.
#jira UE-46604
Change 3987754 by Mark.Satterthwaite
Fix MetalRHI memory reporting in non-default path.
PR #4568
Change 3988184 by Arciel.Rekman
Linux: Fix editor OpenGL performance (UE-55960).
- GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor.
- We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits.
- This change adds dynamically-managed per-thread cache for non-monolithic builds.
#jira UE-55960
Change 3988394 by Rolando.Caloca
DR - vk - Improve memory mgmt
- Use 256MB pages for Device heap (or 1/8th if less).
- Remove texture allocations not going through resource manager
Change 3988405 by Marcin.Undak
Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman
Change 3988567 by Rolando.Caloca
DR - vk - Support for packed global UBs on pci aperture heap
Change 3988668 by Rolando.Caloca
DR - vk - Remove old comments
Change 3988956 by Marcin.Undak
RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman
Change 3989161 by Yuriy.ODonnell
Static analysis error fix
Change 3989196 by Guillaume.Abadie
Fixes a crash in light shaft's TAA pass.
#jira UE-57366
Change 3989207 by Yuriy.ODonnell
Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact.
Change 3989469 by Rolando.Caloca
DR - vk - Fix for bad index; fix for bad transition
Change 3989772 by Yuriy.ODonnell
Implemented timestamp calibration on Vulkan
Change 3990040 by Marcus.Wassmer
Aftermath enabled by default.
Removed unnecessary warning for other vendors
Change 3990064 by Mark.Satterthwaite
Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid.
Change 3990080 by Mark.Satterthwaite
Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer.
Change 3990084 by Mark.Satterthwaite
Get MetalStatistics compiling again.
Change 3990381 by Arciel.Rekman
Bring back D3D12 in RecordPerformance.
Change 3991113 by Rolando.Caloca
DR - Fix crash on RHI thread on mobile preview
- Check RHI objects are not null in the PSO initializer
Change 3991191 by Ryan.Vance
#jira UE-55952
Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up.
Change 3991343 by Rolando.Caloca
DR - Copy from 3911492
UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform.
Change 3991375 by Mark.Satterthwaite
Proper copyright assignment in the mtlpp debugger header.
Change 3993151 by Daniel.Wright
Fix RTDF resource transition found by Rolando
Change 3993818 by Rolando.Caloca
DR - Missed file
Change 3993923 by Krzysztof.Narkowicz
Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread().
FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left:
1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates.
2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr.
3. This resulted in a StaticMeshComponent with stale RenderData pointer.
#jira UE-54544
Change 3994033 by Rolando.Caloca
DR - vk - Reworked layers & extensions, as we were not doing it properly
- Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore
Change 3994275 by Mark.Satterthwaite
Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI.
#jira UE-57507
Change 3994365 by Mark.Satterthwaite
Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled.
#jira UE-57513
Change 3994382 by Rolando.Caloca
DR - vk - Some missing locks during image tracking
Change 3994422 by Rolando.Caloca
DR - vk - Remove bogus shader format
Change 3995530 by Rolando.Caloca
DR - vk - Fix for crash when validation is enabled
Change 3995531 by Rolando.Caloca
DR - vk - Fix static analysis
Change 3995532 by Rolando.Caloca
DR - vk - Added support for r.Vulkan.SaveValidationCache
Change 3995610 by Uriel.Doyon
Texture Streaming Changes and Fixes:
- Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost").
- Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests)
- Dynamic components do not need to register to the streaming manager anymore.
- Optimized dynamic component management by removing duplicate entries in the update list.
- Added a pregarbage collect pass to the dynamic component management to optimize GC handling.
- Added a budget reset logic whenever the scene requirements change significantly.
- PIE worlds now have correct visibility information.
- Fixed possible invalid memory access when processing the streaming manager slave views.
- Refactored the incremental level texture data build to prevent new components from being unhandled.
- Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached()
- Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated.
#jira none
Change 3995908 by Arciel.Rekman
Fix compile errors when using new Vulkan queries.
Change 3995990 by Arciel.Rekman
More compile fixes to new Vulkan queries.
- MSVC did not catch this, clang did.
Change 3996101 by Rolando.Caloca
DR - vk - Win32 compile fix
Change 3996323 by Mark.Satterthwaite
Use the right include path to export the mtlpp headers.
#jira UE-57507
Change 3996392 by Arciel.Rekman
Vulkan: fix crash on start when using new queries.
- CommandBufferManager was not yet set at that point and the code in queries relied on it.
Change 3996585 by Rolando.Caloca
DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct.
Change 3998806 by Arciel.Rekman
Fix Linux build (UE-57602).
#jira UE-57602
Change 3998866 by Arciel.Rekman
SubwaySequencer: fix old shader platform name.
Change 3998947 by Mark.Satterthwaite
Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum.
#jira UE-57577
Change 3998951 by Mark.Satterthwaite
Fix last of the deprecation errors that I am aware of for macOS 10.12.
#jira UE-57581
Change 3998984 by Mark.Satterthwaite
Build mtlpp for iOS 9.0 not 9.3.
#jira UE-57586
Change 3999065 by Rolando.Caloca
DR - vk - Make sure we use version 1.0.0
#jira UE-57521
Change 3999071 by Arne.Schober
DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM.
#jira UE-55433, UE-57361
Change 3999494 by Rolando.Caloca
DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug
- Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled
Change 4000197 by Krzysztof.Narkowicz
Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data).
#jira UE-54935
Change 4000305 by Yuriy.ODonnell
Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath
Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24).
#jira UE-57579
Change 4000853 by Arciel.Rekman
Linux: fix not calling CrashReportClient (UE-57678).
#jira UE-57678
Change 4001504 by Rolando.Caloca
DR - vk - Fix transition
Change 4002460 by Krzysztof.Narkowicz
Toggle for contant shadow length in word space
Exposed contact shadows to Blueprints
#jira none
Change 4002608 by Rolando.Caloca
DR - vk - Fix static analysis
- Fix potential debug image tracking crash
- Comment out unused methods
Change 4002615 by Rolando.Caloca
DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini)
Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set.
PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set.
Change 4002640 by Rolando.Caloca
DR - vk - Missing support for CVarDefaultBackBufferPixelFormat
Change 4002919 by Guillaume.Abadie
Implements DOF's temporal upsampling pass for better dynamic resolution stability.
Change 4002984 by Guillaume.Abadie
Integrates Sebastian Aaltonen's ALU optimisations for TAAU.
Change 4003112 by Olaf.Piesche
Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches.
#tests QAGame PerformanceTest and RenderTest map with various stats on and off
Change 4003159 by Mark.Satterthwaite
Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released.
#jira UE-57538
Change 4003287 by zachary.wilson
Adding reflection capture content to TM-LightingScenarios
Change 4003395 by Arne.Schober
DR - Fix unitzialised value when clicking Go To in the editor
#jira UE-57048
Change 4003425 by Rolando.Caloca
DR - vk - Fix for new occlusion queries
Change 4003530 by Arne.Schober
DR - Disable GPU Benchmark in headless configurations
#jira UE-57673
Change 4003717 by Rolando.Caloca
DR - vk - Fix for depth not store, stencil store
Change 4003719 by Rolando.Caloca
DR - Minor switch to render pass
Change 4003720 by Mark.Satterthwaite
Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD.
Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU.
#jira UE-57659
Change 4003854 by Mark.Satterthwaite
Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically.
#jira UE-57576
Change 4004709 by Rolando.Caloca
DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers
Change 4005149 by Guillaume.Abadie
Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass.
Change 4005284 by Uriel.Doyon
Resaved volume texture assets with proper engine version.
#jira UE-57534
Change 4005286 by Guillaume.Abadie
Reduces constant setup in DOF's gather pass.
Change 4005359 by Rolando.Caloca
DR - vk - Fix annoying warning
Change 4005363 by Rolando.Caloca
DR - Fix android not finding vulkan shaders
Change 4005457 by Rolando.Caloca
DR - vk - Fix swapchain crash
Change 4005473 by Patrick.Kelly
UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level
Codde by Daniel
Tested by Patrick
Change 4005474 by Rolando.Caloca
DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB
Change 4005759 by Krzysztof.Narkowicz
Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode.
#jira UE-57743
Change 4005774 by Mark.Satterthwaite
Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like.
#jira UE-57750
Change 4005974 by Mark.Satterthwaite
Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come.
#jira UE-57083
Change 4006056 by Mark.Satterthwaite
Remove the use of the PrimitiveType argument from Metal draw calls.
#jira UE-57822
Change 4006139 by Mark.Satterthwaite
- Move the render-pass functions into the MetalRHI implementation for later alteration.
- Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation.
Change 4006215 by Mark.Satterthwaite
Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation.
Change 4006394 by Mark.Satterthwaite
In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal.
#jira UE-57551
Change 4006493 by Mark.Satterthwaite
MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can.
Change 4006495 by Daniel.Wright
Integrate from Refactor branch
* New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial. Needed when falling back to default material, so that proxy and material resource match.
* Local vertex factory uniform buffer
Change 4006851 by Brian.Karis
Fix for joined charts forming an L to inflate both axii.
Thanks to Jess Kube of The Coalition.
Change 4006852 by Brian.Karis
Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures
Change 4006918 by Brian.Karis
New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection.
Not yet used by checked in code. WIP optimization.
Change 4007246 by Guillaume.Abadie
Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator.
Change 4007291 by Guillaume.Abadie
Exposes more DOF scalability settings.
Change 4007328 by Guillaume.Abadie
Optimises DOF's half res only setup pass using gather4
Change 4007627 by Richard.Wallis
Fix for when Magic Mouse cannot zoom in World Composition editor. Missing default SNodePanel::OnMouseMove behaviour. Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse.
#jira UE-57030
Change 4007682 by Richard.Wallis
No video when playing HLS streaming video on Mac. 2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams. Now cache relevant details and handle zero frame rate.
Notes:
- Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment.
- Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size.
- Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point.
#jira UE-56734
Change 4007731 by Rolando.Caloca
DR - Disable byte buffers on non-hlsl based platforms
#jira UE-57851
Change 4007741 by Rolando.Caloca
DR - Disable byte buffers on hlslcc platforms
Change 4007782 by Mark.Satterthwaite
Force Metal shaders, including the stdlib, to recompile.
Change 4007918 by Rolando.Caloca
DR - vk - Some static asserts
Change 4008404 by Arciel.Rekman
Do not crash on incompatible Vulkan drivers (UE-57521).
#jira UE-57521
Change 4008442 by Daniel.Wright
Better comments on ERHIFeatureLevel expectations
Change 4008494 by Arne.Schober
DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor.
#jira UE-57754
Change 4008730 by Mark.Satterthwaite
After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer.
#jira UE-57870
Change 4008949 by Brian.Karis
Fix compile warning
Change 4008951 by Brian.Karis
Added LTC LUT textures
Change 4009326 by Guillaume.Abadie
Compiles out DOF's gathering bokeh simulation on platform other than desktop.
Change 4009380 by Krzysztof.Narkowicz
Moved area light code before the contact shadows, so contact shadows use representative light's direction.
Merged all contact shadows shader code.
Contact shadows keep constant screen space length independent of FoV settings.
Contact shadows for translucents.
Contact shadows for eye.
Change 4009555 by Guillaume.Abadie
Splits DOFCocTile.usf in two.
Change 4009999 by Yuriy.ODonnell
MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument.
Previously it was necessary to modify MallocaStomp.h and re-compile the engine.
Currently supported platforms: Win64, Mac, Linux.
Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize.
Change 4010288 by Rolando.Caloca
DR - vk - Fix for vertex streams
Change 4010289 by Krzysztof.Narkowicz
D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling.
#jira UE-57510
Change 4010297 by Rolando.Caloca
DR - vk - Remove some functions for android
Change 4010315 by Rolando.Caloca
DR - vk - Remove create info macro
Change 4010451 by Rolando.Caloca
DR - vk - Reuse samplers
- Infiltrator goes from 5759 to 24 samplers!
Change 4010627 by Rolando.Caloca
DR - vk - Fix missing values for tracking swapchain validation
Change 4011924 by Guillaume.Abadie
Implements tile based early return optimisation on DOF's postfiltering method.
Change 4011941 by Guillaume.Abadie
Shaves some ALU in DOF's accumulator for LowQuality permutation.
Change 4012093 by Yuriy.ODonnell
Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access.
Change 4012195 by Rolando.Caloca
DR - vk - Fix for mobile backbuffer layout
Change 4012202 by Rolando.Caloca
DR - vk - Don't use staging buffers on UMA
Change 4012467 by Rolando.Caloca
DR - Remove redundant check
Change 4012486 by Rolando.Caloca
DR - Fix missing transition
Change 4012518 by Guillaume.Abadie
Implements fast shader permutation for DOF's TAA pass.
Change 4013084 by Arciel.Rekman
Fix for Linux clock discrepancy.
- Causing at least one precision issue, possibly more.
(Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...)
Change 4013266 by Uriel.Doyon
Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the SceneContext.
Change 4013626 by Uriel.Doyon
Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it.
#jira UE-51672
Change 4013805 by Rolando.Caloca
DR - Fix more missing transitions
Change 4014128 by Arne.Schober
DR - Do not create LocalVFUniformBuffer when running without MVF
#jira UE-57929
Change 4014193 by Uriel.Doyon
Editing component transforms now invalidate the component's lighting cache.
#jira UE-48134
Change 4014282 by Rolando.Caloca
DR - vk - Remove extra validation during dump
Change 4014584 by Uriel.Doyon
Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass.
#jira UE-49064
Change 4014604 by Uriel.Doyon
UStaticMesh postduplicate now only generates a new GUID if !bDuplicateForPIE.
Change 4015460 by Guillaume.Abadie
Composes separate translucency within DOF's recombine pass.
Change 4015571 by Guillaume.Abadie
Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing.
Change 4015984 by Krzysztof.Narkowicz
Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area.
#jira UE-58000
Change 4016056 by Mark.Satterthwaite
Fix Mac Metal shader compilation of texture cube arrays.
Change 4016062 by Richard.Wallis
Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word. Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound.
#jira UE-46999
Change 4016109 by Mark.Satterthwaite
One unified Metal buffer implementation - will make further changes a heck of a lot easier.
Change 4016221 by Patrick.Kelly
UE-57617: Ensure changing viewmode to ShaderComplexity while in -game
Change 4016238 by Guillaume.Abadie
Makes clang happy again in Tonemapper.
Change 4016309 by Mark.Satterthwaite
More *_RenderThread implementations for MetalRHI.
Change 4016414 by Mark.Satterthwaite
And MetalRHI version of CreateStructuredBuffer_RenderThread...
Change 4016498 by Mark.Satterthwaite
Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout.
#jira UE-57930
Change 4017394 by Juan.Canada
OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss.
#jira UE-57691
Change 4017522 by Rolando.Caloca
DR - vk - Remove unused code path (old mip generation detection)
Change 4017539 by Rolando.Caloca
DR - vk - Fix for sky lighting mips showing green on AMD
Change 4017542 by Arciel.Rekman
Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build).
- Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own.
Change 4017827 by Guillaume.Abadie
Optimises DOF's scattering cost by a third.
Change 4017835 by Rolando.Caloca
DR - Only allow a render pass to generate mips for one color render target
Change 4017889 by Mark.Satterthwaite
Cache all the Metal state objects to avoid hitting the API unnecessarily.
Change 4018251 by Mark.Satterthwaite
Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(.
MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term.
Change 4018514 by Guillaume.Abadie
Implements r.DOF.Scatter.MinCocRadius.
Change 4018553 by Guillaume.Abadie
Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering
Change 4020369 by Yuriy.ODonnell
Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro)
Previously was only disabled for PVS-Studio.
Change 4020620 by Arciel.Rekman
Fix XboxOne CIS (fallout of appCountTrailingZeros move).
Change 4020949 by Guillaume.Abadie
Configures DOF in scalability settings.
Change 4021593 by Rolando.Caloca
DR - vk - Support for Aftermath style api on AMD
Change 4021740 by Rolando.Caloca
DR - vk - Change log output
Change 4022008 by Uriel.Doyon
Fixed renderthread stalls when streaming texture mips on low end systems.
Change 4022135 by Rolando.Caloca
DR - vk - Fix last mip's layout during mip chain creation
Change 4022607 by Jian.Ru
Speculative fix for a bug where an invalid vertex buffer is deferenced
#jira UE-56229
Change 4022890 by Rolando.Caloca
DR - Fix reference count not getting released
Change 4023540 by Mark.Satterthwaite
Avoid some pointless retain/release calls on Metal Encoders.
Change 4023796 by Marcus.Wassmer
Tell users they are over the maximum size when allocating very large rendertargets.
Change 4025337 by Yuriy.ODonnell
Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows.
MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part.
Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used.
Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated.
This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation.
This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table.
Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time.
Running Infiltrator demo consumes ~700MB of virtual address space per second.
Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior,
which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible.
Change 4026047 by Rolando.Caloca
DR - Fix test/shipping
#jira UE-58148
Change 4026150 by Krzysztof.Narkowicz
Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons.
#jira UE-57992
Change 4026226 by Rolando.Caloca
DR - Fix static analysis
#jira UE-58150
Change 4026354 by Jian.Ru
Debug check trying to catch a crash. Only enabled in editor build
#jira UE-50111
Change 4026655 by Rolando.Caloca
DR - Fix for static analysis
#jira UE-58149
Change 4026763 by Rolando.Caloca
DR - Remove references to defunct CCT to avoid confusing licensees
Change 4027167 by Uriel.Doyon
Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter.
#jira UE-56509
Change 4027850 by Jian.Ru
Prevent log spam
#jira UE-50111
Change 4029546 by Rolando.Caloca
DR - Compile fixes
Change 4029624 by Yuriy.ODonnell
Addressed static analysis errors in MallocStomp
- VirtualAlloc return value is now explicitly checked.
- C6250 is suppressed, as VirtualFree does not release address space by design.
Change 4030225 by Yuriy.ODonnell
Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB
The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers.
If a module includes TBB and then Windows platform headers, static analyzer will report this warning.
Suppressing it would require wrapping all instances of Windows header includes in third-party macros.
Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix.
Change 4030440 by Rolando.Caloca
DR - Fix crash on mobile
#jira UE-58222
Change 4030570 by Daniel.Wright
Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders
Change 4030618 by Arne.Schober
DR - missing tangent/normal sign conversion after integration from main
#jira UE-58224
Change 4031588 by Rolando.Caloca
DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD
Change 4032145 by Mark.Satterthwaite
Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features.
#jira UE-58268
Change 4032209 by Rolando.Caloca
DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore
Change 4033178 by Guillaume.Abadie
Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test.
#jira UE-58151
Change 4034489 by Daniel.Wright
Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change. This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated. A component should not modify its asset during PostEditUndo.
* This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration).
Change 4035157 by Uriel.Doyon
Fixed deadlock in the streaming code when running with -onethread.
#jira UE-58299
Change 4035198 by Rolando.Caloca
DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK).
#jira UE-58267
Change 4035730 by Arne.Schober
DR - Fix missing Fog parameters during LightScattering Injection
#jira UE-57608
Change 4035843 by Daniel.Wright
Reimplemented support for EyeAdaptation node in opaque materials
Change 4036837 by Marcus.Wassmer
Replace some of the screenshots to match new un-tonemapped buffer visualization
Change 4036980 by Rolando.Caloca
DR - vk - Fix deadlock contention during mem allocation on Linux
Change 4037225 by Guillaume.Abadie
Fixes jittering selection outline.
#jira UE-58350
Change 4038056 by Marcus.Wassmer
roll back changelist 4026150. breaks a bunch of automated tests by cutting off half the image.
Change can go back in later with that part fixed also
Change 4038296 by Jian.Ru
Static analysis fix
#jira UE-58377
Change 4038402 by Ben.Marsh
Suppress IncludeTool warnings caused by CL 3998947.
Change 4038514 by Arne.Schober
DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0.
#jira UE-57652
Change 4038747 by Marcus.Wassmer
Back out changelist 3853645, causing us to lose shadows in the shaderhair test
Change 4040138 by Rolando.Caloca
DR - Fix compile warning
Change 4041614 by Rolando.Caloca
DR - vk - Fix for Oculus module
#jira UE-58267
Change 3810277 by Daniel.Wright
Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle. Costs .2ms on PS4.
The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4.
Change 3817029 by Uriel.Doyon
Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1.
Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues).
Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets.
Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7.
#jira UE-32263
Change 3819960 by Michael.Lentine
Expose UEPhysics Clothing Parameters through UI.
Change 3823401 by Rolando.Caloca
DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch
Change 3844805 by Arne.Schober
DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision.
Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders.
Change 3847283 by Marcus.Wassmer
Extra fixes from Uriel
Change 3876607 by Rolando.Caloca
DR - Use render passes when running occlusion queries
- Removes the RHI(Begin|End)OcclusionQueryBatch API
Change 3903799 by Daniel.Wright
[Integrate] Pass Uniform Buffers
* All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw
* Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer
* Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture
Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT()
* This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct.
* Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer.
* Resources can now be located anywhere in the uniform buffer. Padding is inserted to the cbuffer representation to keep memory layouts matching. In the future the cbuffer could be compacted.
* RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs
Change 3917500 by Rolando.Caloca
DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified
Change 3964907 by Guillaume.Abadie
Implements RectList topology support in RHI.
Change 3979171 by Mark.Satterthwaite
Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering):
Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors.
Regarding mtlpp:
- The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems.
- To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly.
- Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management.
- Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding.
Apple Platform:
- LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS.
MetalRHI:
- All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C.
- Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same.
- Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well.
- The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac.
- Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order).
- LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought.
- What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code.
Other:
- Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now.
- Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere.
- Consistency of disabling the Manual Vertex Fetch behaviour in shaders.
#jira UERNDR-354
Change 3979312 by Rolando.Caloca
DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget
Change 4005122 by Rolando.Caloca
DR - Support for PS4 Index Buffer UAVs
Change 4016298 by Guillaume.Abadie
Fixes DOF hybrid scattering on platforms that supports RectList topology.
Change 4018575 by Guillaume.Abadie
Optimises DOF's reduce pass when doing scattering compilation.
Change 4020317 by Guillaume.Abadie
Implements WaveBroadcastIntrinsics.ush.
[CL 4042226 by Marcus Wassmer in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed#2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3567301 by Arciel.Rekman
Linux: fix for importing failure when clicking shortcuts (UE-47932).
- Slate dialog would return incorrect relative paths (not matching CWD) if Engine or Project shortcuts were used.
#jira UE-47932
Change 3567687 by Arciel.Rekman
Minor fixes to gdb pretty printers by icculus.
Change 3568024 by Arciel.Rekman
Made SDL_SetWindowInputFocus() wait until window is viewable (UE-33369).
- Pull request #2608 contributed by Ereski.
- Updated x86_64 lib only (anticipating more changes to SDL).
#coderview Cengiz.Terzibas, Ryan.Gordon
Change 3568173 by Max.Chen
Movie Scene Capture: Delay on shot boundaries by setting the sequencer play rate to 0.
This allows particles, TAA, and other effects to settle on the shot cuts.
#jira UE-44598
Change 3568174 by Max.Chen
Sequencer: Added option to rerun construction scripts on bound actors in the sequence every frame.
#jira UE-31193
Change 3568331 by Matt.Kuhlenschmidt
PR #3850: Add extensible source navigation service (Contributed by mhutch)
Change 3568350 by Matt.Kuhlenschmidt
PR #3851: Add argument to pass params to standalone play session (Contributed by mhutch)
Change 3568387 by Matt.Kuhlenschmidt
PR #3852: Add FEditorDelegates::BeginLocalPlay event (Contributed by mhutch)
Change 3568541 by Arciel.Rekman
Merged Icculus' patch for copy-paste (UE-40071).
- Alas does not seem to fix inability to copy/paste between Output log and kate.
- Updated x86_64 lib only (anticipating more changes).
Change 3568547 by Arciel.Rekman
Fix OpenGL queries reused after deletion.
Change 3568790 by Matt.Kuhlenschmidt
PR #3857: Loading screen widgets not scaled correctly (Contributed by projectgheist)
Change 3568900 by Alexis.Matte
Fix the fbx re-import factory handler to say failed in case there was no geometry to import.
#jira UE-47506
Change 3568902 by Alexis.Matte
Reduce memory footprint when importing large FBX scene PR #3834
#jira UE-47833
Change 3569061 by Arciel.Rekman
Linux: remove unnecessary symbols for MSVC visualizers.
- Reported by ASan as collision because they exist in each DSO.
Change 3569782 by Cody.Albert
Updated ImportAssets Commandlet help text to properly reflect supported features.
Change 3569843 by Arciel.Rekman
SDL: add logic to select headless EGL device.
- SDL will try to guess which device is GPU using CUDA device id (can also be hinted explicitly).
- Also fixes the problem of engine not starting on some drivers that don't support the necessary EGL extensions.
Change 3570234 by Max.Chen
Sequencer: Import FBX settings. Added settings to toggle force front x axis and whether to create cameras that don't already exist in the level.
#jira UE-46754
Change 3570578 by Arciel.Rekman
Linux: make FAnsiMalloc compatible with malloc()/free().
- Prerequisite for ASan. Also helps fringe cases when we have to use FAnsiMalloc.
Change 3571015 by Alexis.Matte
Issue warning when we found zero normal, tangent or binormal
#jira UE-46419
Change 3571376 by Jamie.Dale
Force a unique package localization ID when loading packages for diffing
Change 3571412 by Jamie.Dale
Removed unused setting
Change 3571487 by Alexis.Matte
fix speed tree import cancel workflow
#jira UE-47482
Change 3571614 by Jamie.Dale
Games now use the native culture of any of the game targets as the fallback (rather than always using English)
This replaces the previously removed redundant setting from CL# 3571412
Change 3572649 by Jamie.Dale
SavePackageHelper now always honors KeepObjectFlags
Change 3572730 by Matt.Kuhlenschmidt
Guard against crash in the details panel when there is a message in the queue and something scrolls into view when the list has been invalidated
#jira UE-48037
Change 3572773 by Matt.Kuhlenschmidt
Guard against high res screenshot crashing if the requested image size doesnt match the image data size
#jira UE-47765
Change 3572813 by Michael.Trepka
Workaround for a mysterious issue in Xcode 9 beta 3 and 4 which makes it generate -Wnullability-inferred-on-nested-type warnings/errors in MetalDebugCommandEncoder.h even though we tell Clang to ignore them in MacPlatformCompilerPreSetup.h
Change 3573043 by Arciel.Rekman
FAnsiMalloc: fix compile issue (UE-48066).
#jira UE-48066
Change 3573236 by Arciel.Rekman
Linux: add UnrealLightmass to the installed build.
- Was also requested by a licensee on UDN.
Change 3573705 by Arciel.Rekman
SDL: update UE4 fork to the latest trunk (UETOOL-1242).
- Revision 11184 form 2017-08-04: http://hg.libsdl.org/SDL/rev/04063928c4a8
- Change by icculus (Ryan Gordon).
- Rebuilt x86_64 library only for now.
Change 3573741 by Arciel.Rekman
Fix crash when capturing a movie (UE-48093).
#jira UE-48093
Change 3574389 by Max.Chen
Sequencer: Array bounds check.
#jira UE-48095
Change 3574399 by Max.Chen
Sequencer: Fix crash in removing delegate
#jira UE-47461
Change 3574415 by Max.Chen
Sequencer: Put level visibility tracks in the SpawnObjects evaluation group to ensure levels are streamed before any possessable bindings are resolved
Change 3574416 by Max.Chen
Prevent slow task feedback from performing slow operations (flushing rendering commands, checking if shaders are initialized) when there are no modal dialogs open
Change 3574726 by Matt.Kuhlenschmidt
Focus the details view when actor selection changes if it is not focused
Change 3574922 by Michael.Trepka
Copy of CL 3574653 by Richard.Wallis
XCode Beta 4 Compile fixes. "Inferring '_Nonnull' for pointer type within array is deprecated "
Change 3576525 by Nick.Darnell
Editor - Data table rows names sort correctly in the property customization.
Blueprint - Fixing some crashes due to holding onto raw pointers instead of TWeakObjectPtrs.
UMG - SetWidgetClass now reinstances the widget if you change it at runtime.
Editor - Deleting actors that are still referenced now at least logs to the console what still references it.
Change 3576714 by Nick.Darnell
Editor - Build fix.
Change 3576770 by Jamie.Dale
Removed some dead code
It seems to be left over from the first attempt at stable localization keys
Change 3578433 by Matt.Kuhlenschmidt
Fix content browser settings being per project and having created a "Global" category for one setting
Change 3578556 by Max.Chen
Editor: Fix toolbar shared ref which was keeping the viewport toolbar around when switching between default and cinematic viewports.
#jira UE-48125
Change 3578561 by Matt.Kuhlenschmidt
Fix USD importing not respecting DestinationPath for automated import
Change 3580124 by Matt.Kuhlenschmidt
Fix bogus warning message when a property has an editcondition that is not marked edit aynwhere. This has always been supported and is the correct way to make an editcondition
Change 3581936 by Jamie.Dale
Restoring defaults for UContentBrowserSettings
Change 3582039 by Matt.Kuhlenschmidt
High DPI mode changes
- Editor viewport screen percentage is now adjusted automatically to account for DPI scaling. By default the scene will be rendered at a lower resolution based on screen percentage calculated based on 100/DPIScale. Users can override this automatic calcuation in the performance options if desired.
- DPI awareness is only set on windows in the editor now (still disabled by default)
- Fixed hit proxy calculation not working properly with screen percentage
- Developers can now register a delegate with SlateApplication to tell when a window's DPI changes
Change 3582049 by Matt.Kuhlenschmidt
Fix color picker not properly converting FColor properties back to gamma space
Change 3582054 by Matt.Kuhlenschmidt
Fix mac menus updating during unsafe times such as modal windows and slow tasks
#jira UE-47874
Change 3582084 by Jamie.Dale
Make sure to update the rendering resources for the active world if reloading its map build data
This prevents a crash in the renderer due to it holding onto stale data
Change 3582257 by Matt.Kuhlenschmidt
Fix widget component spawning widgets on cook
#jira UE-48201
Change 3582655 by Matt.Kuhlenschmidt
Fix DPI scale not being accounted for when entering immersive.
Change 3582706 by Matt.Kuhlenschmidt
Fix automation tests
Change 3582728 by Matt.Kuhlenschmidt
Turn on high dpi by default for windows editor
Change 3582732 by Matt.Kuhlenschmidt
Turn on high DPI by default for mac editor
Change 3583112 by Max.Chen
Sequencer: Add OnPlayReverse() event for when playback is in reverse
Change 3584130 by Matt.Kuhlenschmidt
PR #3897: Git plugin: fix action icon in history window (Contributed by SRombauts)
Change 3584237 by Matt.Kuhlenschmidt
Added the beginnings of a way to extend the usd importer with a custom resolver class that optionally handles prim identification and mesh and actor spawning.
Added a test resolver that handles prims based on usd "kind" metadata.
Change 3584535 by Matt.Kuhlenschmidt
Fix LOD identification in USD files
Change 3587703 by Matt.Kuhlenschmidt
Fix tooltip
Change 3587901 by Matt.Kuhlenschmidt
Fixed USD importing not finding and importing LODs properly
Change 3588380 by Matt.Kuhlenschmidt
Fix ctrl+w not duplicating on mac
#jira UE-46573
Change 3590435 by Jamie.Dale
Added support for in-editor previews of localized game text
This is configured by the "Preview Game Culture" setting, and will automatically be active when PIE is running (the preview language is also passed to any standalone games that are launched via the editor). This preview can also be used in the UMG editor to preview widgets in different languages.
While a preview is running, all editable FText fields are locked-down (read-only) to prevent accidentally clobbering source data with translation data. You can also use this new lock-down feature to prevent any localization changes in your project (set "LockLocalization" to "True" under the "Internationalization" section of either your DefaultGame or DefaultEngine INI).
In order to allow the game translations to be used in the editor, we now map the translation to any package localization ID variants when the LocRes data is loaded (or when looking up a specific piece of text). This is needed as the LocRes files only ever contain the "clean" versions of the IDs (without the package localization ID the editor uses), and also means that we no longer need to gather the "editor-only" variants of the text within assets.
Change 3592131 by Matt.Kuhlenschmidt
Log for newly converted actors being pending kill
#jira UE-47464
Change 3592200 by Matt.Kuhlenschmidt
Made the class viewer menu function properly on mac. Since it as a nomad tab it wasnt properly inserting itself into the top level menu on mac nor should it since it could be docked anywhere. The filters menu is now consistent with other filters menus
Change 3592227 by Matt.Kuhlenschmidt
Fix drag drop of actors being offset with high dpi monitors.
Change 3592719 by Bradut.Palas
#jira UE-45632 - dual key bindings feature
My approach was transforming the ActiveChord and DefaultChord into arrays and accessing them through an enum class called EMultipleKeyBindingIndex. A lot of connecting code, function prototypes, and data structures had to be changed to accomodate this. Most menus and tooltip texts are generated using the first valid active shortcut.
Change 3592793 by Bradut.Palas
Fix compile warnings for InputBindingManager (there were actually hidden bugs among them)
Change 3593128 by Matt.Kuhlenschmidt
Force low quality mode for background blurs by default on android
Change 3593579 by Michael.Dupuis
#jira UE-47223 :
If we have no world simply return null when GetLandscapeInfo is called
Handle the cases in PostEditChange to handle null returned from GetLandscapeInfo
Change 3593580 by Michael.Dupuis
Added missing shaders while generating thumbnails
Change 3593582 by Michael.Dupuis
#jira UE-47492 : Make sure LayerInfo is valid before accessing data
Change 3593584 by Michael.Dupuis
#jira UE-47253: Do not recreate the scene info in simulation mode
Change 3593585 by Michael.Dupuis
#jira UE-48484: no longer mark the package dirty while generating the GrassMap if they were not existing
Change 3593586 by Michael.Dupuis
#jira UE-48483 : hide the Rendering property group so user can't by mistake change the actor visibility
Change 3593593 by Michael.Dupuis
#jira UE-48327: Added guard to prevent crash when using CVarFoliageDiscardDataOnLoad and having invalid foliage in your map
Change 3593597 by Michael.Dupuis
#jira UE-48309: Do not build the tree if the static mesh is not even loaded yet
#jira UE-48340: Properly support the Random stream and partial buffer update
#jira UE-48228: Instance from blueprint are now visible in standalone game
#jira UE-45854: Crash probably linked to post load called on not loaded static mesh
#jira UE-48035: Properly init the per instance render data when creating a new component
Only update instance in non archetype or CDO.
Change 3594060 by Matt.Kuhlenschmidt
Fix high DPI mode being set for non-editor. Also prevent possible crashes due to dll handle for high DPI method being freed before called
Change 3594355 by Matt.Kuhlenschmidt
Change API help link to point to a website since offline CHM based docs are no longer used
#jira UE-48230
Change 3595358 by Matt.Kuhlenschmidt
Fixed bad initial window position and sizes for editor windows
By default SWindow.ClientSize will assume unscaled window size and will scale it based on DPI as needed. AdjustInitialSizeAndPositionForDPIScale argument can be used to disable this if needed
Fixed a dock tabs and the main frame not taking into account dpi scale when saving their layout. Now we always save window size at 1.0 scale and auto scale it based on DPI of the monitor it opens on.
#jira UE-48446
Change 3595590 by Matt.Kuhlenschmidt
Fix missing includes
Change 3595792 by Matt.Kuhlenschmidt
Fix style warnings
Change 3596418 by Bradut.Palas
fixing initial issue with dual keybinds (removed ensure macro to speedup first use of alternate key)
Change 3598679 by Max.Chen
PR #3872: Fix small typo in ImagePlate Plugin (Contributed by TheCodez)
#jira UE-48141
Change 3598720 by Max.Chen
Cine Camera: Add toggle to disable constraining the roll when look at tracking is enabled. This allows the user to animate the roll while tracking an object.
#jira UE-48316
Change 3600236 by Alexis.Matte
Create a LOD Custom Mode in the meshes editor UI. This allow user to compare details values between LODs
#jira UE-46822
Change 3600260 by Alexis.Matte
Make sure temporary rename do not create redirector
#jira UE-48364
Change 3600671 by Lauren.Ridge
PR #3913: Fixed 3D preview issue in the material editor (Contributed by YuchenMei)
#jira UE-48539
#jira UE-48180
#jira UE-48182
Change 3600812 by Jamie.Dale
We now defer the registration of IME contexts until an editable text first gains focus
Certain IMEs can have very high per-context costs, so this avoids that cost until we know that we definitely need to use the context
#jira UE-48100
Change 3601839 by Matt.Kuhlenschmidt
Fix USD import crash with "facevarying" normals
Change 3602434 by Jamie.Dale
Removing dead code
These flags were never being tested or used in any meaningul way
Change 3602611 by Jamie.Dale
Ensure PackageToReload is non-null
#jira UE-46655
Change 3602648 by Jamie.Dale
Fixed custom columns with the same name as fixed columns causing infinite duplications in the content browser
#jira UE-47392
Change 3602651 by Lauren.Ridge
Fix for parameter tooltips not being found
#jira UE-47417
Change 3604172 by Bradut.Palas
#jira UE-48449
#jira UE-48380
#jira UE-48381
#jira UE-48423
I moved the IsFilenameValidForSaving() function from FEditorFileUtils to FFileHelper so that it is accessible from CollectionManager.cpp in order to validate collection names as file names and no longer trigger any of the bugs.
Change 3604210 by Bradut.Palas
#jira UE-48718
Regression issue appeared from fixing a crash when using console command "open"
Reworked by only refusing to open local URLs in case of client mode and multiprocess being active simultaneously.
Change 3604258 by Jamie.Dale
IME contexts can now flag themselves as dead to avoid latent IME callbacks trying to access a deleted widget
#jira UE-46815
#jira UE-47295
Change 3604312 by Matt.Kuhlenschmidt
PR #3931: Fixing a few obvious copy & paste errors. (Contributed by DaveC79)
Change 3604352 by Matt.Kuhlenschmidt
Fix crash accessing potentially invalid parent layout from a detail category
#jira UE-48729
Change 3604402 by Lauren.Ridge
Epic Friday - array drag and drop
Change 3605228 by Cody.Albert
TSets and TMaps should now properly rehash if a key is modified in the details panel.
Change 3605275 by Alexis.Matte
Merge actor do not keep the material slot name
#jira UE-43246
Change 3605715 by Max.Chen
Sequencer: Fix cinematic mode getting activated on BeginPlay() instead of OnStartedPlaying().
#jira UE-48770
Change 3606411 by Max.Chen
Sequencer: Fix a few player state issues. When paused, calling stop now tears down properly (spawnables are removed, etc). When a level sequence is deleted, tears down properly as well.
#jira UE-42008
Change 3606440 by Max.Chen
Sequencer: Update spawanble name when the spawnable actor name is changed.
#jira UE-47815
Change 3606899 by Lauren.Ridge
Disabling enum-based arrays from reordering
Change 3606958 by Lauren.Ridge
Visual polish on array handles
Change 3607733 by Max.Chen
Sequencer: Check null in camera cut
Change 3607849 by Max.Chen
Sequencer: Clip transport controls.
#jira UE-48812
Change 3608181 by Max.Chen
#jira UE-48813 Correctly set GPlayInEditorID when initializing the PIE gameinstance, which does the initial tick. This fixes autoplay sequences
Copy from Dev-Framework
Change 3608361 by christopher.biancard
QAGame: Submitting test content for Array Element Reorder testing
Change 3608512 by Alexis.Matte
Add fbx exporter option dialog, support export all and cancel all functionality when doing bulk export.
#jira UE-48058
Change 3608629 by Max.Chen
Camera Rig: Fix crane and rail not being packaged properly.
#jira UE-48829
Change 3609217 by Matt.Kuhlenschmidt
Added a lock around access to slate active timers to protect it against race conditions when accessed on the slate movie thread and the game thread
Change 3609722 by Alexis.Matte
Make sure a warning is log when we cannot export an animation sequence.
#jira UE-48390
Change 3609774 by Alexis.Matte
Fix the merge actor build LOD scale again, a previous merge erase the fix
#jira UE-48156
Change 3609891 by christopher.biancard
QAGame: Minor additions for test coverage on Array Element Reorder
Change 3610171 by Lauren.Ridge
Fixes for reordering metadata, creating actual swap function out of three element functions
#jira UE-48823
Change 3610407 by Lauren.Ridge
Fixing highlighting and behavior to place dragged row in the spot you release (not below)
Change 3610472 by Lauren.Ridge
Moving final location logic
Change 3610797 by Lauren.Ridge
Disabling dragging handles during PIE
Change 3611089 by Lauren.Ridge
Disabling handles when overall tree is disabled
Change 3612479 by Lauren.Ridge
Fix for asset contex menu warning
#jira UE-46667
Change 3612791 by Michael.Dupuis
#jira UE-48914 : Add the possibility to specify if we need CPU access to the instance buffer depending on the usage.
Grass should always have CPU access.
Change 3612802 by Michael.Dupuis
missing file from checkin 3612791
Change 3612805 by Max.Chen
Sequencer: Fix crash with null GEditor
Copy from Release-4.17
#jira UE-48443
Change 3612806 by Max.Chen
Sequencer: Fix crash when capturing a movie with options enabling separate process and close editor.
Copy from Release-4.17
#jira UE-48487
Change 3612807 by Max.Chen
Sequencer: Fix crash upgrading the time range of a null track.
Copy from Release-4.17
#jira UE-48490
Change 3612808 by Max.Chen
Sequencer: Fixed dragging skeletal animations causing them to revert back to t-pose
Copy from Release-4.17
#jira UE-48367
Change 3612849 by Arciel.Rekman
Fix tesselation in packaged Linux projects (UE-24301).
- Change by Cengiz.Terzibas.
#jira UE-24301
Change 3613022 by Nick.Darnell
Editor - Fixing a crash on load with a null CoordIndex json node.
Change 3613030 by Matt.Kuhlenschmidt
PR #3932: UE-48693: if instead of while statement (Contributed by projectgheist)
#jira UE-48747
Change 3613047 by Matt.Kuhlenschmidt
PR #3933: Git plugin: add "branch source" in history window (Contributed by SRombauts)
Change 3613050 by Matt.Kuhlenschmidt
PR #3942: Sort Data Table Structures Alphabetically (Contributed by Nick-Pearson)
Change 3613062 by Matt.Kuhlenschmidt
PR #3939: Fix a typo in RecordQualityLevelsAnalytics(). (Contributed by samhocevar)
Change 3613241 by Nick.Darnell
Editor - Fixing the content browser's view settings to be project agnostic, and they will start saving again.
Change 3613329 by Lauren.Ridge
Moving favorite levels to a standard submenu so they also work on Mac
Change 3613344 by Nick.Darnell
Editor - Fixing the achorgrid show up as white in HDPI mode, seems because we were upsampling the image, the blend was between dark and a transparent white, so that caused everything to turn white in HDPI mode.
#jira UE-48921
Change 3613380 by Matt.Kuhlenschmidt
Fix FBX window being off the screen in high DPI
#jira UE-48872
Change 3614598 by Matt.Kuhlenschmidt
Fixed Sequencer Keyframes appearing out of place on High DPI Monitors
#jira UE-48915
Change 3614625 by Matt.Kuhlenschmidt
Fixed not being able to click on BSP correctly in high dpi
#jira UE-48947
Change 3614672 by Matt.Kuhlenschmidt
Fix combo box windows being larger than necessary on high dpi monitors
#jira UE-48908
Change 3614699 by Matt.Kuhlenschmidt
Fix typo
#jira UE-48941
Change 3615011 by Matt.Kuhlenschmidt
Fix color picker calculation appearing offscreen for high dpi
Change 3615013 by Michael.Dupuis
#jira UE-48897: Properly rebuild the tree when reapplying instance to the component
Change 3615014 by Colin.Benoit
Sequencer Recorder test content
Change 3615048 by Colin.Benoit
Sequencer Recorder: more test content
Change 3615118 by Lauren.Ridge
Updating realtime state of viewports to also change when settings toggled
#jira UE-48884
Change 3615127 by Lauren.Ridge
Remove delegate binding on viewport destruction
Change 3615180 by Bradut.Palas
#jira UE-48167 profiler crash
Don't duplicate the graph data when rebuilding because that completely voids the OneToOneMapping mechanism, resulting in the crash. Looking up objects in the mapping would always return null because the mapping contains the old addresses, before the rebuild.
One option would have been to completely rebuild the mapping according to the duplicate graph, which would be dubious because the duplicate method isn't specifically designed so that the result would replace the source.
But it looks like duplicating the data is not needed, it's safe to rebuild in-place, RebuildForFilter() doesn't do anything illegal with the objects. This is also the only purpose and the only reference of the function.
Change 3615232 by Lauren.Ridge
Adding input handling to the material editor viewport client
#jira UE-48909
Change 3615703 by Jamie.Dale
Fixed crash when fixing up references after a package rename failed
#jira UE-48856
Change 3615752 by Matt.Kuhlenschmidt
More generic fix for color picker and other windows that use CalculatePopupWindowPostion not accounting for DPI scale
Change 3615907 by Jamie.Dale
Fixed some crashes caused by CL# 3600812
Change 3616031 by Matt.Kuhlenschmidt
Added guard against invalid blueprints (ones without a generated class) being trying to be opened in the property matrix and failing
#jira UE-48986
Change 3616151 by Arciel.Rekman
Fixing adding array elements in config.
- "+Blah=Foo" will do Blah.AddUnique(Foo)
- ".Blah=Foo" will do Blah.Add(Foo)
- See JoshA re: why (also see: https://udn.unrealengine.com/questions/388157/incorrect-behavior-in-configcacheinicpp.html?childToView=389307)
Change 3616439 by Andrew.Porter
QAGame: Updating level visibility content in sequencer smoke map
Change 3616441 by Matt.Kuhlenschmidt
Fix more sequencer track offsetting with DPI scale
#jira UE-48981
Change 3617263 by Max.Chen
Sequencer: Fix crash in level visibility teardown. Null playback context.
#jira UE-49012
Change 3617316 by Max.Chen
Sequencer: Fixed a regression where the frame rate isn't getting initialized for a movie scene.
Change 3617648 by Matt.Kuhlenschmidt
Adding some windows specific logging around setting or failing to set process dpi awareness
Change 3617665 by Matt.Kuhlenschmidt
Guard against layers module not being loaded in keybinding automation test
Change 3617731 by Arciel.Rekman
Fix crashes on AMD Mesa drivers (UE-48374).
- Do not expose unnecessary symbols from libelf.a to avoid symbol collision with system library used by drivers.
Change 3617923 by Bradut.Palas
#jira UE-47072
Editor was crashing because deleted actor was not cleaned properly from asset editors. Changed IAssetEditorInstance to offer a function for deleting an object from the editor.
Change 3618088 by Matt.Kuhlenschmidt
Guard against crash with potentially invalid worlds in preview scenes
#jira UE-48997
Change 3618373 by Matt.Kuhlenschmidt
Force worldsettings to be hidden in editor so that it is not considered for selection
#jira UE-48996
Change 3618464 by Max.Chen
Sequencer: Fix regression where spawnables don't play because they're defined as temporary editor actors.
#jira UE-48923
Change 3619789 by Matt.Kuhlenschmidt
Fix DPI scale warnings in any kind of headless editor mode
Change 3619802 by Jamie.Dale
Fixed deprecation warning in malloc profiler
Change 3619841 by Matt.Kuhlenschmidt
Fix missing icons in the package project menu
#jira UE-48674
Change 3619991 by Lauren.Ridge
Fix typo in transaction message
#jira UE-48993
Change 3620086 by Lauren.Ridge
Moving realtime viewport logic to refresh instead of construct so it is always triggered upon opening a new material editor
#jira UE-48884
Change 3620616 by Matt.Kuhlenschmidt
Fix up file
Change 3621002 by Matt.Kuhlenschmidt
Back out change to apply scaling rules in loading screens since blueprint based DPI scaling rule classes will not have been created yet
#jira UE-49125
Change 3621049 by Arciel.Rekman
Fix a build error.
- Also make sure that we don't print confusing message when no messagebox can be shown
(this code changed during the merge).
Change 3621064 by Arciel.Rekman
Deleted too much in the previous changelist.
Change 3621369 by Matt.Kuhlenschmidt
Fix keybindings automation test failing due to multiple entries in the active choords array pointing to the same thing
#jira UE-49131
[CL 3621569 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3550452 by Ben.Marsh
UAT: Improve readability of error message when an editor commandlet fails with an error code.
Change 3551179 by Ben.Marsh
Add methods for reading text files into an array of strings.
Change 3551260 by Ben.Marsh
Core: Change FFileHelper routines to use enum classes for flags.
Change 3555697 by Gil.Gribb
Fixed a rare crash when the asset registry scanner found old cooked files with package level compression.
#jira UE-47668
Change 3556464 by Ben.Marsh
UGS: If working in a virtual stream, use the name of the first non-virtual ancestor for writing version files.
Change 3557630 by Ben.Marsh
Allow the network version to be set via Build.version if it's not overriden from Version.h.
Change 3561357 by Gil.Gribb
Fixed crashes related to loading old unversioned files in the editor.
#jira UE-47806
Change 3565711 by Graeme.Thornton
PR #3839: Make non-encoding specific Base64 functions accessible (Contributed by stfx)
Change 3565864 by Robert.Manuszewski
Temp fix for a race condition with the async loading thread enabled - caching the linker in case it gets removed (but not deleted) from super class object.
Change 3569022 by Ben.Marsh
PR #3849: Update gitignore (Contributed by mhutch)
Change 3569113 by Ben.Marsh
Fix Japanese errors not displaying correctly in the cook output log.
#jira UE-47746
Change 3569486 by Ben.Marsh
UGS: Always sync the Enterprise folder if the selected .uproject file has the "Enterprise" flag set.
Change 3570483 by Graeme.Thornton
Minor C# cleanups. Removing some redundant "using" calls which also cause dotnetcore compile errors
Change 3570513 by Robert.Manuszewski
Fix for a race condition with async loading thread enabled.
Change 3570664 by Ben.Marsh
UBT: Use P/Invoke to determine number of physical processors on Windows rather than using WMI. Starting up WMIC adds 2.5 seconds to build times, and is not compatible with .NET core.
Change 3570708 by Robert.Manuszewski
Added ENABLE_GC_OBJECT_CHECKS macro to be able to quickly toggle UObject pointer checks in shipping builds when the garbage collector is running.
Change 3571592 by Ben.Marsh
UBT: Allow running with -installed without creating [InstalledPlatforms] entries in BaseEngine.ini. If there is no HasInstalledPlatformInfo=true setting, assume that all platforms are still available.
Change 3572215 by Graeme.Thornton
UBT
- Remove some unnecessary using directives
- Point SN-DBS code at the new Utils.GetPhysicalProcessorCount call, rather than trying to calculate it itself
Change 3572437 by Robert.Manuszewski
Game-specific fix for lazy object pointer issues in one of the test levels. The previous fix had to be partially reverted due to side-effects.
#jira UE-44996
Change 3572480 by Robert.Manuszewski
MaterialInstanceCollections will no longer be added to GC clusters to prevent materials staying around in memory for too long
Change 3573547 by Ben.Marsh
Add support for displaying log timestamps in local time. Set LogTimes=Local in *Engine.ini, or pass -LocalLogTimes on the command line.
Change 3574562 by Robert.Manuszewski
PR #3847: Add GC callbacks for script integrations (Contributed by mhutch)
Change 3575017 by Ben.Marsh
Move some functions related to generating window resolutions out of Core (FParse::Resolution, GenerateConvenientWindowedResolutions). Also remove a few headers from shared PCHs prior to splitting application functionality out of Core.
Change 3575689 by Ben.Marsh
Add a fixed URL for opening the API documentation, so it works correctly in "internal" and "perforce" builds.
Change 3575934 by Steve.Robb
Fix for nested preprocessor definitions.
Change 3575961 by Steve.Robb
Fix for nested zeros.
Change 3576297 by Robert.Manuszewski
Material resources will now be discarded in PostLoad (Game Thread) instead of in Serialize (potentially Async Loading Thread) so that shader deregistration doesn't assert when done from a different thread than the game thread.
#jira FORT-38977
Change 3576366 by Ben.Marsh
Add shim functions to allow redirecting FPlatformMisc::ClipboardCopy()/ClipboardPaste() to FPlatformApplicationMisc::ClipboardCopy()/ClipboardPaste() while they are deprecated.
Change 3578290 by Graeme.Thornton
Changes to Ionic zip library to allow building on dot net core
Change 3578291 by Graeme.Thornton
Ionic zip library binaries built for .NET Core
Change 3578354 by Graeme.Thornton
Added FBase64::GetDecodedDataSize() to determine the size of bytes of a decoded base64 string
Change 3578674 by Robert.Manuszewski
After loading packages flush linker cache on uncooked platforms to free precache memory
Change 3579068 by Steve.Robb
Fix for CLASS_Intrinsic getting stomped.
Fix to EClassFlags so that they are visible in the debugger.
Re-added mysteriously-removed comments.
Change 3579228 by Steve.Robb
BOM removed.
Change 3579297 by Ben.Marsh
Fix exception if a plugin lists the same module twice.
#jira UE-48232
Change 3579898 by Robert.Manuszewski
When creating GC clusters and asserting due to objects still being pending load, the object name and cluster name will now be logged with the assert.
Change 3579983 by Robert.Manuszewski
More fixes for freeing linker cache memory in the editor.
Change 3580012 by Graeme.Thornton
Remove redundant copy of FileReference.cs
Change 3580408 by Ben.Marsh
Validate that arguments passed to the checkf macro are valid sprintf types, and fix up a few places which are currently incorrect.
Change 3582104 by Graeme.Thornton
Added a dynamic compilation path that uses the latest roslyn apis. Currently only used by the .NET Core path.
Change 3582131 by Graeme.Thornton
#define out some PerformanceCounter calls that don't exist in .NET Core. They're only used by mono-specific calls anyway.
Change 3582645 by Ben.Marsh
PR #3879: fix bug when creating a new VS2017 C++ project (Contributed by mnannola)
#jira UE-48192
Change 3583955 by Robert.Manuszewski
Support for EDL cooked packages in the editor
Change 3584035 by Graeme.Thornton
Split RunExternalExecutable into RunExternaNativelExecutable and RunExternalDotNETExecutable. When running under .NET Core, externally launched DotNET utilities must be launched via the 'dotnet' proxy to work correctly.
Change 3584177 by Robert.Manuszewski
Removed unused member variable (FArchiveAsync2::bKeepRestOfFilePrecached)
Change 3584315 by Ben.Marsh
Move Android JNI accessor functions into separate header, to decouple it from the FAndroidApplication class.
Change 3584370 by Ben.Marsh
Move hooks which allow platforms to load any modules into the FPlatformApplicationMisc classes.
Change 3584498 by Ben.Marsh
Move functions for getting and setting the hardware window pointer onto the appropriate platform window classes.
Change 3585003 by Steve.Robb
Fix for TChunkedArray ranged-for iteration.
#jira UE-48297
Change 3585235 by Ben.Marsh
Remove LogEngine extern from Core; use the platform log channels instead.
Change 3585942 by Ben.Marsh
Move MessageBoxExt() implementation into application layer for platforms that require it.
Change 3587071 by Ben.Marsh
Move Linux's UngrabAllInput() function into a callback, so DebugBreak still works without SDL.
Change 3587161 by Ben.Marsh
Remove headers which will be stripped out of the Core module from Core.h and PlatformIncludes.h.
Change 3587579 by Steve.Robb
Fix for Children list not being rebuilt after hot reload.
Change 3587584 by Graeme.Thornton
Logging improvements for pak signature check failures
- Added "PakCorrupt" console command which corrupts the master signature table
- Added some extra log information about which block failed
- Re-hash the master signature table and to make sure that it hasn't changed since startup
- Moved the ensure around so that some extra logging messages can make it out before the ensure is hit
- Added PAK_SIGNATURE_CHECK_FAILS_ARE_FATAL to IPlatformFilePak.h so we have a single place to make signature check failures fatal again
Change 3587586 by Graeme.Thornton
Changes to make UBT build and run on .NET Core
- Added *_DNC csproj files for DotNETUtilities and UnrealBuildTool projects which contain the .NET Core build setups
- VCSharpProjectFile can no be asked for the CsProjectInfo for a particular configuration, which is cached for future use
- After loading VCSharpProjectFiles, .NET Core based projects will be excluded unless generating VSCode projects
Change 3587953 by Steve.Robb
Allow arbitrary UENUM initializers for enumerators.
Editor-only data UENUM support.
Enumerators named MAX are now treated as the UENUM's maximum, and will not cause a MAX+1 value to be generated.
#jira UE-46274
Change 3589827 by Graeme.Thornton
More fixes for VSCode project generation and for UBT running on .NET Core
- Use a different file extension for rules assemblies when build on .NET Core, so they never get used by their counterparts
- UEConsoleTraceListener supports stdout/stderror constructor parameter and outputs to the appropriate channel
- Added documentation for UEConsoleTraceListener
- All platforms .NET project compilation tasks/launch configs now use "dotnet" and not the normal batch files
- Restored the default UBT log verbosity to "Log" rather than "VeryVeryVerbose"
- Renamed assemblies for .NETCore versions of DotNETUtilities and UnrealBuildTool so they don't conflict with the output of the existing .NET Desktop Framework stuff
Change 3589868 by Graeme.Thornton
Separate .NET Core projects for UBT and DotNETCommon out into their own directories so that their intermediates don't overlap with the standard .NET builds, causing failures.
UBT registers ONLY .NET Core C# projects when generating VSCode solutions, and ONLY standard C# projects in all other cases
Change 3589919 by Robert.Manuszewski
Fixing crash when cooking textures that have already been cooked for EDL (support for cooked content in the editor)
Change 3589940 by Graeme.Thornton
Force UBT to think it's running on mono when actually running on .NET Core. Disables a lot of windows specific code paths.
Change 3590078 by Graeme.Thornton
Fully disable automatic assembly info generation in .NET Core projects
Change 3590534 by Robert.Manuszewski
Marking UObject as intrinsic clas to fix a crash on UFE startup.
Change 3591498 by Gil.Gribb
UE4 - Fixed several edge cases in the low level async loading code, especially around cancellation. Also PakFileTest is a console command which can be used to stress test pak file loading.
Change 3591605 by Gil.Gribb
UE4 - Follow up to fixing several edge cases in the low level async loading code.
Change 3592577 by Graeme.Thornton
.NET Core C# projects now reference source files explicitly, to stop it accidentally compiling various intermediates
Change 3592684 by Steve.Robb
Fix for EObjectFlags being passed as the wrong argument to csgCopyBrush.
Change 3592710 by Steve.Robb
Fix for invalid casts in ListProps command.
Some name changes in command output.
Change 3592715 by Ben.Marsh
Move Windows event log code into cpp file, and expose it to other modules even if it's not enabled by default.
Change 3592767 by Gil.Gribb
UE4 - Changed the logic so that engine UObjects boot before anything else. The engine classes are known to be cycle-free, so we will get them done before moving onto game modules.
Change 3592770 by Gil.Gribb
UE4 - Fixed a race condition with async read completion in the prescence of cancels.
Change 3593090 by Steve.Robb
Better error message when there two clashing type names are found.
Change 3593697 by Steve.Robb
VisitTupleElements function, which calls a functor for each element in the tuple.
Change 3595206 by Ben.Marsh
Include additional diagnostics for missing imports when a module load fails.
Change 3596140 by Graeme.Thornton
Batch file for running MSBuild
Change 3596267 by Steve.Robb
Thread safety fix to FPaths::GetProjectFilePath().
Change 3596271 by Robert.Manuszewski
Added code to verify compression flags in package file summary to avoid cases where corrupt packages are crashing the editor
#jira UE-47535
Change 3596283 by Steve.Robb
Redundant casts removed from UHT.
Change 3596303 by Ben.Marsh
EC: Improve parsing of Android Clang errors and warnings, which are formatted as MSVC diagnostics to allow go-to-line clicking in the Output Window.
Change 3596337 by Ben.Marsh
UBT: Format messages about incorrect headers in a way that makes them clickable from Visual Studio.
Change 3596367 by Steve.Robb
Iterator checks in ranged-for on TMap, TSet and TSparseArray.
Change 3596410 by Gil.Gribb
UE4 - Improved some error messages on runtime failures in the EDL.
Change 3596532 by Ben.Marsh
UnrealVS: Fix setting command line to empty not affecting property sheet. Also remove support for VS2013.
#jira UE-48119
Change 3596631 by Steve.Robb
Tool which takes a .map file and a .objmap file (from UBT) and creates a report which shows the size of all the symbols contributed by the source code per-folder.
Change 3596807 by Ben.Marsh
Improve Intellisense when generated headers are missing or out of date (eg. line numbers changed, etc...). These errors seem to be masked by VAX, but are present when using the default Visual Studio Intellisense.
* UCLASS macro is defined to empty when __INTELLISENSE__ is defined. Previous macro was preventing any following class declaration being parsed correctly if generated code was out of date, causing squiggles over all class methods/variables.
* Insert a semicolon after each expanded GENERATED_BODY macro, so that if it parses incorrectly, the compiler can still continue parsing the next declaration.
Change 3596957 by Steve.Robb
UBT can be used to write out an .objsrcmap file for use with the MapFileParser.
Renaming of ObjMap to ObjSrcMap in MapFileParser.
Change 3597213 by Ben.Marsh
Remove AutoReporter. We don't support this any more.
Change 3597558 by Ben.Marsh
UGS: Allow adding custom actions to the context menu for right clicking on a changelist. Actions are specified in the project's UnrealEngine.ini file, with the following syntax:
+ContextMenu=(Label="This is the menu item", Execute="foo.exe", Arguments="bar")
The standard set of variables for custom tools is expanded in each parameter (eg. $(ProjectDir), $(EditorConfig), etc...), plus the $(Change) variable.
Change 3597982 by Ben.Marsh
Add an option to allow overriding the local DDC path from the editor (under Editor Preferences > Global > Local Derived Data Cache).
#jira UE-47173
Change 3598045 by Ben.Marsh
UGS: Add variables for stream and client name, and the ability to escape any variables for URIs using the syntax $(VariableName:URI).
Change 3599214 by Ben.Marsh
Avoid string duplication when comparing extensions.
Change 3600038 by Steve.Robb
Fix for maps being modified during iteration in cache compaction.
Change 3600136 by Steve.Robb
GitHub #3538 : Fixed a bug with the handling of 'TMap' key/value types in the UnrealHeaderTool
Change 3600214 by Steve.Robb
More accurate error message when unsupported template parameters are provided in a TSet property.
Change 3600232 by Ben.Marsh
UBT: Force UHT to run again if the .build.cs file for a module has changed.
#jira UE-46119
Change 3600246 by Steve.Robb
GitHub #3045 : allow multiple interface definition in a file
Change 3600645 by Ben.Marsh
Convert QAGame to Include-What-You-Use.
Change 3600897 by Ben.Marsh
Fix invalid path (multiple slashes) in LibCurl.build.cs. Causes exception when scanning for includes.
Change 3601558 by Graeme.Thornton
Simple first pass VSCode editor integration plugin
Change 3601658 by Graeme.Thornton
Enable intellisense generation for VS Code project files and setup include paths properly
Change 3601762 by Ben.Marsh
UBT: Add support for adaptive non-unity builds when working from a Git repository.
The ISourceFileWorkingSet interface is now used to query files belonging to the working set, and has separate implementations for Perforce (PerforceSourceFileWorkingSet) and Git (GitSourceFileWorkingSet). The Git implementation is used if a .git directory is found in the directory containing the Engine folder, the directory containing the project file, or the parent directory of the project file, and spawns a "git status" process in the background to determine which files are untracked or staged.
Several new settings are supported in BuildConfiguration.xml to allow modifying default behavior:
<SourceFileWorkingSet>
<Provider>Default</Provider> <!-- May be None, Default, Git or Perforce -->
<RepositoryPath></RepositoryPath> <!-- Specifies the path to the repository, relative to the directory containing the Engine folder. If not set, tries to find a .git directory in the locations listed above. -->
<GitPath>git</GitPath> <!-- Specifies the path to the Git executable. Defaults to "git", which assumes that it will be on the PATH -->
</SourceFileWorkingSet>
Change 3604032 by Graeme.Thornton
First attempt at automatically detecting the existance and location of visual studio code in the source code accessor module. Only works for windows.
Change 3604038 by Graeme.Thornton
Added FSourceCodeNavigation::GetSelectedSourceCodeIDE() which returns the name of the selected source code accessor.
Replaced all usages of FSourceCodeNavigation::GetSuggestedSourceCodeIDE() with GetSelectedSourceCodeIDE(), where the message is referring to the opening or editing of code.
Change 3604106 by Steve.Robb
GitHub #3561 : UE-44950: Don't see all caps struct constructor as macro
Change 3604192 by Steve.Robb
GitHub #3911 : Improving ToUpper/ToLower efficiency
Change 3604273 by Graeme.Thornton
IWYU build fixes when malloc profiler is enabled
Change 3605457 by Ben.Marsh
Fix race for intiialization of ThreadID variable on FRunnableThreadWin, and restore a previous check that was working around it.
Change 3606720 by James.Hopkin
Dave Ratti's fix to character base recursion protection code - was missing a GetOwner call, instead attempting to cast a component to a pawn.
Change 3606807 by Graeme.Thornton
Disabled optimizations around FShooterStyle::Create(), which was crashing in Win64 shipping game builds due to some known compiler issue. Same variety of fix as BenZ did in CL 3567741.
Change 3607026 by James.Hopkin
Fixed incorrect ABrush cast - was attempting to cast a UModel to ABrush, which can never succeed
Change 3607142 by Graeme.Thornton
UBT - Minor refactor of BackgroundProcess shutdown in SourceFileWorkingSet. Check whether the process has already exited before trying to kill it during Dispose.
Change 3607146 by Ben.Marsh
UGS: Fix exception due to formatting string when Perforce throws an error.
Change 3607147 by Steve.Robb
Efficiency fix for integer properties, which were causing a property mismatch and thus a tag lookup every time.
Float and double conversion support added to int properties.
NAME_DoubleProperty added.
Fix for converting enum class enumerators > 255 to int properties.
Change 3607516 by Ben.Marsh
PR #3935: Fix DECLARE_DELEGATE_NineParams, DECLARE_MULTICAST_DELEGATE_NineParams. (Contributed by enginevividgames)
Change 3610421 by Ben.Marsh
UAT: Move help for RebuildLightMapsCommand into attributes, so they display when running with -help.
Change 3610657 by Ben.Marsh
UAT: Unify initialization of command environment for build machines and local execution. Always derive parameters which aren't manually set via environment variables.
Change 3611000 by Ben.Marsh
UAT: Remove the -ForceLocal command line option. Settings are now determined automatically, independently of the -Buildmachine argument.
Change 3612471 by Ben.Marsh
UBT: Move FastJSON into DotNETUtilities.
Change 3613479 by Ben.Marsh
UBT: Remove the bIsCodeProject flag from UProjectInfo. This was only really being used to determine which projects to generate an IDE project for, so it is now checked in the project file generator.
Change 3613910 by Ben.Marsh
UBT: Remove unnecessary code to guess a project from the target name; doesn't work due to init order, actual project is determined later.
Change 3614075 by Ben.Marsh
UBT: Remove hacks for testing project file attributes by name.
Change 3614090 by Ben.Marsh
UBT: Remove global lookup of project by name. Projects should be explicitly specified by path when necessary.
Change 3614488 by Ben.Marsh
UBT: Prevent annoying (but handled) exception when constructing SQLiteModuleSupport objects with -precompile enabled.
Change 3614490 by Ben.Marsh
UBT: Simplify generation of arguments for building intellisense; determine the platform/configuration to build from the project file generation code, rather than inside the target itself.
Change 3614962 by Ben.Marsh
UBT: Move the VS2017 strict conformance mode (/permissive-) behind a command line option (-Strict), and disable it by default. Building with this mode is not guaranteed to work correctly without updated Windows headers.
Change 3615416 by Ben.Marsh
EC: Include an icon showing the overall status of a build in the grid view.
Change 3615713 by Ben.Marsh
UBT: Delete any files in output directories which match output files in other directories. Allows automatically deleting build products which are moved into another folder.
#jira UE-48987
Change 3616652 by Ben.Marsh
Plugins: Fix incorrect dialog when binaries for a plugin are missing. Should only prompt to disable if starting a content-only project.
#jira UE-49007
Change 3616680 by Ben.Marsh
Add the CodeAPI-HTML.tgz file into the installed engine build.
Change 3616767 by Ben.Marsh
Plugins: Tweak error message if the FModuleManager::IsUpToDate() function returns false for a plugin module; the module may be missing, not just incompatible.
Change 3616864 by Ben.Marsh
Cap the length of the temporary package name during save, to prevent excessively long filenames going over the limit once a GUID is appended.
#jira UE-48711
Change 3619964 by Ben.Marsh
UnrealVS: Fix single file compile for foreign projects, where the command line contains $(SolutionDir) and $(ProjectName) variables.
Change 3548930 by Ben.Marsh
UBT: Remove UEBuildModuleCSDLL; there is no codepath that still supports creating them. Remove the remaining UEBuildModule/UEBuildModuleCPP abstraction.
Change 3558056 by Ben.Marsh
Deprecate FString::Trim() and FString::TrimTrailing(), and replace them with separate versions to mutate (TrimStartInline(), TrimEndInline()) or return by copy (TrimStart(), TrimEnd()). Also add a functions to trim whitespace from both ends of a string (TrimStartAndEnd(), TrimStartAndEndInline()).
Change 3563309 by Graeme.Thornton
Moved some common C# classes into the DotNETCommon assembly
Change 3570283 by Graeme.Thornton
Move some code out of RPCUtility and into DotNETCommon, removing the dependency between the two projects
Added UEConsoleTraceListener to replace ConsoleTraceListener, which doesn't exist in DotNetCore
Change 3572811 by Ben.Marsh
UBT: Add -enableasan / -enabletsan command line options and bEnableAddressSanitizer / bEnableThreadSanitizer settings in BuildConfiguration.xml (and remove environment variables).
Change 3573397 by Ben.Marsh
UBT: Create a <ExeName>.version file for every target built by UBT, in the same JSON format as Engine/Build/Build.version. This allows monolithic targets to read a version number at runtime, unlike when it's embedded in a modules file, and allows creating versioned client executables that will work with versioned servers when syncing through UGS.
Change 3575659 by Ben.Marsh
Remove CHM API documentation.
Change 3582103 by Graeme.Thornton
Simple ResX writer implemetation that the xbox deloyment code can use instead of the one from the windows forms assembly, which isn't supported on .NET Core
Removed reference to System.Windows.Form from UBT.
Change 3584113 by Ben.Marsh
Move key-mapping functionality into the InputCore module.
Change 3584278 by Ben.Marsh
Move FPlatformMisc::RequestMinimize() into FPlatformApplicationMisc.
Change 3584453 by Ben.Marsh
Move functionality for querying device display density to FApplicationMisc, due to dependence on application-level functionality on mobile platforms.
Change 3585301 by Ben.Marsh
Move PlatformPostInit() into an FPlatformApplicationMisc function.
Change 3587050 by Ben.Marsh
Move IsThisApplicationForeground() into FPlatformApplicationMisc.
Change 3587059 by Ben.Marsh
Move RequiresVirtualKeyboard() into FPlatformApplicationMisc.
Change 3587119 by Ben.Marsh
Move GetAbsoluteLogFilename() into FPlatformMisc.
Change 3587800 by Steve.Robb
Fixes to container visualizers for types whose pointer type isn't simply Type*.
Change 3588393 by Ben.Marsh
Move platform output devices into their own headers.
Change 3588868 by Ben.Marsh
Move creation of console, error and warning output devices int PlatformApplicationMisc.
Change 3589879 by Graeme.Thornton
All automation projects now have a reference to DotNETUtilities
Fixed a build error in the WEX automation library
Change 3590034 by Ben.Marsh
Move functionality related to windowing and input out of the Core module and into an ApplicationCore module, so it is possible to build utilities with Core without adding dependencies on XInput (Windows), SDL (Linux), and OpenGL (Mac).
Change 3593754 by Steve.Robb
Fix for tuple debugger visualization.
Change 3597208 by Ben.Marsh
Move CrashReporter out of a public folder; it's not in a form that is usable by subscribers and licensees.
Change 3600163 by Ben.Marsh
UBT: Simplify how targets are cleaned. Delete all intermediate folders for a platform/configuration, and delete any build products matching the UE4 naming convention for that target, rather than relying on the current build configuration or list of previous build products. This will ensure that build products which are no longer being generated will also be cleaned.
#jira UE-46725
Change 3604279 by Graeme.Thornton
Move pre/post garbage collection delegates into accessor functions so they can be used by globally constructed objects
Change 3606685 by James.Hopkin
Removed redundant 'Cast's (casting to either the same type or a base).
In SClassViewer, replaced cast with TAssetPtr::operator* call to get the wrapped UClass.
Also removed redundant 'IsA's from AnimationRetargetContent::AddRemappedAsset in EditorAnimUtils.cpp.
Change 3610950 by Ben.Marsh
UAT: Simplify logic for detecting Perforce settings, using environment variables if they are set, otherwise falling back to detecting them. Removes special cases for build machines, and makes it simpler to set up UAT commands on builders outside Epic.
Change 3610991 by Ben.Marsh
UAT: Use the correct P4 settings to detect settings if only some parameters are specified on the command line.
Change 3612342 by Ben.Marsh
UBT: Change JsonObject.Read() to take a FileReference parameter.
Change 3612362 by Ben.Marsh
UBT: Remove some more cases of paths being passed as strings rather than using FileReference objects.
Change 3619128 by Ben.Marsh
Include builder warnings and errors in the notification emails for automated tests, otherwise it's difficult to track down non-test failures.
[CL 3620189 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3433074 by Matt.Kuhlenschmidt
Fix crash when clicking on certian tutorial blueprints.
#jira UE-44593
Change 3433075 by Matt.Kuhlenschmidt
Remove hittest grid log spam. The underlying problem causing this has been fixed
Change 3433077 by Matt.Kuhlenschmidt
Fix lighting becoming unbuilt when mesh painting
#jira UE-44837
Change 3433081 by Matt.Kuhlenschmidt
PR #3553: Crashfix for static array properties (Contributed by Pierdek)
Change 3433104 by Alexis.Matte
Make sure re-import skeletal mesh follow the import morph option
#jira UE-42846
Change 3434825 by Matt.Kuhlenschmidt
Fix crash when GC happens while the vr editor radial menu is open.
Change 3434831 by Matt.Kuhlenschmidt
Added missing file
Change 3434868 by Shaun.Kime
If you have a reroute node between a Material Function texture input and its usage, the parent material will fail to resolve the reroute node.
#jira ue-44670
Change 3434998 by Alexis.Matte
Meshes editors material/section panel are now fully transactional
- Staticmesh editor: section material slot, section cast shadow, section collision, material slot instance, material slot name
- Skeletal mesh editor: material slot instance, material slot name
Also fix some transaction description
#jira UE-44462
Change 3435195 by Jamie.Dale
Fixed incorrect handling of some LTR scripts that require shaping
These scripts need to go through HarfBuzz, and this also fixes a case where HarfBuzz wasn't applying font scale correctly.
#jira UE-44767
Change 3435199 by Jamie.Dale
Fixed some crashes/artifacts with bidirectional text
It was possible for a line to compute an incorrect range, which could cause crashes or other highlighting issues. The highlighting logic has also been updated as the old code didn't handle all bidirectional cases correctly.
Change 3435200 by Jamie.Dale
Fixed a grapheme cluster metrics issue in the font editor viewport
The viewport also now respects the default shaping method CVar.
Change 3435771 by Alexis.Matte
Fix degenerated bounds calculation for skeletalmesh when the skeleton is remove from a re-import
(PhysicAsset API change, adding 1 function)
#jira UE-44609
Change 3436856 by Jamie.Dale
Added some missing Unicode block ranges
Change 3436914 by Jamie.Dale
Adding some missing combining character ranges to the text shaper
Change 3436923 by Alexis.Matte
PR #3463: Get bounds for all triangles, not just the first one. WedgeIndex was . (Contributed by DaveC79)
#jira UE-43764
Change 3436948 by Jamie.Dale
Updated the Portal to use the predefined Unicode block ranges
Change 3436961 by Max.Chen
Sequencer: Show camera shake/anim track menus even if there aren't any assets.
Change 3437244 by Max.Chen
Sequencer: Clear locked cameras when releasing Sequencer.
#jira UE-44967
Change 3437515 by Arciel.Rekman
UBT: improvements for LocalExecutor.
- Larger number of parallel jobs on 16GB+ machines.
- Use WaitForExit() instead of polling.
- Tested on Linux and Mac.
Change 3437629 by Matt.Kuhlenschmidt
Improve asset import data display in static and skeletal meshes
Change 3438047 by Arciel.Rekman
Fix overlapping ranges being passed to memcpy().
Change 3438822 by Yannick.Lange
ViewportInteraction: Move gizmo handle files to make them private.
Change 3438906 by Matt.Kuhlenschmidt
PR #3556: Git Plugin: fix new option "init Git LFS" that make assets read-only (master/UE4.17) (Contributed by SRombauts)
Change 3438907 by Matt.Kuhlenschmidt
PR #3565: add -quality option to buildlighing commandlet (Contributed by kayama-shift)
Change 3438908 by Matt.Kuhlenschmidt
PR #3558: UE-44862: Always update SColorPicker color on OK button (Contributed by projectgheist)
Change 3439393 by Matt.Kuhlenschmidt
Force highest LOD for highres screenshots
Change 3439819 by Matt.Kuhlenschmidt
Turned FAssetData into a struct for some upcoming script exposure of FAssetData
Change 3439949 by Arciel.Rekman
Fixed selection logic for the UE4_LINUX_USE_LIBCXX environment variable.
- Allows disabling libc++ by setting the variable to 0.
- Pull request #3576 contributed by jared-improbable.
Change 3441078 by Jamie.Dale
The culture/language/locale console commands are now available in all build configs
Change 3441109 by Jamie.Dale
Text containing surrogate pairs now runs through HarfBuzz when shaping in Auto mode
This is needed as the kerning-only shaping code assumes that everything is within the BMP
Change 3441275 by Matt.Kuhlenschmidt
Disable spinning on location and scale. These dont work because we have no notion of infinite spinning
Change 3442748 by Yannick.Lange
ViewportInteraction: Remove unused console variables.
Change 3442775 by James.Golding
Add support for editing MaterialFunctions to MaterialEditingLibrary
Pull Material recompile/update code into UMaterialEditingLibrary::RecompileMaterial
Pull MaterialFunction update code into UMaterialEditingLibrary::UpdateMaterialFunction util
Move RebuildMaterialInstanceEditors to UMaterialEditingLibrary
Added test content for Material/MaterialFunction editing
Add needed BlueprintReadWrite to expressions (constants, function input/output)
Expose UMaterialExpressionMaterialFunctionCall::SetMaterialFunction to BP, rename old func (which takes old function) to SetMaterialFunctionEx, also expose GetInputNameWithType
Change 3442779 by James.Golding
Fix header order
Change 3442817 by Yannick.Lange
ViewportInteraction: Add can execute checks for level editor commands.
Change 3443038 by Michael.Dupuis
#jira UE-43377: When you select a foliage actor we will move all instance contained in it to the new level as we can't move a foliage actor
Only permit moving foliage instance if there is some selected
Change 3443855 by Michael.Dupuis
#jira UE-44885: Unregister from PerModuleDataObjects when the object is destroyed
Change 3446096 by Max.Chen
Sequencer: Add OnFinished() event when a level sequence completes playback
#jira UE-45173
Change 3446097 by Max.Chen
Sequencer: Evaluate one last time before the sequence is torn down and reset
#jira UE-45174
Change 3446242 by Jamie.Dale
Fixed caret not appearing in empty text layouts
Caret selections have no range, and therefore have no width
Change 3446361 by Matt.Kuhlenschmidt
Fix WITH_EDITOR only functions causing generated code compile errors when the all functions on the class are WITH_EDITOR
Change 3446457 by Alexis.Matte
Polish the speed tree import dialog
#jira UE-44963
Change 3446946 by Michael.Trepka
Modified FWindowsWindow::GetRestoredDimensions to return correct window position for normal windows for which GetWindowPlacement returns position in workspace coordinates
#jira UE-37934
Change 3447543 by Arciel.Rekman
Reduce VMAs on Linux.
- Trades off increased address space (VIRT in terms of ps/htop) for smaller number of distinct mappings (VMAs, virtual memory areas).
This decreases possibility to run into vm.max_map_count limit on Linux.
- Tested on Linux and Mac.
Change 3448468 by Arciel.Rekman
Fix race condition during creation of GMalloc.
- On Mac GMalloc can be created on two different thread that are racing with each other - app's main thread and a system thread.
Change 3449012 by Max.Chen
Sequencer: Add time to transform, color and vector key structs so that key times are editable from the key editors.
#jira UE-45089
Change 3449018 by Max.Chen
Sequencer: Add OnCameraCut event that fires when there is a camera cut.
#jira UE-45137
Change 3449195 by Max.Chen
Sequencer: Add setting for limit scrubbing to playback range.
#jira UE-43502
Change 3449198 by Max.Chen
Sequencer: Reorder hierarchical bias so that group priority takes precedence.
Change 3449217 by Max.Chen
Sequencer: Add setting to activate realtime viewports when in sequencer.
Change 3449219 by Max.Chen
Sequencer: Focus on search boxes when opened.
Change 3449238 by Max.Chen
Sequencer: Assign actor should replace the actor itself after it has updated all the components. Also, replace components be fullname rather than by class.
Change 3449239 by Max.Chen
Sequencer: Fix offsets when moving multiple sections. Dragging should be clamped to the bounds that any of the selected sections hits against the unselected sections.
Change 3449241 by Max.Chen
Sequencer: Restore section selection after full tree rebuild.
Change 3449279 by Max.Chen
Sequencer: Set movie scene capture frames only when not using custom frames. This allows the user entered frame numbers to persist in config, rather than overwriting them when doing a "Render Shot"
Change 3449280 by Max.Chen
Sequencer: Spawn in the persistent level. Otherwise, they get spawned into whatever sublevel is current.
#jira UE-44552
Change 3449294 by Max.Chen
Sequencer: Null check for sequencer ed mode crash.
Change 3449297 by Max.Chen
Sequencer: Fix delay in sliding values. Mark changed when sliding values. Mark refresh immediately when committing values since OnValueChanged will be called and needs to have the correct value that was refreshed immediately.
#jira UE-42866
Change 3449542 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3451507 by Matt.Kuhlenschmidt
Fix extra slate uv coords not functioning on ES2
Change 3451510 by Matt.Kuhlenschmidt
PR #3595: Fixed wrong colour for level status (Contributed by ronve)
Change 3451529 by Alexis.Matte
fbx scene importer: Make sure we set INVALID_UNIQUE_ID to node that has no attribute.
#jira UE-34410
Change 3451611 by Yannick.Lange
ViewportInteraction: Dragging gizmo without second pass for snapped calculations.
Change 3452134 by Jamie.Dale
Fixed constant font cache flushing if a widget had no font set
Change 3452239 by Jamie.Dale
Fixed constant font measure flushing if a widget had no font set
Change 3452243 by Jamie.Dale
Removed deprecated code for creating fonts from bulk data
Change 3452277 by Jamie.Dale
The concept of "stale" composite fonts is now editor-only
Change 3452358 by Alexis.Matte
Fbx scene importer: Do not remove existing attribute reference from the blueprint if the reimport of the associate mesh attribute is not tick.
#jira UE-45232
Change 3452678 by Max.Chen
Sequencer: Fix crash on export if there's no shot data.
Change 3453057 by Matt.Kuhlenschmidt
Exposed asset exporting to script
Change 3453782 by Andrew.Rodham
Sequencer: Fixed deterministic cooking issues with movie scene data
- Movie scene signatures are now initialized in PostInitProperties
- A warning is now presented when attempting to cook old data that was never serialized with a signature.
- Removed redundant legacy data upgrade logic that could dirty level sequences on load.
#jira UE-44912
Change 3453788 by Yannick.Lange
ViewportInteraction: Custom scene proxy for gizmo handles.
Change 3453938 by Max.Chen
Sequencer: Hotkeys (shift , and shift .) to step to next/previous shot
#jira UE-45119
Change 3454058 by Michael.Dupuis
Fixed StaticAnalysis
Change 3454077 by Max.Chen
Sequencer: Fix not saving the pre-animated track value when creating a track/key.
On pre object change, broadcast property change so that a track or key can be created. That track/key needs to be evaluated immediately so that the pre-animated state can be saved properly. This is done now with RefreshAllImmediately and is only called when a track has been created. Also, added a return value for OnKeyProperty, so that it's known what changed in particular (ie. track created, track modified, etc)
Also, fixed transform keying so that if a transform track already exists for the object or the scene component, the existing track is used.
#jira UE-45130
Change 3454108 by Nick.Darnell
UMG - Fixing the WIC to properly record cursor delta so that scrollbars work.
Change 3454109 by Jamie.Dale
Cache the text layout source info in non-shipping builds so you can inspect it in the debugger
Change 3454202 by Matt.Kuhlenschmidt
Fix bogus error message about the number of usable texture coordinates on ES2 when compiling a UI domain material
Change 3454390 by Yannick.Lange
Fix creating a plugin in a C++ project opens a second instance of Visual Studio. Use SourceCodeAccessor to open solution when necessary.
#jira UE-45035
Change 3454564 by Matt.Kuhlenschmidt
#rnx Fix deprecation warnings
Change 3455471 by Yannick.Lange
ViewportInteraction: Fix entering and exiting VR Mode disables gizmo in desktop editor viewport.
#jira UE-44965
Change 3456183 by Max.Chen
Sequencer: Auto key, auto track refactor.
Auto key - create a key when the property changes and there's an existing track.
Auto track - create a track when the property changes. This is only exposed in the level sequence editor.
All - create a key and a track when the property changes. This is only exposed in VR Editor.
None - do nothing.
#jira UE-43469
Change 3456349 by Andrew.Rodham
Sequencer: Only perform legacy signature checks on instances, and only where signatures match the CDO
Change 3456678 by Alexis.Matte
Allow to add null level instance override material via the advance material array. But still limit the override material number to the mesh material number.
#jira UE-45306
Change 3456945 by Max.Chen
UMG: Add restore state to 2d transform section.
#jira UE-45372
Change 3457196 by Arciel.Rekman
Linux: serialize allocations from the memory pool.
Change 3458434 by Max.Chen
Sequencer: Remove obsolete set tick prerequites functions.
Change 3458671 by James.Golding
Added MIC editing support to MaterialEditingLibrary
Fix static analysis warning
Change 3458888 by Matt.Kuhlenschmidt
PR #3615: More detailed log messages for debugging warnings/errors (Contributed by projectgheist)
Change 3458893 by Matt.Kuhlenschmidt
PR #3583: UE-44960: Delta value wasn't being used (Contributed by projectgheist)
Change 3458895 by Matt.Kuhlenschmidt
Fix typo
Change 3458902 by Matt.Kuhlenschmidt
PR #3607: Improved InputKeySelector functionality (Contributed by projectgheist)
Change 3458917 by Matt.Kuhlenschmidt
Fix crash with invalid object properties in the class picker
#jira UE-39000
Change 3458939 by Matt.Kuhlenschmidt
Fix compile error
Change 3458984 by andrew.porter
QAGame: Initial check in of sequencer smoke test map
Change 3459510 by Matt.Kuhlenschmidt
Fixed ensure when deleting a map that contains build data which also happens to be the currently loaded map.
#jira UE-45052
Change 3460985 by Max.Chen
Sequencer: Snap play time to keys now allows scrubbing between keys and snaps to key times within a certain screenspace tolerance.
#jira UE-45090
Change 3461698 by Arciel.Rekman
Avoid using ARRAY_COUNT in Vulkan.
- Sometimes those arrays can have no extensions whatsoever, and it is illegal to declare a 0 element C array.
Change 3462053 by Max.Chen
Sequencer: Show sequencer spawnables in the world outliner and add the icon overlay for spawnables.
#jira UE-43470
Change 3462139 by Max.Chen
Property Editor: Add objects to FPropertyAndParent
Change 3462202 by Arciel.Rekman
Fix FSocket::Recv() blocking with Peek when there's no data.
Change 3462253 by Nick.Darnell
Slate - New Clipping System
Clipping is now a stateful choice made during composition of the slate hierarchy. Previously every widget got to respect or modify the clipping rect on an as needed basis. The problem was that clipping was only allowed in the layout space of the widget, and it wasn't possible to properly clip elements with render transforms. The new system permits all kinds of transforms on any widget, and they will all be clipped correctly. It tries to use Scissor Rects as they are much cheaper, but will switch over to stenciling if need be to represent a complicated masking structure with several rotated clipping rects all needed to be combined together.
Here are the new clipping states a widget can have, almost all widgets are set to No. Only change it from No if your widget actually needs to clip, generally speaking most widgets don't need to clip.
/**
* This widget does not clip children, it and all children inherit the clipping area of the last widget that clipped.
*/
Inherit,
/**
* This widget clips content the bounds of this widget. It intersects those bounds with any previous clipping area.
*/
ClipToBounds,
/**
* This widget clips to its bounds. It does NOT intersect with any existing clipping geometry, it pushes a new clipping
* state. Effectively allowing it to render outside the bounds of hierarchy that does clip.
*
* NOTE: This will NOT allow you ignore the clipping zone that is set to [Yes - Always].
*/
ClipToBoundsWithoutIntersecting UMETA(DisplayName = "Yes - Without Intersecting (Advanced)"),
/**
* This widget clips to its bounds. It intersects those bounds with any previous clipping area.
*
* NOTE: This clipping area can NOT be ignored, it will always clip children. Useful for hard barriers
* in the UI where you never want animations or other effects to break this region.
*/
ClipToBoundsAlways UMETA(DisplayName = "Yes - Always (Advanced)"),
/**
* This widget clips to its bounds when it's Desired Size is larger than the allocated geometry
* the widget is given. If that occurs, it behaves like [Yes].
*
* NOTE: This mode was primarily added for Text, which is often placed into containers that eventually
* are resized to not be able to support the length of the text. So rather than needing to tag every
* container that could contain text with [Yes], which would result in almost no batching, this mode
* was added to dynamically adjust the clipping if needed. The reason not every panel is set to OnDemand,
* is because not every panel returns a Desired Size that matches what it plans to render at.
*/
OnDemand UMETA(DisplayName = "On Demand (Advanced)")
- Large API Change -
All FSlateDrawElement::Make_____ calls have been deprecated that involved passing in a clipping rect. You no longer should are passed a Clipping rect via OnPaint. You are still passed a rect, but this rect represents a Culling Rect, which is valuable if you need to just out right not paint things the user can't possibly see.
If you were previously trying to determine if you should cull widgets, by doing something like this,
if ( FSlateRect::DoRectanglesIntersect(MyClippingRect, CurWidget.Geometry.GetRenderBoundingRect()) )
That's no longer a good option since there are ways for widgets to ignore the culling bounds. You should convert anything like above to the one below,
if (!SWidget::IsWidgetCulled(MyCullingRect, CurWidget))
To assist in debugging efforts, there are several new debugging console flags in Slate,
Slate.ShowClipping 1 - Controls whether we should render a clipping zone outline. Yellow = Axis Scissor Rect Clipping (cheap). Red = Stencil Clipping (expensive).
Slate.DebugCulling 1 - Disables pushing clipping or stencil rects to the GPU, but continues to intersect culling rects, so that you can tell if a widget is properly culling children it can't possibly draw.
Slate.ShowTextDebugging 1 - Show debugging painting for text rendering.
I've added a new Experimental Feathering Option, it adds AA geometry around the outside of Box and Image brushes.
Slate.Feathering 1
If you're using RenderDoc or something similar, you can now enable render events for slate, so that you can better grok how we're batching and changing states for each UI render pass.
Slate.EnableDrawEvents 1
#jira UE-4659
#rn
Change 3462714 by Nick.Darnell
Fixing a few more compiler issues with the clipping changes.
Change 3462726 by Max.Chen
Switch OnEditStructChildContentsChanged to use FObjectWriter instead of FMemoryWriter which supports serializeing UObjects. This fixes a crash when adding actor array elements to a user defined event struct.
#jira UE-45431
Change 3462801 by Nick.Darnell
Adding a UMG dependency to EngineTestBuild.
Change 3462914 by Max.Chen
Sequencer: Fix regression where spawnables aren't getting saved. Caused by 3407138
#jira UE-30007
#jira UE-39003
Change 3462946 by Nick.Darnell
Automation - Tweaking the UI automation tests converting them over to use the new UI Screenshot automation test.
Automation - Adding a blur widget test.
Change 3462987 by Matt.Kuhlenschmidt
Back out changelist 3458893
Change 3464774 by Matt.Kuhlenschmidt
PR #3629: Bugfix: Missing small icon in Project Launcher profile editor (Contributed by aarmbruster)
Change 3464785 by Nick.Darnell
Fixing some clipping stuff in the editor.
Change 3464830 by andrew.porter
QAGame: Second pass on sequencer smoke test map
Change 3464902 by Nick.Darnell
Loading - Adding some additional checks to the the loading code to ensure we're on the main thread. Additionally adding a fix from UDN that prevents deadlocks in the rare case a user hits Alt+Tab in a fullscreen game while in a hard loading screen.
Change 3464988 by Max.Chen
Sequencer: Add attenuation settings for attached audio components.
#jira UE-33080
Change 3465024 by Nick.Darnell
MoviePlayer - Impoving the playback mode displaynames.
Change 3465074 by Arciel.Rekman
Fix shadowing issues of GraphicsPSOInit.
Change 3465097 by Matt.Kuhlenschmidt
Some refactoring of the details panel
Exposed new methods of adding a struct on scope to a details panel and have it work properly with customizations. The scruct on scope has a "fake" ustructproperty that allows the details panel to show the whole struct not just an individual property.
Refactored the API for adding rows to details panels to make it more consistent\
AddChildCustomBuilder->AddCustomBuilder
AddChildGroup->AddGroup
AddChildContent->AddCustomRow
AddChildPropert->AddProperty
AddChildStructure->AddExternalStructureProperty
AddStructure->AddAllExternalStructureProperties
AddExternalProperty->AddExternalObjectProperty or AddExternalStructureProperty
Change 3465186 by Max.Chen
Sequencer: Save the BindingID in the pre animated token producer so that it can be destroyed properly. This fixes a bug where the default state of a spawnable isn't saved.
#jira UE-43780
Change 3465315 by Matt.Kuhlenschmidt
Fix Fortnite and Orion details panel customization warnings
Change 3465424 by Nick.Darnell
Automation - Moving the step for setting the link to the automation reports to be set before we start the engine.
Change 3465488 by Nick.Darnell
Automation - Forcing textures to load before taking screenshot, so that the scene gets another opportunity to render before we render with Slate. This should fix the Blur UI Test.
Change 3466277 by Arciel.Rekman
Linux: fix window drift when dragging (UE-40380).
- Change by Cengiz Terzibas.
Change 3466370 by Nick.Darnell
UMG - Fixing the colors for the resize handle in the designer.
Change 3466372 by Nick.Darnell
UMG - Fixing the ruler ticks sometimes not being drawn.
Change 3466374 by Nick.Darnell
UMG - Fixing the designer showing multiple options for sequencer.
Change 3466377 by Nick.Darnell
UMG - Cleaning up some clipping bits.
Change 3467025 by Andrew.Rodham
Re-saving assets that contain legacy (<4.15) movie scene data to remove deterministic cook warning.
If conflicts arise during merging of these assets, please ignore the changes made in dev-editor, and accept game-side changes.
(CIS step 62283298, jobId 7773146)
(CIS step 62283297, jobId 7773146)
Change 3467099 by Max.Chen
Fix GetObjectPropertyClass ensure logic. This was returning UObject::StaticClass when valid.
Change 3467172 by Max.Chen
Sequencer: Evaluation optimizations. Also, fixes subsequences not getting expired, leaving dangling spawnables.
#jira UE-43690
Change 3467192 by Matt.Kuhlenschmidt
Fix transactions getting stuck in the color grading controls. This prevents PIE from working properly and causes shutdown crashes
#jira UE-45527
Change 3467251 by Yannick.Lange
ViewportInteraction: Fix scale and rotation snap while dragging with two lasers.
#jira UE-43489
Change 3467331 by Matt.Kuhlenschmidt
Fix D3D shader compiler hard coding shader path and not giving proper warnings when it cannot find the shaders
Change 3467335 by Matt.Kuhlenschmidt
Remove DarkStyle attribute from SNumericEntryBox and allow a spin box style to be passed to it.
Change 3467558 by Max.Chen
Scene Outliner: Generic support to add default columns to a scene outliner.
Change 3467565 by Jamie.Dale
Removing old screenshot data for test
Change 3467589 by Nick.Darnell
Editor - Random cleanup.
Change 3467596 by Nick.Darnell
Progress Bar - Exposing Border Padding to UMG.
Change 3467600 by Nick.Darnell
Slate - Adjusting the rendering of the splitter, previously it could be off by a pixel or two, which becomes more apparent now with the clipping changes.
Change 3467601 by Max.Chen
Property Editor: Fix static analysis warning
Change 3467662 by Nick.Darnell
Automation - Fixing a bug with the screenshot comparison tool not replacing (removing) the old screenshot data.
Change 3467674 by Max.Chen
Property Editor: Fix static analysis warning
Change 3467737 by Max.Chen
Sequencer: Added OnMovieSceneBindingsChanged delegate
Change 3468053 by tim.gautier
QAGame: Updating Editor Smoke Map
- Updated landscapes into Stations for testing
- Added Foliage Sublevel
Change 3468194 by Arciel.Rekman
Linux: fix problems communicating with various STL-using libs.
- Stop hiding global new/delete signatures.
- Disable CEF3 since this change uncovers the problem with libcef.so not built to use bundled libpng.
Change 3468678 by Max.Chen
Sequencer: Set "Sequencer Actor" tag before setting the actor label so that the outliner refreshes after the actor has the tag.
Change 3469314 by tim.gautier
QAGame: Added Painted Foliage / Spline section to EditorSmoke map
Change 3469377 by Nick.Darnell
Slate - Fixing some warnings in a couple of sample games due to the clipping changes.
#rnx
Change 3469767 by Max.Chen
Sequencer: Outliner column and sequencer binding data
#jira UE-43470
Change 3469974 by Arciel.Rekman
Fix code projects not working in Linux installed build.
Change 3470082 by Nick.Darnell
Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.
Change 3470174 by Nick.Darnell
Slate - Get the last widget in a widget path utility.
Change 3470176 by Nick.Darnell
UMG - User Widgets now have an easy way to know if they're part of or have been removed from the focused widget path, which is handy for doing effects.
Change 3470261 by Nick.Darnell
Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.
Change 3470286 by Max.Chen
Sequencer: Scene Component's HiddenInGame now goes through the VisibilityTrack and the visibility template.
Change 3470366 by Nick.Darnell
Slate - We now version focus per user, that way during focus events, we can safely abort focus events and state transitions if someone interrrupts the active focus event with something new.
Change 3470649 by Matt.Kuhlenschmidt
Fix deprecation warnings
Change 3470695 by Matt.Kuhlenschmidt
Fixed typo
#jira UE-45580
Change 3470721 by Matt.Kuhlenschmidt
Fix static analysis
Change 3471254 by Michael.Dupuis
#jira UE-42952: Keep occlusion result per view
Change 3471287 by Nick.Darnell
UMG - Render Focus Rule now defaults to never.
Change 3471291 by Nick.Darnell
Slate - Fixing FSlateRenderer* change fallout.
Change 3471299 by Nick.Darnell
Slate - Fixing FSlateRenderer* change.
Change 3471323 by Nick.Darnell
Automation - Fixing automation and Static Analysis warning.
Change 3471413 by andrew.porter
QAGame: Added test content for anim blending and material parameteres to sequencer smoke level
Change 3471649 by Max.Chen
Sequencer: Modify the track when adding animation
#jira UE-45618
Change 3471659 by Matt.Kuhlenschmidt
Added a way to check if a movie is playing from the engine.
Prevented viewport redraws for canvas loading screens if a slate based loading movie is playing
Change 3471734 by Matt.Kuhlenschmidt
Added basic material hookup to USD. Similar to FBX it will find materials based on rules specified by the user in the import settings
Change 3472176 by Nick.Darnell
UMG - Improving the display of the +Track menu in sequencer for UMG. Renamed it from +Add, which is repetitve to +Track. Additionally, the dropdown now shows the currently selected widgets, as well as a submenu containing all the 'important' widgets, so we no longer populate that list with a ton of irrelevant widgets that are just Buton_1 - N, which is pointless in showing people, they'll never guess which is the right button.
Change 3472740 by Max.Chen
Sequencer: Add GetThisFrameMetaData accessor
Change 3472748 by Max.Chen
Sequencer: Added OnBeginScrubbing and OnEndScrubbing event delegates
Change 3472753 by Max.Chen
Sequencer: Add EMovieSceneDataChangeType parameter to OnMovieSceneDataChanged delegate
Change 3472870 by Nick.Darnell
Clipping - Fixing the deprecated tip for scissor rect boxes to be correct. Removing it's usage from UT.
Change 3473340 by Max.Chen
Scene Outliner: Add ability to register additional filters
Change 3473348 by Max.Chen
Details View: Make ForceRefresh virtual. Added accessors to delegates (ie. GetIsPropertyReadOnlyDelegate)
Change 3473441 by Max.Chen
Sequencer: Autokey Refactor Part 2.
Autokey is now a single toggleable state.
Allow Edits Mode has 3 states:
Allow All Edits - Allow any edits to occur, some of which may produce tracks/keys or modify default properties.
Allow Sequencer Edits Only - All edits will produce either a track or a key.
Allow Level Edits Only - Properties in the details panel will be disabled if they have a track.
#jira UE-45229
Change 3473670 by Nick.Darnell
Modules - The module manager no longer returns sharedptrs to IModuleInterfaces, this was the source of rare hard to track down crashes due to a shared ptr reference leak when GetModule was called on non-main threads. We now store a TUniquePtr internally, and only lease out raw pointers.
#rn
Change 3473711 by Nick.Darnell
Disabling the ensure in the module manager.
Change 3473747 by Max.Chen
Sequencer: Fix tooltip
Change 3474091 by Jamie.Dale
Added a warning when cooking a UFontFace that is outered to a UFont asset
These cause issues with iterative COTF, and should be split off into their own assets (as the UI has been asking people to do for several versions)
Change 3475052 by Yannick.Lange
VR Editor: Fix Crash when quitting the editor with VR Mode enabled. VR Editor was being enabled when saving the map on closing the editor.
#jira UE-45415
Change 3475054 by Yannick.Lange
Fix crash when adding a camera to the world in VR Mode the second time. The slate application did not reset when stop dragging in VR Mode, so the second time when starting to drag a camera out of the UI it would already by in a dragging state.
#jira UE-45574
Change 3475263 by Nick.Darnell
Fixing some additional cases of IModuleInteface SharedPtr usage.
Change 3475268 by Max.Chen
Sequencer: Set jumped state when looping playback. This fixes an issue where audio doesn't stop and restart when looped.
#jira UE-45654
Change 3475269 by Max.Chen
Scene Outliner: Additional filters should only apply to actor browsing mode
Change 3475407 by Nick.Darnell
Fixing some clipping / module shared ptr changes in the launcher code.
Change 3475542 by Max.Chen
Sequencer: Update thumbnail and section highlighting to use new clipping behavior.
#jira UE-45692
#jira UE-45689
Change 3475743 by Michael.Dupuis
#jira UE-45183: When updating phyx region take into account simple collision mip
Change 3475949 by Arciel.Rekman
Remove PhysX deoptimization (no longer needed).
- OR-24947 has been closed three months ago.
Change 3476022 by Michael.Dupuis
#jira UE-45560: Make sure we're not going out of range
Change 3476063 by Michael.Dupuis
#jira UE-45562: Do not try to unregister from static mesh if no static mesh is specified for the component
Change 3476168 by Michael.Trepka
Added handling of directory symlinks to FApplePlatformFile::IterateDirectory
#jira UE-43704
Change 3476172 by Nick.Darnell
Fixing a Imoduleinterface change.
Change 3476183 by Jamie.Dale
Exposing GoTo/ScrollTo to single-line editable text for API parity with multi-line editable text
Change 3476385 by Arciel.Rekman
Linux: handle symlinks when iterating directories.
Change 3476522 by Michael.Trepka
Solved a problem with Mac FMallocTBB::Malloc() returning nullptr for 0 bytes allocations, which is inconsistent with other platforms. On Mac we always scalable_aligned_malloc, which behaves differently than scalable_malloc, so for 0 bytes requests we allocate sizeof(size_t), which is exactly what scalable_malloc does internally in such case.
Change 3476806 by Nick.Darnell
UMG - Focus the designer after dropping a widget onto the surface.
Change 3476809 by Nick.Darnell
Curve Editor - Enable Clipping on the curve editor.
Change 3477475 by Nick.Darnell
Fixing a module interface shared ptr usage in UT.
Change 3477553 by Yannick.Lange
VR Editor: Removed AssetEditorPanelID and replaced it with TabManagerPanelID. A panel for AssetEditorPanelID was never created making it impossible to open an asset editor.
Change 3477734 by Yannick.Lange
VR Editor: Fix Warning: SetRelativeScale3D : Invalid Scale entered (X=inf Y=inf Z=inf). Resetting to 1.f. warning when adding CineCameraActor to World from Modes Panel. Make sure to not divide by zero when there is no boundary scale.
#jira UE-44933
Change 3477761 by Jamie.Dale
Some improvements to avoid loading the native .locres files twice when we don't need to
Change 3477780 by Nick.Darnell
PR #3250: Return correct VirtualUserIndex (Contributed by projectgheist)
Change 3477786 by Nick.Darnell
PR #3650: Changed TestNull to accept const pointers. (Contributed by e-agaubatz)
Change 3477795 by Nick.Darnell
PR #2844: UE-36936: Don't stretch container for Plugin Image (Contributed by projectgheist)
Change 3478092 by Nick.Darnell
PR #2341: Optional Middle Mouse Button panning in Graph Editor (Contributed by flipswitchingmonkey)
Engine Edit - Made some small changes to the enum type, and some naming.
Change 3478450 by Nick.Darnell
Fixing some uninitialized variable errors.
Change 3479827 by Andrew.Rodham
Sequencer: Addressed serialization issues with some struct types
Change 3479874 by Jamie.Dale
Fixed "NativeGameLanguage" not being used correctly during localization initialization
Change 3480012 by Andrew.Rodham
Sequencer: Fixed loading tagged properties as native for track identifiers
#jira UE-45823
Change 3480337 by Alexis.Matte
Fix morph target crash missing some valid index check
Change 3480804 by Alexis.Matte
Fix crash with ColorGradingMode custom detail
#jira UE-45638
Change 3480892 by Andrew.Rodham
Sequencer: Ensure that movie scene sequences know about the editor object version
#jira UE-45842
Change 3481073 by Nick.Darnell
Fix the shader compiler error from main in Slate.
Change 3481303 by Nick.Darnell
UMG - Fixing a bug with the drag handle not working correctly in HDPI mode.
Change 3481308 by Nick.Darnell
Slate - Tweaking the IsWidgetCulled logic to consider both the layout and rendering bounds. If we do this, we get a much more desireable outcome for people that want to animate widgets and such and plan to have temporary animations to move the widget offscreen, but want the layout bounds to anchor that widget in the visible frame so that it animates even when normally it would be culled b/c the render transform and therefore the renderbounds moved it completely outside the culling rect.
Change 3481629 by Max.Chen
Sequencer: Add Level Sequence Actor as an output for CreateLevelSequencePlayer()
#jira UE-45785
Change 3481899 by Yannick.Lange
VR Editor: Added debug modetoggle command with an event that is broadcasted whenever this happens. Currently this is used to show all the floating UIs of the UI system to debug without HMD using VREd.ForceVRMode.
Change 3481984 by Michael.Dupuis
#jira UE-45845: always validate if we have a static mesh before trying to access it as user can decide to not assign one and use the tools
Change 3482047 by Nick.Darnell
Slate - Adding some comments to IsWidgetCulled.
Change 3482110 by Nick.Darnell
Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.
Change 3482136 by Jamie.Dale
The CamelCase break iterator now treats digits around character tokens as part of the identifier
Change 3482138 by Michael.Dupuis
#jira UE-45854: Properly unregister during undo operation
Change 3482150 by Michael.Dupuis
#jira UE-45845 : Add missing nullcheck for GetStaticMesh
Change 3482153 by Nick.Darnell
Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.
Change 3482180 by Nick.Darnell
UMG - Widget Components do not need to define a widget class to be rendererd, they can have native slate widgets only. This was a regression from main.
Change 3482273 by Nick.Darnell
UMG - Tweaking some more things about the widget component box outline.
Change 3482308 by Alexis.Matte
Fixing morph target smooth group support. Do not call FillSkeletalMeshImportData more then once on FbxNode since this fonction is doing some conversion and change the FbxNode, applying those conversion twice do not return the same faces smooth group.
#jira UE-45696
Change 3482327 by Nick.Darnell
UMG - More tweaks to the WidgetComponent so both shows the box outline, but works in game and VR editor.
Change 3482705 by Andrew.Rodham
Resaving assets that contain legacy data to suppress CIS warnings.
- If conflicts arise in these assets, please take game-side changes and ignore these.
Change 3484245 by Max.Chen
Sequencer: Evaluate on end scrub. This fixes a bug where audio doesn't evaluate in a stopped position at the end of scrubbing, causing it to not stop all sounds. This fixes a bug introduced from 3365018 where evaluate on end scrub was removed.
#jira UE-45905
Change 3484263 by Max.Chen
Sequencer: Fix crash on forcing refresh of details panel on release.
#jira UE-45911
Change 3484431 by Andrew.Rodham
Resaving assets that contain legacy data to suppress CIS warnings.
- If conflicts arise in these assets, please take game-side changes and ignore these.
Change 3484474 by Alexis.Matte
Fix the morph target animation curve name matching.
#jira UE-20294
Change 3484475 by Alexis.Matte
When removing a LOD, make sure we remove all morph target data associate to the LOD.
Change 3484489 by Nick.Darnell
PR #3668: UE-45908: Cache debug line locations when performing a LineTraceMulti (Contributed by projectgheist)
#jira UE-45908
Change 3484692 by Nick.Darnell
Slate - Reverting a change from a game stream. All Arranged Children don't need to allocated 42 to begin with. Do need to initialize WidgetPaths better.
Change 3484703 by Nick.Darnell
Player Input - Making the input event loop for players obey EKeys::NUM_TOUCH_KEYS, rather than being set to Touch10, as the maximum touch input amount, to make supporting greater than 10 touches easier. Also making the seeding of keys use EKeys::NUM_TOUCH_KEYS.
#jira UE-43213
Change 3484918 by Jamie.Dale
Fixed font measuring regression with RTL text
RTL applies the character count to the next glyph, so it shouldn't process the end of the loop (this was how the older code used to work).
Change 3485718 by Nick.Darnell
Editor - Removing Super Search & User Feedback button.
Change 3485719 by Nick.Darnell
Portal - Removing SuperSearch.
Change 3485751 by Matt.Kuhlenschmidt
Fix crash accessing platformer game menu if the menu is open during a console based load
#jira UE-45950
Change 3486047 by Arciel.Rekman
Linux: add OpenEXR implementation (UE-40270).
#jira UE-40270
Change 3486467 by Max.Chen
Sequencer: Reset max tick rate when destroyed.
#jira UE-45956
Change 3486477 by Max.Chen
Sequencer: Refresh outliner when column is removed.
#jira UE-45891
Change 3486667 by Andrew.Rodham
Added missing include
Change 3486724 by Andrew.Rodham
Sequencer: Fixed curves with no default value, and no keys being evaluated and applied to properties
- Also fixed an edge case where a zero (but non-animated) channel could be applied to a final transform
Change 3486730 by Alexis.Matte
In the Auto-Reimport options, hide the mout point only for the default /Game/ folder
#UE-45684
Change 3486749 by Alexis.Matte
Make sure the parent window of the monitor directory browse folder is set properly
#jira UE-45682
Change 3486805 by Matt.Kuhlenschmidt
Additional safety against invalid objects being accessed by slate
Change 3486848 by Alexis.Matte
Make sure Monitor folder feature support root mount point map folder
During auto import, give priority to asset import factory over the scene import factory
#jira UE-45691
Change 3486879 by Andrew.Rodham
Removing obsolete QA assets
Change 3486950 by Nick.Darnell
PR #2281: Scrollbar missing features and SScrollbar fixes (Contributed by SNikon)
Review - made some adjustments from the original.
Change 3486954 by Nick.Darnell
Slate - Moving the STableViewBase over to the FOverscroll class, rather than it's own clone.
Change 3486967 by Nick.Darnell
Slate - Fixing some HDPI calculations for fitting new windows on screen, it was using the unscaled size of the widgets for fitting, when it needed to scale them up.
Change 3486970 by Andrew.Rodham
Sequencer: Delay mouse capture until drag for sequencer time slider
- Fixes context menus not opening as a result of mouse capture being taken on mouse down
#jira UE-45937
Change 3486984 by Andrew.Rodham
Sequencer: Improved blending type iconography
Change 3486996 by Nick.Darnell
UMG - Adding a way for games to opt-out of the slow widget path, to completely prevent them from being cooked.
UMG - The movie data is no longer cloned for each new instance that inhabits. It now keeps a reference to the now publically accessible movie scene data on the class instead.
Change 3487070 by Andrew.Rodham
Sequencer: Added graphics for key areas that represent empty space
Change 3487195 by Andrew.Rodham
Sequencer: Changed evaluation groups to always flush implicitly
- Due to the latent nature of blended token types, it's no longer safe to rely solely on execution token order between tracks
- This fixes an issue where events set in the PostEvaluation stage were executed before blended token actuation
Change 3487322 by Nick.Darnell
PR #2457: Add .gitdeps.xml-files for plugins support (Contributed by bozaro)
Change 3487363 by Nick.Darnell
PR #2481: Fix for packing of a project with users plugins (Contributed by yatagarasu25)
Change 3487439 by Nick.Darnell
PR #2642: Changed private to protected in SVirtualJoystick.h (Contributed by Skylonxe)
Change 3487500 by Arciel.Rekman
Removed LinuxNativeDialogs.
- No longer used; has been superceded by SlateDialogs since UE 4.8 (2 years ago).
Change 3487630 by Lauren.Ridge
Don't create Landscape Info Maps for Editor Preview Worlds or thumbnail worlds
#jira UE-44885
Change 3487864 by Matt.Kuhlenschmidt
Exposed the asset registry to blueprints and script. Works in editor scripts and runtime scripts
AssetRegistry is now a UInterface object.
Blueprint users can access various asset registry methods using the asset registry interface (via GetAssetRegistry) and various static helpers in the AssetRegistryHelpers object
C++ users should still continue to use IAssetRegistry.
Change 3487879 by Matt.Kuhlenschmidt
Renamed asset tools uobject helper to UAssetToolsHelpers
Change 3487926 by Lauren.Ridge
Fixing reset to default not showing up for custom widgets
#jira UE-44164
Change 3488184 by Matt.Kuhlenschmidt
PR #3656: Make References/Referencers List copyable (Contributed by user37337)
#jira UE-45763
Change 3488240 by Matt.Kuhlenschmidt
Fix compiler issue
Change 3488350 by Lauren.Ridge
Landscape info map transactional state is based on its world's transactional state
#jira UE-44885
#jira UE-46019
Change 3488412 by Matt.Kuhlenschmidt
Fix reset to default showing up in two different places for some customizations
Change 3488413 by Matt.Kuhlenschmidt
Fix slate font customization
Change 3488414 by Matt.Kuhlenschmidt
Fix slate font customization
Change 3488415 by Matt.Kuhlenschmidt
Missed file
Change 3488565 by Arciel.Rekman
Add pretty printers for gdb (UETOOL-1171).
- Committing shelf by Cengiz.Terzibas, with some modifications.
#jira UETOOL-1171
Change 3489094 by Nick.Darnell
Slate - The Slate RHI Renderer now caches the TextureLODGroups so that it can properly lookup the filtering of different texture groups that are set to Default, instead of a particular filter override on a texture.
Engine/Rendering - Simplifying some of the setup logic in TextureLODSettings so that code is shared for setting them up properly after loading from a config file.
Change 3489095 by Nick.Darnell
PR #2699: GameViewportClient - Added a method to allow setting the viewport cur. (Contributed by rfenner)
Review - Fixed spacing.
Change 3489108 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3489120 by Nick.Darnell
PR #3478: Fix possible UComboBoxString crash (Contributed by nakosung)
Change 3489147 by Andrew.Rodham
Sequencer: Adding return value to function to appease static analysis
- This function is never compiled, and if it is, it won't compile, but static analysis doesn't know that
Change 3489264 by Nick.Darnell
Testing - Finishing the thought behind an enum comment.
Change 3489265 by Nick.Darnell
PR #2750: UE-35164: Button padding (Contributed by projectgheist)
Change 3489267 by Nick.Darnell
PR #3645: UE-45464: Handle SSlider mouse interaction more accurately (Contributed by projectgheist)
Change 3489632 by Arciel.Rekman
Correctness changes to MallocPoisonProxy.
- Missing forwarding functions added. Incorrect comment removed.
- Change by Steve.Robb, doing here so it is in 4.17.
Change 3489689 by Arciel.Rekman
More MallocPoisonProxy changes I missed in previous CL.
Change 3489751 by Matt.Kuhlenschmidt
Moved editor performance settings out of per-project settings so they can be shared across projects
Change 3489837 by Lauren.Ridge
Keyboard shortcut for entering/leaving VR Mode is now Alt+V
Change 3491082 by Arciel.Rekman
Linux: better fix for the crash due to name collision (UE-46040).
- Put classes in Sequencer module into Sequencer namespace instead of SceneOutliner namespace.
- Undid change in the SceneOutliner module.
#jira UE-46040
Change 3491096 by Arciel.Rekman
Fix UAT compilation on the newest mono.
Change 3491240 by Max.Chen
Sequencer: Disable key button when allow level edits only is on.
#jira UE-46060
Change 3491406 by Yannick.Lange
Fix editor crashes when opening a project that includes a plugin with more than two custom Volume classes. This issue was caused because registering show volume commands is based on finding volume classes. Finding these classes at multiple times resulted in a mismatch of the returned array of volume classes because modules/plugins were still being loaded.
#jira UE-45806
Change 3491559 by Alexis.Matte
Make sure we use the good preview mesh when doing a preview
#jira UE-45963
Change 3491563 by Alexis.Matte
Fix crash with staticmesh editor LodLevel selection
Change 3491564 by Nick.Darnell
UMG - Fixing an offset with the grab handles in HDPI mode.
Change 3491595 by Nick.Darnell
Editor - Fixing a clipping artifact in the pin type dropdown in the blueprint editor.
Change 3491604 by Nick.Darnell
Back out changelist 3489265
Change 3491615 by Arciel.Rekman
Added malloc replay proxy (Linux only for now).
- Allows to dump malloc callstream (without regard to threads) and replay later to study the behavior of different mallocs and/or repro problems.
Change 3491684 by Arciel.Rekman
Added FMalloc functions I missed.
- Also moved function bodies into the .cpp file, this does not make a difference in performance in this case.
Change 3491692 by Matt.Kuhlenschmidt
Some minor fixes to the static mesh editor
- Fix UV combo button looking non-standard on the toolbar
- Fix a few combo buttons in the details panel looking too big.
Change 3491702 by Arciel.Rekman
Do not compile replay proxy-specific code when not used.
Change 3491717 by Michael.Dupuis
#jira UE-35083:
The component is now the owner of the PerInstanceRenderData instead of the proxy
Add an Update path to only update specified instances range
Always call BuildTreeIfOutdated so we have a standard code path to make sure static mesh are fully loaded before trying to build the tree
Moved the Instance Buffer aysnc to the base class, as it's not related to UHierarchicalInstancedStaticMeshComponent
Expose a new property to decide if we require dynamic instance buffer
Change 3491758 by Matt.Kuhlenschmidt
Fix crash on static mesh editor shutdown
Change 3491873 by Cody.Albert
Fixed clipping issue in Sequencer curve editor
#rnx
Change 3491956 by Matt.Kuhlenschmidt
Fix crash opening the Previewing sub-menu in the level editor settings menu
#jira UE-46095
Change 3492046 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492076 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492165 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492222 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492274 by Michael.Dupuis
#jira UE-46105: Fixed Clang warning
Change 3492338 by andrew.porter
QAGame: Testing ensure when submitting
Change 3492371 by Nick.Darnell
UMG - Reverting the animation sharing, cossed GLEO regressions in cooking. Will look for a better solution.
Change 3492462 by Matt.Kuhlenschmidt
Fix ensure checking in files through perforce
Change 3492491 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492505 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492517 by Jamie.Dale
The package localization ID is no longer used at all at runtime, and is now truly editor-only
This should have always been the case, but it was leaked into manifest/archives/PO files in 4.14, and while 4.15 removed it from PO files it was still present in the manifest/archives. This change removes it entirely (unless gathering editor-only data, and even then the PO file will still collapse the entries together for translation), and the deprecated 4.14 export behavior will now produce an error if you attempt to use it.
After taking this change you'll need to run a gather, import, and compile of your LocRes files to update your game localization to use the new localization IDs.
Change 3492630 by Nick.Darnell
UMG - Removing some extra cleanup code that's probably overkill and is causing a crash for uses of "Within" in class meta.
#jira UE-46124
Change 3492692 by Matt.Kuhlenschmidt
Fix drop shadows inheriting the outline color of the font. The outline should still appear but not have a different outline color from fill color
Change 3492714 by Matt.Kuhlenschmidt
Added outline with drop shadow to font automation test
Change 3492737 by Matt.Kuhlenschmidt
Fix linux
Change 3492992 by tim.gautier
Resaving Ocean Widget Blueprints / Sequences to resolve Legacy Sequence Data warnings
#jira UE-46132
Change 3493089 by Jamie.Dale
Ensure that the composite font of a font asset is flushed when the font object is GC'd
Change 3493322 by Jamie.Dale
Fixing null crash
#jira UE-45758
Change 3494467 by Andrew.Rodham
Fix Xbox warning
Change 3494852 by tim.gautier
QAGame: Changed streaming method of QA-EditorSmoke-Landscape to Always Loaded
Change 3494853 by Nick.Darnell
Another attempt at fixing the automation blueprint SA warning.
Change 3494896 by Arciel.Rekman
Fix possible null pointer access during Vulkan init.
- May fix static analysis warnings in UE-46142, although warnings seem to be referring to something else.
#jira UE-46142
Change 3494987 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3495010 by Matt.Kuhlenschmidt
Adding additional logging to track down html5 issue
Change 3495212 by Michael.Dupuis
#jira UE-46143: Properly init the InstanceRenderData during the cooking phase (required by fortnite)
Change 3495536 by Jamie.Dale
Updating UGameEngine to call its Super::PreExit after performing its own teardown
This prevents UEngine cleaning up resources that UGameEngine still needs.
#jira UE-46159
Change 3495551 by Arciel.Rekman
Another attempt to fix analyzer problem (UE-46142).
Change 3495794 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3495905 by Matt.Kuhlenschmidt
Fix USD crash when importing a meshwith no material
[CL 3499771 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3421703 on 2017/05/03 by Ben.Marsh
Surround invalid character message in quotes, so it's clear when a space is listed.
#jira UE-44606
Change 3422644 on 2017/05/04 by Steve.Robb
Ranged-for support for TChunkedArray.
Change 3422754 on 2017/05/04 by Steve.Robb
IAsyncReadFileHandle made non-copyable to prevent accidental wrong stat calculation.
Change 3422758 on 2017/05/04 by Steve.Robb
Misc readability/standards improvements in stats code.
Change 3427955 on 2017/05/08 by Steve.Robb
Version fix for IOS optimization pragmas, copied from equivalent Mac code.
Change 3428017 on 2017/05/08 by Steve.Robb
Unused property types removed.
Change 3428641 on 2017/05/08 by Ben.Marsh
UAT: Remove failed attempt to separate out BuildCookRun into separate commands, which have since rotted.
Change 3430407 on 2017/05/09 by Ben.Marsh
UBT: Define UE_4_X_OR_LATER macros for every UE4 version greater than 4.17 (eg. UE_4_17_OR_LATER, etc...).
Change 3430682 on 2017/05/09 by Gil.Gribb
UE4 - Added a fatal error for asking for very large alignments from MallocBinned2 and also return the true size of the memory block in GetAllocationSize().
Change 3430685 on 2017/05/09 by Gil.Gribb
UE4 - Fixed a bug with the windows async IO stuff related to an unsafe pointer cast to LPDWORD from int64*.
Change 3430756 on 2017/05/09 by Ben.Marsh
UBT: Switch some receipt stuff to use FileReference/DirectoryReference objects rather than raw paths.
Change 3431157 on 2017/05/09 by Ben.Marsh
UBT: Store absolute paths when receipts are in memory; only insert pseudo-variables for $(EngineDir) and $(ProjectDir) when saved to disk.
Change 3432334 on 2017/05/10 by Graeme.Thornton
Include project name in the UBT error message which appears when a plugin is missing
Change 3432481 on 2017/05/10 by Gil.Gribb
UE4 - Fixed code to detect cycles in parallel tick sorting.
Change 3432485 on 2017/05/10 by Steve.Robb
Simplified templating around bitfield offset calculation.
Change 3432608 on 2017/05/10 by Steve.Robb
'bool == byte' static_assert restored after being removed in CL# 3432485.
Change 3432767 on 2017/05/10 by Ben.Marsh
UBT: Fix exception when a missing plugin is encountered if the target does not have a project.
Change 3433031 on 2017/05/10 by Ben.Marsh
UAT: Add classes to allow safer manipulation of paths within the staging directory (StagedFileReference, StagedDirectoryReference), and convert staging code over to using those and their regular filesystem counterparts (FileReference/DirectoryReference). Lots of cleanup and refactoring of staging code.
Change 3433049 on 2017/05/10 by Ben.Marsh
Add more diagnostic information to asserts in TStaticIndirectArrayThreadSafeRead, to try and shed light on what sort of corrupted data is being passed in from the cooker.
#jira UE-44336
Change 3433097 on 2017/05/10 by Steve.Robb
Value initialization fix for MakeUnique<T[]>().
Change 3433972 on 2017/05/10 by Daniel.Lamb
Stop unrealpak from crashing if generating a patch with more pak files then the original game.
Change 3434124 on 2017/05/10 by Ben.Marsh
UAT: Remove hacky bUseWebSocketNetDriver option.
Change 3434824 on 2017/05/11 by Gil.Gribb
UE4 - Printed an error instead of asserting when there are missing native classes.
Change 3434916 on 2017/05/11 by Ben.Marsh
UAT: Separate the list of files to be staged into a separate class.
Change 3435427 on 2017/05/11 by Gil.Gribb
UE4 - Fixed attempts to load compiled in packages, which produces warnings and is slow.
Change 3436240 on 2017/05/11 by Ben.Marsh
UAT: Add a command to search for restricted folders under a given base directory.
Change 3438068 on 2017/05/12 by James.Fox
Checking in Phase 1 of the Dev-Core test map for repro purposes. UE-44996 #rb none
Change 3438855 on 2017/05/15 by Robert.Manuszewski
When verbose cluster logging is enabled and new object is added to an already existing cluster, the cluster will be dumped to log.
Change 3438929 on 2017/05/15 by Robert.Manuszewski
Merging CL # 3436939 using Dev-Core_To_Dev-LoadTimes:
Fix for potential crashes caused by levels staying in memory through material references.
Change 3439021 on 2017/05/15 by Ben.Marsh
PR #3566: fix non-ascii characters in help command HTML converted to "?" (Contributed by kayama-shift)
Change 3439079 on 2017/05/15 by Ben.Marsh
PR #2832: Implement missing MessageBox (Contributed by projectgheist)
Change 3439258 on 2017/05/15 by Ben.Marsh
Highlight lines containing the strings "Error:" or "Warning:" in the output log, so that diagnostics from child processes are highlighted appropriately. The build system already relies similar logic for scraping diagnostics from logs, so it should be safe and predictable to check for messages in this way.
#jira UE-43673
Change 3439358 on 2017/05/15 by Ben.Marsh
UBT: Fix Visual Studio solution referencing the incorrect platform for existing C# project ("Any CPU" instead of "AnyCPU"). Was causing prompt to save the solution the first time it is opened.
Change 3439665 on 2017/05/15 by Ben.Marsh
UAT: Remove DeployPakInternalLowerCaseFilenames(). No platforms require this to be true.
Change 3440735 on 2017/05/16 by Robert.Manuszewski
UBT compile fix after the last merge
Change 3440889 on 2017/05/16 by Ben.Marsh
EC: Fix regex for matching path to source files included in error messages from the Linux toolchain.
Change 3442776 on 2017/05/17 by Steve.Robb
Platform fix for FPaths::IsSamePath.
Change 3445411 on 2017/05/17 by Ben.Marsh
UBT: Fix typo in makefile diagnostic string.
Change 3446070 on 2017/05/18 by Steve.Robb
Fix to array sizes in generated UFunction code, which should now handle editor-only functions.
Change 3446091 on 2017/05/18 by Steve.Robb
Another array size fix for generated code.
Change 3446605 on 2017/05/18 by Steve.Robb
BuildConfiguration option for static analysis.
Change 3448601 on 2017/05/19 by Richard.Fawcett
Change FWindowsPlatformProcess::ApplicationSettingsDir() so that it no longer returns a path with a mixture of "\" and "/" characters, and only contains "/" characters.
This makes it consistent with other related functions like FWindowsPlatformProcess::UserSettingsDir().
Change 3449026 on 2017/05/19 by Ben.Marsh
Fix whitespace in template file.
Change 3449697 on 2017/05/19 by James.Fox
Checking in Phase 2 of Dev-Core test map for QAGame
Also enabled Blueprint and Actor clustering by default in QAGame for more thorough GC testing.
Change 3451352 on 2017/05/22 by Steve.Robb
UFunction flags are now viewable in the debugger.
Change 3451355 on 2017/05/22 by Steve.Robb
ARRAY_COUNT fix for zero-sized arrays in Clang.
Change 3451379 on 2017/05/22 by Steve.Robb
C++14 operator delete overloads with size, for consistency.
Change 3451398 on 2017/05/22 by Graeme.Thornton
Add AES and RSA encryption keys to the list of config fields that get stripped from ini files when staging
When creating a pak file, do a filtered copy of all ini files to a temp directory so that all confidential fields can be stripped. Equivalent behaviour to staging a loose file distribution
Change 3451476 on 2017/05/22 by Ben.Marsh
Compile shipping builds for WEX and Ocean, and post telemetry for the resulting executable size.
Change 3451478 on 2017/05/22 by Graeme.Thornton
PR #3197: Improved log message formatting (Contributed by projectgheist)
Change 3451868 on 2017/05/22 by Steve.Robb
Static log category moved out of header.
ENUM_CLASS_FLAGS macro used instead of explicit operators.
Change 3452319 on 2017/05/22 by Ben.Marsh
UBT: Add a new "package" build product type, which can be used for APK files on Android and Stub files on iOS. Treating these files as executables is causing the measured executable size to be incorrect.
Change 3452607 on 2017/05/22 by Ben.Marsh
UBT: Filter out folders for other platforms when searching for headers to pass to UHT.
Change 3453600 on 2017/05/23 by Graeme.Thornton
PR #3226 - Updated some code comments to better describe the usage of the log category definition macros
Change 3453616 on 2017/05/23 by Steve.Robb
Error reported instead of a crash when there's a space between UCLASS or UINTERFACE and the open parenthesis.
Change 3453714 on 2017/05/23 by Ben.Marsh
Build: Add some Visual Studio 2017 test compiles to the build system.
Change 3453795 on 2017/05/23 by Ben.Marsh
UBT: Fix parsing of command line attributes that have a specific value assigned. We should never have an '=' suffix for such arguments.
Change 3454606 on 2017/05/23 by Ben.Marsh
UAT: Make sure log filenames are unique by creating a 0-byte file in its place.
Change 3454709 on 2017/05/23 by Ben.Marsh
UBT: Enable the /permissive- option for stricter standards compliance on Visual Studio 2017. Currently have /Zc:strictStrings disabled due to violations in Windows headers; all UE4 instances have been fixed up.
Change 3456445 on 2017/05/24 by Graeme.Thornton
MemoryProfiler2 - Add mprof filename into title bar after opening
Change 3457129 on 2017/05/24 by Ben.Marsh
Fix comment for FVector::Normalize().
#jira UE-45369
#rnx
Change 3457228 on 2017/05/24 by Ben.Marsh
Do not allow forward-declaring Rect structs. They are not public, and it conflicts with third party libraries.
#rnx
Change 3458357 on 2017/05/24 by Ben.Marsh
Fix name resolution issue with /permissive- in VS2017.
Change 3458812 on 2017/05/25 by Robert.Manuszewski
PR #2407: Fix LoadLibrary error with Microsoft Group Policy CWDIllegalinDllSearch mode 1 or 2 (Contributed by bozaro)
Change 3458894 on 2017/05/25 by Robert.Manuszewski
PR #2096: Fix argument parsing in DiffAssets Comandlet (Contributed by cgrebeld)
Change 3461205 on 2017/05/26 by Robert.Manuszewski
Fixed parameter parsing so that arguments are not parsed if not preceeded by a whitespace (for example "-Log" was parsed in "TM-Log")
#jira UE-33790
Change 3464714 on 2017/05/30 by Robert.Manuszewski
Fixing potential deadlock caused by a race condition when using FMallocVerifyProxy with FMallocBinned
Change 3465310 on 2017/05/30 by Ben.Marsh
UBT: Enable bAdaptiveUnityDisablesOptimizations by default.
Change 3465346 on 2017/05/30 by Ben.Marsh
UBT: Require Update 3 to be installed when compiling using VS2015.
Change 3465389 on 2017/05/30 by Ben.Marsh
UBT: Fix support for RTTI when creating PCHs and shared PCHs.
Change 3466084 on 2017/05/30 by Ben.Marsh
Fix compiling plain C files, where it would incorrectly use a C++ PCH.
Change 3467018 on 2017/05/31 by Robert.Manuszewski
Async loading code will now properly handle cases when the requested package could not be created.
Change 3467113 on 2017/05/31 by Ben.Marsh
UGS: When opening a solution in Visual Studio, always start the process in the solution's directory.
Change 3467508 on 2017/05/31 by Ben.Marsh
Add a function to fix a long package name so it matches the case of a file on disk. Fixes deterministic cooking issues when on-disk case changes.
Change 3467510 on 2017/05/31 by Ben.Marsh
Fix deterministic cooking issue caused by LODGroup only being initialized in the CDO if it's serialized, causing inconsistent delta serialization for instances.
Change 3467967 on 2017/05/31 by Ben.Marsh
Always allow UAT to compile on non-Windows platforms, even if a debugger is present, since MSVC is the only one that will load C# PDBs.
Change 3468544 on 2017/05/31 by Ben.Marsh
UBT: Add a more helpful message when a module is being compiled with implicit PCHs, but a source file is not configured correctly.
Change 3469241 on 2017/06/01 by Ben.Marsh
UBT: Fix single-file compile causing a different UHT manifest to be generated, potentially excluding hidden dependencies.
Change 3471709 on 2017/06/02 by Daniel.Lamb
Rebuild lighting commandlet now rebuilds reflections also instead of trashing them.
#test None
Change 3471719 on 2017/06/02 by Daniel.Lamb
Fixed crash in cooker while trying to cook for multiple platforms
#test Launch on shootergame windows + ps4
#jira UE-45356
Change 3472261 on 2017/06/02 by Ben.Marsh
CRP: Clear out MDD logs whenever we clear out CRP logs.
Change 3473169 on 2017/06/05 by Graeme.Thornton
PR #3622: Log category code cleanup (Contributed by projectgheist)
Change 3473176 on 2017/06/05 by Graeme.Thornton
PR #3622: Log category code cleanup (Contributed by projectgheist) (Part II)
- Missed some files from my previous checkin
Change 3473597 on 2017/06/05 by Ben.Marsh
UnrealVS: Fix massive slowdown on startup caused by searching the directory tree under the solution for *.uproject files (including intermediate folders, etc...). Now reads *.uprojectdirs files and only checks the listed directories within. Measured it taking > 30s to run before, now takes < 0.1s.
Change 3473722 on 2017/06/05 by Steve.Robb
GitHub #3444: UE-42521: Added missing macro's for TMap and TSet
PREPROCESSOR_COMMA_SEPARATED added as a better solution for the hacky comma separator solution in the PR.
Change 3475073 on 2017/06/06 by Steve.Robb
Fix for TPromise's move assignment operator return value.
Change 3475331 on 2017/06/06 by Ben.Marsh
UAT: Fix invalid paths being generated when stripping encryption settings from config files.
* In cases where INI files were in a subfolder of the Config folder (eg. Config\Localization), it was not stripping the separating slash, resulting in files being written to the root directory of the current drive.
* Paths under the config folder are not guaranteed to be unique.
Change 3475453 on 2017/06/06 by Ben.Marsh
UBT: Add an error if a plugin lists a non-plugin module as belonging to it.
#jira UE-45178
Change 3475668 on 2017/06/06 by Ben.Marsh
Add a message showing when we begin creating the asset registry, since it can take a long time.
#jira UE-41675
Change 3475747 on 2017/06/06 by Steve.Robb
Replicated from CL# 3332960:
Force a gather on hot reload, so we don't use stale state from the makefile.
#jira UE-42205
Change 3475897 on 2017/06/06 by Ben.Marsh
PR #3655: Improved behavior for Automation.IsBuildMachine (Contributed by projectgheist)
Change 3477432 on 2017/06/07 by Robert.Manuszewski
Removed AsyncIOBandwidthLimit as it was no longer being used by anything.
Change 3478582 on 2017/06/07 by Ben.Marsh
UBT: Allow setting the UE_ENGINE_DIRECTORY macro for any monolithic builds, to fix being able to debug cooked foreign projects in the binary release.
Change 3480035 on 2017/06/08 by Gil.Gribb
UE4 - Fixed async loading from pak files < 64k.
Change 3484348 on 2017/06/12 by Robert.Manuszewski
Removed private_subobject macro which was a temporary measure to make all subobjects private without breaking game code.
Change 3484863 on 2017/06/12 by Steve.Robb
Fix for TSparseArray::operator= corrupting non-POD objects.
InCopy.ArrayMax cached in a local instead of being read each time.
Const-correctness fix for element copy construction.
SrcData and DestData names flipped as they were the wrong way around.
Source: https://udn.unrealengine.com/questions/374840/possible-bug-in-tsparsearray-assignment-operator.html
Change 3485003 on 2017/06/12 by Ben.Marsh
UGS: Add support for multiple tabs. Each tab can monitor changes in a separate workspace, and scheduled syncs will run for all open tabs.
Change 3485063 on 2017/06/12 by Ben.Marsh
UGS: Fix a null reference exception when right clicking on the notification icon during startup.
Change 3485104 on 2017/06/12 by Ben.Marsh
PR #2084: [UAT] Command-line parameter to override branch name (Contributed by nbjk667)
Change 3485112 on 2017/06/12 by Steve.Robb
TSetElement generic constructor protected from becoming a copy constructor.
Redundant #include removed from AreTypesEqual.h.
Source: https://udn.unrealengine.com/questions/374840/possible-bug-in-tsparsearray-assignment-operator.html
Change 3485452 on 2017/06/12 by Ben.Marsh
UnrealVS: Fix command line not being updated for C# projects. IVsBuildPropertyStorage.SetPropertyValue does not seem to update properties that are cached in memory.
#jira UE-45716
Change 3486182 on 2017/06/12 by Ben.Marsh
UGS: Include option to selet tab names in the options menu.
Change 3486189 on 2017/06/12 by Ben.Marsh
UGS: Fix browse button from context menu always opening a new tab.
Change 3486636 on 2017/06/13 by Steve.Robb
FStatMessagesArray iteration changed to use ranged-for instead of indexing.
Change 3486688 on 2017/06/13 by Steve.Robb
Fix for CDO pointer replacement in non-UObject properties during hot reload.
#jira UE-38146
Change 3486704 on 2017/06/13 by Ben.Marsh
UGS: Fix exception when closing the last open tab.
Change 3486707 on 2017/06/13 by Ben.Marsh
UGS: Fix exception on load if UGS was closed with no projects open.
Change 3486715 on 2017/06/13 by Ben.Marsh
UGS: Change tabs to show the project file by default.
Change 3486718 on 2017/06/13 by Ben.Marsh
UGS: Only allow one workspace to sync at a time.
Change 3486880 on 2017/06/13 by Ben.Marsh
UGS: Show the sync progress of each tab via the underline on the tab button.
Change 3486912 on 2017/06/13 by Ben.Marsh
UGS: Include the open project and recent project list as separate top-level menu items.
Change 3486914 on 2017/06/13 by Ben.Marsh
UGS: Update version to 1.101.
Change 3487092 on 2017/06/13 by Ben.Marsh
UGS: Fix crash on startup if log window is minimized.
Change 3487099 on 2017/06/13 by Ben.Marsh
UGS: Update version to 1.102
Change 3487198 on 2017/06/13 by Ben.Marsh
Remove debug code.
Change 3487285 on 2017/06/13 by Ben.Marsh
Restore Remap() function that was accidentally removed in merge.
Change 3487769 on 2017/06/13 by Ben.Marsh
Disable the promoted flag when using the SyncProject command on Mac; doing so prevents UE4Game being compiled when packaging blueprint projects.
#jira UE-45995
Change 3487915 on 2017/06/13 by Ben.Marsh
UAT: Fix exception due to collection being modified while packaging for Linux.
#jira UE-46013
Change 3487972 on 2017/06/13 by Ben.Marsh
UAT: Always allow staged files to overwrite previously staged files. New iOS code relies on old behavior to overwrite engine icons and metadata with game copies.
#jira UE-46014
Change 3487991 on 2017/06/13 by Ben.Marsh
UAT: Ensure that the directory exists before trying to create a placeholder log filename.
#jira UE-46015
Change 3489062 on 2017/06/14 by Robert.Manuszewski
Removed FPackageFileSummary's AdditionalPackagesToCook as it was not used by anything. This should reduce the package header size considerably for levels with many streaming sublevels.
#jira UE-45563
Change 3489063 on 2017/06/14 by Robert.Manuszewski
Increasing the maximum package summary size to handle levels with multiple streaming sublevels.
#jira UE-45563
Change 3491552 on 2017/06/15 by Ben.Marsh
Handle failures to load *MeshReduction modules.
[CL 3492074 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3323393 on 2017/02/27 by Ben.Cosh
This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations
#Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602]
#Proj Engine
Change 3379355 on 2017/04/04 by Lauren.Ridge
Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences.
Change 3379389 on 2017/04/04 by Nick.Darnell
Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated.
Change 3379551 on 2017/04/04 by Nick.Darnell
Automation - Adding more logging to the automation controller when generating reports.
Change 3379554 on 2017/04/04 by Nick.Darnell
UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts.
Change 3379565 on 2017/04/04 by Nick.Darnell
UMG - Deprecating OPTIONA_BINDING, moving to PROPERTY_BINDING in place and you'll need to define a PROPERTY_BINDING_IMPLEMENTATION. Will make bindings safer to call from blueprints.
Change 3379576 on 2017/04/04 by Lauren.Ridge
Parameter group dropdown now sorts alphabetically
Change 3379592 on 2017/04/04 by JeanMichel.Dignard
Fbx Morph Targets import optimisation
- Only reimport the points for each morphs and compute the tangents for the wedges affected by those points.
- Removed the full skeletal mesh rebuild on each morph target import.
- Allow MeshUtilities::ComputeTangents_MikkTSpace to only recompute the tangents that are zero.
Gains around 7.30 mins for 785 morph targets in mikkt space and 1.30 mins using built-in normals, with provided test file.
#jira UE-34125
Change 3380260 on 2017/04/04 by Nick.Darnell
UMG - Fixing some OPTIONAL_BINDINGS that needed to be converted.
Change 3380551 on 2017/04/05 by Andrew.Rodham
Sequencer: Fixed ImplIndex sometimes not relating to the source data index when compiling at the track level
#jira UE-43446
Change 3380555 on 2017/04/05 by Andrew.Rodham
Sequencer: Automated unit tests for the segment and track compilers
Change 3380647 on 2017/04/05 by Nick.Darnell
UMG - Tweaking some stuff on the experimental rich textblock.
Change 3380719 on 2017/04/05 by Yannick.Lange
Fix 'Compile FortniteClient Mac' and 'Compile Ocean iOS' Failed with Material.cpp errors. Wrapping WITH_EDITOR around ParameterGroupData.
#jira UE-43667
Change 3380765 on 2017/04/05 by Nick.Darnell
UMG - Fixing a few more instances of OPTIONAL_BINDING.
Change 3380786 on 2017/04/05 by Yannick.Lange
Wrap SortPriority in GetParameterSortPriority with WITH_EDITOR.
Change 3380872 on 2017/04/05 by Matt.Kuhlenschmidt
PR #3453: UE-43004: YesNo MessageDialog instead of YesNoCancel (Contributed by projectgheist)
Change 3381635 on 2017/04/05 by Matt.Kuhlenschmidt
Expose static mesh material accessors to blueprints
#jira UE-43631
Change 3381643 on 2017/04/05 by Matt.Kuhlenschmidt
Added a way to enable or disable the component transform units display independently from unit display anywhere else. This is off by default
Change 3381705 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
Change 3381959 on 2017/04/05 by Yannick.Lange
Back out changelist 3381705. Old changelist.
Change 3382049 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors in a wrapper class.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
- Deprecated SetInputPreProcessor, but made it work with RegisterInputPreProcessor and UnregisterInputPreProcessor.
Change 3382450 on 2017/04/06 by Andrew.Rodham
Sequencer: Fixed 'ambiguous' overloaded constructor for UT linux server builds
Change 3382468 on 2017/04/06 by Yannick.Lange
Rename AllowWorldMovement parameter to bAllow.
Change 3382474 on 2017/04/06 by Yannick.Lange
Make GetInteractors constant because we dont want it to be possible to change this arrray.
Change 3382492 on 2017/04/06 by Yannick.Lange
VR Editor: Floating UI's are stored in a map with FNames as key.
Change 3382502 on 2017/04/06 by Yannick.Lange
VR Editor: Use asset container for auto scaler sound.
Change 3382589 on 2017/04/06 by Nick.Darnell
Slate - Upgrading usages of SetInputPreprocessor. Also adjusting the API for the new preprocessor functions to have an option to remove all, which was what several usages expected. Also updated the deprecated version of SetInputPreprocessor to removeall if null is provided for the remove, mimicing the old functionality.
Change 3382594 on 2017/04/06 by Nick.Darnell
UMG - Deprecating GetMousePositionScaledByDPI, this function has too many issues, and I don't want to break buggy backwards compatability, so just going to deprecate it instead. For replacement, you can now access an FGeometry representing the viewport (after DPI scale has been added to the transform stack), and also the FGeometry for a Player's Screen widget host, which might be constrained for splitscreen, or camera aspect.
Change 3382672 on 2017/04/06 by Nick.Darnell
Build - Fixing incremental build.
Change 3382674 on 2017/04/06 by Nick.Darnell
Removing a hack added by launcher.
Change 3382697 on 2017/04/06 by Matt.Kuhlenschmidt
Fixed plugin browser auto-resizing when scrolling. Gave it a proper splitter
Change 3382875 on 2017/04/06 by Michael.Trepka
Modified FMacApplication::OnCursorLock() to avoid a thread safety problem with using TSharedPtr/Ref<FMacWindow> of the same window on main and game threads simultaneously.
#jira FORT-34952
Change 3383303 on 2017/04/06 by Lauren.Ridge
Adding sort priority to texture parameter code
Change 3383561 on 2017/04/06 by Jamie.Dale
Fixed MaximumIntegralDigits incorrectly including group separators in its count
Change 3383570 on 2017/04/06 by Jamie.Dale
Added regression tests for formatting a number with MaximumIntegralDigits and group separators enabled
Change 3384507 on 2017/04/07 by Lauren.Ridge
Mesh painting no longer paints on invisible components. Toggling visiblity refreshes the selected set.
#jira UE-21172
Change 3384804 on 2017/04/07 by Joe.Graf
Fixed a clang error on Linux due to missing virtual destructor when deleting through the interface pointer
#CodeReview: marc.audy
#rb: n/a
Change 3385011 on 2017/04/07 by Matt.Kuhlenschmidt
Fix dirtying levels just by copying actors if the level contains a foliage actor. The foliage system makes lazy asset pointers
#jira UE-43750
Change 3385127 on 2017/04/07 by Lauren.Ridge
Adding WITHEDITOR to OnDragDropCheckOverride
Change 3385241 on 2017/04/07 by Jamie.Dale
Removing warning if asking for a null or empty localization provider
Change 3385442 on 2017/04/07 by Arciel.Rekman
Fix a number of problems with Linux splash.
- Thread safety (UE-40354).
- Inconsistent font (UE-35000).
- Change by Cengiz Terzibas.
Change 3385708 on 2017/04/08 by Lauren.Ridge
Resaving VREditor asset container with engine version
Change 3385711 on 2017/04/08 by Arciel.Rekman
Speculative fix for a non-unity Linux build.
Change 3386120 on 2017/04/10 by Matt.Kuhlenschmidt
Fix stats not being enabled when in simulate
Change 3386289 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3466: Git plugin: add option to autoconfigure Git LFS (Contributed by SRombauts)
Change 3386301 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3470: Git Plugin: disable "Keep Files Checked Out" checkbox on Submit to Source Control Window (Contributed by SRombauts)
Change 3386381 on 2017/04/10 by Michael.Trepka
PR #3461: Mac doesn't return the correct exit code (Contributed by projectgheist)
Change 3388223 on 2017/04/11 by matt.kuhlenschmidt
Deleted collection: MattKTest
Change 3388808 on 2017/04/11 by Lauren.Ridge
Reset arrows now only display for non-default values in the Material Instance editor. Reset to default arrows now are placed in the correct location for SObjectPropertyEntryBox and SPropertyEditorAsset. SResetToDefaultPropertyEditor now takes a property handle in the constructor, instead of an FPropertyEditor.
#jira UE-20882
Change 3388843 on 2017/04/11 by Lauren.Ridge
Forward declaring custom reset override. Fix for incremental build error
Change 3388950 on 2017/04/11 by Nick.Darnell
PR #3450: UMG "Lock" Feature (Contributed by GBX-ABair).
Epic Edit: Made some changes to make it work with named slots, added an option not to always recursively itterate the children, also removed the dependency on SWidget changes.
Change 3388996 on 2017/04/11 by Matt.Kuhlenschmidt
Removed crashtracker
Change 3389004 on 2017/04/11 by Lauren.Ridge
Fix for automated test error - additional safety check for if the reset button has been successfully created.
Change 3389056 on 2017/04/11 by Matt.Kuhlenschmidt
Removed editor live streaming
Change 3389077 on 2017/04/11 by Jamie.Dale
Removing QAGame config change
Change 3389078 on 2017/04/11 by Nick.Darnell
Fortnite - Fixing an input preprocessor warning.
Change 3389136 on 2017/04/11 by Nick.Darnell
Slate - Removing deprecated 'aspect ratio' locking box cells, never really worked, deprecated a long time ago.
Change 3389147 on 2017/04/11 by Nick.Darnell
UMG - Fixing a critical error with the alignment of the lock icon.
#jira UE-43881
Change 3389401 on 2017/04/11 by Nick.Darnell
UMG - Adds a designer option to control respecting the locked mode.
Change 3389638 on 2017/04/11 by Nick.Darnell
UMG - Adding the Widget Reflector button to the widget designer.
Change 3389639 on 2017/04/11 by Nick.Darnell
UMG - Tweaking the respect lock icon.
Change 3390032 on 2017/04/12 by JeanMichel.Dignard
Fixed project generation when using subfolders in Target.SolutionDirectory (ie: SolutionDirectory = "Programs\MyProgram")
Change 3390033 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3472: Exposed Distributions to Game Projects and Plugins (Contributed by StormtideGames)
Change 3390041 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3446: Add missing TryLock to PThreadCriticalSection and add RAII helper for try locking. (Contributed by Laurie-Hedge)
Change 3390196 on 2017/04/12 by Lauren.Ridge
Fix for crash on opening assets without reset to default button enable
Change 3390414 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3300: UE-5528: Added check for empty startup tutorial path (Contributed by projectgheist)
#jira UE-5528
Change 3390427 on 2017/04/12 by Jamie.Dale
Fixed not being able to set pure whitespace values on FText properties
#jira UE-42007
Change 3390712 on 2017/04/12 by Jamie.Dale
Content Browser search now takes the display names of properties into account
#jira UE-39564
Change 3390897 on 2017/04/12 by Nick.Darnell
Slate - Changing the order that the tabs draw in so that the draw front to back, instead of back to front.
Change 3390900 on 2017/04/12 by Nick.Darnell
Making a Cast CastChecked in UScaleBox.
Change 3390907 on 2017/04/12 by Nick.Darnell
UMG - Adding GetMousePositionOnPlatform and GetMousePositionOnViewport as other replacements that people can use rather than GetMousePositionScaledByDPI.
Change 3390934 on 2017/04/12 by Cody.Albert
Fix to set correct draw layer in FSlateElementBatcher::AddElements
Change 3390966 on 2017/04/12 by Nick.Darnell
Input - Force inline some core input functions.
Change 3391207 on 2017/04/12 by Jamie.Dale
Fixed moving a folder containing a level not moving the level
Also removed some redundant usage of ContentBrowserUtils::GetUnloadedAssets
#jira UE-42091
Change 3391327 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming
Change 3391405 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming (part 2)
Change 3391407 on 2017/04/12 by Mike.Fricker
Removed some remaining EditorLiveStreaming and CrashTracker code
Change 3392296 on 2017/04/13 by Yannick.Lange
VR Editor: New assets in asset containers for gizmo rotation.
Change 3392332 on 2017/04/13 by Nick.Darnell
Slate - Removing delegate hooks from the safezone and scalebox widget when the widgets are cleaned up.
Change 3392349 on 2017/04/13 by Cody.Albert
Corrected typo
Change 3392688 on 2017/04/13 by Yannick.Lange
VR Editor: Resaved asset containers
Change 3392905 on 2017/04/13 by Jamie.Dale
Fixed FPaths::ChangeExtension and FPaths::SetExtension stomping over the path part of a filename if the name part of the had no extension but the path contained a dot, eg) C:/First.Last/file
Change 3393514 on 2017/04/13 by Yannick.Lange
VR Editor: Temp direct interaction pointer.
Change 3393930 on 2017/04/14 by Yannick.Lange
VR Editor: Remove unused transform gizmo
Change 3394084 on 2017/04/14 by Max.Chen
Audio Capture: No longer beta
Change 3394499 on 2017/04/14 by Cody.Albert
Updated UMovieSceneSpawnTrack::PostLoad to call ConditionalPostLoad on bool track before converting it to a spawn track
#rnx
Change 3395703 on 2017/04/17 by Yannick.Lange
Duplicate from Release-4.16 CL 3394172
Viewport Interaction: Fix disable animation when aiming for gizmo stretch handles.
#jira UE-43964
Change 3395794 on 2017/04/17 by Mike.Fricker
#rn Fixed FastXML not loading XML files with attributes delimited by single quote characters
Change 3395945 on 2017/04/17 by Yannick.Lange
VR Editor: Swap end and start of laser, because they start of laser was using end mesh.
Change 3396253 on 2017/04/17 by Michael.Dupuis
#jiraUE-43693:
While moving foliage instance between levels, UI count was'nt updating properly
Moved MoveSelectedFoliageToLevel to EdModeFoliage as we required more treatment than was done in LevelCollectionModel
Ask to save foliage type as asset while moving between level foliage instances containing local foliage type
Change 3396291 on 2017/04/17 by Michael.Dupuis
#jira UE-35029:
Added a cache for mesh bounds so if the bounds changed we can rebuild the occlusion tree
Added possibility to register on bounds changed of a static mesh in editor mode
Rebuild the occlusion tree if the mesh bounds changed
Rebuild the occlusion tree if we change the mesh associated with a foliage type
Optimize some operation to not Rebuild the occlusion tree for every instance added/remove instead it's done at the end of the operation
Change 3396293 on 2017/04/17 by Michael.Dupuis
#jira UE-40685:
Improve Collision With World algo, to support painting pitch rotated instance or not on a flat terrain or slope respecting the specified ground angles
Change 3397660 on 2017/04/18 by Matt.Kuhlenschmidt
PR #3480: Git plugin: improve/cleanup init and settings (Contributed by SRombauts)
Change 3397675 on 2017/04/18 by Alex.Delesky
#jira UE-42383 - Adds a delegate to the placement mode module to allow users to register custom categories and listen to when they should be refreshed.
Change 3397818 on 2017/04/18 by Yannick.Lange
ViewportInteraction and VR Editor: - Replace GENERATED_UCLASS_BODY with GENERATED_BODY.
- Remove destructors for uobjects.
Change 3397832 on 2017/04/18 by Yannick.Lange
VR Editor: Remove unused vreditorbuttoon
Change 3397884 on 2017/04/18 by Yannick.Lange
VREditor: Addition to 3397832, remove unused vreditorbuttoon.
Change 3397985 on 2017/04/18 by Michael.Trepka
Another attempt to solve the issue with dsymutil failing with an error saying the input file did not exist. We now check for the input file's existence in a loop 30 times (once a second) before trying to call dsymutil. Also, added a FixDylibDependencies as a prerequisite for dSYM generation.
#jira UE-43900
Change 3398030 on 2017/04/18 by Jamie.Dale
Fixed outline changes not automatically updating the text layout used by a text block
#jira UE-42116
Change 3398039 on 2017/04/18 by Jamie.Dale
Unified asset drag-and-drop
FAssetDragDropOp now handles both assets and asset paths, and FAssetPathDragDropOp has been removed. This allows assets and folders to be drag-dropped at the same time in the Content Browser.
#jira UE-39208
Change 3398074 on 2017/04/18 by Michael.Dupuis
Fixed crash in cooking fortnite
Change 3398351 on 2017/04/18 by Alex.Delesky
Fixing PlacementMode module build error
Change 3398513 on 2017/04/18 by Yannick.Lange
VR Editor: - Remove unused previousvreditor member.
- Removing extensions when exiting vr mode without having to find the extensions.
Change 3398540 on 2017/04/18 by Alex.Delesky
Removing a private PlacementMode header that was included in a public one.
Change 3399434 on 2017/04/19 by Matt.Kuhlenschmidt
Remove uncessary files from p4
Change 3400657 on 2017/04/19 by Jamie.Dale
Fixed potential underflow when using negative digit ranges with FastDecimalFormat
Change 3400722 on 2017/04/19 by Jamie.Dale
Removed some check's that could trip with malformed data
Change 3401811 on 2017/04/20 by Jamie.Dale
Improved the display of asset tags in the Content Browser
- Numeric tags are now displayed pretty printed.
- Numeric tags can now be displayed as a memory value (the numeric value should be in bytes).
- Dimensional tags are now split and each part pretty printed.
- Date/Time tags are now stored as a timestamp (which has the side effect of sorting correctly) and displayed as a localized date/time.
- The column view now shows the same display values as the tooltips do.
- The tooltip now uses the tag meta-data display name (if set).
- The tag meta-data display name can now be used as an alias in the Content Browser search.
#jira UE-34090
Change 3401868 on 2017/04/20 by Cody.Albert
Add screenshot save directory parameter to editor and project settings
#rn Added options to the settings menu to specify screenshot save directory
Change 3402107 on 2017/04/20 by Jamie.Dale
Cleaned up the "View Options" menu in the Content Browser
Re-organized some of the settings into better groups, and fixed some places where items would still be shown in the asset view when some of these content filter options were disabled (either via a setting, or via the UI).
Change 3402283 on 2017/04/20 by Jamie.Dale
Creating a folder in the Content Browser now creates the folder on disk, and cancelling a folder naming now removes the temporary folder
#jira UE-8892
Change 3402572 on 2017/04/20 by Alex.Delesky
#jira UE-42421
PR #3311: Improved log messages (Contributed by projectgheist)
Change 3403226 on 2017/04/21 by Yannick.Lange
VR Editor: - Removed previous quick menu floating UI panel.
- Added the concept of a info display floating UI panel.
- Used info display for showing sequencer timer.
Change 3403277 on 2017/04/21 by Yannick.Lange
VR Editor: - Set window mesh for info display panel.
- Add option to null out widget when hidden.
Change 3403289 on 2017/04/21 by Yannick.Lange
VR Editor: Don't load VREditorAssetContainer asset when starting editor.
Change 3403353 on 2017/04/21 by Yannick.Lange
VR Editor: Fix variable 'RelativeOffset' is uninitialized when used within its own initialization.
Change 3404183 on 2017/04/21 by Matt.Kuhlenschmidt
Fix typo
Change 3405378 on 2017/04/24 by Alex.Delesky
#jira UE-42550 - Audio thumbnails should never rerender now, even with real-time thumbnails enabled
Change 3405382 on 2017/04/24 by Alex.Delesky
#jira UE-42097 - The Main Frame window will no longer steadily grow if it's closed while not maximized
Change 3405384 on 2017/04/24 by Alex.Delesky
#jira UE-43985 - Duplicating Force Feedback, Sound Wave, or Sound Cue assets from the context menu after right-clicking on the playback controls will now correctly select the newly created asset for rename.
Change 3405386 on 2017/04/24 by Alex.Delesky
#jire UE-42239 - Blueprints that have been duplicated from another blueprint will now render their thumbnails correctly instead of displaying a flat black thumbnail.
Change 3405388 on 2017/04/24 by Alex.Delesky
#jira UE-43241 - Blueprint classes that derive from notplaceable classes (such as SpectatorPawn and GameMode) can no longer be placed within the level editor via the right-click Add/Replace menus
Change 3405394 on 2017/04/24 by Alex.Delesky
#jira UE-42137 - Users can no longer access the widget object of a Widget Component from within actor construction scripts
Change 3405429 on 2017/04/24 by Alex.Delesky
Fixing a naming issue for CL 3405378
Change 3405579 on 2017/04/24 by Cody.Albert
Fixed bad include from CL#1401868
#jira UE-44238
Change 3406716 on 2017/04/24 by Max.Chen
Sequencer: Add attach/detach rules for attach section.
#jira UE-40970
Change 3406718 on 2017/04/24 by Max.Chen
Sequencer: Set component velocity for attached objects
#jira UE-36337
Change 3406721 on 2017/04/24 by Max.Chen
Sequencer: Re-evaluate on stop. This fixes a situation where if you set the playback position to the end of a sequence while it's playing, the sequence will stop playing but won't re-evaluate to the end of the sequence.
#jira UE-43966
Change 3406726 on 2017/04/24 by Max.Chen
Sequencer: Added StopAndGoToEnd() function to player
#jira UE-43967
Change 3406727 on 2017/04/24 by Max.Chen
Sequencer: Add cinematic options to level sequence player
#jira UE-39388
Change 3407097 on 2017/04/25 by Yannick.Lange
VR Editor: Temp asset for free rotation handle gizmo.
Change 3407123 on 2017/04/25 by Michael.Dupuis
#jira UE-44329: Only display the message in attended mode and editor (so user can actually perform the save)
Change 3407135 on 2017/04/25 by Max.Chen
Sequencer: Load level sequence asynchronously.
#jira UE-43807
Change 3407137 on 2017/04/25 by Shaun.Kime
Fixing comments to refer to correct function name.
Change 3407138 on 2017/04/25 by Max.Chen
Sequencer: Mark actor that the spawnable duplicates as a transient so that the level isn't dirtied. Then clear the transient flag on the object template.
#jira UE-30007
Change 3407139 on 2017/04/25 by Max.Chen
Sequencer: Fix active marker in sub, cinematic, control rig sections.
#jira UE-44235
Change 3407229 on 2017/04/25 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3407343 on 2017/04/25 by Matt.Kuhlenschmidt
Added a world accessor to blutilties so they can operate on the editor world (spawn,destroy actors etc)
Change 3407401 on 2017/04/25 by Nick.Darnell
Slate - Adding a Round function to SlateRect. Also adding a way to convert a Transform2D to a full matrix.
Change 3407842 on 2017/04/25 by Matt.Kuhlenschmidt
Made AssetTools a uobject interface so it could be access from script.
A few methods were deprecated and renamed to enforce a consistent UI. Now all asset tools methods that expose a dialog have "WithDialog" in their name to differentiate them from methods that do not open dialogs and could be used by scripts for automation. C++ users may still access IAssetTools but should not ever need to use the UAssetTools interface class
Change 3407890 on 2017/04/25 by Matt.Kuhlenschmidt
Removed temp method
Change 3408084 on 2017/04/25 by Matt.Kuhlenschmidt
Exposed source control helpers to script
Change 3408163 on 2017/04/25 by Matt.Kuhlenschmidt
Deprecated actor grouping methods on UUnrealEdEngine and moved their functionality into their own class( UActorGroupingUtils). There is a new editor config setting to set which grouping utils class is used and defaults to the base class. The new utility methods are exposed to script.
Change 3408220 on 2017/04/25 by Alex.Delesky
#jira UE-43387 - The Levels window will now support the organization of streaming levels using editor-only folders.
Change 3408239 on 2017/04/25 by Matt.Kuhlenschmidt
Added a file helpers API to script. This one is a wrapper around FEditorFileUtils for now to work around some issues exposing legacy methods to script but FEditorFileUtils will be deprecated soon
Change 3408314 on 2017/04/25 by Jamie.Dale
Fixed typo
Change 3408911 on 2017/04/25 by Max.Chen
Level Editor: Delegate for when viewport tab content changes.
#jira UE-37805
Change 3408912 on 2017/04/25 by Max.Chen
Sequencer: Transport controls are added when viewport content changes and only to viewports that support it (ie. cinematic viewport doesn't allow it since it has its own transport controls). This fixes issues where transport controls wouldn't be visible in newly created viewports and also would get disabled when switching from default to cinematic and back to default.
#jira UE-37805
Change 3409073 on 2017/04/26 by Yannick.Lange
VR Editor: Fix starting point of lasers.
Change 3409330 on 2017/04/26 by Matt.Kuhlenschmidt
Fix CIS
Change 3409497 on 2017/04/26 by Alexis.Matte
Fix crash importing animation with skeleton that do not match the fbx skeleton.
#jira UE-43865
Change 3409530 on 2017/04/26 by Michael.Dupuis
#jira UE-44329: Only display the log if we're not running a commandlet
Change 3409559 on 2017/04/26 by Alex.Delesky
#jira none - Fixing case of header include for CL 3408220
Change 3409577 on 2017/04/26 by Yannick.Lange
VR Editor: being able to push/pull along the laser using touchpad or analog stick when transforming object towards laser impact.
Change 3409614 on 2017/04/26 by Max.Chen
Sequencer: Add Scrub() to movie scene player.
Change 3409658 on 2017/04/26 by Jamie.Dale
Made the handling of null item selection consistent in SComboBox
If the selection was initially null and the combo was closed, it would previously pass through the null entry to its child SListView, which would then always think the selection was changing when the combo was opened and cause it to immediately close again.
Change 3409659 on 2017/04/26 by Jamie.Dale
Added preset Unicode block range selection to the font editor UI
#jira UE-44312
Change 3409755 on 2017/04/26 by Max.Chen
Sequencer: Back out bIsUISound for scrubbing.
Change 3410015 on 2017/04/26 by Max.Chen
Sequencer: Fix crash on asynchronous level sequence player load.
#jira UE-43807
Change 3410094 on 2017/04/26 by Max.Chen
Slate: Enter edit mode and return handled if not read only.
Change 3410151 on 2017/04/26 by Michael.Trepka
Fix for building EngineTest project on Mac
Change 3410930 on 2017/04/27 by Matt.Kuhlenschmidt
Expose editor visibility methods on Actor to blueprint/script
Change 3411164 on 2017/04/27 by Matt.Kuhlenschmidt
Fix crash when repeatedly spaming ctrl+s and ctrl+shift+s to save.
PR #3511: UE-44098: Replace check with if-statement (Contributed by projectgheist)
Change 3411187 on 2017/04/27 by Jamie.Dale
No longer attempt to use the game culture override in the editor
Change 3411443 on 2017/04/27 by Alex.Delesky
#jira UE-43730, UE-43703 - Material Instances will now correctly use their preview meshes when being edited, or will use their parent's preview mesh if their preview mesh has not been set and the parent's is valid.
Change 3411809 on 2017/04/27 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3411810 on 2017/04/27 by Cody.Albert
Scrollbox now properly calls Invalidate while scrolling
Change 3411892 on 2017/04/27 by Alex.Delesky
#jira UE-40031
PR #3065: Ignore .vs folder when initializing git projects (Contributed by mattiascibien)
Change 3412002 on 2017/04/27 by Jamie.Dale
Fixed crash when using an invalid regex pattern
#jira UE-44340
Change 3412009 on 2017/04/27 by Cody.Albert
Fixed Invalidation Panel to apply scale only to volatile elements, correcting an issue with Cache Relative Positions
Change 3412631 on 2017/04/27 by Jamie.Dale
Implemented support for hiding empty folders in the Content Browser
"Empty" in this case is defined as folders that recursively don't contain assets or classes. Folders that have been created by the user or have at any point contained content during the current editing session are always shown.
This also fixes some places where the content filters would miss certain folders (usually due to missing checks when processing AssetRegistry events), and allows asset and path views to be synced to folder selections (as well as asset selections), which improves the experience when renaming folders, and navigating the Content Browser history.
#jira UE-40038
Change 3413023 on 2017/04/27 by Max.Chen
Sequencer: Fix filtering so that it includes parent nodes only and doesn't recurse through to add their children.
Change 3413309 on 2017/04/28 by Jamie.Dale
Fixed shadow warning
Change 3413327 on 2017/04/28 by Jamie.Dale
Added code to sanitize some known strings before passing them to ICU
Change 3413486 on 2017/04/28 by Matt.Kuhlenschmidt
Allow AssetRenameData to be exposed to blueprints/script
Change 3413630 on 2017/04/28 by Jamie.Dale
Moved FUnicodeBlockRange into Slate so that it can be used for C++ defined fonts as well as those defined in the font editor
Change 3414164 on 2017/04/28 by Jamie.Dale
Removing some type-unsafe placement new array additions
Change 3414497 on 2017/04/28 by Yannick.Lange
ViewportInteraction: - Add arcball sphere asset.
- Add opacity parameter to translucent gizmo material.
Change 3415021 on 2017/04/28 by Max.Chen
Sequencer: Remove spacer nodes at the top and bottom of the node tree.
This fixes the artifact of having spaces at the top and bottom which get selected when you click on the space and when you press Home and End to go to the top or bottom of the tree.
#jira UE-28931
Change 3415786 on 2017/05/01 by Matt.Kuhlenschmidt
#rn PR #3518: Allow PaintedVertices to be sized down (Contributed by jasoncalvert)
Change 3415836 on 2017/05/01 by Alex.Delesky
#jira UE-39203 - You can now summon the reference viewer from the content browser using the keyboard shortcut.
Change 3415837 on 2017/05/01 by Alex.Delesky
#jira UE-34947 - When the user attempts to download an IDE from within the editor (due to needing one to add a C++ class), the window that hosts the widget will now close if it's a modal window.
Change 3415839 on 2017/05/01 by Alex.Delesky
#jira UE-42049
PR #3266: Profiler: added Thread filter (Contributed by StefanoProsperi)
Change 3415842 on 2017/05/01 by Michael.Dupuis
#jira UE-44514 : Removed the warning as it's causing more issue than it fixes.
Change 3416511 on 2017/05/01 by Matt.Kuhlenschmidt
Make UHT generate WITH_EDITOR guards around UFunctions generated in a WITH_EDITOR C++ block. This prevents these functions from being generated in non-editor builds
Change 3416520 on 2017/05/01 by Yannick.Lange
Viewport Interaction: - Toggle ViewportWorldInteraction with command for desktop testing without having to use VREditor.
- Add helper function to add a unique extension by subclass.
Change 3416956 on 2017/05/01 by Matt.Kuhlenschmidt
Exposed EditorLevelUtils to script. This allows creation of streaming levels, setting the current level and moving actors between levels
Change 3416964 on 2017/05/01 by Matt.Kuhlenschmidt
Prevent foliage from marking actors dirty as HISM components are added and removed from the scene.
Change 3416988 on 2017/05/01 by Lauren.Ridge
PR #3122: UE-40262: Color tabs according to asset type (Contributed by projectgheist)
Changed the highlight style to be around the icon and match the content browser color and style.
#jira UE-40437
Change 3418014 on 2017/05/02 by Yannick.Lange
Viewport Interaction: Remove material members from base transform gizmo and use asset container to get materials.
Change 3418087 on 2017/05/02 by Lauren.Ridge
Adding minor tab icon surrounds
Change 3418602 on 2017/05/02 by Jamie.Dale
Fixed a crash that could occur due to bad data in the asset registry
It was possible for FAssetRegistry::PrioritizeSearchPath to re-order the BackgroundAssetResults in response to callback from FAssetRegistry::AssetSearchDataGathered, which caused integrity issues with the array, and would lead to results being missed, or an existing result being processed twice (which due to certain assumptions would result in it being deleted, and bad data being left in the asset registry).
These results lists now use a custom type that prevents the mutation of items that have already been processed but not yet trimmed.
Change 3418702 on 2017/05/02 by Matt.Kuhlenschmidt
Fix USD files that reference other USD files not finding the referenced files by relative path. Requires USD third party changes only
Change 3419071 on 2017/05/02 by Arciel.Rekman
UBT: optimize FixDeps step on Linux.
- Removes the need to re-link unrelated engine libraries when recompiling a code project.
- Makes builds faster on machines with multiple cores.
- The module that has circularly referenced dependencies is considered cross-referenced itself.
- Tested compilation on Linux (native & cross) and Mac (native).
Change 3419240 on 2017/05/02 by Cody.Albert
Bound widgets in animation tracks can no longer be swapped with widgets from a different widget blueprint, which would lead to a crash
Change 3420011 on 2017/05/02 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3420507 on 2017/05/03 by Lauren.Ridge
Selecting a camera or other preview actor in VR Mode now creates a floating in-world viewport. Also deselect all Actors when moving into and out of VR Mode
Change 3420643 on 2017/05/03 by andrew.porter
QAGame - Adding test content to QA-Sequencer for using spawnables with override bindings
Change 3420678 on 2017/05/03 by andrew.porter
QAGame: Updating override binding sequence
Change 3420961 on 2017/05/03 by Jamie.Dale
Exposed some missing Internationalization functions to BPs
Change 3422767 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Extensibility for dragging on gizmo handles
Removed ETransformGizmoInteractionType completely and replaced it with UViewportDragOperation. Using the ETransformGizmoInteractionType enum made external extensibility impossible. Now every gizmo handle group has a component called UViewportDragOperationComponent which holds a UViewportDragOperation of a certain type. This UViewportDragOperation can be inherited to create a custom method to calculate a new transform for the objects when dragging the gizmo handle.
Change 3422789 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Fix duplicate console variable.
Change 3422817 on 2017/05/04 by Andrew.Rodham
Sequencer: Changed level sequence object references to always use a package and object path based lookup
- Newly created binding references now consist of a package name and an inner object path for actors, and just an inner object path for components. The package name is fixed up dynamically for PIE, which means it can work correctly for multiplayer PIE, and when levels are streamed in during PIE (functionality previously unavailable to lazy object ptrs)
- Added a way of rebinding all possessable objects in the current sequence (Rebind Possessable References)
- Level sequence binding references no longer use native serialization now that TMap serialization is fully supported.
- Multiple bindings are now supported in the API layer of level sequence references, although this is not yet exposed to the sequencer UI.
#jira UE-44490
Change 3422826 on 2017/05/04 by Andrew.Rodham
Removed erroneous braces
Change 3422874 on 2017/05/04 by James.Golding
Adding MaterialEditingLibrary to allow manipulation of materials within the editor.
- Refactored code out of MaterialEditor where possible
Marked some material types as BP-accessible, to allow to editor-Blueprint access.
Remove unused 'bSkipPrim' property from Set/CheckMaterialUsage
Change 3422942 on 2017/05/04 by Lauren.Ridge
Tab padding adjustment to allow tabs with icons to be the same height as tabs without
Change 3423090 on 2017/05/04 by Jamie.Dale
Added a way to get the source package path for a localized package path
Added tests for the localized package path checks.
Change 3423133 on 2017/05/04 by Jamie.Dale
Fixed a bug where a trailing quote without a newline at the end of a CSV file would be added to the parsed text rather than converted to a terminator
Change 3423301 on 2017/05/04 by Max.Chen
Sequencer: Add JumpToPosition which updates to a position in a scrubbing state.
Change 3423344 on 2017/05/04 by Jamie.Dale
Updated localized asset group caching so that it works in non-cooked builds
Change 3423486 on 2017/05/04 by Lauren.Ridge
Fixing deselection code in VWI
Change 3423502 on 2017/05/04 by Jamie.Dale
Adding automated localization tests
Change 3424219 on 2017/05/04 by Yannick.Lange
- Hide FWidget when ViewportWorldInteraction starts.
- Added option to EditorViewportClient to not render FWidget without using FWidget::SetDefaultVisibility.
Change 3425116 on 2017/05/05 by Matt.Kuhlenschmidt
PR #3527: Modified comments (Contributed by projectgheist)
Change 3425239 on 2017/05/05 by Matt.Kuhlenschmidt
Fix shutdown crash in projects that unregister asset tools in UObjects being destroyed at shutdown.
Change 3425241 on 2017/05/05 by Max.Chen
Sequencer: Components aren't deselected from the sequencer tree view when they get deselected in the viewport/outliner.
#jira UE-44559
Change 3425286 on 2017/05/05 by Jamie.Dale
Text duplicated as part of a widget archetype now maintains its existing key
#jira UE-44715
Change 3425477 on 2017/05/05 by Andrew.Rodham
Sequencer: Do not deprecate legacy object references since they still need to be serialized on save
- Also re-add identical via equality operator so that serialization works again
Change 3425681 on 2017/05/05 by Jamie.Dale
Fixed fallback font height/baseline measuring
Change 3426137 on 2017/05/05 by Jamie.Dale
Removing PPF_Localized
It's an old UE3-ism that's no longer tested anywhere
Change 3427434 on 2017/05/07 by Yannick.Lange
ViewportInteraction: Null check for viewport.
Change 3427905 on 2017/05/08 by Matt.Kuhlenschmidt
Removed the concept of a global selection annotation. This poses a major problem when more than one selection set is clearing it. If more than one selection set is in a transaction the last one to be serialized will clear and rebuild the annotation thus causing out of sync issues with component and actor selection sets. This change introduces the concept of a per-selection set annotation to avoid being out of sync. Actor and ActorComponent now override IsSelected (editor only) to make use of these selections.
#jira UE-44655
Change 3428738 on 2017/05/08 by Matt.Kuhlenschmidt
Fix other usage of USelection not having a selection annotation
#jira UE-44786
Change 3429562 on 2017/05/08 by Matt.Kuhlenschmidt
Fix crash on platforms without a cursor
#jira UE-44815
Change 3429862 on 2017/05/08 by tim.gautier
QAGame: Enable Include CrashReporter in Project Settings
Change 3430385 on 2017/05/09 by Lauren.Ridge
Resetting user focus to game viewport after movie finishes playback
#jira UE-44785
Change 3430695 on 2017/05/09 by Lauren.Ridge
Fix for crash on leaving in the middle of a loading movie
#jira UE-44834
Change 3431234 on 2017/05/09 by Matt.Kuhlenschmidt
Fixed movie player setting all users to focus which breaks VR controllers
[CL 3432852 by Matt Kuhlenschmidt in Main branch]