Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().
Resubmission of CL# 19833778 with fixes for problematic Mac and Android toolchains, causing spurious errors while building PCHs.
#rb devin.doucette, charles.bloom, will.damon, chris.babcock
#jira UE-148435
#preflight 6260764d91376845adf9893f
[CL 19840896 by Steve Robb in ue5-main branch]
Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().
#rb devin.doucette, charles.bloom
#jira UE-148435
#preflight 625ece48f16e0d2accab15d9
[CL 19833778 by Steve Robb in ue5-main branch]
#jira UE-122078
#rb Andrew.Davidson, Colin.McGinley
#preflight standard build
#ROBOMERGE-AUTHOR: fred.kimberley
#ROBOMERGE-SOURCE: CL 18817999 in //UE5/Release-5.0/... via CL 18818012 via CL 18822871
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18824721 by fred kimberley in ue5-main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870586 by ryan durand in Main 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]
#rb Rendering
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3658809 by Chris.Bunner
Changing default HDR display gamut to P3 as in practice that's more common than Rec2020, this should be a user-facing option where possible though as we can't automatically retrieve that data.
Change 3658842 by Chris.Bunner
Backing out previous HDR default gamut change as it conflicts with mandatory platform defaults.
Change 3695269 by Arne.Schober
DR - Make clang happy wreorder
Change 3695418 by Guillaume.Abadie
Fixes compilation failure in FoliageType_InstancedStaticMesh.cpp.
Change 3695430 by Guillaume.Abadie
Fixes missing BeginFrame dynamic resolution event in EngineTest.
Change 3695469 by Guillaume.Abadie
Fixes crash when passing down an invalid parameter on the sample material expression's DDX, DDY parameters.
Change 3696091 by Guillaume.Abadie
Fixes Linux compilation failure in DynamicResolution.cpp
Change 3696593 by Chris.Bunner
Fixed typo in vetex factory enum.
Change 3696596 by Chris.Bunner
Added material attributes type checking to If material expression.
Updated If material expression to validate compilation of inputs.
Change 3696597 by Chris.Bunner
Allow visible parameter retrieval to correctly traverse 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 3696599 by Chris.Bunner
Fixed material instance parameter visiblity when using nested static switches across functions.
#jira UE-50878
Change 3696734 by Chris.Bunner
Return type fix.
Change 3697123 by Guillaume.Abadie
Fixes compilation failure in PostProcessWeightedSampleSum.cpp on Windows 32bits.
Change 3697125 by Guillaume.Abadie
Fixes compilation failure in MaterialExpressionIf.h
Change 3697127 by Guillaume.Abadie
Fixes compilation failure in DynamicResolution.cpp on shipping build.
Change 3697135 by Guillaume.Abadie
Fixes crash in dynamic resolution event frontend when resizing game play viewport in EngineTest.
Change 3697199 by Guillaume.Abadie
Fixes TAA upsample's shader compilation failure on Mac.
Change 3697220 by Guillaume.Abadie
Makes static analysis happy again.
Change 3697280 by Chris.Bunner
Fixing up invalid casts in material layers validation.
Change 3697366 by Rolando.Caloca
DR - hlslcc - Fix warning
#jira UE-43988
Change 3697451 by Rolando.Caloca
DR - vk - Per pipeline descriptor pools
Descriptor pool are now allocated per PSO instead of globally to reduce peak mem consumption and fragmentation
Enabled on Windows only via VULKAN_USE_PER_PIPELINE_DESCRIPTOR_POOLS
Change 3697477 by Rolando.Caloca
DR - vk - Custom memory allocator
Remove old/unused stats
Change 3697486 by Rolando.Caloca
DR - vk - Fix validation issue
Change 3697488 by Richard.Wallis
Fix for Mac editor session no longer accurately tracking Mouse location after moving between Desktops in Mission Control on 10.12.6. Problem stems from the extra call to update the slate cached window position in mouse move while dragging, which is itself is a hack but apparently this is needed as we don't get window position updates on Mac while dragging (although I couldn't see any -ve side effects without it) then the OS (in 10.12.6) doesn't always push out a final window did move notificaiton when changing desktops which leaves the window according to slate incorrectly positoned to it's frame.
Solution is to either remove the mouse-move-while-drag window position hack or add a final window position update to the mouse-up event while dragging - this change is the latter.
#jira UE-37553
Change 3697501 by Richard.Wallis
Move audio processing over to audio bus tap. Currently on Mac Media audio playback uses OS media player mixer rather than Engine as existing implemtation, using AVAssetReader, now suffers from poor performance with new Media Framework. This audio tap version replaces that asset reader implementation but also suffers from bad quality audio hence is still disabled at the top of AvfMediaTracks.cpp.
Original Code Review Description:
Convert Mac to Play audio through the engine MediaFramework API rather than using AVMediaPlayer. This is the Mac implementation only - this should work ok on iOS but unable to test due to missing audio type implementation (throws error "Init Buffer on unsupported sound type name = Synth type = 5"), as such is only enabled for Mac. There maybe some extra tweaks required for iOS on app backgrounding etc if this feature is enabled.
- Stuttering Audio Performace issue investiagation: Re-Tested this implementation against [now fixed] current Mac implementation which was working fine last year and that implementation now has the same audio output quality (performance) issues as this one. Basic investigation seems to point to somewhere in the engine audio handing. When poor audio is heard the FMediaAudioResampler::Generate() function is dequeing an IMediaAudioSample sample buffer and the audio sample queue usually has 50-100 of these IMediaAudioSample buffers waiting in the queue. I think the AvfMedia playback system is providing the sample buffers in good time but they are not getting consumed "fast" enough. This under consuming also occurs if I force the Core Audio - Audio Unit mixer to use 48000 samples/sec.
#jira UEPLAT-1677
Change 3697517 by Richard.Wallis
XCode 9.0 extra nullability specifiers required.
Change 3697537 by Richard.Wallis
Back out revision 23 from //UE4/Dev-Rendering/Engine/Plugins/Media/AvfMedia/Source/AvfMedia/Private/Player/AvfMediaTracks.cpp
Change 3697670 by Rolando.Caloca
DR - vk - Fix mapstaging surface
Change 3697846 by Uriel.Doyon
Allow denormalized values when converting float32 to float16.
Change 3697892 by Uriel.Doyon
Fix for unaligned structure elements
Change 3699335 by Richard.Wallis
Mac compile fix - turns out I did need these nullability specifiers here.
Change 3699663 by Guillaume.Abadie
Fixes time unit conversions from microseconds to milliseconds error in dynamic resolution heuristic when using GPU busy time queries.
Change 3699959 by Rolando.Caloca
DR - Fix barrier in the middle of render pass
Change 3699969 by Rolando.Caloca
DR - vk - Change dump layer location so it prints out validation ids
Change 3700356 by Guillaume.Abadie
Implements secondary screen percentage to be able to do TAA upsample followed spatial upscale so that the editor viewport still have same TAA upsample screen percentage range to test the content with no matter monitor's DPI.
Change 3701105 by Guillaume.Abadie
Ignore per view automatic mip bias on texture type other than 2d textures.
#jira UE-51396
Change 3702297 by Richard.Wallis
Mac compile fix for nullable specifier. Looks like Obj class using the C++ class also needs this otherwise it throws. Seems to be some kind of xcode/compiler caching bug with this stuff as it'll report the error once then on subsequent compiles say everything is ok.
#jira UE-51386
Change 3702357 by Richard.Wallis
Mac nullability compile fix - again. Looks like I fell foul of that xcode compile caching!
#jira UE-51386
Change 3702424 by Guillaume.Abadie
Fixes planar reflection from drowing themselves in their own FSceneRenderer in forward shading.
#jira UE-51395
Change 3702464 by Guillaume.Abadie
Fixes wrong viewport to buffer conversion of the distortion.
#jira UE-51406
Change 3702819 by Guillaume.Abadie
Fixes planar reflections with secondary screen percentage for HighDPI editor viewports.
Change 3703732 by Guillaume.Abadie
Removes unecessary check(); when there is more than 2 players with planar reflections.
#jira UE-51436
Change 3704302 by Guillaume.Abadie
Removes unecessary Interface suffix on new dynamic resolution related interfaces
Change 3704390 by Chris.Bunner
Fixed a coincidentally correct define.
Change 3704730 by Rolando.Caloca
DR - vk - Fix map for depth surfaces
Change 3704739 by Rolando.Caloca
DR - Debug label on D3D11 UAVs
- Validate when running -d3debug
Change 3705000 by Chris.Bunner
Skip compiling opacity and opacity mask inputs on opaque surface materials. Previously the code was always added to the shader, sometimes we force opaque materials down a masked path which then calls the dormant code unintentionally. A safer fix for UE-48254.
Partially reverted previous fix in CL 3608303 which removed a material instance optimization caching the overridden base properties.
Change 3706065 by Guillaume.Abadie
Does some renaming for primary screen percentage, and move the primary screen percentage method selection from dynamic resolution driver to FSceneView.
Change 3706464 by Chris.Bunner
Fixed material property translate overrides that were generating code in the wrong entry.
Fixed conditions in If material expression GetInputType and IsMA check.
#jira UE-51368
Change 3706641 by Chris.Bunner
Missing "break" in switch statement (which unfortunately needs another bump to resolve).
Change 3706642 by Guillaume.Abadie
Fixes assertion failure when r.TemporalAA.EnableUpscale = 1
Change 3706650 by Gil.Gribb
UE4 - UE4 - Changes from intel. Increase number of worker threads on Windows to if hyperthreads (hyperthreads √ 2) else cores √ 1 up to a max of 22 workers. Increase MAX_THREADS multiplier per bank from 22 to 26. Intel VTune ITT event annotations. Wrapped in same function as your existing CPU events and enabled with √vtune. Optimize NV cloth by consuming FVector instead of FVector4 out of the solver. Vertex buffers were using FVector all along. ~15% improvement. Optimize cloth copy to vertex buffer by adding prefetch (similar to how bones are already done). Move local to world cloth transform from CPU to GPU. When simulating lots of vertices game thread was becoming bottleneck doing matrix multiply. Add your TaskGraph task switch latency test code.
Change 3706733 by Daniel.Wright
Print Embree Build time
Change 3706841 by Daniel.Wright
EmbreeFilterFunc4 now handles masked out intersections properly
Change 3707437 by Rolando.Caloca
DR - vk - Android compile fix
#jira UE-51474
Change 3707785 by Guillaume.Abadie
Fixes viewport issue in bloom setup pass with TAA upsample.
Change 3709623 by Rolando.Caloca
DR - vk - Missing barrier for reading into cpu
Change 3709633 by Rolando.Caloca
DR - vk - Compile fix
Change 3710454 by Mark.Satterthwaite
Refactor the way we compile Buffer<> & RWBuffer<> types for Metal so that we can support the type-conversion semantics of HLSL/D3D.
- Buffer<> types are converted to Linear Textures unless the internal type is 3-compnent or the STRONG_TYPE macro is added as a type-qualifier. Linear Textures require an MTLTexture "view" object be created around the MTLBuffer which is the backing-store and it is typically best if that buffer is marked as Private (GPU-only) memory, reading from this in the shader then uses the texture-fetch hardware to perform the format conversion on load.
- RWBuffer<> & 3-compnent Buffer<> types are converted to use template functions to load/store - the implementation of which will read the format from the BufferSizes meta-table and determine which type-conversion to apply. Function-constants are used to specialise the shader where feasible to reduce branch costs (function-constants are a Metal feature that allow efficient runtime recompilation of bytecode shaders).
- Buffer<> & RWBuffer<> types where the STRONG_TYPE macro is added as a type-qualifier (only does something on Metal, everywhere else it is #define'd away) are compiled as "raw" Metal buffers of the inner-type (e.g. float4 for Buffer<float4>) and the MetalRHI runtime will enforce that only SRVs/UAVs of the proper format are bound to it. This is necessary in a couple of cases (BoneMatrices, NumCulledLightsGrid, CulledLightDataGrid & ForwardLocalLightBuffer buffers) which are used in a larger number of shaders as Linear Textures have poorer performance than Buffer<>/RWBuffer<>.
- Most of the complications to generating subtly different Metal code for different OS/device combinations have been factored out into ue4_stdlib.metal which acts as an extension to the Metal shader standard-library and helps simplify the MetalBackend code - particularly helpful for Buffer<>/RWBuffer<> but also texturecube_array and the SM6 wave-related intrinsics.
- Reverted some of the awkward Metal-specific changes Richard.Wallis & Arne had to make to the high-level shaders as they aren't necessary anymore.
- Made the existing Metal-specific changes to use uint32 for all light-grid injection buffers apply to all Metal platforms again (I had hoped that it would not be necessary anymore, but it is much faster this way).
- STRONG_TYPE is actually hlslcc's "invariant" keyword applied as a type-qualifier to a Buffer<>/RWBuffer<> type - only valid when using Metal which exports this through ILanguageSpec and #define'd out for everyone else.
- Old versions of iOS (anything earlier than iOS 10.3) won't be able to use this new code, so every buffer will be treated as "raw" and the MetalRHI will now properly report when something goes awry rather than it leading to mysterious rendering errors and crashes.
Change 3710456 by Mark.Satterthwaite
Fix the Eddie workset project generator so that Enterprise projects don't get mixed in with regular projects at the top-level because of the way Eddie combines workset groups.
Change 3710457 by Mark.Satterthwaite
DX11 texture formats for Mac Metal please!
Change 3710480 by Mark.Satterthwaite
Permit RHI thread and parallel execution in Mac -game mode again.
Change 3710522 by Mark.Satterthwaite
MSVC type-mismatch error fixes.
Change 3710580 by Mark.Satterthwaite
Alright then - if I can't use the C++11 extended string semantics I'll have to use "xxd -i" to generate a hex-dump include header from ue4_stdlib.metal instead. This can only be updated from a machine with access to the POSIX xxd command (Mac & Linux, possibly the new Linux sub-system for Win10).
Change 3710616 by Mark.Satterthwaite
Missing file.
Change 3712972 by Guillaume.Abadie
Fixes Circle DOF's negative alpha channel getting clamped to 0 in TAA pass.
Change 3712979 by Guillaume.Abadie
Fixes wrong RT reallocation when doing TAA upsample in editor viewports with secondary upscale.
Change 3713406 by Mark.Satterthwaite
Use GPU morph targets on Mac - the necessary buffer conversions will always be available there. For iOS it can only be supported if iOS 10 is the minimum OS & Metal standard so leave that on the CPU path for now.
Change 3713494 by Richard.Wallis
Fix for hitch when PIE unloading sublevel. PerformReachabilityAnalysisOnObjects is spawing multiple threads in Editor builds as there is an extra code path that results in Critical Section locking within a singleton type static object - this is a bottle neck for multiple threads. However they all just need to read the data not change it. Replaced FScopeLock with a Read/Write version allowing these threads to all take a read lock at the same time to reduce contention.
Changed the FUObjectAnnotationDense implementation only - left the sparse implementation alone as its not currently affecting this - although we could proactivly change that too.
Also tested again repro in linked bug UE-24711.
#jira UE-40533
Change 3713612 by Mark.Satterthwaite
Integrate LPV_STORE_INDEX_IN_HEAD_BUFFER related changes from //depot/Partners/Microsoft/UE4-MS/Engine-Fable @ 2954744
This should make Light Propagation Volumes potentially viable on non-Microsoft platforms.
Change 3713623 by Mark.Satterthwaite
Implement ByteAddressBuffer/RWByteAddressBuffer in hlslcc in a similar manner to StructuredBuffer/RWStructuredBuffer so that the backends don't need too much modification. Implement the necessary changes into MetalBackend to make this work for Metal.
Load/Store{+2,3,4} & Atomics are supported. Counter operations are not supported and aren't likely to be.
Change 3713636 by Mark.Satterthwaite
Enable LPVs for Mac Metal.
- Rework some multi-dimensional arrays & array-index dependent HLSL code that hlslcc simply can't cope with, the mesa-glsl compiler core is only capable of dealing with 1 dimensional arrays and array-indexing can't itself be directly dependent on the result of an array-index operation.
- MetalRHI needs to ignore any SetRenderTargets call that binds nothing at all as you must bind at least one target (UAV, RT, Depth/Stencil) for it to be able to do anything sensible.
- Turn on LPVs for Metal as it works now.
Change 3714049 by Guillaume.Abadie
Do not set screen percentage method to TAA upsample when anti aliasing method is not TAA even if there is automatic fallback in the renderer.
Change 3714306 by Guillaume.Abadie
Fixes assertion failure in dynamic resolution state proxy with GPU busy time queries.
Change 3714714 by Mark.Satterthwaite
Tweak Metal GPU identification so that it works with eGPU boxes and protoype hardware - these changes only apply to macOS 10.13 so the system as a whole remains.
Change 3716104 by Mark.Satterthwaite
Fix 10.12/Xcode 8 compile errors from the build-farm which is still split until Fortnite can update.
Change 3716120 by Mark.Satterthwaite
Silence static-analysis.
Change 3716158 by Guillaume.Abadie
Rewrites editor primitive compositing to support TAA upsample.
This takes the oportunity to remove the manual depth testing in base pass pixel shader of editor primitives.
Change 3716271 by Daniel.Wright
Lightmass correctness fixes
* After these changes, point, spot, directional and sky lights closely match reference renderer Mitsuba after light unit conversions
* Photon density trimming intended for direct photons was affecting indirect photons as well. This caused high noise for point / spot lights with a large attenuation radius. Indirect photon density even for small lights is 5x with this change, which improves 2nd bounce quality.
* Removed legacy fudge factor on point / spot light photon energy
* Spotlights no longer emit based on indirect photon paths. Fixes excessive photon energy from spot lights as they were emitting outside of the cone.
* Fixed photons computing one more bounce than requested.
* Added an option to use the Radiosity solver for all multibounce, replacing photons. Useful as a reference but generally too much noise indoors.
* Fixed visualization of photons without final gather
Change 3716434 by Mark.Satterthwaite
Backout the remaining change from 3632041 that is no longer necessary - this was the last of the 4.18 Metal workarounds.
Change 3716491 by Chris.Bunner
Fixing up an edge-case on a recent optimization.
Change 3716611 by Guillaume.Abadie
Allows secondary screen percentage >= 100%.
Change 3716977 by Guillaume.Abadie
Back out changelist 3716158 to unblock QA pass.
#jira UE-51580
Change 3717111 by Arne.Schober
Fixing nomalization of Morph Tangents https://udn.unrealengine.com/questions/392462/
Also implemanted batching of the dispatches which should help worst case perfomance where dispatches become too small.
CalculateInverseAccumulatedWeights is not cheap and proably should be moved onto a task thread that runs as soon as the input weights are ready.
Change 3717127 by Mark.Satterthwaite
Fix a mismerge from the reversion of 3632041 - part of the modified code had been moved into another file and I didn't initially notice.
Change 3717178 by Mark.Satterthwaite
Remove useless copy-pasted expressions from glsl_type::GetByteAddressBufferInstance & force MetalBackend to relink. Apparently the previous Mac libs were mysteriously broken.
#jira UE-51583
Change 3717476 by Marcus.Wassmer
Fix PS4 compile. funciton local statics not allowed on PSSL
Also enabled the new atomics method for LPVs for all platforms
Change 3717502 by Arne.Schober
DR - Compiletime option for compressed ruleset (0.02ms perf gain on PS4 and disabled by default as it limits array size to 2million entries)
Change 3717601 by Arne.Schober
DR - Move cycle counter into more meaningfull locations.
Change 3718054 by Guillaume.Abadie
Removes unecessary check() failure on secondary upscale that fires when testing raw output screen percentage method.
Change 3718066 by Guillaume.Abadie
Reland: Rewrites editor primitive compositing to support TAA upsample.
This takes the oportunity to remove the manual depth testing in base pass pixel shader of editor primitives.
Change 3718589 by Mark.Satterthwaite
Console-variable to enable and disable Manual-Vertex-Fetch for Metal and fix the internal code to handle the subtle changes in behaviour for vertex-declarations so we don't explode under the Metal validation layer. MVF works on macOS, though testing did expose an error with Tessellation on Nvidia (true for MVF enabled & disabled).
Change 3718633 by Guillaume.Abadie
Fixes temporal instability issue of TAA upsample with secondary screen percentage.
Change 3718658 by Arne.Schober
DR - 25% MorphTarget Speed increase because there was a bit of cache thrashing between the waves going on.
Change 3718818 by Mark.Satterthwaite
Fix compilation on hlslcc - integral values are not automatically converted into comparisons with zero.
Change 3719004 by Guillaume.Abadie
Lets the game viewport client automatically set raw output screen percentage method when doing dynamic resolution with stereo rendering but without TAA upsample.
Change 3719375 by Mark.Satterthwaite
Extend mtlpp compiler testing app to support Metal tessellation compute shaders so we can send Nvidia a much simpler reproduction of their regression.
Change 3720099 by Mark.Satterthwaite
Make the left-hand arguments work in airdiff.
Change 3720413 by Mark.Satterthwaite
Support standalone compute shaders in the mtlpp compiler test app.
Change 3721232 by Mark.Satterthwaite
No more Metal Shader Model 4 - instead we have to have a Metal Shader Model 5 w/o Tessellation as Nvidia's shader compiler is broken on all tessellation shaders in 10.13.0 and above. There is no guarantee that they will fix this prior to 10.14 and I can't afford to disable tessellation entirely as if I do that then the AMD & Intel compilers will also regress. As there is no Shader Model 4 platform on Mac anymore I've amended the LevelEditorActions to disable the preview modes when no appropriate shader platform is available.
Change 3721244 by Mark.Satterthwaite
Fix incorrect enum handling for Metal features due to overflow.
#jira UE-51643
Change 3721338 by Mark.Satterthwaite
MIssing file from 3721232
Change 3721818 by Mark.Satterthwaite
Fix the Intel vector-array-dereference workaround so that it doesn't cause the AMD compiler to explode instead.
Change 3722139 by Arne.Schober
DR - [UE-51602] -Fixed Typo that accidently bound the LightingInstancebuffer to the Transform one
#jira UE-51602
Change 3722165 by Rolando.Caloca
DR - Default -opengl to GL4
Change 3722682 by Guillaume.Abadie
Fixes wrong clear color in SSR important for VR that has a HMD mesh.
Change 3722766 by Rolando.Caloca
DR - Fix static analysis
Change 3722943 by Mark.Satterthwaite
Disable the METAL_SM5_NOTESS shader platform again - I can workaround the Nvidia pipeline state compiler crash by changing the buffer address space from "constant" to "device" as we're managing to confuse the poor thing. This won't materially affect AMD or Intel as they don't care much about this, but to limit performance issues on Nvidia we only need to do this for Tessellation Compute shaders.
Change 3723100 by Mark.Satterthwaite
Apparently users like enabling Metal shader standards that won't work on their current OS, so don't display those that aren't going to work & display an error message before quitting rather than crashing when trying to load a project that tries to use an incompatible shader version.
Change 3723121 by Mark.Satterthwaite
Fix build error.
Change 3723245 by Daniel.Wright
Ensure for when a reflection capture upload fails due to incorrect lighting scenario level handling
Reflection captures with no data use an array index of 0, instead of -1. Might avoid reading uninitialized memory on PS4.
Change 3723387 by Arne.Schober
DR - Metal already applies the instance and vertexoffset in the shader
Change 3723393 by Mark.Satterthwaite
More fixes to the mtlpp compiler test application.
Change 3725258 by Guillaume.Abadie
Improves fast TAA upsample shader permutation by 15% on console.
Change 3725555 by Chris.Bunner
[Dupliate] CL 3725548 - Fixed invalid screenpercentage value in VehicleGame sample (was setting -1 but should default to 100). This has always been broken but was recently exposed by CL 3686200.
Change 3726845 by Guillaume.Abadie
Exposes SvPosition to material through screen position material expression, so that material no longer have SvPosition * InvViewSize * ViewSize precision loss.
#jira UE-51428
Change 3728014 by Guillaume.Abadie
Uses ScreenPosition material expression's PixelPosition pin in existing engine functions to improve precision.
#jira UE-51428
Change 3728053 by Richard.Wallis
Duplicate CL 3727958: Crash fix when using shared material libraries. Initial shader code library offset is not zero'd so all entry offsets were garbage.
Change 3728339 by Guillaume.Abadie
Adds project setting for TAA upample, and officialises TAA upsampling CVar.
Change 3728549 by Guillaume.Abadie
CsvProfiler is pretty cool, but even better with console autocompletion for lazy developers.
Change 3728752 by nick.bullard
Built and re-saved QA-MeshPaint
#jira UE-50978
Change 3728775 by Guillaume.Abadie
Implements r.DynamicRes.ChangePercentageThreshold to stabilize primary screen percentage.
Change 3729224 by Uriel.Doyon
Hidden levels now keep their last build data when using lighting scenarios.
Hidden levels don't affect the scene anymore volumetric lighting when not using lighting scenarios.
#jira UE-40454
#jira UE-38131
Change 3729243 by Marcus.Wassmer
Update Ansel to 1.4
#github 4159
#jira UE-51545
Change 3729325 by zachary.wilson
Adding indirect lighting to TM-LightingChannels
#jira UE-47069
Change 3729485 by zachary.wilson
Fixing ambient occlusion bias on QA-LightsStationary. Removed global PPV with bad settings, also fixed the shadow on the roof.
#jira UE-50972
Change 3729629 by Uriel.Doyon
Fixed crash when using debug view modes.
Fixed d3ddebug error when clearing quad overdraw buffer.
#jira UE-51836
Change 3730053 by Guillaume.Abadie
Allows edititing of AScreenshotFunctionalTestBase::ScreenshotCamera.
Change 3730308 by Guillaume.Abadie
Disables TAA upsample on buffer visualization, and disallow screen percentage preview in editor viewport with any buffer visualization.
Change 3730355 by Guillaume.Abadie
Sacrifices consistency for good cvar name for TAA upsample.
Change 3731403 by Daniel.Wright
Reduced slider for ContactShadowLength to .1, algorithm produces poor results with larger values.
Change 3731404 by Daniel.Wright
Checkpoint for ScreenShadowMaskTexture, allowing 'vis ScreenShadowMaskTexture'
Change 3731407 by Daniel.Wright
Must opt-in for FDistanceFieldSceneData::VerifyIntegrity
Change 3731517 by Guillaume.Abadie
Freezes dynamic resolution heuristic when doing pause.
Change 3732168 by Guillaume.Abadie
Renames TAA upsampling cvar.
Change 3732295 by Guillaume.Abadie
Lets the scene texture's size and texel size return the correct sizes after TAA upsample.
Change 3732313 by Guillaume.Abadie
Implements SceneTexture material expressions' automated tests.
Change 3734928 by Guillaume.Abadie
Adds panic mode when the last N frames are over budget to the dynamic resolution heuristic.
Change 3735966 by Ryan.Vance
Fixing mac steamvr compile issue. Missed a few lines in the refactor because mac.
Change 3736104 by Guillaume.Abadie
Removes FSceneViewInitOptions::bDisableGameScreenPercentage brought by 4.18, that new screen percentage API do in a better way.
Change 3736346 by Daniel.Wright
Volumetric fog is always interpolated in the pixel shader, since per-vertex interpolation gives consistently poor results. Fixes Volumetric Fog on opaque in Forward, and on transparent in Deferred.
Forward shading: per-pixel height fog is always done in the base pass, to work with MSAA correctly
Change 3736348 by Daniel.Wright
Forward shadowing of directional light for translucency
* Static shadowing and CSM supported with minimal filtering (1 PCF)
* Deferred renderer: affects translucency using 'Surface ForwardShading' lighting mode. Forward renderer: affects all translucency.
Change 3736650 by Rolando.Caloca
DR - vk - # of desc pools
Change 3737985 by Guillaume.Abadie
Fixes pixel inspector with primary and secondary screen percentage.
Change 3738638 by Michael.Lentine
Compile fix due to unclear operator precendence.
Change 3739417 by Daniel.Wright
Fixed a few issues with irradiance cache visualization
Change 3739447 by Daniel.Wright
Skip forward static shadowing in projects with static lighting disabled
Change 3739595 by Daniel.Wright
ConditionalPostLoad DistanceFieldReplacementMesh. Should fix a crash on load when static mesh derived data is being rebuilt, and the DistanceFieldReplacementMesh is in use.
Change 3739598 by Daniel.Wright
Disable capsules shadows on lowest shadow quality
Change 3739611 by Daniel.Wright
Added r.CapsuleDirectShadows and r.CapsuleIndirectShadows for more specific scalability control over capsule shadow features
New Lighting Feature show flags for RTDF shadows and Capsule Shadows
Change 3740516 by Guillaume.Abadie
Fixes VR editor rendering only on eye with TAA upsample.
#jira UE-52016
Change 3740580 by Guillaume.Abadie
Fixes chromatic aberration with TAA upsample and multiple view rendering.
#jira UE-51993
Change 3740588 by Guillaume.Abadie
Gives to FXAA a more explicit draw event name for easier UDN support.
Change 3740845 by Michael.Lentine
Fix shipping build.
Change 3740903 by Guillaume.Abadie
Disables dynamic resolution threading outliers detection by default and includes editor UI GPU cost within dynamic resolution's begin/end frame events for better reliability of timestamp query based dynamic res in editor.
Change 3741355 by Daniel.Wright
Normalize planar reflection plane - fixes crash when scaling a BP with a planar reflection component
Change 3741357 by Daniel.Wright
More info on volumetric lightmap import failure
Change 3742535 by Ryan.Vance
Fix for view rect changes.
Change 3743282 by Guillaume.Abadie
Fixes a bug in dynamic resolution heuristic's outlier detection that was preventing the over budget panic to react.
Change 3743559 by Michael.Lentine
Port Siren changes for recompute tangents. This adds recompute tangents for cloth as well as the ability for recompute tangents to work across seams where vertices are duplicated.
Change 3743679 by Guillaume.Abadie
Cherry-pick 3743621: Fixes subsurface profile fallback to lit shading model when Opacity == 0, introduced by 3447144.
#jira UE-51569
Change 3743906 by Ryan.Brucks
BlueprintMaterialAndTextureNodes Plugin: Fix for clamping sampled HDR render target values by setting ERangeCompressionMode in the FReadSurfaceDataFlags to RCM_MinMax
Change 3744096 by Ryan.Brucks
BlueprintMaterialAndTextureNodes Plugin: removed Mip option from Texture2D_SampleUV_EditorOnly for now since reads from source data cannot access mips and it can be misleading.
Change 3744253 by Guillaume.Abadie
Fixes merge collisions of debug canvas rendering with High DPI, fixes stat unit on high DPI monitors, and fixes secondary screen percentages.
Change 3744953 by Chris.Bunner
Crash workaround.
Change 3745628 by Marcus.Wassmer
Temporarily disable recalctangent normal-smoothing
#jira UE-52166
Change 3745942 by Guillaume.Abadie
Fixes a todo in FCommonViewportClient
Change 3746005 by Guillaume.Abadie
Fixes stat UnitGraph on high DPI monitor.
Change 3746029 by Guillaume.Abadie
Oups.... Fix compilation. :D
Change 3748322 by Guillaume.Abadie
Shows dynamic resolution's primary screen percentage on stat unit/unitgraph console commands.
Change 3748346 by Chris.Bunner
Potential static analysis fix.
Change 3748349 by Chris.Bunner
Mac feature support flag fix on versions < 10.30.
Change 3749336 by Guillaume.Abadie
Fixes some spelling mistakes in dynamic resolution cvars. Thanks Daniel!
Change 3749374 by Guillaume.Abadie
Adds a black background on the stat unitgraph so timing curves can be seen no matter the content.
Change 3749437 by Guillaume.Abadie
Final UI polish up for `stat unitgraph`
Change 3749719 by Guillaume.Abadie
Fixes a crash when changing r.DynamicRes.MaxScreenPercentage below current screen percentage.
Change 3750243 by Chris.Bunner
Increasing controller's automated test timeout to allow for slower machines to complete the longest tests.
#jira UE-48494, UE-51907
Change 3750728 by Guillaume.Abadie
Fixes merge collision in chromatic aberration.
#jira UE-52282
Change 3750791 by Guillaume.Abadie
Fixes chromatic baerration R and G channel swap.
Change 3751246 by Guillaume.Abadie
Bypasses screen percentage apply with mobile LDR rendering.
#jira UE-52089
Change 3752624 by Guillaume.Abadie
Simplies dyn res state's event interface to a single virtual method.
Change 3753766 by Chris.Bunner
Rebuilt volumetric baked lighting test map and updated screenshots.
#jira UE-52322
Change 3755108 by Guillaume.Abadie
Fixes a bug where default dynamic resolution state was created at startup of server build.
#jira UE-52345
Change 3755267 by Mark.Satterthwaite
Fix condition controlling which features are enabled when iOS >= 10.3 - it wasn't working for iOS 11+ which was causing all kinds of problems.
#jira UE-52301
Change 3755811 by Chris.Bunner
Disable some new logging that was causing a stack overflow during EnginePreInit.
#jira UE-52345
Change 3756983 by Mark.Satterthwaite
Prevent different versions of metal_stdlib/ue4_stdlib from causing shader compilation failures due to a time-stamp mismatch between the local file & the PCH. This can happen when working with Xcode Beta releases that change the modification date, but not the content or compiler version, amongst other possibilities.
#jira UE-52073
Change 3757156 by Guillaume.Abadie
Fixes editor compositing with wireframe rendering.
#jira UE-52017
Change 3757435 by Mark.Satterthwaite
Workaround a bug in the MobileSceneCaptureRendering where it was copying the ViewInfo's ViewRect prior to it being configured by the mobile renderer.
#jira UE-52327
Change 3757523 by Uriel.Doyon
Fixed d3ddebug warning with unused inputs
Change 3758318 by Guillaume.Abadie
Cleaner fix for mobile scene captures.
#jira UE-52327
Change 3759541 by Mark.Satterthwaite
Don't enable Manual Vertex Fetch on iOS Metal for the moment as it isn't well tested there and will probably need further changes.
Change 3695086 by Guillaume.Abadie
Render thread dynamic resolution & TAA upsample.
Merging //Tasks/UE4/Dev-DynamicRes/...@3694528 to //UE4/Dev-Rendering/...
New features breakdown:
- TAA upsample compute shader that accepts screen percentage from 50% to 200%, with a faster shader permutation for consoles;
- Material no longer have to deal with BufferUV, and post process material after TAA upsample can sample any scene buffer seamlessly;
- Material texture per view mip bias to produce sharper images with TAA upsample;
- Render thread dynamic resolution heuristic is fully plugable by game code (for VR plugin specific heuristics);
- Dynamic resolution in PIE and game builds;
- Busy time queries in the RHI to be implemented on the different platforms so that the dynamic resolution heuristic can exactly associate GPU frame times with screen percentages in its history;
- Game user settings to enable/disable dynamic resolution;
- In editor viewport screen percentage config to previsualise and test content at different screen percentage.
Fixes:
- Various fixes for algorithms producing different outputs at different screen percentage.
- Various fixes for algorithms sampling outside view rects.
Refactors:
- TAA shader
- Moved some screen percentage specific members from FSceneView to FViewInfo for thread race bullet proofing.
Aknowledgements:
- VR plugins are broken
- DFAO still have some artifacts
Premiliminary review: Marcus.Wassmer
Review for TAA refactor and TAA upsample shader: Brian.Karis
Review for dynamic resolution: Brian.Karis
[CL 3761165 by Chris Bunner in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3495522 by Rolando.Caloca
DR - Enable gpu skinning on Vulkan
Change 3681208 by Jian.Ru
Force bCastShadowAsMasked to false for opaque materials;
Disable UI check box of bCastShadowAsMasked when blend mode is opaque or modulated
Change 3682631 by Rolando.Caloca
DR - Copy 3682626
Fix recompute tangents not being applied to different sections
Change 3684812 by Arne.Schober
DR - Fix a crash and a Masterfile issue
Change 3684833 by Marcus.Wassmer
Fix more non-unity issues
Change 3685236 by Arne.Schober
DR - Fix some issues with Particles e.g stride was meant to be set to repeat and also subUV needs to be taken care of
Change 3685247 by Arne.Schober
DR - accidentally removed bracket
Change 3686764 by Daniel.Wright
In uncooked Feature Level ES2, fixed reflection capture data getting tossed in PostLoad when it is needed for encoding in OnRegister.
Change 3686775 by Marcus.Wassmer
Fix bad merge
Change 3687022 by Marcus.Wassmer
Fix Win32 compiles
Change 3687355 by Rolando.Caloca
DR - Copy 3687334
Fix for odd Vulkan crash
Change 3687537 by Arne.Schober
DR - Making StaticArray faster as PSO descriptor uses them intensively (5ms in one infiltrator scene on PS4)
Rewrote integer sequence to use fewer template instantiations for faster compile times and larger sequence support.
Change 3687546 by Arne.Schober
DR - Remove unnecessary virtuals and recounts
Change 3688128 by Rolando.Caloca
DR - Fix Linux compile error, rename Elements macro to GetNumArrayElements
Change 3688140 by Rolando.Caloca
DR - Linux warning fix
Change 3688190 by Mark.Satterthwaite
Use the correct #define for determining whether we are compiling for Metal in general, rather that only doing so for Metal + Mobile rendering. Should fix the skin-cache rendering.
#jira UE-50912
Change 3688689 by Chris.Bunner
Static analysis fixes.
Change 3688948 by Chris.Bunner
More static analysis fixes.
Change 3689116 by Arne.Schober
DR - [UE-51015] - moving alignment specifier
Change 3690645 by Marcus.Wassmer
Restore per-element align for TStaticArray
Change 3690801 by Jian.Ru
Marcus's fix FStaticMeshVertexFactories::ReleaseResources
#jira UE-51093
Change 3690809 by Rolando.Caloca
DR - Copy 3690806
Fix Anisotropic not working on Vulkan
Change 3690874 by Benn.Gallagher
Fix for index buffer overflow and clothing upgrade warnings.
#jira UE-51026
Change 3691221 by Jian.Ru
Fix log spam when -d3ddebug
#jira UE-50977
Change 3691291 by Marcus.Wassmer
Move global dynamic buffer commits to before GPU FX rendering.
Fixes d3derror in ES2 preview. The more subtle issue I believe is that the d3d11statecache is leaving streams bound for too long, but that requires more investigation
#jira UE-51058
Change 3691361 by Rolando.Caloca
DR - Fix resources not getting destroyed at RHI destruction time
#jira UE-51057
Change 3691607 by Arne.Schober
DR - interface change requested by Steve
Change 3691662 by Marcus.Wassmer
Fix one bit of d3dwarning. Need a 16 byte minimum to make 0 stride vbuffer happy for colors.
Change 3692268 by Rolando.Caloca
DR - vk - Keep a reference to a buffer to avoid deletion - Fixes crash in Paragon
Change 3692403 by Jian.Ru
Marcus's fix on automation test failure
Change 3692443 by Jian.Ru
Back out changelist 3692403
Change 3692455 by Marcus.Wassmer
Fix automation failure in tile rendering.
Can't setdata for vertexfactories on the gamethread
Change 3692566 by Marcus.Wassmer
Fix clang compiles
Change 3692664 by Chris.Bunner
Updated default editor skeletal mesh.
Change 3692675 by Marcus.Wassmer
Make the behavior of FCanvasTileRendererItem::FRenderData actually match the comment.
Fixes automation crash.
Change 3692692 by Jian.Ru
Fix a bug where only the first slice of 3d textures are cleared on XboxOne; Fix a rendering artifact when r.TranslucentLightingVolume is 0
#jira UE-50636
Change 3693043 by Arne.Schober
DR - [UE-51173]- Fixing Instanced Rendering Vertexbuffer SRV Resources not getting initzialized and re-set onto the vertexfactory after the Buffer has been updated
Change 3693284 by Marcus.Wassmer
Duplicate 3682248.
Fix for debug canvas draw randomly corrupting memory
Change 3693360 by Rolando.Caloca
DR - Fix material events not showing up in RenderDoc
Change 3693549 by Marcus.Wassmer
Fix incorrect flag check
Change 3693575 by Arne.Schober
DR - null size check on StaticMeshVertexData
Change 3693677 by Marcus.Wassmer
Make double plus sure the copy is a valid size
Change 3694155 by Marcus.Wassmer
Generate correct strides for vertexfactories depending on whether color will be overridden or not by the component. Fixes WEX and probably other similar bugs.
ALSO fix horrible longstanding bug in OpenGL VertexDeclaration cache. Strides not part of the operator== of the key so collisions/map walks would sometimes return the wrong decl with the wrong set of streamstrides.
D3D has the same problem, causing spurious D3D warnings but I haven't fixed it yet.
Change 3694156 by Marcus.Wassmer
This doesn't really matter because the decl is created dynamically but the stream elements might as well be right if we're gonna have them
Change 3694470 by Benn.Gallagher
Fixed crash fixing up clothing sections index buffers in specific Unreal Tournament asset with modified oversized index buffer.
#jira UE-51207
Change 3694557 by Chris.Bunner
Static analysis and potential memory leak fix.
Change 3684284 by Arne.Schober
Manual Vfetch for StaticMeshes
Skelmeshes also use the new Layout
Skelmeshes use DDC
Copying //UE4/Dev-Rendering-PSO to Dev-Rendering (//UE4/Dev-Rendering)
Change 3689555 by Arne.Schober
DR - Fix performance regession cause by not sharing VertexFactory ptr in the static drawlist
[CL 3694667 by Marcus Wassmer in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3252833 on 2017/01/10 by Ori.Cohen
Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3256288 on 2017/01/12 by Ori.Cohen
Undo constraint refactor as we found a way around it and it made the code much harder to read/debug
Change 3373195 on 2017/03/30 by Mike.Beach
For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist).
Change 3381178 on 2017/04/05 by Dan.Oconnor
Make sure we don't inherit the NATIVE func flag when generating skeleton functions, also make sure all bojects outer'd to the skeleton class are marked transient
#jira UE-43616
Change 3381532 on 2017/04/05 by Marc.Audy
(4.16) Fix various cases where built lighting on child actors could be lost when loading a level
#jira UE-43553
Change 3381586 on 2017/04/05 by Mike.Beach
Now generating TArrayCaster conversions for nativized UClass arrays that need it (to handle different TSubclassOf arrays).
#jira UE-42676, UE-43257
Change 3381682 on 2017/04/05 by mason.seay
Some more changes to test map
Change 3381844 on 2017/04/05 by Dan.Oconnor
Match existing logic for CPF_ReturnParm/CPF_OutParm. Fixes compilation error in BP_TurbineBlades when using compilation manager
Change 3382054 on 2017/04/05 by Zak.Middleton
#ue4 - Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls.
#jira UE-30998
Change 3382703 on 2017/04/06 by Lukasz.Furman
fixed missing links between navmesh polys when there are more than 4 neighbor connections
#jira UE-43524
Change 3383357 on 2017/04/06 by Marc.Audy
(4.16) Make SetHiddenInGame propagate consistently with SetVisibility
#jira UE-43709
Change 3383359 on 2017/04/06 by Dan.Oconnor
Fix last errant SKEL reference when cooking Odin
Change 3383591 on 2017/04/06 by Mike.Beach
Prevent users from setting object variables as 'config' properties (disallowed by UHT). This prevents some errors that could happen later when users nativize the Blueprint.
#jira UE-42085
Change 3384762 on 2017/04/07 by Zak.Middleton
#ue4 - Fix SpringArmComponent not restoring relative transform when bUsePawnControlRotation is turned off. Fixes the editor interaction ignoring transform of the component in the viewport after bUsePawnControlRotation is toggled on then off, since by then the world transform had been overwritten (from tick in editor) and nothing would drive transform changes from the editable value.
Toggling bUsePawnControlRotation off at runtime now restores the rotation to the initial relative rotation, not stomping it with the current pawn rotation, allowing toggling between the editable/desired base rotation and the control rotation.
#jira UE-24850
Change 3384948 on 2017/04/07 by Dan.Oconnor
Prevent GForceDisableBlueprintCompileOnLoad from causing all sorts of badness when dependencies are loaded as part of a Diff operation. Instead of setting a global flag we flag the package as LOAD_DisableCompileOnLoad
Change 3385267 on 2017/04/07 by Michael.Noland
Graph Editing: Pushed some node diffing code down from UAIGraphNode into UEdGraphNode so nodes with details panel properties will diff correctly (e.g., various animation nodes and BP switch nodes)
#jira UE-21724
Change 3385473 on 2017/04/07 by Phillip.Kavan
#jira UE-43067 - Fix broken pin wires after an Expand Node operation, along with some misc. cleanup.
Change summary:
- Fixed to use correct string for "Expand Node" transaction name.
- Modified FBlueprintEditor::OnExpandNodes() to consolidate some redundant code.
- Fixed to generate a unique node GUID for cases where the source graph is not removed after expansion.
Change 3385583 on 2017/04/07 by Dan.Oconnor
Handle CreatePropertyOnScope nullptr return values (happens for structs missing a struct property)
#jira UE-43746
Change 3386581 on 2017/04/10 by Michael.Noland
Blueprints: Further hardening FBlueprintActionInfo::GetOwnerClass()
#jira UE-43824
Change 3386615 on 2017/04/10 by Marc.Audy
Instanced properties can now properly be set on a per-instance basis in blueprint added components.
#jira UE-42066
Change 3387000 on 2017/04/10 by Marc.Audy
Fix includes for CIS
Change 3387229 on 2017/04/10 by mason.seay
More changes to TM-Gameplay
Added Save Game test (with blueprint)
Tick Interval test (with blueprint)
BP logic cleanup
Level organization
Change 3388437 on 2017/04/11 by Mike.Beach
Adding support for map/set literals in the backend (so you can use set nodes for structs containing sets/maps, without having to connect a RHS input - resets to struct defaults).
#jira UE-42617
Change 3388532 on 2017/04/11 by mason.seay
Submitting latest changes for crash repro
Change 3389026 on 2017/04/11 by Ben.Zeigler
Performance and bug fixes for incremetal cooking with asset registry, duplicate of several changes made on //Fortnite/Main
Fix it so AssetRegistry.ScanPathsAndFilesSynchronous won't scan subdirectories inside already scanned directories, this cuts down on the number of cache files
Fix 2 second stall when shutting down AssetSourceFilenameCache if it had never been previously created
Change 3389163 on 2017/04/11 by Ben.Zeigler
#jira UE-42922 Fix it so connecting function input node output pins does not clear default value, we only want to clear the value when connecting an input pin. Properly testing this fix depends on UE-43883
Change 3389205 on 2017/04/11 by Marc.Audy
Protect against a handful of GEditor usages that can now be hit in standalone
Change 3389220 on 2017/04/11 by Marc.Audy
Don't borrow ClassWithin to masquerade as ParentClass during compilation and instead just set the super struct immediately
Change 3389222 on 2017/04/11 by Michael.Noland
Framework: Adding a cvar (t.TickComponentLatentActionsWithTheComponent) to allow users to revert to the old behavior on when component latent actions tick
- Non-zero values behave the same way as actors do, ticking pending latent action when the component ticks, instead of later on in the frame (default behavior in 4.16 and beyond)
- Prior to 4.16, components behaved as if the value were 0, which meant their latent actions behaved differently to actors
This CVar will be removed in a future version, defaulting to on
#jira UE-43661
Change 3389276 on 2017/04/11 by Marc.Audy
Spelling fix and NULL to nullptr
Change 3389303 on 2017/04/11 by Mieszko.Zielinski
Made sure AIController::Posses doesn't get called when compiling Pawn BP #UE4
#jira UE-43873
Change 3390215 on 2017/04/12 by mason.seay
Removed some tests, will need further review
Change 3390638 on 2017/04/12 by Mike.Beach
Generalizing the omission of the CoerceProperty (in EmitTerm) - previously we were only omitting properties for our custom array lib. For wildcards, a coerce property should not be used as its type will not match.
NOTE: There is a slight behavior change in UEdGraphSchema_K2::ConvertPropertyToPinType(), as it will return 'wildcard' for params marked as 'ArrayTypeDependentParams' (previously would have returned 'int').
#jira UE-42747
Change 3390774 on 2017/04/12 by Ben.Zeigler
#jira UE-43911 Fix several issues with saving a runtime asset registry containing redirectors that caused crashes in cook on the fly. Don't resolve redirectors on incoming links because it will make a circular link, and fix an issue where chained redirectors would break the for loop iteration and return a bad dependency
Fix it so the asset registry written out at the beginning of CookOnTheFly uses the registry generator, otherwise it will include all of the stripped editor only tags
Change 3390778 on 2017/04/12 by Ben.Zeigler
Fix UCookOnTheFlyServer::CollectFilesToCook to check for initial unsolicited packages up front. This is required in iterative mode because it may skip cooking all explicit packages and thus miss a new startup loaded package
Change 3390782 on 2017/04/12 by Ben.Zeigler
Change RunProjectCommand to not imply -nomcp, and allow reading -clientcmdline to override setting the map parameter to 127.0.0.1 by default
Fix RunProjectCommand to remove ios-specific checks to not pass weird platform parameters, and instead never pass them
Fix PS4Platform to pass along command line when calling build cook run, args needs to be the last parameter so explicitly set -target=
Change 3390859 on 2017/04/12 by Mike.Beach
T3D class fields now export with the class's fully qualified path name (to avoid abiguity). Since we can have multiple classes with the same name (Blueprints in different folders), we have to use the class's fully qualified object path.
#jira UE-28048
Change 3390914 on 2017/04/12 by Lukasz.Furman
fixed missing navlink component's transform in exported navigation data
#jira UE-43688
Change 3391122 on 2017/04/12 by Ben.Zeigler
Add new PreloadPrimaryAssets call to AssetManager that stream the desired assets without modifying the official load/unload state. This is useful if you want to preload things in case the might be used in the future, and it also supports recursion
Fix crash calling GetAssetDataForPath with null path
Change 3391494 on 2017/04/12 by Dan.Oconnor
Fix bad references in deep object (widget) hierarchies
#jira UE-43802
Change 3391529 on 2017/04/12 by Dan.Oconnor
Fix log spam, accidently submitted
#rnx
Change 3391756 on 2017/04/12 by Dan.Oconnor
LinkExternalDependencies needs to be performed before we RefreshVariables
#jira UE-43843
Change 3392542 on 2017/04/13 by Marc.Audy
Ensure that initialized actors get cleaned up when removed from world even if that world hasn't begun play.
#jira UE-43879
Change 3392746 on 2017/04/13 by Marc.Audy
(4.16) When duplicating a blueprint node, correctly make the new node a sibling of the duplicated node, not a child of it (unless duplicating the root component).
Also resets scale of a duplicated root component to 1 to avoid a squaring of the scale for that component.
#jira UE-40218
#jira UE-42086
Change 3393253 on 2017/04/13 by Dan.Oconnor
Make sure calculated meta data is correctly set on functions generated by the compilation manager (SKEL_ class functions)
#jira UE-43883
Change 3393509 on 2017/04/13 by Mike.Beach
Removing hack'ish ResetLoaders() call that was causing undesired side-effects (resetting of a loaded package that other objects were relying on). This was originally intended to release file handles so separate editor processes could make updates and save the file (from CL 1712376). Using ResetLoaders() for this is bad though, as it has too many side effects. Instead we have to wait for GC to run. This also makes sure that GC should run as intended as the CookOnTheFly sever is idling.
#jira UE-37284
Change 3394350 on 2017/04/14 by Michael.Noland
Core: Making FDateTime and FTimespan actually reflected, so they get duplicated properly in CopyPropertiesForUnrelatedObjects, etc...
#jira UE-39921
Change 3395985 on 2017/04/17 by Phillip.Kavan
#jira UE-38280 - Fix invalid custom type selections on member fields in the User-Defined Structure Editor after a reload.
Change summary:
- Ensure that the 'SubCategoryObject' member in a UDS variable descriptor has been loaded when converting to an FEdGraphPinType.
Change 3396152 on 2017/04/17 by Marc.Audy
TickableGameObjects that have IsTickableInEditor false should not tick in the editor
#jira UE-40421
Change 3396279 on 2017/04/17 by Phillip.Kavan
#jira UE-43968 - Fix failed validation of bitmask enum types when serializing bitmask literal nodes.
Change 3396299 on 2017/04/17 by Dan.Oconnor
Fix resintancing issues exposed by running TM-Gameplay with -game. We cannot reinstance actors in levels on load because the scene is not created.
#jira UE-43859
Change 3396712 on 2017/04/17 by Marc.Audy
Call PostLoad on subobjects before copying for unrelated properties to avoid cases where an out of date object patched over in the linker has not been brought up to date
#jira UE-38234
Change 3396718 on 2017/04/17 by Mike.Beach
Adding a search bar to the components tree for Blueprints.
#epicfriday
#jira UE-17620
Change 3396999 on 2017/04/17 by Mike.Beach
In generated code, call event '_Implementation' functions directly for interface functions being invoked on self (avoids a UHT runtime error).
#jira UE-44018
Change 3397700 on 2017/04/18 by Marc.Audy
UT struct BlueprintType fixups
Change 3397701 on 2017/04/18 by Marc.Audy
Odin struct BlueprintType fixups
Change 3397703 on 2017/04/18 by Marc.Audy
Ocean struct BlueprintType fixups
Change 3397704 on 2017/04/18 by Marc.Audy
WEX struct BlueprintType fixups
Change 3397705 on 2017/04/18 by Marc.Audy
Additional UT blueprint type struct fixups
Change 3397706 on 2017/04/18 by Marc.Audy
Fortnite struct BlueprintType fixups
Change 3397708 on 2017/04/18 by Marc.Audy
Fixup Engine BlueprintType markup of structs
Change 3397709 on 2017/04/18 by Marc.Audy
Sample Game struct BlueprintType fixups
Change 3397711 on 2017/04/18 by Marc.Audy
Mark AnimNodes as BlueprintType and BlueprintInternalUseOnly
Change 3397712 on 2017/04/18 by Marc.Audy
Paragon struct BlueprintType fixups
Change 3397735 on 2017/04/18 by Marc.Audy
Definition pieces of BlueprintInternalUseOnly to fix UHT errors with structs already marked to use it
Change 3397912 on 2017/04/18 by Mike.Beach
Fix for CIS warnings about shadowed variables (fallout from CL 3396718).
Change 3398455 on 2017/04/18 by Marc.Audy
Make less critical errors log an error rather than immediately throwing allowing multiple errors to be reported in the same compile
Change 3398491 on 2017/04/18 by Marc.Audy
BPRW/BPRO in a non-BlueprintType is now a UHT error
Change 3398539 on 2017/04/18 by Marc.Audy
Fixup live link struct markups
Change 3399412 on 2017/04/19 by Marc.Audy
Fix Match3 blueprint type struct markups
Change 3399509 on 2017/04/19 by Phillip.Kavan
#jira UE-38574 - Fix AnimBlueprint function graphs marked as 'const' to treat 'self' as read-only when compiling.
Change summary:
- Modified FKismetCompilerContext::ProcessOneFunctionGraph() to use the function graph schema rather than the compiler context schema for both the function context's schema as well as testing the function for 'const'-ness. For AnimBPs, the compiler context and the function graph context can differ, so we need to make sure we are using the right one when making queries for a specific function context during compilation.
- Minor cleanup: changed the function context schema to be 'const' in order to be consistent with the function graph GetSchema() API's result. Added a few 'const' qualifiers where needed to match.
- Added a new object version in order to avoid breaking compilation of existing AnimBP function graphs that may already be violating the 'const' rule (this is the same thing that was done when 'const' was first added to "normal" BP function graphs). Just as with normal function graphs in place before the addition, a warning will be generated for existing AnimBP function graphs if they violate 'const' correctness, and an error will be generated for all new ones.
Change 3399749 on 2017/04/19 by Mike.Beach
Hiding the Nativized Blueprints plugin from the in-editor browser (prevent users from disabling it).
Change 3399774 on 2017/04/19 by Marc.Audy
ConditionalPostLoad is already called on StaticMesh earlier in the function
#rnx
Change 3400313 on 2017/04/19 by Mike.Beach
Mirroring CL 3398673 from 4.16
Now, with ICWYU, making sure that the coresponding header gets included first in nativized Blueprint files (else we get a UHT error). Had to fixup some ShooterGame specific files as a result (they had missing includes and forward declarations).
#jira UE-44124
Change 3400328 on 2017/04/19 by Mike.Beach
Missing file from mirrored change (CL 3400313 - mirroring CL 3398673 from 4.16)
#jira UE-44124
Change 3400415 on 2017/04/19 by Chad.Garyet
adding physx switch build to framework
Change 3400514 on 2017/04/19 by Mike.Beach
Back out changelist 3400313 / 3400328 (mirrored from CL 3398673 in 4.16), as it was producing "include PCH first" errors. Likely, CL 3398673 was a fix for a 4.16 specific change, altering the expected include order. We'll have to wait for this one to be integrated back.
Change 3400552 on 2017/04/19 by Marc.Audy
Undo the calling of post load prior to the CPFUO as dependent objects may not yet be loaded. Instead copy the need load flag to the new CDO subobject, similarly to how the top level CDO object copies its flags over.
#jira UE-44150
Change 3400815 on 2017/04/19 by Marc.Audy
Spelling fix (part of PR #3490)
#rnx
Change 3400918 on 2017/04/19 by Marc.Audy
Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist)
This portion brings in the exposure of the bindings to blueprint
#jira UE-44122
Change 3401550 on 2017/04/20 by Marc.Audy
fix kitedemo blueprint type markup
#rnx
Change 3401702 on 2017/04/20 by Mike.Beach
Make it so plugins added to a project through the .uproject's 'AdditionalPluginDirectories' list get folded into the generated code project (for visual studio, etc.).
Change 3401720 on 2017/04/20 by Mike.Beach
Add white and black lists for target type (game, client, server, etc.) to plugin module descriptors.
Change 3401725 on 2017/04/20 by Mike.Beach
Whitelisting the nativized Blueprint plugin for only the targets it was built for (game, server, or client).
Change 3401800 on 2017/04/20 by Ben.Zeigler
Add Algo::BinarySearch, LowerBound, and UpperBound. These are setup to allow binary searching a presorted array, and allow for specifying projection and sort predicates. Convert some engine code to use it
Add TSortedMap, which is a map data structure that has the same API as TMap, but is backed by a sorted array. It uses half the memory and performance is faster below n=10
Add FName::CompareIndexes so a SortedMap with FNames can be used without doing very slow string compares, and FNameSortIndexes predicate to sort by it
Add code to Algo and Container tests. Split up container tests so the new ones aren't run in smoketest as they are a bit slow
Add RemoveCurrent and SetToEnd to ArrayIterator
Change 3401849 on 2017/04/20 by Marc.Audy
Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist)
This portion brings bug fixes and improvements to InputKeySelector UMG widgets.
#jira UE-44122
Change 3402088 on 2017/04/20 by Marc.Audy
Focus the search box when expanding the map value type
#jira UE-44211
Change 3402251 on 2017/04/20 by Ben.Zeigler
Fix issue where SortedMap needs to be resorted after serialization, because the sorting may have changed from when it was saved out
Change 3402335 on 2017/04/20 by Ben.Zeigler
Significant changes to FAssetData serialization and memory, cuts memory significantly but will break code that was using some of the internal API that was not properly hidden before
Both Editor and Runtime cache now use the same FAssetRegistryVersion, which is now registered as a custom version
Rename FAssetData and FAssetPackage operator<< to SerializeForCache to make it clear that it isn't safe to use for general serialization
Remove GroupNames from FAssetData, it has not been useful since the UE4 package structure changed around 4.0
Rename generic-sounding but not actually generic SharedMapView class to AssetDataTagMapSharedView to indicate what it is actually used for
Change TagsAndValues to use a new array-backed TSortedMap as the base structure instead of a hash map. Also, it only allocates the map on demand, which saves significant memory at runtime as many packages have no tags
Add bFilterAssetDataWithNoTags to [AssetRegistry] ini section, if set it will only save cooked asset data if it has tags, off by default but saves significant memory if your whitelist is set up properly
Fix issue where asset registry tags updated by loading assets during cook were not being reflected in the cooked registry
Add AssetRegistry::GetAllocatedSize and add to MemReport output
Change 3402457 on 2017/04/20 by Ben.Zeigler
Enable asset registry iteration and stripping unused asset data in Fortnite. Registry iteration is already on in //Fortnite/Main, stripping is a new feature I want to test
Change 3402498 on 2017/04/20 by Ben.Zeigler
CIS fix. Why did this compile locally?
Change 3402537 on 2017/04/20 by Ben.Zeigler
Remove ensure for making AssetData for subobjects, the editor does this for thumbnail creation in some cases
Change 3402600 on 2017/04/20 by Ben.Zeigler
Add bShouldGuessTypeAndNameInEditor to manager settings, can be set false for games where type cannot be safely implied and content must be resaved
Fix up some bool setting code inside asset manager, and fix const correctness and for iterator issues
AssetManager can now discover any BlueprintCore type when bHasBlueprintClasses=true
Add AssetManager.DumpAssetRegistryInfo to output detailed asset registry usage stats
Add Primary Name to asset audit window by default
Change 3403556 on 2017/04/21 by Marc.Audy
Fix Orion input key selector override class
#rnx
Change 3404090 on 2017/04/21 by mason.seay
Applying Forcefeedback to test map
Change 3404093 on 2017/04/21 by mason.seay
Changing text in level
Change 3404139 on 2017/04/21 by mason.seay
Added Force Feedback test and made some tweaks.
Change 3404146 on 2017/04/21 by mason.seay
Added source reference to Instanced Variable test
Change 3404154 on 2017/04/21 by mason.seay
More minor tweaks
Change 3404155 on 2017/04/21 by Marc.Audy
Remove auto
#rnx
Change 3404188 on 2017/04/21 by Marc.Audy
Fixed crash changing variable type when any type other than map
#jira UE-44249
#rnx
Change 3404463 on 2017/04/21 by Ben.Zeigler
Fix asset data code to not ensure when loading an object with invalid exports, and instead print warning with name of package that needs to be resaved
Resave a map that had a redirector from a DIFFERENT package saved in it's exports. I do not understand how this happened, but it appears to be related to the lightmap BuiltData transition when old maps are opened
Change 3404465 on 2017/04/21 by Ben.Zeigler
Fix issue with trying to load editor-only asset classes in a cooked build
Fix issues with renaming or changing template Ids of assets from the editor
Always print the Duplicate Asset ID error, as if you have more than one the ensuremsg only goes off once
Change 3404481 on 2017/04/21 by Dan.Oconnor
Remove unneeded walk up hierarchy - prevent stale entries in action database if we compile a BP but don't compile its children
Change 3404510 on 2017/04/21 by Phillip.Kavan
#jira UE-35727 - Collapsed graphs containing a local variable node will no longer cause a compile error when the parent graph is renamed.
Change 3404590 on 2017/04/21 by Michael.Noland
Editor: Fixed incorrect filtering of abstract/deprecated UDeveloperSettings and UContentBrowserFrontEndFilterExtension classes caused by a typo (HasAnyCastFlags versus HasAnyClassFlags)
Change 3404593 on 2017/04/21 by Marc.Audy
Fixed another crash to do with input pin secondary combo box
#jira UE-44269
#rnx
Change 3404600 on 2017/04/21 by Michael.Noland
Core: Allow UE_GC_TRACK_OBJ_AVAILABLE to be set externally
#rnx
Change 3404602 on 2017/04/21 by Michael.Noland
Engine: Switched from an include to a forward declaration of SWidget in UDeveloperSettings to keep it slim
#rnx
Change 3404608 on 2017/04/21 by Michael.Noland
Core: Marked TNumericLimits as constexpr so they can be used in static asserts
Change 3404659 on 2017/04/21 by Michael.Noland
Engine: Adding includes back to two UDeveloperSettings subclasses
Change 3405289 on 2017/04/24 by Marc.Audy
Remove auto
#rnx
Change 3405446 on 2017/04/24 by Marc.Audy
Fix Win32 unsigned compile issue
Change 3405512 on 2017/04/24 by Mike.Beach
Piping through NativizationOptions to filename generation (so we're able to gen different files names per target: client vs. server).
Change 3406080 on 2017/04/24 by Ben.Zeigler
Deprecate UEngine::OnPostEngineInit and move to FCoreDelegates, clean up comments for the initialization delegates
Call OnPostEngineInit from commandlet initialization as well as normal execution. I thought about making a wrapper function, but the commandlet calls EditorInit directly so it wouldn't work
Bind delegate to refresh the AssetRegistry native class hierarchy after engine init so it picks up game/plugin classes. Undo ini change that was required to hack around this
Change 3406381 on 2017/04/24 by Ben.Zeigler
#jira UE-23768 Enable Run Physics With No Controller for montage test pawn. The montage pawn has no controller so wasn't correctly running physics when the root motion stopped. This flag needs to be set to allow it to correctly stop after the montage is over
Change 3406438 on 2017/04/24 by Ben.Zeigler
Fix deprecation warning
Change 3406519 on 2017/04/24 by Phillip.Kavan
#jira UE-43612 - Suppress array "Get" node fixup notifications on load when the BP Compilation Manager is enabled.
Change summary:
- Wrapped BPCM calls to FBlueprintEditorUtils::ReconstructAllNodes() and ReplaceDeprecatedNodes() duirng compile-on-load with bIsRegeneratingOnLoad = true. This matches the BP's state during compile-on-load when the BPCM is not enabled.
Change 3406565 on 2017/04/24 by Dan.Oconnor
Make sure all interface functions are added to skeleton
#jira UE-44152
Change 3407489 on 2017/04/25 by Ben.Zeigler
#jira UE-44317 Fix game-only TickableGameObjects to correctly tick in PIE
Change 3407558 on 2017/04/25 by Ben.Zeigler
Fix Fortnite cook warnings, issue had to do with the CDO being registered as a Primary Asset in conflict with the Class being registered
Fix issue with renaming a BP primary asset not finding the old name
Change 3407701 on 2017/04/25 by Dan.Oconnor
Remove unneeded null check, static analysis doen't like the inconsistency
Change 3407995 on 2017/04/25 by Marc.Audy
Fixed maps and sets not working correctly with split pin.
#jira UE-43857
Change 3408124 on 2017/04/25 by Ben.Zeigler
#jira UE-39586 Change it so the blueprint String/Name/Object to Text node creates culture invariant text, and also have them show as an expanded node with a comment explaining this
Fix Transform to actually return in the format specified in the comment, and fix comments on many text conversions
Change 3408134 on 2017/04/25 by Marc.Audy
Graph pin container type now represented by an enumeration (EPinContainerType) rather than 3 "independent" booleans.
FEdGraphPinType constructor, UEdGraphNode::CreatePin, and FKismetCompilerContext::SpawnInternalVariable that took 3 booleans deprecated and replaced with a version that takes EPinContainerType.
UEdGraphNode::CreatePin parameters reorganized so that PinName is before ContainerType and bIsReference, which default to None and false respectively
Change 3408256 on 2017/04/25 by Michael.Noland
Core: Changed UClass::ClassFlags to be of type EClassFlags for improved type safety
Change 3408282 on 2017/04/25 by Marc.Audy
(4.16) Fix incorrect positioning of instance components after duplication
#jira UE-44314
Change 3408404 on 2017/04/25 by Mike.Beach
Adding and removing the nativized plugin to/from the project when we alter the packaging nativization setting (so it gets picked up by project generation).
Change 3408445 on 2017/04/25 by Marc.Audy
Fix up missed deprecation cases
#rnx
Change 3409354 on 2017/04/26 by Marc.Audy
Fix Linux CIS failure
#rnx
Change 3409487 on 2017/04/26 by Marc.Audy
When dragging assets in to the SCS create them as siblings, not nested
#jira UE-43041
Change 3409776 on 2017/04/26 by Ben.Zeigler
#jira UE-44401 Fix issue with cooking a map containing a reparented component. In that case the child component may think it's not editor only, but it's archetype is editor only. This is not allowed in EDL, so now the child is marked as editor only as well
Change 3410168 on 2017/04/26 by Dan.Oconnor
Avoid calling virtual functions in the middle of compile
#jira UE-44243
Change 3410252 on 2017/04/26 by Lukasz.Furman
adjusted WITH_GAMEPLAY_DEBUGGER checks after IWYU changes
#ue4
Change 3410385 on 2017/04/26 by Marc.Audy
ChildActorComponent SetClass no longer fails when setting at runtime.
#jira UE-43356
Change 3410466 on 2017/04/26 by Michael.Noland
Core: Ensuring EClassFlags is 32 bit in a different way (underlying type of the enum is coming out signed even though all members are unsigned, long term fix is probably to move it to an enum class)
#rnx
Change 3410476 on 2017/04/26 by Michael.Noland
Automation: Deleting some commented out methods
#rnx
Change 3411070 on 2017/04/27 by Marc.Audy
Properly complete deprecation of old attachment API
Change 3411338 on 2017/04/27 by mason.seay
Map for Latent Action Tick Bug
Change 3411637 on 2017/04/27 by Ben.Zeigler
Back out CL #3381532 as it was causing crashes when adding new variables to blueprints, as the transaction array was being recursively modified while it was being added to
Change 3412052 on 2017/04/27 by mason.seay
Updated jump test map and pawn
Change 3412231 on 2017/04/27 by Ben.Zeigler
Fix issue where running SearchAllAssets multiple times after mounting new paths would throw away the asset registry cache, which slowed down incremental cooking substantially because the cooker mounts the autosave folder
Duplicate of CL #3411860
Change 3412233 on 2017/04/27 by Ben.Zeigler
Made FStreamableHandle::GetLoadedCount much faster by taking advantage of existing progress counter
Duplicate of CL #3411778
Change 3412235 on 2017/04/27 by Ben.Zeigler
Add code to FStringAssetReferenceThreadContext and FStringAssetReferenceSerializationScope which allows setting package name and collect options for string asset references serialized via something other than linker load
Make RedirectCollector threadsafe to avoid issues with async loading asset references
Fix it so ProcessStringAssetReferencePackageList will remove entries from the string asset array like resolve did, and rename function to indicate that
Fix it so string asset references created by asset labels do not automatically get cooked, and significantly improve the speed of labels with lots of assets
Add code to cooker and asset manager to explicitly mark non-cookable assets as NeverVook, this stops labels from ending up in the build if set that way
Added option to not recurse package dependency changes more than one level when hashes change. This ended up not being significantly faster in a realistic case so left disabled
Duplicate of CL #3412080
Change 3412352 on 2017/04/27 by Marc.Audy
Refix lighting getting wrong position when getting component instance data
Change 3412426 on 2017/04/27 by Marc.Audy
Take first steps to making ComponentToWorld private and force use of accessor
Make bWorldToComponentUpdated private
Make ComponentToWorld and bWorldToComponentUpdated mutable
Add a SetComponentToWorld function for the (likely ill-advised) places that were setting it directly.
Change 3412468 on 2017/04/27 by Marc.Audy
Remove last remnants of deprecated (4.11) custom location system
Change 3413398 on 2017/04/28 by Marc.Audy
Fix up missed deprecated attachment API uses
Change 3413403 on 2017/04/28 by Marc.Audy
Fix Orion compile error
#rnx
Change 3413448 on 2017/04/28 by Marc.Audy
Fix up kite demo component to world privataization warnings
#rnx
Change 3413792 on 2017/04/28 by Ben.Zeigler
Fix many bugs with blueprint pin default values, and add "Reset to Default Value" option to pin context menu
Deprecate and rename SetPinDefaultValue because it actually sets the Autogenerated default. This was being called in bad places and destroying the stored autogenerated defaults
#jira UE-40101 Fix expose on spawn pins to correctly update when the spawned object's defaults change
#jira UE-21642 Fix struct pin default values to properly update when the struct is changed
#jira UE-39418 Fix changed function/macro default values to properly update in already placed call nodes
Change 3413839 on 2017/04/28 by samuel.proctor
Added some Blueprint focused tests for TM-Gameplay
Change 3414030 on 2017/04/28 by Ben.Zeigler
Enable use of AssetPtr variables with Config, for native and blueprint
This incorporates CL #3302487 but also enables for blueprint usage as that code is new to framework branch
Change 3414229 on 2017/04/28 by Marc.Audy
Fixup virtuals not calling their Super
Remove some autos
#rnx
Change 3414451 on 2017/04/28 by Lukasz.Furman
static analysis fix for gameplay debugger
Change 3414482 on 2017/04/28 by Ben.Zeigler
Fix crash found where changing pin type on ConvertAsset accessed an array while deleting it
Change 3414609 on 2017/04/28 by Ben.Zeigler
#jira UE-18146 Refresh graph when disconnecting a resolve asset id node
Change 3415852 on 2017/05/01 by Marc.Audy
Remove unused code
#rnx
Change 3415856 on 2017/05/01 by Marc.Audy
auto removal
#rnx
Change 3415858 on 2017/05/01 by Marc.Audy
Fix function taking an input as reference when unneeded and causing (still unclear why it suddenly started showing up) error in cooking
#rnx
Change 3415946 on 2017/05/01 by Marc.Audy
Have K2Node_StructOperation skip the K2Node_Variable validation as it doesn't need a property (per CL# 1756451)
#rnx
Change 3415988 on 2017/05/01 by Lukasz.Furman
renamed WorldContext param in AI related static blueprint functions to remove load/cook warnings
#jira UE-44544
Change 3416030 on 2017/05/01 by Ben.Zeigler
Fix issue with WorldContext pins being broken by my pin value refactor, partial paths like "WorldContext" need to be stored as strings and not as broken object references.
Change 3416230 on 2017/05/01 by Marc.Audy
Fix spelling error
#rnx
Change 3416419 on 2017/05/01 by Phillip.Kavan
#jira UE-44213 - Nativizing a Blueprint class with a non-nativized Blueprint class subobject dependency will no longer lead to a crash at load time.
Change summary:
- Modified the FFakeImportTableHelper ctor to inject subobject CDOs into the 'SerializeBeforeCreateCDODependencies' array. This in turn ensures that EDL will serialize those subobject CDOs (if necessary) before we create the subobject's nativized owner's CDO at load time.
- Modified FEmitDefaultValueHelper::GenerateCustomDynamicClassInitialization() to emit MiscConvertedSubobject instantiations AFTER we emit the FillUsedAssetsInDynamicClass() call. This is now consistent with the code emitted for other subobjects (all of which assumes that the UsedAssets array has been initialized).
- Modified FFindAssetsToInclude::HandleObjectReference() to add UField owner CDOs in addition to the owner class to the asset dependency list. This ensures that owner CDOs will be emitted alongside the class to both the nativized asset dependency table as well as to the fake import table associated with the UDynamicClass linker for the nativized BP asset.
Change 3416425 on 2017/05/01 by Phillip.Kavan
#jira UE-44219 - Nativizing a Blueprint class with a nativized DOBP class dependency will no longer lead to a compile error at cook/nativization time.
- Modified the FGatherConvertedClassDependencies ctor to properly handle DOBPs in exclusive mode that have been explicitly enabled for nativization. Previously, this code wasn't taking that possibility into account, and as a result could lead to a missing header file in a dependent nativized class body's include set.
- Modified FGatherConvertedClassDependencies::GetFirstNativeOrConvertedClass() to remove the 'bExcludeBPDataOnly' parameter, as it was primarily just being used for a redundant exclusion check when called from the FGatherConvertedClassDependencies ctor. That call site has now been modified to start searching from the super class instead. Additionally, any DOBPs will already fail the preceding WillClassBeConverted() check if they have not been explicitly enabled for nativization in exclusive mode, and will always fail if nativizing in inclusive mode. The extra check was breaking the explicitly-enabled case, so it was removed to allow explicitly-enabled DOBPs to pass.
Notes:
- Allowing for explicitly-enabled DOBPs in exclusive mode may be removed in a future change, but since it is currently supported, the changes noted above will at least ensure that the generated code will compile properly for now.
Change 3416570 on 2017/05/01 by mason.seay
Added UMG test to map. Tweaked force feedback test
Change 3416580 on 2017/05/01 by mason.seay
Resubmitting sub levels
Change 3416597 on 2017/05/01 by Dan.Oconnor
Compilation manager iteration, adds machinery for individual blueprint compilation, adds comments, cleans up duplicated code
Change 3416636 on 2017/05/01 by Phillip.Kavan
#jira UE-44505 - Potential fix for a low-repro crash tied to the Blueprint graph context menu.
Change summary:
- Switched FBlueprintActionInfo::ActionOwner to be a weak object reference.
Change 3416960 on 2017/05/01 by Dan.Oconnor
Use compilation manager when clicking the compile button, PIE'ing, etc
Change 3417207 on 2017/05/01 by Ben.Zeigler
Fix issue with None strings causing default value parsing failures
Add SetPinDefaultValueAtConstruction needed by some other changes
Change 3417519 on 2017/05/01 by Ben.Zeigler
Fix BP compile errors caused by local variables with invalid default values. There's no reason to set autogenerated here because the nodes are transient and invisible in the UI.
There is still a problem here, local variables are not getting their default values validated when type is changed, so you end up with an integer that has the default value of a struct.
Change 3418659 on 2017/05/02 by Ben.Zeigler
#jira UE-44534 Fix it so animation node pins get properly created autogenerated default values that are based on the node struct defaults. This fixes issues when they are reset to other defaults
#jira UE-44532 Fix it so connecting an animation asset pin on a node player resets the pin value to the autogenerated default instead of the cached asset. This was causing old unused assets to get unnecessarily cooked
Fix it so any animation node with an exposed pin that is an object property will reset that object propery when the pin is exposed. This fixes UE-31015 in a generic way
Change the OptionalPinManager to take a Defaults address as well as a current address, to allow setting autogenerated defaults properly
Remove Import/ExportKismetDefaultValueToProperty as they were redundant with PropertyValueFromString and were using the wrong pin setting functions, replaced with PropertyValueFromString_Direct and calling the schema pin set functions
I need to write some backward compatibility code to fix existing nodes, I'll do that in a later checkin
Change 3418700 on 2017/05/02 by Ben.Zeigler
Actually fix None object paths for real this time. I did not test sufficiently before
Change 3418811 on 2017/05/02 by Ben.Zeigler
Fix existing animation blueprint nodes with dead asset references duplicated by pins. This code can be applied independent of the other change to fix specific games
Change 3419165 on 2017/05/02 by Dan.Oconnor
Add misc. functionality from FKismetEditorUtilities::CompileBlueprint
Change 3419202 on 2017/05/02 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3417825
#rnx
Change 3419236 on 2017/05/02 by mason.seay
Removed OnPressed event from Widget BP
Change 3419314 on 2017/05/02 by Marc.Audy
Fix bad auto-resolve
#rnx
Change 3419524 on 2017/05/02 by Marc.Audy
PR #3528: Improved Input BP library node display names (Contributed by projectgheist)
#jira UE-44587
#rn Improved Input BP library node display names
Change 3419570 on 2017/05/02 by Zak.Middleton
#ue4 - Fix typo in TFunctionRef comment/example.
Change 3419709 on 2017/05/02 by Dan.Oconnor
Fix missing category metadata on SkeletonGeneratedClass when using compilation manager
Change 3419756 on 2017/05/02 by Dan.Oconnor
Remove unintentional verbosity increase
Change 3420875 on 2017/05/03 by Marc.Audy
Make IsExecPin static
Minor optimization to IsMetaPin
#rnx
Change 3420981 on 2017/05/03 by Marc.Audy
Change tagging temporarily until other changes are done so that we don't have warnings in the meantime
#rnx
Change 3421367 on 2017/05/03 by Marc.Audy
Manually introduce changes from CL# 3398673 in 4.16 that failed to make it to Dev-Framework as a result of the integration submitted as CL# 3401725.
#rnx
Change 3421685 on 2017/05/03 by Ben.Zeigler
#jira UE-23001 Convert literal Asset ID/Class ID pins to store path as string instead of as hard object reference. Old pins are fixed on load, after resaving the hard references will go away
Refactor the way that FStringAssetReference and FAssetPtr are serialized, it now does the various fixups in FStringAssetReference::SerializePath, which is called from archivers
Change it so the asset registry reads in a list of all scanned redirectors and adds them to GRedirectCollector, this means that saving a string asset reference will automatically fix it up to point to the redirector destination
Change the default behavior of FAssetPtr serialize on ArchiveUObject to match what most of it's children want, and remove several special case hacks. It now serializes as asset reference when saving/loading, and as object for other cases
Deprecate StringAssetReferenceLoaded/StringAssetReferenceSaving delegates, replace with PreSavePath and PostLoadPath on FStringAssetReference
Make AssetLongPathname private on FStringAssetReference, it was deprecated in 4.9
Change 3421728 on 2017/05/03 by Phillip.Kavan
Mirror CL 3408285 from //UE4/Release-4.16.
#jira UE-44124
#rnx
Change 3422370 on 2017/05/03 by Dan.Oconnor
Mirror 3422359
Implement UBlueprintGeneratedClass::NeedsLoadForEditorGame to match UBlueprint, also tag a class's CDO as NeedsLoadForEditorGame.
This prevents us from failing to load a UBlueprint's GeneratedClass when running the editor with -server.
#jira UE-44659
Change 3423192 on 2017/05/04 by Ben.Zeigler
CIS Fix
Change 3423305 on 2017/05/04 by Ben.Zeigler
Fix "Missing opening parenthesis" warnings for Vector and Rotator the same way they were fixed for Transform
Change 3423358 on 2017/05/04 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3422809
#rnx
Change 3423766 on 2017/05/04 by Ben.Zeigler
#jira UE-44680 Delete some corrupted redirectors that are no longer in use
Change 3423804 on 2017/05/04 by Dan.Oconnor
Honor SaveIntermediateCompilerResults when using compilation manager
Change 3424010 on 2017/05/04 by Marc.Audy
Validate that switch string cases are unique
Change 3424011 on 2017/05/04 by Marc.Audy
Re-fix switch node default pin not appearing as an exec output
Remove unused boolean
Change 3424071 on 2017/05/04 by Ben.Zeigler
Delete FixupRedirects commandlet, replace with -FixupRedirects/FixupRedirectors option on ResavePackages. This new method is much faster than the old commandlet as it uses the asset registry vs loading all packages, fixing up all redirectors in Fortnite only took about an hour vs 12+ hours the old way
Removed some hacky bits in Core that only existed to support FixupRedirects
Change it so the AssetRegistry listens to DirectoryWatcher callbacks in commandlets now that commandlets use the asset registry properly. This won't do anything unless you tick directory watcher the way that ResavePackages does
Change 3424313 on 2017/05/04 by Dan.Oconnor
Address missing property flags on SkeletonGeneratedClass when using compilation manager
#jira UE-44705
Change 3424325 on 2017/05/04 by Phillip.Kavan
#jira UE-44222 - Move nativized UDS implementation details into its own .cpp file in order to avoid circular dependencies.
Change summary:
- Modified IKismetCompilerInterface::GenerateCppCodeForStruct() to include an output parameter for CPP source and modified FKismet2CompilerModule to match the updated API.
- Modified IBlueprintCompilerCppBackend::GenerateCodeFromStruct() to include an output parameter for CPP source and modified FBlueprintCompilerCppBackendBase to match the updated API.
- Modified FBlueprintNativeCodeGenUtils::GenerateCppCode() to adjust the call to GenerateCppCodeForStruct() to include CPP source output.
- Modified FGatherConvertedClassDependencies::DependenciesForHeader() to switch UDS property dependencies to be forward declarations rather than includes (for default value init code).
- Modified FEmitDefaultValueHelper::GenerateGetDefaultValue() to emit implementation details to the 'Body' container, and adjust the header content to be a declaration only.
- Modified FIncludeHeaderHelper::EmitInner() to exclude a potentially-redundant line for the module's .h file, for the case when the caller has included the base filename in the 'AlreadyIncluded' set.
- Modified FEmitterLocalContext::FindGloballyMappedObject() to limit the 'TryUsedAssetsList' path to UClass conversions only (since that requires a UDynamicClass target to work).
- Modified FGatherConvertedClassDependencies::DependenciesForHeader() to only include BPGC fields if they are also being converted. Eliminates an issue with missing header files in generated code.
Change 3424359 on 2017/05/04 by Ben.Zeigler
Fix issue where StreamableManager would break when requesting an async load that failed the first time. Because our game supports downloading assets during gameplay it's not safe to assume it will never load again.
Port of CL #3424159
Change 3424367 on 2017/05/04 by Ben.Zeigler
Fix some asset manager warnings to not go off in invalid cases
Change 3425270 on 2017/05/05 by Marc.Audy
Pack booleans/enums in UEdGraphNode and FOptionalPinFromProperty
#rnx
Change 3425696 on 2017/05/05 by Ben.Zeigler
#jira UE-44672 Fix it so select node option pins get populated with default values properly
#jira UE-43927 Fix it so select node opion pin type is correctly maintained accross node recreation, as opposed to deriving from the attached pins
#jira UE-44675 Fix it to correctly refresh select node when switching from bool to integer index
Change 3425833 on 2017/05/05 by Ben.Zeigler
#jira UE-31749 Fix it so Undo works properly when modifying a local variable
#jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value
Change 3425890 on 2017/05/05 by Marc.Audy
Fix Copy/Paste of child actor components losing the template
#jira UE-44566
Change 3425947 on 2017/05/05 by Ben.Zeigler
This was meant to be part of last checkin
Change 3425959 on 2017/05/05 by Ben.Zeigler
#jira UE-44692 Fix it so only the sequentially last node can be removed from a Switch On Int, and for Switch On Name stop it from removing an exec pin if it's the only non-default one
Change 3425979 on 2017/05/05 by Dan.Oconnor
PVS fix
Change 3425985 on 2017/05/05 by Phillip.Kavan
Fix an uninitialized variable.
#rnx
Change 3426043 on 2017/05/05 by Ben.Zeigler
#jira UE-35583 Correctly refresh array node UI when connecting pins that change it away from wildcard
Change 3426174 on 2017/05/05 by Zak.Middleton
#ue4 - Avoid call to virtual getSimulationFilterData() to only use it when needed in PreFilter if we actually have items in the IgnoreComponents list (which is rare). The sim filter data 'word2' stores the component ID.
Change 3426621 on 2017/05/05 by Phillip.Kavan
#jira UE-44708 - Fix an issue that re-introduced component data loss in a non-nativized child Blueprint class with a nativized parent Blueprint class.
Change summary:
- Removed an unnecessary additional check I had for the presence of "-NativizeAssets" switch on the command line in UBlueprint::BeginCacheForCookedPlatformData(). This check was failing because the usage was recently changed to include an optional value. It was not needed anyway so I just removed it.
#rnx
Change 3426906 on 2017/05/05 by Ben.Zeigler
#jira UE-11189 Fix function/macro input default values to show as a pin customization instead of as a broken text box that doesn't work correctly for most types. This fixes enums and provide validation for other types
Types that don't have a customization (most structs) will now show any more, they did not work before either
#jira UE-21754 Hide function default values if pass by reference is set
Fix it so changing input parameter will also reset default value, to avoid having the wrong type value set and to work the same as local variables
Change 3426941 on 2017/05/05 by Dan.Oconnor
Fix determinstic cooking of LoadAssetClass nodes in macros
Change 3427021 on 2017/05/05 by Dan.Oconnor
Build fix, make initialization order in source match artifact
#rnx
Change 3427135 on 2017/05/05 by Phillip.Kavan
#jira UE-44702 - Restore code-based interface classes to Blueprint editor UI.
Change summary:
- Partially backed out CL# 3348513 to return to previous behavior for 4.16. The UI is no longer filtering on the __is_abstract() type trait for interface classes.
- Modified FNativeClassHeaderGenerator::ExportClassFromSourceFileInner() to emit the _getUObject() declaration for native interface types as a default implementation that returns NULL rather than as a pure virtual declaration.
#rnx
Change 3427144 on 2017/05/06 by Marc.Audy
Fix init order
#rnx
Change 3427146 on 2017/05/06 by Marc.Audy
remove stray semicolon
#rnx
Change 3427242 on 2017/05/06 by Phillip.Kavan
#jira UE-44744 - Fix a regression in which a UMG Widget Blueprint property not explicitly marked as a variable would cause Blueprint nativization to fail at package time.
Change summary:
- Modified FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() to only add 'Category' metadata when we set the 'CPF_BlueprintVisible' flag on the UProperty, which in is now tied to whether or not the property has been explcitly marked as a variable. This avoids a UHT warning when compiling the nativized codegen that would cause packaging to fail.
#rnx
Change 3427720 on 2017/05/08 by Dan.Oconnor
Backing out 3419202
#rnx
Change 3427725 on 2017/05/08 by Dan.Oconnor
SA fix
#rnx
Change 3427734 on 2017/05/08 by Dan.Oconnor
More exhaustive GEditor null checks, to appease SA
#rnx
Change 3427882 on 2017/05/08 by Marc.Audy
Properly order all booleans in intialization
#rnx
Change 3428049 on 2017/05/08 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3427804
#rnx
Change 3428523 on 2017/05/08 by Ben.Zeigler
#jira UE-44781 Refresh function input UI when blueprint graph refreshes, needed as pins may have gone away
Change 3428563 on 2017/05/08 by Ben.Zeigler
#jira UE-44783 If setting a hard reference pin type from a string, load the referenced object.
Change 3428595 on 2017/05/08 by Dan.Oconnor
Avoid node reconstruction when we're compiling a blueprint with no linker (e.g., a duplicated blueprint)
#jira UE-44777
Change 3428599 on 2017/05/08 by Ben.Zeigler
#jira UE-44789 Fix string asset renamer to not mark IsPersistent becuase that crashes in lightmap code, change it so the path fixup doesn't require the persistent flag
Change 3428609 on 2017/05/08 by Dan.Oconnor
Improved fix for UE-44777
#jira UE-44777
#rnx
Change 3429176 on 2017/05/08 by Phillip.Kavan
#jira UE-44755 - Fix nativization build errors when packaging a game project that is not IWYU-compliant for a build target that disables PCH files.
- Mirrored from //UE4/Release-4.16 (CL# 3429030).
#rnx
Change 3429198 on 2017/05/08 by Phillip.Kavan
CIS fix.
#rnx
Change 3429583 on 2017/05/08 by Ben.Zeigler
Fix SGraphPinClass to work properly after my changes to allow unloaded assets. For Class pins we need to store separate Runtime and Editor asset data objects, as one has _C and refers to the class, and the other doesn't and refers to the blueprint. The content browser wants the editor path, the pin defaults want the runtime path.
Change default value widgets to look more like properties widgets by forcing them to act as highlighted and disabling black background
Change 3429640 on 2017/05/08 by Marc.Audy
Fix issues with select nodes in macros connected to wildcard pins.
#jira UE-44799
#rnx
Change 3429890 on 2017/05/08 by Ben.Zeigler
Fix function/macro defaults to properly propagate when changed using the new edit UI
Refactor some code out of the details customization into the k2 schema
Disable defaults UI for object/class/interface hard references as it is disabled in KismetCompiler
Change 3429947 on 2017/05/08 by Michael.Noland
Core: Backing out CL# 3394352 (marking FDateTime and FTimespan nonexport member Tick with UPROPERTY()), which will re-break UE-39921 but fix UE-44418
There appears to be a more serious underlying issue with how the CDO is instanced which needs to be addressed
#jira UE-44418
#reimplementing 3411681 from Release 4.16
Change 3429987 on 2017/05/08 by Ben.Zeigler
#jira UE-44798 Do a better job of validating object paths saved as default values, due to an old bug with local variables some object paths are saved as struct exportext
At load time clear invalid default value for local variables
Add IsValidObjectPath to FPackageName that validates the passed in path would be valid to load with LoadObject
Change 3430392 on 2017/05/09 by Marc.Audy
Fix SA CIS error
#rnx
Change 3430747 on 2017/05/09 by Ben.Zeigler
#jira UE-44836 Don't reconstruct node during callback for param value changing, this can happen during a reconstruction and recursive reconstruction is unsafe
Don't call ModifyUserDefinedPinDefaultValue unless the default value has actually changed
Change 3431027 on 2017/05/09 by Marc.Audy
Fix BPRW mark up causing Ocean warnings
#rnx
Change 3431353 on 2017/05/09 by Marc.Audy
Fix UHT error due to exposing FJsonObjectWrapper to blueprints
#rnx
[CL 3431398 by Marc Audy in Main branch]
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3198996 on 2016/11/15 by Marc.Audy
BeginPlay calls will now be dispatched in a consistent order regardless of placed in persistent level, streamed in level, or dynamically spawned
AActor::BeginPlay is now protected, you should call DispatchBeginPlay instead.
#jira UE-21136
Change 3199019 on 2016/11/15 by Marc.Audy
Mark user-facing BeginPlay calls as protected
Change 3200128 on 2016/11/16 by Thomas.Sarkanen
Dont propgate threaded update flag from UAnimBluepint to CDO if we fail thread safety checks
Also fully deprecated (with _DEPRECATED) older flags in UAnimInstance.
#jira UE-38362 - Disable multi-threaded update when anim blueprints are not thread-safe
Change 3200133 on 2016/11/16 by Martin.Wilson
Fix Set Anim Instance Class not working on the second attempt (InitAnim would not be called)
#jira UE-18798
Change 3200167 on 2016/11/16 by Martin.Wilson
Newly added virtual bones are now selected in the skeleton tree
#jira UE-37776
Change 3200255 on 2016/11/16 by James.Golding
Stop SkeletalMeshTypes.h being globally included
Change 3200289 on 2016/11/16 by Jurre.deBaare
Hidden Material References from Mesh Components Fix
#fix Make sure that in PostEditChangeProp we reset the override material arrays
#misc changed a property comparison to use GET_MEMBER_NAME_CHECKED instead
#jira UE-38108
Change 3200291 on 2016/11/16 by Jurre.deBaare
Imported Alembic skeletal anims have cut-off shadow due to moving out of the bounds
#fix retrieve bounds from alembic archive at various levels (global, transform, meshes) and build archive bounds which is set on the animation sequence
#jira UE-37274
Change 3200293 on 2016/11/16 by Jurre.deBaare
Overlapping UV's cause merge actor texture baking issues
#fix Only look for overlapping UVs if vertex data baking is actually expected/enabled
#jira UE-37220
Change 3200294 on 2016/11/16 by Jurre.deBaare
Scrubbing Playback Speed under Geometry Cache in the details panel is too sensitive
#fix Make the UIMin/Max smaller than the clamping value for proper user interaction while sliding (thanks James for the tip!)
#jira UE-36679
Change 3200295 on 2016/11/16 by Jurre.deBaare
Merge Actor Specific LOD level can be set to 8
#fix Change clamping value and added UI clamp metadata
#jira UE-37134
Change 3200296 on 2016/11/16 by Jurre.deBaare
In Merge Actors if you select use specific Lod level you have access to all the merge material settings
#fix Added edit condition to non-grayed out material settings
#jira UE-36667
Change 3200303 on 2016/11/16 by Thomas.Sarkanen
Fixed diagonal current scrub value in anim curves
#jira UE-35787 - The red time indicator for viewing curves in persona is slightly tilted
Change 3200304 on 2016/11/16 by Thomas.Sarkanen
Rezero is now explicit about what it does (current vs. specified frame)
Also no longer ingores Z-offset (legacy feature - root motion can have any translation, not just 2D).
#jira UE-35985 - Rezero doesn't work by frame
Change 3200307 on 2016/11/16 by Thomas.Sarkanen
Add curve panel to anim BP editor
Also improve curve modification message routing. We were needlessly passing delegates up and down the widget hierarchy and conflating smart name edits with curve edits (key addition etc.).
#jira UE-35742 - Anim Curve Viewer allowed in Anim BP
Change 3200313 on 2016/11/16 by Jurre.deBaare
Animations with materials driven by scalar parameters from curves wont update until persona is closed and reopened
#fix in debug skeletal mesh component just mark the cached parameters dirty every tick
#jira UE-35786
Change 3200316 on 2016/11/16 by Jurre.deBaare
Converted Skeletal To Static Mesh Gets Corrupted When Merged
#fix Assume that the all static meshes will contain valid texture coordinates for channel 0 (which is expect by static mesh code as well)
#misc Ensure that we set the lightmap index for converted skeletal meshes to either an empty one or the highest one used
#jira UE-37988
Change 3200321 on 2016/11/16 by Jurre.deBaare
Scrolling/scroll bar are disabled in Alembic Import window if you scroll a certain way down
#fix change the way the layout is constructed
#jira UE-37260
Change 3200323 on 2016/11/16 by Jurre.deBaare
Toggling sky in Persona does not effect reflections
#fix turn of skylight together with the actual environment sphere
#misc found incorrect copy paste in toggling floor/environment visibility with key stroke
#jira UE-26796
Change 3200324 on 2016/11/16 by Jurre.deBaare
Open Merge Actor menu on right clicking two selected actors
#fix Added option 'Merge Actors' to right-click context menu when having selected one or multiple actors in the viewport
#jira UE-36892
Change 3200331 on 2016/11/16 by Benn.Gallagher
Added support for suspending clothing simulations at runtime, exposed also to blueperints. And aded option in Persona to pause simulations when animations are paused.
#jira UE-38620
Change 3200334 on 2016/11/16 by Jurre.deBaare
Dynamic light settings in Persona viewport cause edges to appear hardened
#fix Makeing the directional light stationary to ups the shadowing quality
#jira UE-37188
Change 3200356 on 2016/11/16 by Jurre.deBaare
Rate scale option for animation nodes in blend spaces
#added Rate scale variable to blend space samples, these rates are now multiplied with the global rate scale during playback
#misc bumped framework object version to update all blendspaces on load
#jira UE-16207
Change 3200380 on 2016/11/16 by Jurre.deBaare
Fix for Mac CIS issues
Change 3200383 on 2016/11/16 by Marc.Audy
Split FAttenuationSettings in to FBaseAttenuationSettings and FSoundAttenuationSettings in preparation for reuse of the base attenuation for force feedback
Change 3200385 on 2016/11/16 by James.Golding
Refactor SkeletalMesh to use same color buffer type as StaticMesh
Change 3200407 on 2016/11/16 by James.Golding
Fix CIS error in FbxAutomationTests.cpp
Change 3200417 on 2016/11/16 by Jurre.deBaare
Fix for CIS issues
#fix Rogue }
Change 3200446 on 2016/11/16 by Martin.Wilson
Change fix for Set Anim Instance Class from CL 3200133
#jira UE-18798
Change 3200579 on 2016/11/16 by Martin.Wilson
Fix for serialization crash in Odin
#jir UE-38683
Change 3200659 on 2016/11/16 by Martin.Wilson
Fix build errors
Change 3200801 on 2016/11/16 by Lina.Halper
Fix error message
Change 3200873 on 2016/11/16 by Lina.Halper
Test case for Update Rate Optimization
- LOD_URO_Map.umap - test map
- LODPawn - pawn that contains mesh with URO setting
- You can tweak the value in LODPawn
Change 3201017 on 2016/11/16 by Lina.Halper
- Allow slave component to be removed when setting master pose to nullptr
- licensee reported this issue. https://udn.unrealengine.com/questions/321037/skeletalmeshcomponent.html
Change 3201765 on 2016/11/17 by Jurre.deBaare
Improved tooltip for FBlendParameter.GridNum
Change 3201817 on 2016/11/17 by Thomas.Sarkanen
Added display/edit of bone transforms in details panel
Added UBoneProxy tickable editor object held by the skeleton tree that updates its internal transforms in Tick().
Updated various bits of supporting code to allow selection to be properly preserved in cases such as undo/redo. This allows the bone proxy object to be displayed over an undo/redo event. It also fixes some inconsistency with selection between the skeleton tree and the preview scene.
Breaking change: Updated FOnPreviewMeshChangedMulticaster delegate signature to take both the old and new skeletal mesh. This is to allow clients to skip certain logic if the skeletal mesh hasnt really changed (in this case de-selection).
#jira UE-38144 - Selected Bone Transform not visible in Persona on the AnimBP tab
Change 3201819 on 2016/11/17 by Thomas.Sarkanen
Fix CIS error
Change 3201901 on 2016/11/17 by Lina.Halper
With new system, the skeleton curve count is not the one we should check but BoneContainer.GetAnimCurveNameUids().
- removed GetCurveNumber from skeleton
- changed curve count to use BoneContainer's curve list.
#code review: Laurent.Delayen
Change 3201999 on 2016/11/17 by Thomas.Sarkanen
Add local/world transform editing to bone editing
Added details customization & support code for world-space editing of bone transforms
#jira UE-38144 - Selected Bone Transform not visible in Persona on the AnimBP tab
Change 3202111 on 2016/11/17 by mason.seay
Potential test assets for HLOD
Change 3202240 on 2016/11/17 by Thomas.Sarkanen
Fixed extra whitespace not being removed in front of console commands.
GitHub #2843
#jira UE-37019 - GitHub 2843 : Fixed extra whitespace not being removed in front of console commands.
Change 3202259 on 2016/11/17 by Jurre.deBaare
Readded missing shadows in advanced preview scene
Change 3203180 on 2016/11/17 by mason.seay
Moved and updated URO Map
Change 3203678 on 2016/11/18 by Thomas.Sarkanen
Bug fix for menu extenders in PhAT.
GitHub #2550
#jira UE-32678 - GitHub 2550 : Bug fix for menu extenders in PhAT.
Change 3203679 on 2016/11/18 by Thomas.Sarkanen
Fixed LOD hysteresis not being properly converted from the old metric
This addreses some 'LOD lag' issues seen when just treating as an equivalent fudge factor, as the magnitude needed to have an effect has changed.
#jira UE-38640 - Skeletal mesh LODs render incorrectly and incosistently
Change 3203747 on 2016/11/18 by Jurre.deBaare
Crash when repeatedly undoing and readding of animation to a AnimOffset 1D - IsValidBlendSampleIndex
#fix Ensure we reset the hightlighting / dragging / selection state when PostUndo is called, this makes sure we repopulate tooltips if need etc.
#jira UE-38734
Change 3203748 on 2016/11/18 by Jurre.deBaare
Crash Generating Proxy Meshes after replacing static meshes in the level
#fix just calculate bounds for the used UVs (old behaviour was wrong)
#jira UE-38764
Change 3203751 on 2016/11/18 by james.cobbett
Changes to TM-PoseSnapshot and new test assets
Change 3203799 on 2016/11/18 by Thomas.Sarkanen
Switched fudged auto-LOD calculations to use a pow() decay instead of a recprocal
Still a fudge when LOD reduction has not been performed in-engine, but a fudge with similar outcomes to the previous method.
Also fixed up the naming of some variables that still referred to screen areas & LOD distances.
#jira UE-38674 - LOD distance switching have changed since 4.14 and merged lod actors seem to switch at incorrect screen scales as a result
Change 3203856 on 2016/11/18 by james.cobbett
TM-PoseSnapshot - Rebuild lighting and updated anims
Change 3203880 on 2016/11/18 by Ori.Cohen
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3203940 on 2016/11/18 by Ori.Cohen
Fix missing newline for ps4
Change 3203960 on 2016/11/18 by Ori.Cohen
Readd fix for linux macro expansion warning
Change 3203975 on 2016/11/18 by Ori.Cohen
Fix for linux toolchain not knowing about no-unused-local-typedef
Change 3203989 on 2016/11/18 by Ori.Cohen
Make sure physx automation doesn't try to build html5 APEX.
Change 3204031 on 2016/11/18 by james.cobbett
Minor update to test level
Change 3204035 on 2016/11/18 by Marc.Audy
Additional Attenuation refactor cleanup
Change 3204044 on 2016/11/18 by Ori.Cohen
Fix typo of NV_SIMD_SSE2
Change 3204049 on 2016/11/18 by Ori.Cohen
Fix missing newline for PS4 compiler
Change 3204463 on 2016/11/18 by mason.seay
Finalized URO test map
Change 3204621 on 2016/11/18 by mason.seay
Small improvements
Change 3204751 on 2016/11/18 by Ori.Cohen
Make PhAT highlight selected bodies and constraints in the tree view
Change 3205868 on 2016/11/21 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3205744
Change 3205887 on 2016/11/21 by Jurre.deBaare
Fix for similar crash in blendspace editor like UE-38734
Change 3206121 on 2016/11/21 by Marc.Audy
PR #2935: Minor subtitle issues (Contributed by projectgheist)
#jira UE-38803
#jira UE-38692
Change 3206187 on 2016/11/21 by Marc.Audy
PR #2935: Minor subtitle issues (Contributed by projectgheist)
Additional bits
#jira UE-38519
#jira UE-38803
#jira UE-38692
Change 3206318 on 2016/11/21 by Marc.Audy
Fix Linux compiler whinging
Change 3206379 on 2016/11/21 by Marc.Audy
Fix crash when streaming in a sublevel with a child actor in it (4.14.1)
#jira UE-38906
Change 3206591 on 2016/11/21 by Marc.Audy
Refactor restrictions to allow hidden and clarify disabled
Change 3206776 on 2016/11/21 by Marc.Audy
ForceFeedback component allows rumble events to be placed or spawned in to the world with attenuation settings that dictate how intensely the rumble pattern will be applied to the player based on their distance to the effect.
ForceFeedback Attenuation settings can be defined via the content browser or directly on the component.
#jira UEFW-244
Change 3206901 on 2016/11/21 by Marc.Audy
Fix compile error in automation tests
Change 3207235 on 2016/11/22 by danny.bouimad
Updated Map
Change 3207264 on 2016/11/22 by Thomas.Sarkanen
Disable bone editing in anim blueprint editor
#jira UE-38876 - Transform options in bone Details panel in Anim Blueprint Persona editor appear editable
Change 3207303 on 2016/11/22 by Lina.Halper
Clear material curve by setting it directly because the flag might not exist
#jira: UE-36902
Change 3207331 on 2016/11/22 by Jon.Nabozny
Fix overflow issues in SerializeProperties_DynamicArray_r. Also, fix crash from not ensuring properties were serialized successfully.
Change 3207357 on 2016/11/22 by Danny.Bouimad
Updating testcontent for pose drivers
Change 3207425 on 2016/11/22 by Lina.Halper
Fix frame count issue with montage
#jira: UE-30048
Change 3207478 on 2016/11/22 by Lina.Halper
Fix so that curve warning doesn't happen when your name is same.
#jira: UE-34246
Change 3207526 on 2016/11/22 by Marc.Audy
Fix crash when property restriction introduces a hidden entry
Change 3207731 on 2016/11/22 by danny.bouimad
MoreUpdates
Change 3207764 on 2016/11/22 by Lina.Halper
#fix order of morphtarget to first process animation and then BP for slave component
Change 3207842 on 2016/11/22 by Ben.Zeigler
Fix it so ActiveStructRedirects are checked in addition to ActiveClassRedirects when serializing a raw UStruct reference, such as in a blueprint UStructProperty. This fixes issue with the attenuation settings struct rename, and should have always been working this way. ActiveClassRedirects will still work.
Change 3208202 on 2016/11/22 by Ben.Zeigler
#jira UE-38811 Fix regression with gimbal locking in player camera manager.
The quat->rotator->quat->rotator conversions are introducing more error than in 4.13, so a pitch limit of -89.99 was too precise.
Change 3208510 on 2016/11/23 by Wes.Hunt
Disable UBT Telemetry on internal builds #jira AN-1059
#tests build a few different ways, add more diagnostics to clarify if the provider is being used.
Change 3208734 on 2016/11/23 by Martin.Wilson
Change EnsureAllIndicesHaveHandles to try and maintain validity of as many of the handles as possible + Make FRichCurve key member private as it needs to stay in sync with map on base class
#jira UE-38899
Change 3208782 on 2016/11/23 by Thomas.Sarkanen
Fixed material and vert count issues with skeletal to static mesh conversion
Material remapping was not bein gbuilt, so material indices were overwitten inappropriately.
Vertex tangentY was being recalculated incorrectly (discarding the W component when transformed), so vertices were not correctly re-merged later in the static mesh build phase.
#jira UE-37898 - Materials are incorrect on static mesh made from skeletal mesh
Change 3208798 on 2016/11/23 by James.Golding
UE-38478 - Fix collision on procmesh created in BeginPlay in cooked builds
Change 3208801 on 2016/11/23 by Jurre.deBaare
Hidden Material References from Mesh Components Fix
#fix forgot to mark the renderstate dirty and wrapped it to only apply when overridematerials actually contain something
#jira UE-38108
Change 3208807 on 2016/11/23 by Thomas.Sarkanen
CIS fix
Change 3208824 on 2016/11/23 by danny.bouimad
More content updates for Testing
Change 3208827 on 2016/11/23 by Danny.Bouimad
Removing Old Pose driver Testassets I created awhile ago.
Change 3209026 on 2016/11/23 by Martin.Wilson
CIS Fix for FRichCurve
Change 3209083 on 2016/11/23 by Marc.Audy
Don't crash if after an undo the previously selected object no longer exists (4.14.1)
#jira UE-38991
Change 3209085 on 2016/11/23 by Marc.Audy
Don't crash if a negative length passed in to UKismetStringLibrary::GetSubstring (4.14.1)
#jira UE-38992
Change 3209124 on 2016/11/23 by Ben.Zeigler
#jira UE-38867 Fix some game mode log messages
From PR #2955
Change 3209231 on 2016/11/23 by Marc.Audy
Auto removal
Change 3209232 on 2016/11/23 by Marc.Audy
GetComponents now optionally can include components in Child Actors
Change 3209233 on 2016/11/23 by Marc.Audy
ParseIntoArray resets instead of empty
Change 3209235 on 2016/11/23 by Marc.Audy
Allow child actor components to be selected in viewports
Fix selection highlight not working on nested child actors
#jira UE-16688
Change 3209247 on 2016/11/23 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3209194
Change 3209299 on 2016/11/23 by Marc.Audy
Use MoveTemp to reduce some memory churn in graph schema actions
Change 3209347 on 2016/11/23 by Marc.Audy
Don't dispatch a tick function that had been scheduled but has been disabled before being executed.
#jira UE-37459
Change 3209507 on 2016/11/23 by Ben.Zeigler
#jira UE-38185 Keep player controllers in their same order during a seamless travel
From PR #2908
Change 3209882 on 2016/11/24 by Thomas.Sarkanen
Copy-to-array now works with the fast path
Refactored the copy record generation/validation code to be clearer with better seperation of concerns.
Made sure we always properly generate a full exec chain for our events, despite some other them potentially using the fast path (this may have been a bug waiting to happen).
Fixed a potentiual bug with sub anim instances were potentiall fast path non-array properties were skipped.
Added tests for fast path validity to EditorTests project. Assets to follow.
#jira UE-34569 - Fast Path gets turned off if you link to multiple input pins
Change 3209884 on 2016/11/24 by Thomas.Sarkanen
File I missed
Change 3209885 on 2016/11/24 by Thomas.Sarkanen
Support assets for fast path tests
Change 3209939 on 2016/11/24 by Benn.Gallagher
Fixed anim blueprint compiler not following reroute nodes when building cached pose fragment list
#jira UE-35557
Change 3209941 on 2016/11/24 by Jurre.deBaare
Removing and readding a point to the Anim Offset graph results in the animation to not preview correctly.
#fix make sure that when we delete a sample point we reset the preview base pose
#misc changed how the preview base pose is determined/updated
#jira UE-38733
Change 3209942 on 2016/11/24 by Thomas.Sarkanen
Fixed transactions being made when setting bone space in details panel
Also added reset to defaults to allow easy removal of bone modifications.
#jira UE-38957 - Switching between Local and World Location in Persona Bone Transform options creates an Undo transaction
Change 3209945 on 2016/11/24 by james.cobbett
Test assets for Pose Snapshot Test Case
Change 3210239 on 2016/11/25 by Mieszko.Zielinski
Making Navmesh react to changes done to static mesh's collision setup via the SM Editor #UE4
#jira UE-29415
Change 3210279 on 2016/11/25 by Benn.Gallagher
Fixed anim sub-instances only allowing one pin to work when any pin required a call out to the VM for evaluation
#jira UE-38040
Change 3210288 on 2016/11/25 by danny.bouimad
Cleaned up Pose Driver Anim BP's
Change 3210334 on 2016/11/25 by Benn.Gallagher
Fixed preview mesh references getting broken in physics assets when renaming the preview mesh asset. Added explicit reference collection for the TAssetPtr
#jira UE-22145
Change 3210349 on 2016/11/25 by James.Golding
UE-35783 Fix scrolling in PoseAsset editor panels
Change 3210356 on 2016/11/25 by James.Golding
UE-38420 Disable 'Convert to Static Mesh' option if no MeshComponents selected (e.g. cables)
Change 3210357 on 2016/11/25 by Jurre.deBaare
Numeric textbox value label incorrect for aimoffset/blendspaces in grid
#fix change lambda capture type (was referencing local variable)
Change 3210358 on 2016/11/25 by Jurre.deBaare
Crash Generating Proxy Mesh with Transition Screen Size set to 1
#fix 1.0 was not included within the possible range
#jira UE-38810
Change 3210364 on 2016/11/25 by James.Golding
Improve BuildVertexBuffers to use stride and avoid copying colors
Change 3210371 on 2016/11/25 by Jurre.deBaare
You can no longer enable tooltip display when using anim offset
#fix Added back ability to show advanced preview sample weighting to tooltip under CTRL down
#jira UE-38808
It's not clear that the user has to hold shift to preview in blend spaces
#fix Preview value is now set by default and has a tooltip state, this will inform the user how to move the preview value
#jira UE-38711
#misc refactored out some duplicate code :)
Change 3210387 on 2016/11/25 by james.cobbett
Updating test asset
Change 3210550 on 2016/11/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3209927
Brings IWYU in and required substantial fixups
Change 3210551 on 2016/11/26 by Marc.Audy
Delete empty cpp files
Change 3211002 on 2016/11/28 by Lukasz.Furman
added navigation update on editting volume's brush
#ue4
Change 3211011 on 2016/11/28 by Marc.Audy
Roll back CL# 3210334 as it is causing deadlocks during GC
Change 3211039 on 2016/11/28 by Jurre.deBaare
Merge Actors tool is splitting every vertex on spline meshes, causing hard edged vertex colors.
#fix prevent using the wedge map when propagating spline mesh vertex colours
#jira UE-36011
Change 3211053 on 2016/11/28 by Ori.Cohen
Make sure objects without simple collision do not simulate. Fixes crash when two trimesh only objects collide
#JIRA UE-38989
Change 3211101 on 2016/11/28 by mason.seay
Adjusting trigger collision so it can't be triggered by projectiles
Change 3211171 on 2016/11/28 by Jurre.deBaare
Previewing outside of Blendspace Graph points causes unexpected weighting
#jira UE-32775
Second Animation Sample added to AimOffset or Blendspace swaps with the first sample
#jira UE-36755
#fix Changed behaviour for calculating blendspace grid weighting for one, two or colinear triangles
- One: fill grid weights to single sample
- Two: find closest point on line between the two samples for the grid point, and weight according to the distance on the line
- Colinear: find two closest samples and apply behaviour above
#misc rename variables to make the code more clear and correct
Change 3211491 on 2016/11/28 by Marc.Audy
Provide proper tooltip for GetParentActor/Component
Expose GetAttachParentActor/SocketName to blueprints
De-virtualize Actor GetAttach... functions
#jira UE-39056
Change 3211570 on 2016/11/28 by Lina.Halper
Title doesn't update when asset is being dropped
#jira: UE-39019
Change 3211766 on 2016/11/28 by Ori.Cohen
Remove warning when a constraint has two empty components. This can be a valid usecase for when components are determined dynamically.
#JIRA UE-36089
Change 3211938 on 2016/11/28 by Mason.Seay
CSV's for testing gameplay tags
Change 3212090 on 2016/11/28 by Ori.Cohen
Expose angular SLERP drive to blueprints
#JIRA UE-36690
Change 3212102 on 2016/11/28 by Marc.Audy
Fix shadow variable issue
#jira UE-39099
Change 3212182 on 2016/11/28 by Ori.Cohen
PR #2902: Fix last collision preset display (Contributed by max99x)
#JIRA UE-38100
Change 3212196 on 2016/11/28 by dan.reynolds
AEOverview Update:
Minor tweaks and fixes
Added Attenuation Curve Tests
Renamed SC to SCLA for Sound Class prefix
WIP SCON (Sound Concurrency)
Change 3212347 on 2016/11/28 by Ben.Zeigler
#jira UE-39098 Fix issues with adding tag redirectors with the editor open, it now checks the redirector list in the editor
Fix chained tag redirectors to work properly
Const fixes and removed a bad error message spam, and fix rename message
Change 3212385 on 2016/11/28 by Marc.Audy
Avoid duplicate GetWorld() calls
Change 3212386 on 2016/11/28 by Marc.Audy
auto shoo
Change 3213018 on 2016/11/29 by Marc.Audy
Fix shadow variable for real
Change 3213037 on 2016/11/29 by Ori.Cohen
Fix deprecation warnings
Change 3213039 on 2016/11/29 by Marc.Audy
Generalize logic for when a component prevents an Actor from auto destroying
Add forcefeedback component to the components that will hold up the auto destroy of an actor
Change 3213088 on 2016/11/29 by Marc.Audy
Move significance manager out of experimental
Change 3213187 on 2016/11/29 by Marc.Audy
Add InsertDefaulted to mirror options available when Adding
Change 3213254 on 2016/11/29 by Marc.Audy
add auto-complete for showdebug forcefeedback
Change 3213260 on 2016/11/29 by Marc.Audy
Allow systems to inject auto-complete console entries
Change 3213276 on 2016/11/29 by Marc.Audy
add auto-complete entry for showdebug significancemanager
Change 3213331 on 2016/11/29 by James.Golding
Split SkeletalMesh skin weights into their own stream
Remove unused FGPUSkinVertexColor struct
Remove unused FSkeletalMeshVertexBuffer::bInfluencesByteSwapped bool
Fix FSkeletalMeshMerge::GenerateLODModel to handle >4 weights
Update friendly name for FColorVertexBuffer now it's used by skel mesh as well
Change 3213349 on 2016/11/29 by Ben.Zeigler
Fix tag rename feedback message
Change 3213355 on 2016/11/29 by Ben.Zeigler
#jira UE-39115 PR #2987: Added IsPaused to AGameModeBase (Contributed by RoyAwesome)
Change 3213406 on 2016/11/29 by Ori.Cohen
Make sure body transforms are not set while the physx simulation is running.
#JIRA UE-37270
Change 3213508 on 2016/11/29 by Jurre.deBaare
When performing a merge actor on an actor merging multiple materials certain maps aren't generated
#fix Apparently rendering out specular etc now outputs its value only to the red channel, so had to change how we populate the combined metallic/roughness/specular map
#jira UE-38526
Change 3213557 on 2016/11/29 by Ben.Zeigler
#jira UE-22145 Fix issues where TAssetPtrs weren't getting properly fixed up during rename fixup, it now runs the StringAssetReference fixup on the nested reference. This should fix lots of weird issues with references going away
Change 3213634 on 2016/11/29 by Ori.Cohen
Make sure if no shapes are found for vehicle wheels we create spheres and attach them to the actor.
Change 3213639 on 2016/11/29 by Ori.Cohen
Fix from nvidia for vehicle suspension exploding when given a bad normal.
#JIRA UE-38716
Change 3213812 on 2016/11/29 by James.Golding
UE-35925 Remove hard-coded asset<->animnode mapping, add SupportsAssetClass virtual instead
Change 3213824 on 2016/11/29 by Ori.Cohen
Fix CIS
Change 3213873 on 2016/11/29 by Ori.Cohen
Fix welded bodies not properly computing mass properties.
#JIRA UE-35184
Change 3213950 on 2016/11/29 by Mieszko.Zielinski
Fixed navigation collision being generated wrong for StaticMeshes created from BSP #Orion
#jira UE-37221
Change 3213951 on 2016/11/29 by Mieszko.Zielinski
Fixed perception system having issue with registering perception listener spawned in sublevels #UE4
#jira UE-37850
Change 3214005 on 2016/11/29 by Ori.Cohen
Fix mass kg override not propagating to blueprint instances.
Change 3214046 on 2016/11/29 by Marc.Audy
Duplicate all instanced subobjects, not just those that are editinlinenew
Make AABrush.Brush instanced rather than export
#jira UE-39066
Change 3214064 on 2016/11/29 by Marc.Audy
Use GetComponents directly where safe instead of copying in to an array
Change 3214116 on 2016/11/29 by James.Golding
Fix tooltip when dragging anim assets onto players
Change 3214136 on 2016/11/29 by Ori.Cohen
Make it so moving bodies is immediate when in editor. Useful for editor tools that rely on physx data
#JIRA UE-35864
Change 3214162 on 2016/11/29 by Mieszko.Zielinski
Fixed a bug in EnvQueryGenerator_SimpleGrid resuting in one extra column and row of points being generated #UE4
#jira UE-12077
Change 3214177 on 2016/11/29 by Marc.Audy
Use correct SocketName (broken in CL#2695130)
#jira UE-39153
Change 3214427 on 2016/11/29 by dan.reynolds
AEOverview Update
Fixed Attenuation tests when overlapping attenuation ranges between streamed levels
Added Sound Concurrency Far then Prevent New testmap
Removed some Sound Concurrency assets
Change 3214469 on 2016/11/29 by dan.reynolds
AEOverview Update
Added Sound Concurrency Test for Stop Farthest then Oldest
Change 3214842 on 2016/11/30 by Jurre.deBaare
LookAt AimOffset in the Anim Graph causes character to explode
#jira UE-38533
#fix ensure that the source socket exists on the skeleton during compilation (as far as we can), and skip blendspace evaluation in case of it not being valid during runtime
Change 3214866 on 2016/11/30 by james.cobbett
Updating Pose Snapshot test assets
Change 3214964 on 2016/11/30 by thomas.sarkanen
Added test data for facial animtion curves
Change 3215015 on 2016/11/30 by Jurre.deBaare
When a Aim Offset axis value is edited drastically the preview mesh will be deformed
#fix change the way we change data when axis values are changed, simply remap normalized samples to new axis range
#misc marked some data/functions editor only (not needed during runtime so reduces footprint a little bit)
#jira UE-38880
Change 3215029 on 2016/11/30 by Marc.Audy
Fix CIS
Change 3215033 on 2016/11/30 by Marc.Audy
Add a delegate for when new classes are added via hotreload
Change existing hotload class reinstancing delegates to be multicast
Change 3215048 on 2016/11/30 by Jon.Nabozny
Use getKinematicTarget whenever a body is kinematic.
This should fix some edge cases in FBodyInstance where stale transforms may be used when operations are run in PrePhysics.
#jira UE-37877
Change 3215052 on 2016/11/30 by Marc.Audy
Generalize the volume actor factory logic
Create volume factories when hotreload adds a new volume class
#jira UE-39064
Change 3215055 on 2016/11/30 by Marc.Audy
Probable fix for IOS CIS failure
Change 3215091 on 2016/11/30 by Lina.Halper
Easy alternative fix for blending two curves per bone. For now we just combine.
To fix this properly - i.e. per bone to affect curve - it is very expensive process, so opting into this for 4.15.
#jira: UE-39182
Change 3215179 on 2016/11/30 by Jurre.deBaare
Preview viewport should only use rendering features supported in project
#fix replace the skylight with a sphere reflection component, this will not give image based lighting but does supply the user with a reflection map + intensity
#jira UE-37252
Change 3215189 on 2016/11/30 by Jurre.deBaare
CIS fix
Change 3215326 on 2016/11/30 by Ben.Zeigler
#jira UE-39077 Fix OnActive gameplay cues on standalone servers, it was incorrectly assuming it was in mixed replication mode.
Regression caused by CL #3104976
Change 3215523 on 2016/11/30 by James.Golding
Fix cooking old skel meshes in commandlet - vertex buffer was not recreated so UpdateUVChannelData would crash
Change 3215539 on 2016/11/30 by Marc.Audy
Fix failure to cleanup objects in a hidden always loaded sub-level
#jira UE-39139
Change 3215568 on 2016/11/30 by Aaron.McLeran
UE-39197 Delay node of 0.0 causes crash
Change 3215719 on 2016/11/30 by Aaron.McLeran
UE-39074 Audio related Client crash experienced on latest live build ++UT+Release-Next-CL-3193528
Change 3215773 on 2016/11/30 by Aaron.McLeran
PR #2819 : Fixed typo in SoundWave.h
Change 3215828 on 2016/11/30 by James.Golding
PR #2900: fixed a former change that overlooked the 2 character difference between 16 and 32. (Contributed by MartinMittringAtOculus)
Change 3215831 on 2016/11/30 by James.Golding
UE-36688 Add BlendOption (with CustomCurve) to PoseBlendNode
Change 3215904 on 2016/11/30 by Marc.Audy
Fix significance calculations
Change 3215955 on 2016/11/30 by James.Golding
UE-36791 Fix scaling of rotated convex elements, by baking element transform into cooked convex data.
Change 3215959 on 2016/11/30 by James.Golding
Remove LogTemp warning from FAnimBlueprintCompiler::FinishCompilingClass
Change 3216057 on 2016/11/30 by Marc.Audy
Don't reset expose on spawn properties when in a PIE world
#jira UE-36771
Change 3216114 on 2016/11/30 by James.Golding
Move SkeletalMeshComponent and SkinnedMeshComponent functions out of SkeletalMesh.cpp into correct cpp files
Change 3216144 on 2016/11/30 by Jon.Nabozny
Fix FConstraintInstance scaling issues in FSkeletalMeshComponent::InitArticulated.
InitArticulated uses the default Constraint Template from the Physics Asset a skeletal mesh is associated with.
This caused issues if a skeletal mesh had bone scales that differed from those in the physics asset.
#jira UE-38434
Change 3216148 on 2016/11/30 by Jon.Nabozny
Create test map and asset for Skeletal Mesh Component Scaling and Skeletal Mesh Uniform Import Scaling.
Change 3216160 on 2016/11/30 by Aaron.McLeran
Fixing a memory leak in concurrency management
Change 3216164 on 2016/11/30 by James.Golding
Move SkeletalMeshActor code into its own cpp file
Fix CIS for SkeletalMeshComponent.cpp
Change 3216371 on 2016/11/30 by dan.reynolds
AEOverview Update
Minor tweaks
Completed Sound Concurrency Rule Test Maps
Added additional test files
Change 3216509 on 2016/11/30 by Marc.Audy
Fix missing include
Change 3216510 on 2016/11/30 by Marc.Audy
Code cleanup
Change 3216723 on 2016/12/01 by Jurre.deBaare
When clearing a blend sample animation the animation will try and blend to the ref pose
#fix do not delete sample when animation == nullptr but mark it as invalid, it then will be rendered in red on the grid and discarded during triangle/line generation
#fix indice mapping for 2d blend spaces was incorrect before (luckily never caused an error)
#misc weird whitespace changes
#jira UE-39078
Change 3216745 on 2016/12/01 by Jurre.deBaare
- Blend space triangulation was incorrect in some cases, due to refactor some data was not initialised.
- UDN user was hitting a check within the triangle flipping behaviour
#fix Revisited the conditions to determine whether or not a point lies within a triangles circumcircle
#fix In case we cannot flip the current triangle we skip it and move onto the next one instead of putting in a hard check
#misc refactored triangle flipping code to make it smaller (more readible)
Change 3216903 on 2016/12/01 by mason.seay
Imported mesh for quick test
Change 3216904 on 2016/12/01 by Jurre.deBaare
CIS Fix
#fix replaced condition by both non-editor as editor valid one
Change 3216998 on 2016/12/01 by Lukasz.Furman
fixed AI slowing down on ramps due to 3D input vector being constrained by movement component
#jira UE-39233
#2998
Change 3217012 on 2016/12/01 by Lina.Halper
Checking in James' fix on drag/drop to replace assets
#code review: James.Golding
#jira: UE-39150
Change 3217031 on 2016/12/01 by james.cobbett
Updating Pose Snapshot Assets. Again.
Change 3217033 on 2016/12/01 by Martin.Wilson
Update bounds on all skel meshes when physics asset is changed
#jira UE-38572
Change 3217181 on 2016/12/01 by Martin.Wilson
Fix imported animations containing a black thumbnail
#jira UE-36559
Change 3217183 on 2016/12/01 by Martin.Wilson
Add some extra debugging code for future animation compression / ddc issues
Change 3217184 on 2016/12/01 by james.cobbett
Fixing a test asset by checking a check box. Sigh.
Change 3217216 on 2016/12/01 by Martin.Wilson
Undo part of CL 3217183. Will need to add this back differently.
Change 3217274 on 2016/12/01 by Marc.Audy
When serializing in an enum tagged property follow redirects
#jira UE-39215
Change 3217419 on 2016/12/01 by james.cobbett
Changes to test assets for more Pose Snapshot tests
Change 3217449 on 2016/12/01 by Aaron.McLeran
Adding new audio setting to disable EQ and reverb.
Hooked up to XAudio2 (for now).
Change 3217513 on 2016/12/01 by Marc.Audy
Improve bWantsBeginPlay deprecation message
Change 3217620 on 2016/12/01 by mason.seay
Updated test assets for HLOD
Change 3217872 on 2016/12/01 by Aaron.McLeran
UEFW-113 Adding master reverb to audio mixer
- Added new submix editor to create new submixes
- Created new default master submixes for reverb and EQ and master submixes
- Fixed a number of minor issues found in auido mixer while working on feature
Change 3218053 on 2016/12/01 by Ori.Cohen
Added mass debug rendering
#JIRA UE-36608
Change 3218143 on 2016/12/01 by Aaron.McLeran
Fixing up reverb to support multi-channel (5.1 and 7.1) configurations.
- Added default reverb send amount
Change 3218440 on 2016/12/01 by Zak.Middleton
#ue4 - Made some static FNames const.
Change 3218715 on 2016/12/02 by james.cobbett
Fixed bug in test asset.
Change 3218836 on 2016/12/02 by james.cobbett
Fixing up test asset
Change 3218884 on 2016/12/02 by james.cobbett
Moar test asset changes
Change 3218943 on 2016/12/02 by Ori.Cohen
Make sure welded bodies include the center of mass offset. Note this also changes the COM nudge to be world space instead of local space
#JIRA UE-35184
Change 3218955 on 2016/12/02 by Marc.Audy
Fix initialization order issues
Remove monolithic includes
Change signature to pass string by const ref
Change 3219149 on 2016/12/02 by Ori.Cohen
Fix SetCollisionObjectType not working on skeletal mesh components
#JIRA UE-37821
Change 3219162 on 2016/12/02 by Martin.Wilson
Fix compile error when blend space on aim offset nodes is exposed as pin
#jira UE-39285
Change 3219198 on 2016/12/02 by Marc.Audy
UEnum::FindValue/IndexByName will now correctly follow redirects
#jira UE-39215
Change 3219340 on 2016/12/02 by Zak.Middleton
#ue4 - Optimized and cleaned up some Actor methods related to location and rotation.
- Inlined GetActorForwardVector(), GetActorUpVector(), GetActorRightVector(). Wrapped them to simply call the methods on USceneComponent rather than using a different approach to computing these vectors.
- Inlined blueprint versions: K2_GetActorLocation(), K2_GetActorRotation(), K2_GetRootComponent().
- Cleaned up template methods that are used to delay compilation of USceneComponent calls to make them private and prefix "Template" to their names so they don't show up in autocomplete for calls to the public methods.
Change 3219482 on 2016/12/02 by Ori.Cohen
Fix crash when double deleting a clothing actor due to destroying USkeletalMesh before USkeletalMeshComponent.
#JIRA UE-39172
Change 3219676 on 2016/12/02 by Martin.Wilson
Make clearer that ref pose is from skeleton
Change 3219687 on 2016/12/02 by Aaron.McLeran
Supporting multi-channel reverb with automatic downmixing of input to stereo
Change 3219688 on 2016/12/02 by Martin.Wilson
Fix crash when remapping additive animations after skeleton hierarchy change
#jira UE-39040
Change 3219699 on 2016/12/02 by Zak.Middleton
#ue4 - Fix template's use of old GetActorRotation() function.
Change 3219969 on 2016/12/02 by Ben.Zeigler
#jira UE-24800 Disable replicatied movement updates for actors that are welded to something else, to avoid them fighting with the welded parent's replication
Modified from shelve Zak.Middleton made of PR #1885, after some more testing
Change 3220010 on 2016/12/02 by Aaron.McLeran
Fixing up sound class editor
Change 3220013 on 2016/12/02 by Aaron.McLeran
Deleting monolithic file
Change 3220249 on 2016/12/02 by Aaron.McLeran
Changing reverb settings parameter thread sync method
- Switching to a simple ring buffer rather than using a crit sect
Change 3220251 on 2016/12/02 by Aaron.McLeran
Removing hard-coded audio mixer module name for the case when using -audiomixer argument,
-added new entry to ini file that allows you to specify the audio mixer module name used for the platform.
Change 3221118 on 2016/12/05 by Jurre.deBaare
Back out changelist 3220249 to fix CIS
Change 3221363 on 2016/12/05 by Martin.Wilson
Change slot node category from Blends to Montage
Change 3221375 on 2016/12/05 by Jon.Nabozny
Change AGameModeBase::GetGameSessionClass to return GameSessionClass when set.
#jira UE-39325
Change 3221402 on 2016/12/05 by Jon.Nabozny
Add sanitization code around PhsyX flags and refactor the ways flags are managed through a single code path.
#jira UE-33562
Change 3221441 on 2016/12/05 by Thomas.Sarkanen
Fixed crash when reimporting a mesh when a different animation was open
#jira UE-39281 - Editor crashes when reimporting a skeletal mesh after enabling recalculate tangents
Change 3221473 on 2016/12/05 by Marc.Audy
Get rid of auto.
Use GetComponents directly instead of copying in to temporary arrays
Change 3221584 on 2016/12/05 by Jon.Nabozny
Fix CIS for Mac builds from CL-3221375
Change 3221631 on 2016/12/05 by Martin.Wilson
Possible fix for rare marker sync crash on live servers
#jira UE-39235
#test ai match, animation seemed fine, no crashes
Change 3221660 on 2016/12/05 by mason.seay
Resubmitting to add Viewport Bookmark
Change 3221683 on 2016/12/05 by Mieszko.Zielinski
Temp (but decent) fix to ARecastNavMesh::GetRandomPointInNavigableRadius sometimes retrieving invalid locations even if there's a valid piece of navmesh in the area #UE4
#jira UE-30355
Change 3221750 on 2016/12/05 by Jon.Nabozny
Real CIS fix.
Change 3221917 on 2016/12/05 by Jon.Nabozny
Fix CIS for real this time.
Change 3222370 on 2016/12/05 by mason.seay
Start of Gameplay Tag testmap
Change 3222396 on 2016/12/05 by Aaron.McLeran
UEFW-44 Implementing EQ master submix effect for audio mixer
- New thread safe param setting temlate class (for setting EQ and Reverb params)
- Hook up reverb submix effect to source voices
- Implementation of FBiquad for biquad filter coefficients and audioprocessing
- Implementation of Filter class which hold FBiquad instance per channel, computes coefficents once
- Implementation of equalizer class which is a serial bank of filters set to ParametricEQ filter type
Change 3222425 on 2016/12/05 by Aaron.McLeran
Checking in missing files
Change 3222429 on 2016/12/05 by Aaron.McLeran
Last missing file!
Change 3222783 on 2016/12/05 by Jon.Nabozny
Update SkelMeshScaling map.
Change 3223173 on 2016/12/06 by Martin.Wilson
Fix crash in thumbnail rendering when creating a new montage
#jira UE-39352
Change 3223179 on 2016/12/06 by Marc.Audy
auto/NULL cleanup
Change 3223329 on 2016/12/06 by Marc.Audy
Fix (hard to explain) memory corruption
#jira UE-39366
Change 3223334 on 2016/12/06 by Jon.Nabozny
Add HasBeenInitialized check inside AActor::InitializeComponents
Change 3223340 on 2016/12/06 by Jon.Nabozny
Refactor SkeletalMesh constraint scaling fixes. Add a check on bodies to ensure they are valid.
#jira UE-39238
Change 3223372 on 2016/12/06 by Marc.Audy
Probably fix HTML5 CIS failure
Change 3223511 on 2016/12/06 by Jon.Nabozny
Fix Mac CIS shadow warning
Change 3223541 on 2016/12/06 by Lukasz.Furman
fixed missing NavCollision data in static meshes
#jira UE-39367
Change 3223672 on 2016/12/06 by Ben.Zeigler
#jira UE-39394 Fix GameplayTagContainerCustomization to work like GameplayTagCustomization as a popup instead of a window, this fixes the references button
Remove unnecessary code from both customizations
Change 3223751 on 2016/12/06 by Marc.Audy
Properly remove components from their owner when manipulating through editinlinenew properties
#jira UE-30548
Change 3223831 on 2016/12/06 by Ben.Zeigler
#jira UE-39293 Don't show non-working tag operations when ini tag editing is not enabled
#jira UE-39344 Improve feedback messages when deleting explicit tags that have other explicit tag children
Don't allow deleting a leaf explicit tag whose implicit parent tags are still referenced and it is the only thing keeping them alive
Add Tag Source to tooltip in management mode
Fix RequestGameplayTagChildrenInDictionary to work properly
Change 3223862 on 2016/12/06 by Marc.Audy
Hide deprecated attach functions for all games not just Paragon
Change 3224003 on 2016/12/06 by Marc.Audy
Put behavior of player camera back to how it was prior to Ansel plugin support changes. Make photography only work a different way.
#jira UE-39207
Change 3224602 on 2016/12/07 by Jurre.deBaare
Crash on creating LODs with Medic
#fix Added clamp for UVs -1024 to 1024
#jira UE-37726
Change 3224604 on 2016/12/07 by Jurre.deBaare
Fix for incorrect normal calculation in certain circumstances
#fix Make sure we propagate the matrices to samples after we (re)calculated normals
#fix Conditionally swap/inverse the vertex data buffers instead of always
#fix Set preview mesh for alembic import animation sequences
#misc removed commented out code and added debug code
Change 3224609 on 2016/12/07 by Jurre.deBaare
Alembic Import Issues (skeletal) w. UVs and smoothing groups
#fix Changed the way we populate smoothing group indices for alembic caches
#misc removed commented out code, set base preview pose for alembic imported skeletal meshes / anim sequences
#jira UE-36412
Change 3224783 on 2016/12/07 by James.Golding
Support per-instance skeletal mesh vertex color override
Change 3224784 on 2016/12/07 by James.Golding
Add skelmesh vert color override map. Fix my vert color material to work on skel mesh.
Change 3225131 on 2016/12/07 by Jurre.deBaare
Crash when baking matrix animation when importing an alembic file as skeletal
#fix condition whether or not to apply matrices had not been moved over in previous change
#jira UE-39439
Change 3225491 on 2016/12/07 by Lina.Halper
- Morphtarget fix on the first frame
#jira: UE-37702
Change 3225597 on 2016/12/07 by mason.seay
Updated materials on meshes to ones that don't have physical materials, also rebuilt lighting
Change 3225758 on 2016/12/07 by Aaron.McLeran
UE-39421 Fix for sound class graph bug
Change 3225957 on 2016/12/07 by Ben.Zeigler
#jira UE-39433 Fix crash with mass debug data
Change 3225967 on 2016/12/07 by Lina.Halper
Fix not removing link up cache when removed.
#jira: UE-33738
Change 3225990 on 2016/12/07 by Ben.Zeigler
#jira OR-32975 Sort gameplay tags before saving out modified ini, to help with merge issues
Change 3226123 on 2016/12/07 by Aaron.McLeran
Fix for sound class asset creation from within the sound class graph
Change 3226165 on 2016/12/07 by mason.seay
Replaced skelmesh gun with static mesh cube
Change 3226336 on 2016/12/07 by Aaron.McLeran
Fixing up sound class replacement code.
If you delete a sound class but replace with another, now it properly replaces sound classes in the sound class graphs without totally destroying them
Change 3226701 on 2016/12/08 by Thomas.Sarkanen
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ CL 3226613
Change 3226710 on 2016/12/08 by Jurre.deBaare
Fix for alembic import crash
#misc update num mesh samples and take into account user set start frame in case of skipping preroll frames
Change 3226834 on 2016/12/08 by Jurre.deBaare
Fix for incorrect matrix samples being applied during Alembic cache importing
#fix Change way we loop through samples and determine correct matrix and mesh sample indices
Change 3227330 on 2016/12/08 by Jurre.deBaare
Temporary fix for animBP compilation error, underlying issue is causing the skeleton to not be fully loaded when we are validating the animation node. This makes the socket name check fail and consequently output a compilation error
#UE-39499
#fix Ensure that the skeleton is loaded by checking for RF_NeedPostLoad
#misc corrected socket name output, removed unnecessary nullptr check
Change 3227575 on 2016/12/08 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3227387
Change 3227602 on 2016/12/08 by Marc.Audy
Copyright 2016 to 2017 updates for new Framework files
[CL 3227721 by Marc Audy in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3122543 on 2016/09/13 by Ben.Woodhouse
Override HasOcclusion for Widget3DComponentProxy to detect if the material is has depth testing enabled.
#jira UE-35878
Change 3122544 on 2016/09/13 by Ben.Woodhouse
Shadow stencil optimisation with cvar (enabled by default)
Avoids redundant clearing the stencil buffer for per-object and pre shadows by zeroing the stencil during testing, following discussion on UDN.
This means we don't benefit from Hi Stencil on GCN for the shadow projection draw calls, but it's still faster in all the cases I could find, including for the player character where the bounding box is quite large. (Note: early stencil still works fine, according to PIX)
Shadow projection GPU time profiling :
Test map with 35 characters, stationary directional light
- 4ms-2ms on XB1
- 2.5ms to 0.9ms on PC (r9-390X)
- 3ms-2ms on PS4
Paragon PS4 (roughly 20% reduced - from ~0.39ms)
Change 3122687 on 2016/09/13 by Rolando.Caloca
DR - vk - Fix ES31 crash
Change 3122691 on 2016/09/13 by Rolando.Caloca
DR - vk - Fixes for SDK 1.0.26.0
Change 3122778 on 2016/09/13 by Rolando.Caloca
DR - vk - Fix number of layers on barrier
Change 3122921 on 2016/09/13 by Rolando.Caloca
DR - vk - Fix ES3.1
Change 3122925 on 2016/09/13 by Ben.Woodhouse
Fix sky lighting issue with skin and re-enable non-checkerboard lighting by default (fallout from lightaccumulator refactor)
#jira UE-35904
Change 3123016 on 2016/09/13 by Chris.Bunner
Fixed adaptive tessellation, broken by CL 3089208 refactor.
#jira UE-35341
Change 3123079 on 2016/09/13 by Rolando.Caloca
DR - vk - Force StoreOp store instead of DontCare everywhere (temporarily)
Change 3123503 on 2016/09/13 by David.Hill
#jira UE-25623
converted a check() to checkf() to include better diagnostic information.
Change 3123617 on 2016/09/13 by Guillaume.Abadie
Fixes artifact when the camera direction is almost parallel to a wide plane with SSR.
#jira UE-35128
Change 3123743 on 2016/09/13 by Brian.Karis
Separate mesh reduction interfaces for static and skeletal.
Zero bad tangents from input mesh.
Change 3125378 on 2016/09/14 by Arne.Schober
DR - [UE-34481] - Extract all the State which is necessary to execute the DebugTextDrawingDelegate from the SceneProxy into its own Helpers to be drawn to the canvas later on. The issue was that the SceneProxys are only owned by the RT after their creation and the GT should avoid reading from or writing state to them.
Change 3125527 on 2016/09/14 by Arne.Schober
DR - [UE-34481] - Fix UT build and mac
Change 3125741 on 2016/09/14 by Rolando.Caloca
DR - Extra debug mode for tracking down SCW crashes (r.DumpSCWQueuedJobs=1)
Change 3125763 on 2016/09/14 by Rolando.Caloca
DR - vk - Added new Renderpass cache
- Fix buffer barrier warning
Change 3125769 on 2016/09/14 by Rolando.Caloca
DR - Renamed cvar to r.DumpSCWQueuedJobs
Change 3125771 on 2016/09/14 by Rolando.Caloca
DR - Added support for SV_ClipDistance on GL3 & 4
Change 3125792 on 2016/09/14 by Arne.Schober
DR - [UE-34481] - Fix Odin and PS4
Change 3125880 on 2016/09/14 by Arne.Schober
DR - [UE-34481] - Fix Fortnite
Change 3125968 on 2016/09/14 by Brian.Karis
Removed comment
Change 3126315 on 2016/09/15 by Ben.Woodhouse
GPU profiler robustness
- Change stat gathering update to handle multiple views and non-scenerenderer stats (such Slate) properly
- Simplify gathering logic
- Fix race condition where we could read back queries before they're submitted on the RHI thread.
- Fix for movie player stat gathering - disable gathering outside of the main engine tick
#jira UE-35975
Change 3126792 on 2016/09/15 by Rolando.Caloca
DR - vk - Release render pass cache
Change 3126804 on 2016/09/15 by Rolando.Caloca
DR - vk - Fix UpdateTexture2D()
#jira UE-34151
Change 3126884 on 2016/09/15 by Rolando.Caloca
DR - vk - Compile fix
Change 3126953 on 2016/09/15 by Rolando.Caloca
DR - Enable GPU capture when running OpenGL under RenderDoc
- Will also set the memory mode to non coherent so not to kill performance on RenderDoc
Change 3126966 on 2016/09/15 by Rolando.Caloca
DR - Allow cooking for Vulkan SM4 to help with packaging
Change 3127082 on 2016/09/15 by Guillaume.Abadie
Wraps up contact shadows for release fixing different artifacts and handling correctly their screen space length.
#jira UE-35367, UE-33602, UE-33603, UE-33604
#review-3125887 @brian.karis
Change 3127130 on 2016/09/15 by Mark.Satterthwaite
Add overloads to as* functions in hlslcc - HLSL allows you to call these on variables of the same type, in which case it simply returns the existing value but we had only defined the float<->u/int conversions, so hlslcc added implicit casts that broke such cases (i.e. asuint(uint) -> floatBitsToUint(float(uint))). This change defines the missing overloads as returns with regular casts.
#jira FORT-25869
#jira UE-34263
Change 3127475 on 2016/09/15 by Rolando.Caloca
DR - vk - Debug dump
Change 3128131 on 2016/09/16 by Ben.Woodhouse
(Integrated from //UE4/Private-Partner-NREAL/...)
Alpha output support for postprocess materials (optional via a parameter)
Needed for end of frame compositing. Could be used to pass intermediate data from one blendable postprocess to another (e.g edge detection)
Change 3128135 on 2016/09/16 by Ben.Woodhouse
GPU profiler (PS4) - remove bubbles between commandlist submissions from query times
Use r.ps4.AdjustRenderQueryTimestamps cvar to enable/disable (defaults to on)
Also fixes some potential precision issues with unit GPU timing
Change 3128247 on 2016/09/16 by Rolando.Caloca
DR - vk - Cache framebuffers
Change 3128593 on 2016/09/16 by Rolando.Caloca
DR - vk - Fix for crash loading map
#jira UE-36072
Change 3128759 on 2016/09/16 by Mark.Satterthwaite
Back out changelist 3127130 - its causing a build failure in FPostProcessVelocityScatterVS because hlslcc is picking the wrong as_* overload.
Change 3130236 on 2016/09/19 by Chris.Bunner
Exposed full SceneCaptureComponent classes instead of select methods.
#jira UE-35996
Change 3130388 on 2016/09/19 by Rolando.Caloca
DR - Avoid crash when adding dynamic primitives
#jira UE-35327
Change 3130393 on 2016/09/19 by Marc.Olano
Improve vector noise tooltips & documentation
Change 3130547 on 2016/09/19 by Ben.Woodhouse
Fix for ensure fail when initializing point light shadowmaps.
This came about because cubemap rendertargets always have Extents of (Resolution, 0). The Y component was implicitly used to determine if it was a cubemap, which is odd... The fix was to make the definition explicit via a flag and initialize both the X and Y parameters.
I suspect the ensure started happening recently due to a more recent change, but fixing the underlying logic seems like the correct fix.
#jira UE-35837
Change 3130578 on 2016/09/19 by Daniel.Wright
Workaround OpenGL/NVidia bug with non-power-of-2 textures by disabling CSM atlassing if we're using OpenGL
Change 3130682 on 2016/09/19 by Rolando.Caloca
DR - Better fix for UE-35327
#jira UE-35327
Change 3130767 on 2016/09/19 by Uriel.Doyon
Better handling of color array in VisualizeComplexity code to prevent assert.
#jira UE-29332
Change 3130965 on 2016/09/19 by Arne.Schober
DR - [UE-35679] - the crash was caused by the Resource of the UTexture being Null. And one of the Kismet Nodes calling a function on that resource. The solution was to disable that call from Kismet when only cooking.
Change 3130967 on 2016/09/19 by Chris.Bunner
Hid redundant texture sampler properties from texture object parameter.
Hid redundant texture property input on texture parameter nodes.
Fixed copy-paste error in expression texture parameter docs.
#jira UE-32724
Change 3131118 on 2016/09/19 by Mark.Satterthwaite
Second attempt - this time with the correct input types. Add overloads to as* functions in hlslcc - HLSL allows you to call these on variables of the same type, in which case it simply returns the existing value but we had only defined the float<->u/int conversions, so hlslcc added implicit casts that broke such cases (i.e. asuint(uint) -> floatBitsToUint(float(uint))). This change defines the missing overloads as returns with regular casts.
#jira FORT-25869
#jira UE-34263
Change 3131153 on 2016/09/19 by Rolando.Caloca
DR - Fix recompute normals when triangles have a LHS tangent basis
Integrate from 3028634
- Also make meshes that don't have morphs be able to run through the recompute normals path
#jira UE-35472
Change 3131228 on 2016/09/19 by Mark.Satterthwaite
Duplicate CL #3114668: Always disable asynchronous shader compilation for the global shader map on Metal as some of them are needed very early.
#jira UE-35240
Change 3131246 on 2016/09/19 by Rolando.Caloca
DR - Shrink gpu skinning permutations
Change 3131261 on 2016/09/19 by Mark.Satterthwaite
Fix Metal validation failures due to particle rendering not binding buffers to all buffer inputs declared in the shader.
ContentExamples Effects no longer aborts complaining that the particle system didn't bind a required buffer.
Change 3131265 on 2016/09/19 by Mark.Satterthwaite
Fix FMetalDynamicRHI::RHIReadSurfaceData for shared textures on iOS.
Change 3131271 on 2016/09/19 by Mark.Satterthwaite
Use private memory for the Metal stencil SRV workaround needed on El Capitan.
Change 3131273 on 2016/09/19 by Mark.Satterthwaite
Disable the lazy-encoder construction in Metal for AMD - there is a situation that causes the lazy construction to perform a clear that isn't wanted and so far this hasn't been tracked down and fixed. Until then, this will render correctly.
Change 3131280 on 2016/09/19 by Mark.Satterthwaite
For GLSL interpolation mode flags must come before storage mode flags and you can't redeclare the system variable gl_Layer to use a differing interpolation mode.
Change 3131283 on 2016/09/19 by Mark.Satterthwaite
Change the ShaderCache to not cache resource bindings in the draw states for shader platforms that don't care - reduces the number of draw states considered significantly without reducing effectiveness. We can support ShaderCache with Metal SM5 but not the RHI thread enabled so change when we enable it and make sure we load the binary shader cache.
Change 3131402 on 2016/09/19 by Rolando.Caloca
DR - Disambiguate callstack
#jira UE-34415
Change 3131469 on 2016/09/19 by Rolando.Caloca
DR - vk - Check if we can allocate descriptors off a pool
Change 3131482 on 2016/09/19 by Rolando.Caloca
DR - vk - Remove unused var
Change 3131506 on 2016/09/19 by Mark.Satterthwaite
With permission from Josh.A & Michael.T, deprecate Mac OpenGL support. For now this just means visibly warning users with message boxes - but in a future release OpenGL support will be removed from macOS.
Change 3131536 on 2016/09/19 by Rolando.Caloca
DR - vk - Compile fix
Change 3131564 on 2016/09/19 by Rolando.Caloca
DR - vk - Submit Hint
- Disable framebuffer recycling as its causing a hang
Change 3131625 on 2016/09/19 by Mark.Satterthwaite
Inside MetalRHI add an optional cache for disposed texture objects so we may reuse them - controlled by CVAR rhi.Metal.TextureCacheMode which must be set prior to running as it can't be changed at runtime. Settings: 0 = off, 1 (default) = will attempt to reuse private memory texture objects within the frame they are released otherwise they are disposed of as before. Setting 2 extends the caching to all textures - though Managed/Shared textures cannot be reused until after the frame in which they were released has been processed on the GPU. In this mode id<MTLTexture> objects are never returned to the OS so in order to conserve VRAM calls to setPurgeableState are made to allow the driver to reclaim unusued memory if required.
Change 3131630 on 2016/09/19 by Mark.Satterthwaite
More statistics in Metal added to track down where performance was going in a particular project but which may be more generally useful.
Change 3131955 on 2016/09/20 by Gil.Gribb
Merging //UE4/Dev-Main@3129758 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3131978 on 2016/09/20 by Gil.Gribb
CIS fix
Change 3132584 on 2016/09/20 by Ben.Woodhouse
Add some additional checks to help track down a rare crash with terrain rendering and shader recompiling
#jira UE-35937
Change 3132696 on 2016/09/20 by Mark.Satterthwaite
Use set*Bytes to handle uploading buffers < 4Kb when available - this is faster than lots of small Metal buffers and reduces the amount of GPU heap fragmentation. Where the API feature isn't available or hasn't been tested yet we'll use another ring-buffer inside the MetalCommandEncoder to emulate it.
Change 3132772 on 2016/09/20 by Mark.Satterthwaite
Rework Metal's handling of RHISetStreamSource calls that override the stride of vertex declarations to be much more efficient.
Change 3132870 on 2016/09/20 by Ben.Woodhouse
Fix mac compile error
Change 3133049 on 2016/09/20 by Brian.Karis
Changed light source shapes in reflection captures to use alpha
Change 3133057 on 2016/09/20 by Brian.Karis
Alphaed out on spot light cone as well.
Change 3133263 on 2016/09/20 by Rolando.Caloca
DR - vk - Debug names for objects
Change 3133292 on 2016/09/20 by Rolando.Caloca
DR - vk - Fix SRGB upload/formats
Change 3133395 on 2016/09/20 by Rolando.Caloca
DR - vk - SM5 fixes
Change 3134026 on 2016/09/21 by Gil.Gribb
Merging //UE4/Dev-Main@3133983 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3134663 on 2016/09/21 by Chris.Bunner
Merging Dev-MaterialLayers to Dev-Rendering, CL 3134208. Initial material attribute extensibility changes.
#jira UE-34347
Change 3134730 on 2016/09/21 by Arne.Schober
DR - [UE-34481] - Fix minor brokenness found by Gil
Change 3134792 on 2016/09/21 by Chris.Bunner
Fixed compile errors for non-editor builds.
Change 3135214 on 2016/09/21 by Rolando.Caloca
DR - vk - Fix visualize texture
- Dump memory when OOM (to track leaks)
Change 3135225 on 2016/09/21 by Rolando.Caloca
DR - vk - Ensure on exit if mem leak
- Update fences if running wait for idle
Change 3135672 on 2016/09/22 by Gil.Gribb
Merging //UE4/Dev-Main@3135568 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3135793 on 2016/09/22 by Rolando.Caloca
DR - vk - Set dynamic state after binding pipeline or on a fresh cmd buffer
Change 3135816 on 2016/09/22 by Rolando.Caloca
DR - Add names for d3d on renderdoc
Change 3135894 on 2016/09/22 by Chris.Bunner
Fixed initialization order warning.
Change 3136024 on 2016/09/22 by Rolando.Caloca
DR - vk - Fix stencil faces
Change 3136042 on 2016/09/22 by Marcus.Wassmer
Fix compile error
Change 3136046 on 2016/09/22 by Chris.Bunner
Renamed material for PostTonemapHDRColor visualization to reflect actual usage.
Change 3136308 on 2016/09/22 by Uriel.Doyon
Changed how the component relative rotation is computed, in order to have more consistency after blueprint rescript.
#jira UE-36094
Change 3136798 on 2016/09/22 by Chris.Bunner
Gather object references from stereo view state in USceneCaptureComponent. This matches behavior of other classes such as ULocalPlayer.
Change 3137092 on 2016/09/22 by Rolando.Caloca
DR - vk - Rename pipeline to gfx pipeline
Change 3137263 on 2016/09/22 by Mark.Satterthwaite
Duplicate CL #3135157:
Fix one cause of Metal crashes loading into a zone - the PlanarReflection shader code needs to always set the IsStereoParameter so that the shader can perform the if-test without causing an invalid GPU access.
#jira FORT-30061
Change 3137265 on 2016/09/22 by Mark.Satterthwaite
Duplicate CL #3135169:
Correct Metal texture creation for AVF media framework - we can't provide a render-targetable version of the texture without blitting. The native texture we get is a GPU copy that can be made CPU accessible (i.e. it is not tiled).
Change 3137266 on 2016/09/22 by Mark.Satterthwaite
Duplicate CL #3135237:
Metal validation layer fix: under Metal if there are no reads from the vertex stage-in buffers we should use the Empty vertex declaration, not the filter declaration, otherwise we have to bind a redundant vertex stream buffer to silence the validation layer.
Change 3137268 on 2016/09/22 by Mark.Satterthwaite
Duplicate CL #3136033:
To fix the Fortnite login screen force Nvidia Macs to use the set*Bytes API for small buffer updates even on El Capitan. We can't do this globally as Intel didn't implement these functions until macOS Sierra.
Fix GPU selection code in MetalRHI to confirm everything is working.
#jira FORT-30385
Change 3137269 on 2016/09/22 by Mark.Satterthwaite
Duplicate CL #3137164:
Add stats to track exactly how many command buffers are allocated and committed each frame to work out why Fortnite on AMD is hanging, which turns out to be because each texture update/reallocation ends up in its own command-buffer. This needs to be rethought to pack these into fewer command buffers with the same synchronisation requirements to minimise command-buffer splits but for now we'll just make the default sufficiently large that we shouldn't see the hang until the work is done. Also ensure that command-buffer failure is always fatal - there is no way to recover or continue if a command-buffer fails.
#jira FORT-30377
Change 3137606 on 2016/09/23 by Gil.Gribb
Merging //UE4/Dev-Main@3137560 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3137936 on 2016/09/23 by Rolando.Caloca
DR - Split RHICmdList clear into color & ds in prep for changes
Change 3138346 on 2016/09/23 by Rolando.Caloca
DR - vk - Some renaming and splitting classes in prep for compute
Change 3138628 on 2016/09/23 by Rolando.Caloca
DR - vk - Fix mem leak on framebuffers
Change 3138721 on 2016/09/23 by Daniel.Wright
Better comment for r.DefaultFeature.AntiAliasing
Change 3138722 on 2016/09/23 by Daniel.Wright
Fixed assert from decals with MSAA due to binding the Scene Depth Texture instead of surface
Change 3138723 on 2016/09/23 by Daniel.Wright
Corrected GC doc
Change 3138892 on 2016/09/23 by Daniel.Wright
Fixed instanced static meshes being unbuilt after a lighting build if you ever cancelled a previous lighting build
Change 3138905 on 2016/09/23 by Daniel.Wright
"Optimizations" -> "Optimization Viewmodes"
Change 3138939 on 2016/09/23 by Daniel.Wright
Disabled the stationary light overlap viewmode with forward shading
Change 3139710 on 2016/09/26 by Rolando.Caloca
DR - Rename and added texture RHIClearDepthStencil -> RHIClearDepthStencilTexture
Change 3139820 on 2016/09/26 by Rolando.Caloca
DR - Remove prefix from shader frequency strings
Change 3139828 on 2016/09/26 by Marcus.Wassmer
Add SetShaderValue() specialization for bools on AsyncCompute commandlists to match the Gfx specialization.
Change 3139840 on 2016/09/26 by Benjamin.Hyder
Adding VectorNoise Examples to TM-Noise map
Change 3139862 on 2016/09/26 by Rolando.Caloca
DR - Better log to track down crash
#jira UE-36271
Change 3140142 on 2016/09/26 by Rolando.Caloca
DR - Fix clang warning
Change 3140145 on 2016/09/26 by Rolando.Caloca
DR - Rename RHIClearColor(MRT) to RHIClearColorTextures and pass textures as parameters
Change 3140360 on 2016/09/26 by Daniel.Wright
Lighting Scenarios and lightmaps moved to separate package
* Levels can be marked as lighting scenarios (eg Day, Night). Lighting is built separately for each lighting scenario with actors / lights in all other scenario levels hidden. Only one lighting scenario level should be visible at a time in game, and its lightmaps will be applied to the world.
* Most outputs of the lighting build now go into a separate _BuiltData package. This improves level Save and AutoSave times as the separate package will only be dirtied after lighting rebuilds.
* If a lighting scenario is present, all lightmaps are placed inside it's _BuiltData package. This means that only the currently loaded lighting scenario's lightmaps will be loaded (Day or Night, but not both). This also means that lightmaps for a streaming level will not be streamed with it.
* For backwards compatibility, existing lightmaps are moved to a new _BuiltData package on load.
* Reflection captures and precomputed visibility were not moved to the separate package. Reflection captures are force updated on load of a lighting scenario level, which can increase load times.
Change 3140361 on 2016/09/26 by Daniel.Wright
Lighting Scenarios UI
Change 3140582 on 2016/09/26 by Mark.Satterthwaite
Duplicate CL #3140166
Fix the video playback in Fortnite - bind our shader resource texture as the render-target texture as for some reason the playback code expects it there, even though we could never provide one.
#jira FORT-30551
Change 3140584 on 2016/09/26 by Mark.Satterthwaite
Duplicate CL #3140131:
Fix crash under the validation layer & Nvidia's El Capitan (10.11) drivers when distance field particle collisions are used without any scene distance fields available - bind the black volume texture when that is the case to avoid bad access on the GPU.
#jira FORT-30622
Change 3140586 on 2016/09/26 by Mark.Satterthwaite
Duplicate CL #3140450:
Fix launching the game on Intel GPUs by disabling Tiled Reflections on Intel for macOS Sierra like we did for El Capitan as there's currently a driver bug to means it doesn't work properly.
#jira FORT-30649
Change 3140594 on 2016/09/26 by Zabir.Hoque
Fix benchmark shaders register bindings. TEXCOORD0 was bound to register 1 in VS and then register 0 in PS. DX12 treats this a PSO creation failuer unlike DX11 this was an error.
Change 3140601 on 2016/09/26 by Marcus.Wassmer
New 'Cinematic' Scalability level. Remove unused 'new' motionblur CVAR
Change 3140602 on 2016/09/26 by Zabir.Hoque
CreateTexture3D on XB1 DX11 was leaking ESRAM by reserving it but not allocating to it.
#Tests: Fix was tested by licensee (GearBox).
Change 3140622 on 2016/09/26 by Rolando.Caloca
DR - vk - More prep for sm5
Change 3140765 on 2016/09/26 by Rolando.Caloca
DR - Fix ensure from bad clear depth surface
Change 3141251 on 2016/09/27 by Rolando.Caloca
DR - vk - Rename & cleanup
Change 3141394 on 2016/09/27 by Rolando.Caloca
DR - vk - Compute pipeline state
Change 3141463 on 2016/09/27 by Mark.Satterthwaite
Fix the include order to avoid compile errors on Mac.
Change 3141529 on 2016/09/27 by Gil.Gribb
Merging //UE4/Dev-Main@3139632 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3141830 on 2016/09/27 by zachary.wilson
Adding testing content for lighting scenarios to collaborate with Ben
Change 3141941 on 2016/09/27 by Olaf.Piesche
Speculative fix for UE-34815; have yet to repro this but there's really only so many things it could be. I currently don't see how the sim resources could go away after queueing, so I'm replacing the check with an ensure and null checking the resource pointer.
Change 3142035 on 2016/09/27 by Olaf.Piesche
Fix compiler error from silly leftover bit of code.
Change 3142065 on 2016/09/27 by Benjamin.Hyder
Updating Lighting Scenario map
Change 3142262 on 2016/09/27 by Mark.Satterthwaite
Change Apple RHI initialisation to select the first compatible shader platform to decide which RHI to initialise. Internally in MetalRHI we must gracefully fallback to a lower feature-level when this initial selection is not available on the current device/OS, in which case we need to validate that the selected shader platform was actually packaged. The order of initialisation is different per-platform:
On Mac: Order of initialisation is the order listed in TargetedRHIs .ini specifications.
On iOS/tvOS: Order is explicit: Metal MRT > Metal ES 3.1 > OpenGL ES 2
#jira UE-35749
Change 3142292 on 2016/09/27 by Rolando.Caloca
DR - hlslcc - Fix for warning X3206: implicit truncation of vector type causing error
#jira UE-31438
Change 3142397 on 2016/09/27 by Mark.Satterthwaite
Update hlslcc for Mac including RCO's changes in CL #3142292.
#jira UE-31438
Change 3142438 on 2016/09/27 by Daniel.Wright
UMapBuildDataRegistry's created for legacy lightmap data are placed in the map package, which avoids problems with cooking
Change 3142452 on 2016/09/27 by Rolando.Caloca
DR - Proper support for int defines
Change 3142519 on 2016/09/27 by Arne.Schober
DR - [UE-33438] - Added a Project Setting to enable Skincache Shader Permuations. The Default value for the Skincache mode was changed to enabled. The reasoning behind this was that it will be auto disabled when Skincache Shaders are disabled, and runtime toggle is a debuging feature that mainly programmers are dealing with. The Recompute Tangents option in the Skinned Mesh is now automatically grayed out when no Skincache Shader Permuations are available.
Change 3142537 on 2016/09/27 by Daniel.Wright
Fixed r.ScreenPercentage with MSAA - a scissor rect was being setup during the resolve and not reset
Change 3142691 on 2016/09/27 by Daniel.Wright
Disabled renaming of legacy ULightmap2D's to the separate package since UMapBuildDataRegistry is no longer put in a separate package for legacy content
Change 3142711 on 2016/09/27 by Daniel.Wright
GComponentsWithLegacyLightmaps entries get handled by USceneComponent::AddReferencedObjects, fixes a crash when you open a map directly from the content browser
Change 3142712 on 2016/09/27 by Daniel.Wright
Separate category for ParticleCutout properties
Change 3142762 on 2016/09/27 by Uriel.Doyon
Added per static mesh and per skeletal mesh UV density data. The data is now saved and available in cooked builds.
The density are computed by the engine but can be overridden by the user in the material tabs.
Texture streaming intermediate component data is now per material instead of per lod-section.
New ViewModeParam in FSceneViewFamily allowing context specific param per viewmode.
This is currently used to show which UV channel and which texture index is being
shown in the texture streaming accuracy viewmodes.
This replaces r.Streaming.AnalysisIndex
Renamed texture streaming viewmodes:
MeshTexCoordSizeAccuracy -> MeshUVDensityAccuracy
MaterialTexCoordScalesAccuracy -> MaterialTextureScaleAccuracy
MaterialTexCoordScalesAnalysis -> OutputMaterialTextureScales
Improved UV density computation and viewmode.
LightmapUVDensity is now computed separately from UVChannel Density.
Fixed texture streaming for instanced static mesh component and derived types.
Change 3143464 on 2016/09/28 by Daniel.Wright
Removed 'experimental' from forward shading setting
Change 3143508 on 2016/09/28 by Chris.Bunner
Added component type handling to FoldedMath and Length material expressions.
#jira UE-36304
Change 3143557 on 2016/09/28 by Rolando.Caloca
DR - Back out changelist 3142292
Change 3143563 on 2016/09/28 by Rolando.Caloca
DR - vk - Force hlslcc re-link
Change 3143648 on 2016/09/28 by Daniel.Wright
Moved GetMeshMapBuildData to UStaticMeshComponent since FStaticMeshComponentLODInfo::OwningComponent can't be initialized reliably in the case of SpawnActor off of a blueprint default that has LODData entries already.
Change 3143661 on 2016/09/28 by Chris.Bunner
Warning fix.
Change 3143723 on 2016/09/28 by Daniel.Wright
DumpUnbuiltLightIteractions after lighting build for debugging
Change 3143822 on 2016/09/28 by Arne.Schober
DR - Refactoring of the ViewMatrices. Moved the Derived Matrices into the FViewMatrix struct. Made all members private do emphasize the static constness of that struct after creation. Renamed the heavy weight members on this struct to Compute*. Methods that modify The ViewMatrices have been renamed to Hack* to discurage their use in the future until a better solution for those problems is found. The ViewMatrix modification is especially misleading because it only changes the State of the ViewMatrices to read their Position from the Material Editior as if coming from the Lightsource (mainly for manual bilboards) as well as doing someting similar to generate CPU bilboards for shadows.
Change 3143860 on 2016/09/28 by Benjamin.Hyder
Updating TM-Noise map to include 3d noise examples
Change 3143939 on 2016/09/28 by Rolando.Caloca
DR - vk - Better debugging of submissions
- Added r.Vulkan.IgnoreCPUReads to help track down hangs on some ihvs
Change 3144006 on 2016/09/28 by Brian.Karis
Fixed PixelError not being set correctly with LOD groups.
Removed unneeded Simplygon references.
Mesh reduction module can now be chosen by name with r.MeshReductionModule
Change 3144026 on 2016/09/28 by Benjamin.Hyder
Updating QA-Effects map to correct numbering issue
Change 3144098 on 2016/09/28 by Arne.Schober
DR - ViewMatrices Refactoring - Fix UT
Change 3144158 on 2016/09/28 by Rolando.Caloca
DR - Undo splitting RHI command context
Change 3144952 on 2016/09/29 by Rolando.Caloca
DR - vk - Missing swapchain flag
Change 3145064 on 2016/09/29 by Olaf.Piesche
#jira UE-36091
Pulling range update for vector distributions even when UDist is not dirty; some content has a lookup table and a clean dist, but the range values have not been baked; always pulling them should be safe and not significantly costly.
Change 3145354 on 2016/09/29 by Benjamin.Hyder
Updating Tm-ContactShadows
Change 3145485 on 2016/09/29 by Daniel.Wright
Made SeamlessTravelLoadCallback handle legacy lightmaps
Change 3145527 on 2016/09/29 by Daniel.Wright
Don't clear legacy lightmap annotations on each map - fixes lighting unbuilt when doing seamless travel
Change 3145530 on 2016/09/29 by Simon.Tovey
UE-36188 - Editor crash when updating hierarchical instance static mesh component
Dirtied render state rather than unsafe update of bounds.
Change 3145608 on 2016/09/29 by Gil.Gribb
Attempt to fix a random compiler error under win32
Change 3145749 on 2016/09/29 by Uriel.Doyon
Fix for static analysis warning
Change 3146091 on 2016/09/29 by Zabir.Hoque
RHI Interface changes to support PSO based APIs
Change 3146092 on 2016/09/29 by Zabir.Hoque
D3D12 RHI support for PSO based APIs.
Change 3146590 on 2016/09/30 by Gil.Gribb
Merging //UE4/Dev-Main@3146520 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3146731 on 2016/09/30 by Rolando.Caloca
DR - Fix merge conflicts
Change 3146778 on 2016/09/30 by Rolando.Caloca
DR - More integration compile fixes
Change 3146790 on 2016/09/30 by Rolando.Caloca
DR - Integration fix
Change 3146849 on 2016/09/30 by Rolando.Caloca
DR - Final integration fix
Change 3146899 on 2016/09/30 by Daniel.Wright
Static analysis fix for dereferencing World
Change 3147020 on 2016/09/30 by Rolando.Caloca
DR - vk - Fix depth issue on AMD cards
- Added VULKAN_KEEP_CREATE_INFO to help debugging creation
- Added num color attachments to pipeline key
Change 3147034 on 2016/09/30 by Rolando.Caloca
DR - Fix Kite crash where shader pipelines were optimizing non-tessellation pipelines
#jira UE-36277
#jira UE-36500
Change 3147080 on 2016/09/30 by Rolando.Caloca
DR - vk - Disable debug info by default
Change 3147082 on 2016/09/30 by Chris.Bunner
Allow tessellation to be used with DrawTile calls by swapping fixed mesh to triangle list.
#jira UE-36491
Change 3147388 on 2016/09/30 by Chris.Bunner
Blacklisted Nvidia driver 372.70 as it has known stability issues skewing our top crashes list. Also updated recommended version numbers.
#jira UE-35288
Change 3147394 on 2016/09/30 by Chris.Bunner
Additional logging for rare error.
#jira UE-35812
Change 3147459 on 2016/09/30 by Rolando.Caloca
DR - vk - Some more srgb formats
Change 3147537 on 2016/09/30 by Rolando.Caloca
DR - vk - Standarize srgb flag like D3D11
- Minor FVulkanShader cleanup
Change 3147620 on 2016/09/30 by Olaf.Piesche
#jira UE=34486
particle component tick function task can be invalid during pause; add check
Change 3148028 on 2016/10/01 by Daniel.Wright
Renamed RenderingSettings.cpp to match header
Change 3148059 on 2016/10/01 by Daniel.Wright
Disabled reparenting in the profiler which is disorienting
Change 3148067 on 2016/10/01 by Daniel.Wright
Support for ReflectionEnvironment and light type show flags with ForwardShading
Change 3148069 on 2016/10/01 by Daniel.Wright
Added CapsuleIndirectShadowMinVisibility to SkinnedMeshComponent, so artists have control over indirect capsule shadow darkness without changing cvars
Change 3148072 on 2016/10/01 by Daniel.Wright
Added a rendering setting to disable the new lightmap mixing behavior, where smooth surfaces don't have any mixing. r.ReflectionEnvironmentLightmapMixBasedOnRoughness
Change 3148073 on 2016/10/01 by Daniel.Wright
r.VertexFoggingForOpaque only affects forward shading - manual copy of Ben's fix from Orion stream
Change 3148074 on 2016/10/01 by Daniel.Wright
Enabled planar reflection receiving on the material used for the preview of a APlanarReflection
Change 3148084 on 2016/10/01 by Daniel.Wright
Fixed reflections on Surface TranslucencyVolume in deferred
Change 3148085 on 2016/10/01 by Daniel.Wright
Fixed planar reflection composite being done too many times in stereo deferred
Change 3148086 on 2016/10/01 by Daniel.Wright
Clamp IndirectLightingQuality to 1 in preview builds - keeps preview useful even with IndirectLightingQuality jacked up to 10.
Change 3148107 on 2016/10/01 by Daniel.Wright
CIS fix
Change 3148113 on 2016/10/01 by Daniel.Wright
Translucency lighting modes for forward shading
* Per-vertex modes use GetSimpleDynamicLighting since they can't support specular anyway
Change 3148306 on 2016/10/02 by Rolando.Caloca
DR - vk - Fix for some NV drivers on Win10
Change 3148307 on 2016/10/02 by Rolando.Caloca
DR - vk - Compute pipeline
Change 3148358 on 2016/10/02 by Rolando.Caloca
DR - vk - Consolidate and renumber enum for binding types
Change 3148396 on 2016/10/03 by Rolando.Caloca
DR - vk - Warning fix
Change 3148697 on 2016/10/03 by Benjamin.Hyder
Submitting M_Chromebal after enabling planar reflectionsl
Change 3148799 on 2016/10/03 by Rolando.Caloca
DR - vk - static analysis fix
Change 3148934 on 2016/10/03 by Chris.Bunner
Added pre-skinned local position material graph node, vertex shader only.
Change 3148994 on 2016/10/03 by Chris.Bunner
Added missing header file.
Change 3149085 on 2016/10/03 by Daniel.Wright
Support for ReflectionEnvironment show flag in base pass reflections without any shader overhead
Change 3149095 on 2016/10/03 by Rolando.Caloca
DR - vk - Disable new render passes
Change 3149125 on 2016/10/03 by Rolando.Caloca
DR - vk - Fix for multiple memory types
Change 3149181 on 2016/10/03 by Rolando.Caloca
DR - Better message when missing pipelines
Change 3149215 on 2016/10/03 by Rolando.Caloca
DR - RHIClearColor -> RHIClearColorTexture
#tests Orion Editor run match on Agora_P
Change 3149288 on 2016/10/03 by Chris.Bunner
Added PreTonemapHDRColor for buffer visualization and target output.
#jira UE-36333
Change 3149402 on 2016/10/03 by Daniel.Wright
Light attenuation buffer is now multisampled, fixes preshadows with MSAA (depth testing failed during stencil pass) but adds a resolve (.12ms at VR res)
Change 3149403 on 2016/10/03 by Daniel.Wright
Forward lighting supports lighting channels
Change 3149574 on 2016/10/03 by Marcus.Wassmer
PR #2817: Ansel/Photography system (Contributed by adamnv)
Modified to become a plugin
Change 3149615 on 2016/10/03 by Rolando.Caloca
DR - vk - Fix PF_G16R16 which fixes reflections
Change 3149639 on 2016/10/03 by Olaf.Piesche
Adding more ensures to catch NaNs occasionally appearing in particle locations early
Change 3149745 on 2016/10/03 by Uriel.Doyon
Moved UVDensity computation in the staticmesh DDC.
Change 3149749 on 2016/10/03 by Daniel.Wright
Fixed lightmaps on BSP, which was fallout from Lighting Scenarios backwards compatibility
Change 3149755 on 2016/10/03 by Benjamin.Hyder
Checking in built lighting for QA-postprocessing
Change 3149758 on 2016/10/03 by Benjamin.Hyder
re-submitting built lighting for QA-PostProcessing
Change 3149940 on 2016/10/04 by Gil.Gribb
Merging //UE4/Dev-Main@3149754 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3150098 on 2016/10/04 by Marcus.Wassmer
Fix some clang and win32 errors
Change 3150323 on 2016/10/04 by Rolando.Caloca
DR - vk - Static analysis fix
Change 3150456 on 2016/10/04 by Daniel.Wright
Revert temp logs
Change 3150731 on 2016/10/04 by Daniel.Wright
Static lights now add a dummy map build data entry for their ULightComponent::IsPrecomputedLightingValid
Change 3150795 on 2016/10/04 by Marcus.Wassmer
Fix RHIClearUAV and Drawindirect bugs on PS4.
Also fix PS4 compile error from bad merge.
Change 3151065 on 2016/10/04 by Ben.Marsh
Merging //UE4/Dev-Main to Dev-Rendering (//UE4/Dev-Rendering)
Change 3151134 on 2016/10/04 by Brian.Karis
Fixed corrupt mesh generation from quadric simplifier due to uninitialized color array.
Change 3151201 on 2016/10/04 by Marcus.Wassmer
Nvidia approved icon for ansel plugin.
Change 3151240 on 2016/10/04 by Marcus.Wassmer
Fix string concat build error.
Change 3151258 on 2016/10/04 by Ben.Marsh
Fix compile error.
Change 3151290 on 2016/10/04 by Marcus.Wassmer
Bumping static mesh DDC key to hopefully fix distancefield crashes after brian's quadric simplifier fix.
Change 3152104 on 2016/10/05 by Chris.Bunner
Workaround for legacy BreakMA material node invalid component masks.
#jira UE-36832
Change 3152130 on 2016/10/05 by Ben.Woodhouse
Fix issue with skylight SH and fast semantics on DX11. We need to clear the cube scratch textures before writing to them to avoid issues when reading them back for mip downsampling
#jira UE-35890
Change 3152240 on 2016/10/05 by Rolando.Caloca
DR - Fix for missing gizmo colors
#jira UE-36515
Change 3152338 on 2016/10/05 by Daniel.Wright
Hopeful fix for FDistanceFieldVolumeTexture assert in the cooker
Change 3152833 on 2016/10/05 by Brian.Karis
Improved precision of quadrics. Fixes bad triangles on large meshes
Change 3153376 on 2016/10/06 by Rolando.Caloca
DR - Fix for SM4 missing pipelines fallout
Change 3153650 on 2016/10/06 by Gil.Gribb
Merging //UE4/Dev-Main@3153068 to Dev-Rendering (//UE4/Dev-Rendering)
Change 3153656 on 2016/10/06 by Uriel.Doyon
Fixed main integration compilation issues.
Some of the Mesh UVDensity UI is temporary disabled.
Change 3153725 on 2016/10/06 by Uriel.Doyon
Fixed crash when source data is missing for lightmaps
#jira UE-36157
Change 3153998 on 2016/10/06 by Gil.Gribb
Merging //UE4/Dev-Main to Dev-Rendering@3153705 (//UE4/Dev-Rendering)
Change 3154056 on 2016/10/06 by Marcus.Wassmer
Fix compile errors from merge. Also restore some light scencario code
Change 3154176 on 2016/10/06 by Marcus.Wassmer
Fix deprecation warning
Change 3154252 on 2016/10/06 by Marcus.Wassmer
Fix more deprecation warnings
Change 3154632 on 2016/10/07 by Chris.Bunner
Fix for incorrect re-entrant detection with a function called twice in a row. The function input Preview expression is overridden when the function is called to link it into the caller graph, but it was restored too late for chained calls to the same function.
#jira UE-37002
[CL 3154728 by Gil Gribb in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3050254 on 2016/07/14 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3049614
Change 3136629 on 2016/09/22 by Marc.Audy
bye bye auto
Change 3136631 on 2016/09/22 by Marc.Audy
Allow objects to be marked as duplicate transient or non PIE duplicate transient
ChildActors are not marked consistent with the property that references them as text export transient and non PIE duplicate transient
#jira UE-35680
Change 3136636 on 2016/09/22 by Marc.Audy
ParticleSystem and Audio Components now route Activate/Deactivate events to blueprints
Component Activate/Deactivate events now provide component as a property
#jira UE-35191
Change 3136640 on 2016/09/22 by Marc.Audy
Expose bReplicates to blueprint component properties
#jira UE-34433
Change 3136709 on 2016/09/22 by Ori.Cohen
Fix GetBodyInstance returning incorrect bodies when welded kinematics are attached.
#JIRA UE-36234
Change 3136710 on 2016/09/22 by Ori.Cohen
Fix defer actors not working when the physics scene is simulating. We now flush when the scene is not simulating, as well as a lazy flush that goes through the slow path when needed. This allows us to batch multiple components together.
#JIRA UE-35899
Change 3136770 on 2016/09/22 by Marc.Audy
Fix compile error
Change 3136854 on 2016/09/22 by Marc.Audy
Sprite components need to be text export transient
#jira UE-36064
Change 3136926 on 2016/09/22 by Ori.Cohen
Fix ensure when skeletal mesh bodies have no collision.
Change 3137054 on 2016/09/22 by Aaron.McLeran
PR #2628: Fix UAudioComponent SubtitlePriority not being initialised (Contributed by alanedwardes)
Change 3137058 on 2016/09/22 by Aaron.McLeran
PR #2562: ReadCompressedInfo calculates duration for ADPCM audio (Contributed by derekvanvliet)
Change 3137060 on 2016/09/22 by Aaron.McLeran
UE-36336 Fixing A3D for mono/2D sounds
- Making it so if A3D is being loaded but not enabled, we can not have reverb on 2D sounds
- Fixing A3D mono sources from failing after a time
Change 3137066 on 2016/09/22 by Aaron.McLeran
Checking in Ngs2.Build.cs with A3D and USING_A3D set to 0
Change 3137098 on 2016/09/22 by dan.reynolds
AEOverview Update: EQ Map, Reverb Map plus improvements on Main array cleanup process.
Change 3137132 on 2016/09/22 by Aaron.McLeran
PR #2789: Fixed signature of FActiveSound::GetIntParameter (Contributed by Laurie-Hedge)
Change 3137175 on 2016/09/22 by Aaron.McLeran
Fixing compile error with PhysXCollision.cpp from CL 3136710
Change 3137540 on 2016/09/23 by Thomas.Sarkanen
Fixed crash when generating LODs automatically for skeletal meshes
Quadric error reduction does not support skeletal meshes, so fails. Client code assumes that it cannot fail so crashed. This guards against immediatly assuming that LODs are valid after simplification.
#jira UE-36253 - Crash applying LOD changes in Persona
Change 3137720 on 2016/09/23 by Thomas.Sarkanen
Changed asset shortcut bar to display asset names & reworked padding
#jira UE-36347 - Anim asset shortcut bar has difficult to read/cut-off text
Change 3137761 on 2016/09/23 by Martin.Wilson
Fix typo in root motion from everything accumulation code
Change 3137877 on 2016/09/23 by Thomas.Sarkanen
Fixed undo/redo forcing skeletal meshes into t-pose
Re-populated AnimationData in InitAnim for UDebugSkelMeshComponent.
#jira UE-35579 - If you undo an animation change to any animation asset (for single preview), the playback controls will no longer function
Change 3137885 on 2016/09/23 by Benn.Gallagher
Fixed APEX clothing disappearing when time dilation results in a dt of 0. After simulating an actor with 0 APEX will fill positions and normals with NaNs, causing the disappearance. The fix in this case is to not schedule the evaluation task if we're not wanting to do any work. The simulation then freezes as we would expect.
#jira UE-35151
Change 3137888 on 2016/09/23 by Benn.Gallagher
Fixed transition nodes being able to be pasted or duplicated without 2 valid pin links
#jira UE-24860
Change 3137889 on 2016/09/23 by Benn.Gallagher
Fixed transform and widget inconsistencies in IK edit mode
#jira UE-20628
Change 3137890 on 2016/09/23 by Jurre.deBaare
Alembic Cached Geometry Does Not Display in Stand Alone Game
#fix required to force load the GeometryCache module during runtime
#jira UE-36187
Change 3137892 on 2016/09/23 by Jurre.deBaare
Geometry cache playback should work in sequencer
#fix add Interp UProperty tag to specific properties used for playing back the cache, future fix is having same approach as skeletal mesh animation for sequencer (depends on needs, -> skeletal mesh import has better compression anyway)
#jira UE-35447
Change 3137893 on 2016/09/23 by Jurre.deBaare
Alembic Cache Importer option for Hard Edge Angle Threshold does not work for objects with no normals
#fix adhere to the assumed 'standard' no normals in ABC file means completely smooth normals throughout the sequence
#jira UE-35091
Change 3137894 on 2016/09/23 by Jurre.deBaare
Importing an Alembic File While mesh Distance Fields are Enabled Crashes Editor
#fix Needed to save the raw mesh before building the mesh to ensure a LOD resource was created
#misc added a new check + message in case this occurs again
#jira UE-36059
Change 3137938 on 2016/09/23 by Jurre.deBaare
Alembic Importing with Incorrect UV's
#fix adding option for flipping UVs on import
#jira UE-36190
Alembic import axis not aligned correctly
#fix also added option to specify scale and rotation to be applied during import (with preset for Maya and Max)
#jira UE-35510
Change 3137949 on 2016/09/23 by Jurre.deBaare
Frame range importing causes confusion during Alembic importing
#fix this required storing information per Alembic object at which frame index it actual has stored frames, using this data we can determine which frames are empty, and at which frame there is data. This allows us to skip empty frames if we want to import data-only frames, or to import all frames in the sequence including empty (pre-roll) frames.
#misc changed settings UI listview layout (extra columns and resized old ones)
#jira UE-35498
Change 3137994 on 2016/09/23 by Martin.Wilson
Fix for creating an empty state when dragging a montage into a state machine graph
#jira UE-33371
Change 3138103 on 2016/09/23 by Aaron.McLeran
UE-36312 Fixing sound node distance cross fade for case of looping sounds
Change 3138104 on 2016/09/23 by Aaron.McLeran
UE-35392 Copy pasting local node into separate project crashes the engine
Change 3138224 on 2016/09/23 by Aaron.McLeran
UE-36312 Fixing sound node distance cross fade for case of looping sounds
- Adding a check for wave instance count to account for virtualized sounds (one-shots)
Change 3138666 on 2016/09/23 by Ben.Zeigler
#UEFW-204 Add more comprehensive gameplay tag tests
Fix issue with HasTag(Tag, IncludeParent, IncludeParent) revealed by tests, this was not returning true correctly in some cases. This use case is weird and will be deprecated soon
Change 3138779 on 2016/09/23 by Marc.Audy
Get rid of pointless casts
Change 3138782 on 2016/09/23 by Marc.Audy
remove some GWorlds
Change 3139701 on 2016/09/26 by Jurre.deBaare
Assert failed on GemetryCache for PS4 package
#fix add GeometryCache reference in engine build.cs and fix the serialization of geometry cache files
#jira UE-36392
Change 3139704 on 2016/09/26 by Jurre.deBaare
Fix for -1 begin frame
#fix do the max as an signed int, to make sure we don't wrap around
Change 3139748 on 2016/09/26 by Benn.Gallagher
PR #2784: Make sure that SceneScratchBufferSize is a multiple of 16K as requested by PhysX (Contributed by DenizPiri)
Moved the definition of the boundary to a FPhysScene class static
Changed comments on original user settings property to communicate the fact that the value is now rounded to the next 16K boundary
#jira UE-35736
Change 3139903 on 2016/09/26 by Benn.Gallagher
Fixed exposing subinstance pins stomping over class defaults and setting to uninitialized values
#jira UE-34366
Change 3140409 on 2016/09/26 by Lukasz.Furman
fixed uninitialized configs of gameplay debugger
copy of CL# 3140399
Change 3140516 on 2016/09/26 by dan.reynolds
AEOverview Map Update - Ambient Zone + Focus Test
Change 3140526 on 2016/09/26 by Jon.Nabozny
#rn Fixed CanJump inconsistencies with previous versions.
Deferred JumpCurrentCount increment until after jump, made bWasJumping a member variable, and updated how
jump count and hold time were compared in CanJump.
#jira UE-35524, UE-35582
Change 3140745 on 2016/09/26 by dan.reynolds
AEOverview Test Map Update + Occlusion Test
Change 3140839 on 2016/09/26 by dan.reynolds
AEOverview - minor updates
Change 3141101 on 2016/09/27 by Thomas.Sarkanen
Preview scene worlds now render correctly
Split "Preview" type into "EditorPreview" (the default) and "GamePreview". Deprecated the old "Preview" world type (but kept its index).
In-game hidden flags now apply to GamePreview, but not EditorPreview worlds.
Deprecated old bHack_Force_UsesGameHiddenFlags_True boolean. GamePReview now serves this purpose.
Fixed up UT cases where this was being used.
FPreviewScenes now use the editor mode by default, but can be set to non-editor if needed (as is the case with the still-experimental UViewport).
Custom depth pass is not enabled for EditorPreview (as before) but is for GamePreview.
Fixed erroneous use of TEnumAsByte for non-uproperty WorldType.
#jira UE-22883 - Using FPreviewScenes in-game for scene captures
Change 3141106 on 2016/09/27 by Thomas.Sarkanen
Column toggling improvements
Column toggle menu now does not close when items are selected.
This requries some Slate changes to how submenus are built to allow for sumbenus to specify whether they close after selection.
Also allowed columns to be hidden by default for specific use cases (like the sequence browser).
#jira UE-35818 - Anim asset browser column picker should stay up
Change 3141131 on 2016/09/27 by Thomas.Sarkanen
Fix CIS warnings
Fallout from preview world changes
Change 3141143 on 2016/09/27 by Jurre.deBaare
Fix for CIS errors
Change 3141235 on 2016/09/27 by Thomas.Sarkanen
Fix offset of Persona floor mesh when auto-alignment is enabled
When auto alignment was disabled, the offset wasnt getting taken into account.
#jira UE-35544 - In Persona, Floor Height Offset does nothing with Auto Align Floor to Mesh disabled
Change 3141327 on 2016/09/27 by Marc.Audy
Ensure that the client side AttachChildren array remains accurate
#jira UE-26025
Change 3141474 on 2016/09/27 by mason.seay
Updating test map name and moving PlayerStart
Change 3141501 on 2016/09/27 by Benn.Gallagher
Loading time improvements for destructibles from Nvidia
Updated to use new framework custom version instead of global object version
Fixed usage of TArray to enable correct loading and saving of the cached data.
#jira UE-29680
Change 3141889 on 2016/09/27 by Marc.Audy
Fix DestructibleMesh when WITH_APEX is 0
#jira UE-36484
Change 3142034 on 2016/09/27 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3141971
Change 3142131 on 2016/09/27 by Ori.Cohen
Make sure we return eTouch to physx during an overlap query. Fixes bad behavior when multiple objects blocked in an overlap query.
#JIRA UE-36381
Change 3142154 on 2016/09/27 by Ori.Cohen
Fix build, ModuleCachedData instead of NxApexModuleCachedData
Change 3142159 on 2016/09/27 by mason.seay
Blueprint for testing Child Actor Templates
Change 3142255 on 2016/09/27 by Jon.Nabozny
Fix crashes in QAMeshMerge component by making it a UObject, exposing it's method statically, and taking QASkeletalMeshMergeParams as an argument.
#jira UE-35199, UE-35197, UE-35201
Change 3142717 on 2016/09/27 by dan.reynolds
AEOverview Update + Sound Class Test
Change 3142764 on 2016/09/27 by Marc.Audy
Fix Ocean deprecation warnings
Change 3142962 on 2016/09/28 by Thomas.Sarkanen
Fixed bounds calculations for local camera animations
Correctly calculated bounds as local to the initial transform in the track.
Implemented suggested fixes from UDN user chhaddon (The Coalition).
#jira UE-29594 - CameraAnim bounds are incorrect when bRelativeToInitialTransform == true
Change 3143007 on 2016/09/28 by Martin.Wilson
Added virtual bones to USkeleton
API Breaking change:
-Added USkeleton pointer to RemoveBonesByName
-FReferenceSkeleton::UpdateRefPoseTransform & FReferenceSkeleton::Add made private. Must use FReferenceSkeletonModifier instead
#jira UEFW-81
Change 3143040 on 2016/09/28 by James.Golding
Strip DrawDebug.. functions from Shipping and Test builds, controlled by new define ENABLE_DRAW_DEBUG
Fix up game projects to compile in Shipping/Test after this change
PR #2757: (Contributed by projectgheist)
#jira UE-35488
Change 3143046 on 2016/09/28 by James.Golding
Fix OrionEnvironmentPerfTest.cpp compiling in Shipping (optimizations were not being re-enabled at end of file)
Change 3143047 on 2016/09/28 by James.Golding
PR #2731: Capsule primitive drawing fix (Contributed by kamrann)
#jira UE-35142
Change 3143050 on 2016/09/28 by Martin.Wilson
Update DDC key as some animation have stale data
Change 3143088 on 2016/09/28 by Martin.Wilson
CIS Fixes for Ocean after FReferenceSkeleton changes
Change 3143090 on 2016/09/28 by Benn.Gallagher
Fixed split pins in animation blueprints losing their pin links on editor restart. The anim nodes had opted out of the Super version of reconstruct, but that's where split pin restoration was added so we were skipping it.
#jira UE-36482
Change 3143091 on 2016/09/28 by Thomas.Sarkanen
Fix play/pause keyboard shortcut toggle in Persona based editors
Correctly handled widget mode switching in the skeleton selection edit mode (previously it was manually handling this rather than hooking into the correct level viewport callbacks).
Added the ability for FEdModes to specify whether they can use a widget mode.
Added a common set of commands that all Persona-based editors can opt into (only contains TogglePlay for now).
#jira UE-35163 - Cannot use Play/Pause shortcut in Persona if viewport is focused
Change 3143100 on 2016/09/28 by James.Golding
UE-32275 Fix Anim Curve entries losing Auto state when hidden/reshown
Change 3143107 on 2016/09/28 by Martin.Wilson
Add check to IsRunningParallelEvaluation to verify that the skeletal mesh component in question still references us
#jira UE-34431
Change 3143125 on 2016/09/28 by Jurre.deBaare
PR #2749: Fix blend space triangulation (Contributed by tmiv)
Change 3143225 on 2016/09/28 by Jurre.deBaare
Mesh/material merging basic test files
Change 3143235 on 2016/09/28 by Martin.Wilson
Fix issue where montage wrong section was updated with changes from details panel when clicking on a new section
#jira UE-35929
Change 3143312 on 2016/09/28 by Marc.Audy
Don't globally reregister components, globally recreate render state instead when force deleting assets
Fixes crash force deleting a blueprint with a child actor component in it from the content browser
Change 3143340 on 2016/09/28 by Mieszko.Zielinski
Improved consistency of loudness usage in AISense_Hearing #UE4
Change 3143359 on 2016/09/28 by Marc.Audy
Fix spelling error in comment
Change 3143372 on 2016/09/28 by Jurre.deBaare
HLOD meshes are causing degenerate triangles
#fix Setting flag to ignore degenerate triangles when building the meshes vertex/index buffers
#jira UE-34336
Change 3143420 on 2016/09/28 by Mieszko.Zielinski
Fix to BlackboardData initialization's dependency on parent asset's initialization #UE4
Change 3143421 on 2016/09/28 by Martin.Wilson
Allow reading on animation sequence length in blueprints
#jira UE-34168
Change 3143455 on 2016/09/28 by James.Golding
Add 'noop' versions of DrawDebug function, so you will not get compile errors by default for calling them in Shipping/Test builds.
Added optional SHIPPING_DRAW_DEBUG_ERROR define, which will give compile errors in Shipping/Test if still calling DrawDebug functions
Change 3143518 on 2016/09/28 by Jurre.deBaare
Meshes with no UV Coordinates will break the UVs of other meshes contained in the same HLOD if they share a material
#fix calculate UV bounds and check whether they occupy any space (if not do not use them for baking out the material)
#misc set texture sampling for HLOD proxy base material to clamp
#jira UE-35221
Change 3143542 on 2016/09/28 by James.Golding
Change SHIPPING_DRAW_DEBUG_ERROR define from ifdef to if
Fix comment
Enable by default for FN
Change 3143543 on 2016/09/28 by Benn.Gallagher
Changed branch + early return into an ensure during FPxQueryFilterCallback::preFilter. We were checking for invalid shapes in preFilter but that shouldn't happen. More likely to get some information as an ensure instead of earlying out on the funciton.
Change 3143556 on 2016/09/28 by Aaron.McLeran
UE-36540 Editor Preferences 'Enable Sound' option causes Real Time Audio to Stop Working after PIE
Change 3143566 on 2016/09/28 by Benn.Gallagher
Readded early out alongside new ensure for catching bad preFilter shapes
Change 3143568 on 2016/09/28 by Marc.Audy
Fix deprecation warnings in UT
Change 3143572 on 2016/09/28 by Jurre.deBaare
More test content for mesh/material merging
Change 3143581 on 2016/09/28 by Jurre.deBaare
More content :D
Change 3143585 on 2016/09/28 by Jurre.deBaare
Geometry cache cleaning
#misc fix for missing materials, not serialized (facepalm) as they were added later on (required custom version bump)
#misc cleaning out unecessary code
Change 3143594 on 2016/09/28 by Marc.Audy
Creating a child actor component by dragging an actor blueprint in to another blueprint now properly creates the template
#jira UE-36511
Change 3143658 on 2016/09/28 by Marc.Audy
RootComponent can be null by the time we hit PostUnregisterAllComponents so need to protect against the dereference
#jira UE-36553
Change 3143776 on 2016/09/28 by Marc.Audy
Properly reinstance child actor templates when using the fast reinstancing path
#jira UE-36516
Change 3143896 on 2016/09/28 by Ori.Cohen
Remove UPROPERTY on aggregate threshold which is always read from the physics settings.
Change 3144022 on 2016/09/28 by Ben.Zeigler
Move AIMoveTo node from BlueprintGraph to AIGraph and remove BlueprintGraph->AIModule dependency in build system
Change 3144252 on 2016/09/28 by mason.seay
More blueprints for child actor template testing
Change 3144262 on 2016/09/28 by Mason.Seay
Deleting assets
Change 3144283 on 2016/09/28 by dan.reynolds
AEOverview update + Sound Priority Test
Change 3144411 on 2016/09/28 by dan.reynolds
AEOverview end of day update and tweaks
Change 3144679 on 2016/09/29 by Benn.Gallagher
Changed skeletal bounds calculation to not consider clothing assets that aren't simulating in the current LOD. In this case we're not rendering the clothing, we're only rendering the skeletal geometry for that section in that LOD which isn't bound to cloth.
Change 3144856 on 2016/09/29 by Jurre.deBaare
HLOD Outliner scrolls back to the top when generating proxy meshes
#fix OnLevelActorsAdded was getting called for actors in the thumbnail worlds, which forced a refresh on the listview
#jira UE-30384
Change 3144864 on 2016/09/29 by Thomas.Sarkanen
Preview mesh fixes
Animation preview meshes are now respected (and saved). Mesh is displayed as empty if none is set (but a default is chosen).
Skeleton preview meshes are now shown as empty if none is set (but a default is chosen).
#jira UE-36582 - Cannot set preview mesh per-animation
Change 3144865 on 2016/09/29 by Jurre.deBaare
More test content
Change 3144885 on 2016/09/29 by James.Golding
UE-35307 Move 'invalid scale' warning to Message Log to be more visible in editor
Change scale clamping in UpdateBodyScale to catch cases like (1,0,1)
Change 3144903 on 2016/09/29 by Thomas.Sarkanen
Deprecating StaticMesh in UStaticMeshComponent
Added GetStaticMesh to access the value as read-only.
SetStaticMesh is now called in all locations that used to call "StaticMesh =".
Lots of fixups.
#jira UE-24859 - Deprecate public access to StaticMesh property in UStaticMeshComponent
Change 3145020 on 2016/09/29 by Thomas.Sarkanen
Fix bounds calculations that include bones to respect LOD (and other requried bones)
Sometimes bones would not be updated if we LOD switched, extending the bounds.
#jira UE-36525 - UDebugSkelMeshComponent::CalcBounds should filter by LOD
Change 3145041 on 2016/09/29 by Jurre.deBaare
Setting the Target Lightmap UV Channel to an incorrect value leads to inconsistent results
#fix removed target light map channel, we now determine according to the UV channels which are unused in the final mesh
#misc ignore the source lightmap uv channels to reduce data
#jira UE-36595
Change 3145219 on 2016/09/29 by Benn.Gallagher
Fixed clothing actors not casting shadows in editor, after the material editing change the copy of the shadow flag was missed from the clothing association code, which runs on again on older clothing assets to use the new render data skinning. Also added some fix up for assets that have be saved in the mean time.
#jira UE-36552
Change 3145222 on 2016/09/29 by Jurre.deBaare
Exporting Alembic Skeletal mesh from UE4 to FBX causes a crash
#fix on import set _all_ bone influence to 0
#jira UE-36602
Change 3145267 on 2016/09/29 by Ori.Cohen
Move OnConstraintBreak delegate so that it fires outside of fetchResults. Fixes crash from user doing unsafe things during fetchResults.
#JIRA UE-36483
Change 3145306 on 2016/09/29 by Jon.Nabozny
Fixed PhAT so multiple constraints can be selected and edited properly at the same time.
#JIRA: UE-31493
Change 3145342 on 2016/09/29 by Marc.Audy
Do not update cull distance volumes whenever any property changes
* Any movement or property change of a cull distance volume still does a global update
* Any movement of a component belong to any other Actor updates only the components of that Actor
* Any property change of a primitive component only updates that component
#jira UE-36399
Change 3145958 on 2016/09/29 by Marc.Audy
In game worlds don't auto activate components until the actor is ready to process them
#jira UE-35189
Change 3146110 on 2016/09/29 by dan.reynolds
AEOverview update + Soundwave Procedural Test Map
Change 3146375 on 2016/09/30 by Benn.Gallagher
Fixed crash saving newly created destructible mesh after material refactor.
#jira UE-36619
Change 3146378 on 2016/09/30 by James.Golding
UE-35908 Line trace against a BodyInstance now returns closest hit for trimesh (was any hit before)
Also add stat for FBodyInstance::LineTrace
Change 3146379 on 2016/09/30 by James.Golding
Add test assets for creating procmesh collision in non-editor builds
Change 3146386 on 2016/09/30 by Thomas.Sarkanen
Fixed ensures (and functionality) of 'show uncompressed animation' option in Persona viewports
Made sure that PreEvaluateAnimation is called for th einstance in use, rather than only the preview instance.
This unearthed another issuye where each of the calls to GenSpaceBAses was causing the animation to run faster. Fixed this by resetting the update flag in the update context after it is used.
#jira UE-36251 - Ensures showing uncompressed animations in anim blueprints
Change 3146464 on 2016/09/30 by Thomas.Sarkanen
Fix layered blend per bone odd/even connection counts alternately working/not working
Older hacky fix for multi-property to array copies flip-flipped between using fast path and not, when it really should have disabled fast path after the first array pin. Now it disables fast path based on whether this is a new handler or not, rather than looking at the SimpleCopyPropertyName.
#jira UE-35648 - Layered Blend Per Bone doesn't work correctly with 3+ inputs
Change 3146652 on 2016/09/30 by Benn.Gallagher
Fixed subinstance properties appearing in the caller's details panel as oddly named properties.
#jira UE-34141
Change 3146673 on 2016/09/30 by Martin.Wilson
Make RawAnimationData (and associated anim sequence data) private
#jira ue-25869
Change 3146680 on 2016/09/30 by Benn.Gallagher
Fixed errant asterisks in tooltips for source and target bone on rotation multiplier controller node
#jira UE-29847
Change 3146681 on 2016/09/30 by Benn.Gallagher
Fixed incorrect tooltip on left hand IK bone in hand ik retargetting node
#jira UE-30885
Change 3146711 on 2016/09/30 by Jon.Nabozny
Fix PhAT SnapConstraintToBone.
#jira UE-31491
Change 3146717 on 2016/09/30 by Danny.Bouimad
Adding Jurres really useful merge actor test assets to somewhere QA can get em.
Change 3146738 on 2016/09/30 by Martin.Wilson
Fix pose blending for on non-additive pose blending + remove normalising of weights for weights less than 1
#tests Editor tests with mambo pose asset
#jira UE-36189
Change 3146750 on 2016/09/30 by Jurre.deBaare
Material baking issue
#misc Removed the renderer initialization which causes issue the first time you would render out a material (gradient from top left to bottom right over the texture)
#misc Replaced incorrect masks with _way_ better approach thanks to Martin
Change 3146755 on 2016/09/30 by Jurre.deBaare
Need better progress bar for HLOD
#fix replaced the progress updates with new more 'correct' ones according to the actual workload and fixed up the Simplygon progress callback
#jira UE-34334
Change 3147085 on 2016/09/30 by Marc.Audy
PR #2815: GetNextViewablePlayer now checking and returning correct PlayerState. (Contributed by joshkay)
#jira UE-36632
Change 3147224 on 2016/09/30 by Martin.Wilson
CIS Fix
Change 3147280 on 2016/09/30 by Marc.Audy
Mouse smoothing should use application frame rate, not the dilated game frame rate
#jira UE-31040
Change 3147446 on 2016/09/30 by Aaron.McLeran
UE-36682 SoundCue Delay Not Consuming Input StartTime Correctly
Change 3147693 on 2016/09/30 by Ben.Zeigler
#jira UE-36657
If a player has an existing Pawn during RestartPlayer, use that pawn's rotation instead of the start spot, because we were already keeping the pawn's location
Change 3147697 on 2016/09/30 by Jon.Nabozny
Add rotation parameter to FBodyInstance::Sweep and FBodyInstance::InternalSweepPhysX
#jira UE-30486
Change 3147761 on 2016/09/30 by Jon.Nabozny
Fix AUTRepulsorBubble UPrimitiveComponent::SweepComponent usage.
Change 3148533 on 2016/10/03 by Thomas.Sarkanen
Fix new deprecation warnings introduced by the pull from main
Change 3148567 on 2016/10/03 by Marc.Audy
Fix crash when exiting PIE while a panoramic screenshot is being taken
Make stereo panorama tick with the world it is operating on
#jira UE-36492
Change 3148571 on 2016/10/03 by Marc.Audy
Allow modification of components that are EditAnywhere but don't exist in the CDO
#jira UE-36694
Change 3148607 on 2016/10/03 by Martin.Wilson
Properly end notify states when we clear the anim instance on a skeletal mesh.
#jira UE-32488
Change 3148711 on 2016/10/03 by Martin.Wilson
Fix type in virtual bone tooltip
#jira UE-36703
Change 3148746 on 2016/10/03 by Benn.Gallagher
Fixed a few cases where post process and sub instance anim calls weren't being made correctly.
#jira UE-36529
Change 3148807 on 2016/10/03 by Martin.Wilson
Fix mismatch skeleton error when undoing virtual bone changes
#jira UE-36705
Change 3148812 on 2016/10/03 by Martin.Wilson
Add undo support to removing virtual bones
#jira UE-36706
Change 3148975 on 2016/10/03 by Jurre.deBaare
Issue with combining meshes both with/without normal maps
#fix make sure we always output atleast the default normal value when baking out materials, this to ensure we output non-black values for meshes without normal maps (this would cause the normal to be incorrect)
#misc fixed issue in function to set texture rectangle to a single colour
#misc spotted comparison error
Change 3148976 on 2016/10/03 by Ori.Cohen
Make sure that shape queries that we pass into physx are never size 0. Fixes some NaNs
#JIRA UE-36639
Change 3148991 on 2016/10/03 by Jurre.deBaare
Changing LOD materials on Merged Actors Crashes Editor
#fix take into account LOD that is using the material when remapping (removing duplicate) materials
#jira UE-35883
Change 3148997 on 2016/10/03 by Jurre.deBaare
Make sure we remove matrix samples that fall outside of the import range and remap those that are in range
Change 3149002 on 2016/10/03 by Jurre.deBaare
Issues with importing Alembic caches using matrix transformations
#fix Apply conversion matrix to imported matrix samples to make them match the DCC package they were exported from
Change 3149030 on 2016/10/03 by Martin.Wilson
Dont show save warning on animations when we have curve data
#jira UE-34145
Change 3149115 on 2016/10/03 by Mieszko.Zielinski
Made PathfollowingComponent distinct between patrial and full paths in terms of acceptance radius used, when trying to determin if pathing agent is at goal location #UE4
#jira UE-35153
Change 3149186 on 2016/10/03 by Ben.Zeigler
#UE-36722 Fix failure to spawn when trying to spawn 4 capsules in the exact same location
There's no "Correct" direction to move out of a penetrating capsule, but old PhysX appeared to be consistent. New PhysX is not, so now we save and restore the adjustment instead of letting previous iterations modify it.
This code is weird but this solution is better than the old version and handles inconsistent results
Change 3149235 on 2016/10/03 by Martin.Wilson
Change inline curve name editing to only change the name of that specific curve, instead of renaming the smart name itself.
#jira UE-20005
Change 3149245 on 2016/10/03 by Marc.Audy
Remove duplicate entries from AttachChildren caused by lack of atomic cross-object updates.
Change 3149397 on 2016/10/03 by Ori.Cohen
Fix collision profile writing out response values to channels that don't exist.
#JIRA UE-36359
Change 3149679 on 2016/10/03 by Zak.Middleton
#ue4 - Don't mark CharacterMovementComponent::bUseControllerDesiredRotation as an advanced property. Consolidate rotation settings (RotationRate, bUseControllerDesiredRotation, bOrientRotationToMovement) in a new "Rotation Settings" category.
Change 3149929 on 2016/10/04 by Jurre.deBaare
Fix for CIS errors
#fix Mac didn't like undefined struct
Change 3149977 on 2016/10/04 by danny.bouimad
Massive update to Merge Actor test files
Change 3150014 on 2016/10/04 by James.Golding
UE-36686 Fix crash when slicing and not creating other section
Change 3150016 on 2016/10/04 by James.Golding
UE-35335 MergeActors now converts box collision to convex, so collision scales correctly after merging
Change 3150019 on 2016/10/04 by James.Golding
UE-36737 Fix LineTraceComponent not returning face index
Change 3150020 on 2016/10/04 by James.Golding
UE-36672 Export PhysicsContstraintComponent class so it can be subclassed outside Engine module
Change 3150027 on 2016/10/04 by Ben.Marsh
Add PhysX build option into Dev-Framework.
Change 3150042 on 2016/10/04 by Benn.Gallagher
Fixed clothing example 1.3 collision glitches
Change 3150172 on 2016/10/04 by Benn.Gallagher
Made Skeletal Mesh LOD reimports clear any existing simplification flag so we don't show "generated" next to LOD entries for them.
#jira UE-36589
Change 3150319 on 2016/10/04 by Ori.Cohen
Go back to only deferring body creation per component. This can now use the slow path when needed. Can't support deferring of multiple components without changing locking API so we'll do that in the future.
#JIRA UE-36535, UE-36504
Change 3150355 on 2016/10/04 by Zak.Middleton
#ue4 - Change checkSlow() to check() in GetDefaultObject<> because this is potentially an unsafe static cast.
Change 3150370 on 2016/10/04 by Ori.Cohen
Fix deferred actors not getting flushed.
Change 3150386 on 2016/10/04 by Martin.Wilson
Fix additive animation check failing in cooked builds when using virtual bones
#jira UE-36743
Change 3150424 on 2016/10/04 by Ori.Cohen
Exclude kinematic actors from active transforms generation.
Change 3150613 on 2016/10/04 by Zak.Middleton
#ue4 - Fix bad GetDefaultObject<> in AbilitySystemGlobals. Turned up since changing checkSlow() to check() in GetDefaultObject.
(Mirror CL 3138304 in Orion-DevGeneral)
#jira UE-36810
#tests compiled
Change 3150679 on 2016/10/04 by Ben.Zeigler
Crash fix with no async scene
Change 3150765 on 2016/10/04 by Ben.Zeigler
Deprecate UStructProperty::ExportTextItem_Static and ImportItem_Static, and add ExportText and ImportText directly to UScriptStruct
Add bAllowNativeOverride to specify rather to call the native override. For unclear reasons the static export skipped the native override while the static import included it
This allows calling the generic ImportText from inside a native ImportTextItem and then doing some post processing
Change 3150796 on 2016/10/04 by Marc.Audy
Fix LOCTEXT warnings related to blueprint class menu options
Change 3150806 on 2016/10/04 by Ben.Zeigler
Fix bad text format in import error message, lead to double error
Change 3150891 on 2016/10/04 by Ben.Zeigler
#jira UE-36170 Fix duplicate GUID spam when async loading levels during PIE by checking the package flag instead of the runtime global
Change 3150914 on 2016/10/04 by Marc.Audy
Don't try to recreate render state if it has already been recreated while the recreate context was active
#jira UE-36590
Change 3151195 on 2016/10/04 by Dan.Reynolds
Updates to QASoundWaveProcedural
QASoundWaveProcedural edited to be a GameplayStatic which spawns an Audio Component Handler as well as a Procedural Sound Wave. Support for envelope shaping (Attack, Sustain, Release) as well as multiple waveforms (Sine, Triangle, Sawtooth, Square). Blueprint API expanded to include separate functions for setting QASoundWaveProcedural settings and Playing.
Change 3151233 on 2016/10/04 by Ben.Zeigler
#jira UE-36836 Fix variable shadowing warnings
Change 3151328 on 2016/10/04 by dan.reynolds
AEOverview Update - Added Sound Wave Procedural test map and added support for mobile (tested on Android) menu selection - Still a WIP
Change 3151461 on 2016/10/05 by Thomas.Sarkanen
Fix localization warnings
#jira UE-36720 - //UE4/Main: Step 'Build Engine Localization' - 2 Warnings
Change 3151546 on 2016/10/05 by Martin.Wilson
Fix pose watch regression due to persona refactor changes.
#jira UE-36851
Change 3151587 on 2016/10/05 by Jurre.deBaare
Updating Simplygon to SDK version 8.0
#misc removed redundant files
#misc fixed landscape culling in merge actor path
#misc added support for volume culling using simplygon
#misc fixed when or not to use mesh data for material baking
#notes
Change: 3137650
Date: 23/09/2016 07:57
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
-Renamed commandline variables for ZipUtils AutomationScript
-Implemented Execute instead of ExecuteBuild
-Updated commandline arguments in SimplygonSwarm
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Private/SimplygonSwarm.cpp#4
//UE4/Dev-Partner-Simplygon/Engine/Source/Programs/AutomationTool/Scripts/ZipUtils.Automation.cs#2
Change: 3137649
Date: 23/09/2016 07:56
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
Moved file hash computation to ImportObject
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Classes/Factories/Factory.h#4
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Private/Factories/Factory.cpp#4
Change: 3137646
Date: 23/09/2016 07:55
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
Fixes CL3099204
EditorPerProjectUserSetting
Removed ConfigRestartRequired attribute from properties where it was not required
MeshUtilities
-Added FProxyFailedDelegate
-Extended IMeshMerging to include FProxyFailed delegate
-Added ProxyGenerationFailed method to FProxyGenerationProcessor class
-Setup FailedDelegate for both MeshMerging and DistributedMeshMerging
SimplygonMeshReduction
-Added check for invalid texture id
-Updated notes and removed commented code that is not required.
-Setup failed delegate
-Fixed issue where image data was never hooked into the texture.
-Fixed issue where texture table was never passed into casters
SimplygonSwarm
-Setup failed delegate
-Fixed RawMesh pointer usage.
-Move helper method into SimplygonSwarmHelpers.h.
-Added SimplygonSwarmHelpers
-Removed redundant constant path to 7-zip
-Removed GetSimplygonDirectory instead using inplace.
-Removed commented code that is currently not required.
-Fixed Typos
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/MeshUtilities/Private/MeshUtilities.cpp#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/MeshUtilities/Public/MeshUtilities.h#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonMeshReduction/Private/SimplygonMeshReduction.cpp#4
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Private/SimplygonSwarm.cpp#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Public/SimplygonSwarmHelpers.h#1
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Classes/Editor/EditorPerProjectUserSettings.h#3
Change: 3099204
Date: 24/08/2016 07:56
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
Simplygon 8.0 Updates
Deprecated support for 7.0 and updated SimplygonSwarm and SimplygonMeshReduction to use 8.0
EditorPerProjectSettings
*SwarmMaxUploadChunkSizeInMB for limiting the max upload size for swarm. Note the Simplygon Grid has a limitation of 2GB
*SwarmNumOfConcurrentJobs for executing number of concurrent jobs
*Fixed issue where SG_MATERIAL_CHANNEL_METALLIC to SG_MATERIAL_CHANNEL_METALNESS (Chage in 8.0 SDK)
SPL, SimplygonSwarm, RESTClient
*Bumped up SPL Version to 8
*Fixed code paths to use ZipUtils UAT script for zipping and unzipping CL3094374
*Removed SPL Templates for version 7.0
*Added conditional logging to REST methods
*Added multi part upload. The RESTClient automatically decided if large files need to be split up before uploading to simplygon grid.
*Updated method to take in texturepath
SimplygonMeshReduction
*Removed minimum version requirement.
*Bumped up minimum version
*Chagned license file name to refelect 8.0 changes
*MaterialBaking related method now take in TextureTable as an extra parameter. This is due to 8.0 move away from old way of setting up materials and using SimplygonShadingNetowrk based appraoch.
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonMeshReduction/Private/SimplygonMeshReduction.cpp#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonMeshReduction/Public/SimplygonTypes.h#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Private/SimplygonRESTClient.cpp#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Private/SimplygonSwarm.cpp#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Public/SimplygonRESTClient.h#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Developer/SimplygonSwarm/Public/SimplygonSwarmPrivatePCH.h#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Classes/Editor/EditorPerProjectUserSettings.h#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Private/Settings/EditorPerProjectUserSettings.cpp#2
Change: 3099200
Date: 24/08/2016 07:48
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
#fix Copy constructor for FMeshReduciton mapped ShadingImportance to SilhouetteImportance
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Runtime/Engine/Classes/Engine/MeshMerging.h#2
Change: 3099199
Date: 24/08/2016 07:47
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
Added Automation Script ZipUtils to zip file and unzip files from SimplygonSwarm.
This will remove any dependency on external zip program and should work across platforms
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Programs/AutomationTool/Scripts/AutomationScripts.Automation.csproj#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Programs/AutomationTool/Scripts/ZipUtils.Automation.cs#1
Change: 3099197
Date: 24/08/2016 07:40
Client: Mustafa.Tungekar_Dev-Partner-Simplygon
User: Mustafa.Tungekar
Status: submitted
Type: restricted
ImportedBy:
Identity:
Description:
*Speed improvements for FBX Scene Importer
*Added a static method to compute Hash.
JobStatus:
Jobs:
Files:
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Classes/Factories/Factory.h#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Private/Factories/Factory.cpp#3
//UE4/Dev-Partner-Simplygon/Engine/Source/Editor/UnrealEd/Private/Fbx/FbxStaticMeshImport.cpp#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Runtime/Engine/Classes/EditorFramework/AssetImportData.h#2
//UE4/Dev-Partner-Simplygon/Engine/Source/Runtime/Engine/Private/EditorFramework/AssetImportData.cpp#2
Change 3151664 on 2016/10/05 by Richard.Hinckley
Fixing ACharacter template for "New C++ Class" feature. Avoiding naming a function parameter the same as an existing class member.
Change 3151729 on 2016/10/05 by Thomas.Sarkanen
Audit of remaining NaN checks
Some checks remain on in shipping (generally those called from blueprint):
- AActor::TeleportTo
- AActor::SetActorRelativeScale3D
#jira UE-30999 - Optimize ⌠ContainsNaN÷ and ⌠ContainsNaNOrInfinite÷, audit those still in shipping/test
Change 3151742 on 2016/10/05 by Ori.Cohen
Make sure that if physical animation component doesn't find a body and bone it doesn't crash.
#JIRA UE-36839
Change 3151756 on 2016/10/05 by Jurre.deBaare
Fixing d3dcompiler_47.dll missing issue
#fix added runtime dependency and dll name to build.cs file
#fix now load the d3dcompiler_47.dll from the Binaries/ThirdParty/Windows folder before loading the simplygon DLL
Change 3151761 on 2016/10/05 by Thomas.Sarkanen
Fix deprecation warning from last integration
Moved Preview to EditorPreview in FEditorWorldManager::OnWorldContextAdd.
#jira UE-36858 - Compile UE4Editor* completed with 1 warning
Change 3151782 on 2016/10/05 by Jurre.deBaare
Simplygon patch up
#misc linker errors popping up from JSONCPP
#misc incorporated emissive material property fix from other shelve
#misc static analysis fix
Change 3151804 on 2016/10/05 by Marc.Audy
Clear need end of frame update when unregistering a component
Change 3151928 on 2016/10/05 by Ori.Cohen
Fix runtime DLLs not including all delay loaded physx dll files.
#JIRA UE-36816
Change 3151977 on 2016/10/05 by Martin.Wilson
Notifies can no longer occupy the same time on the same track.
#jira UE-30658
Change 3151989 on 2016/10/05 by Jon.Nabozny
Fix ArchVis character rotation pitch when looking up/down.
#jira UE-35706
Change 3152083 on 2016/10/05 by Marc.Audy
Ensure that pending kill components get their marked for end of frame state cleared.
Change 3152086 on 2016/10/05 by Ben.Zeigler
#jira UE-36169 Fix it so missing linker errors that point to Blueprint CDOs are skipped, the same way it skips linker errors going to the actual class. Fixes a lot of spurious warnings from deleting components from blueprints or native classes
Clean up the VerifyImport error handling so it also displays in -game and cook, and fix the missing class warning to work properly, previously it would happen 0% in development 100% in debug even if the class was valid
Change 3152093 on 2016/10/05 by Marc.Audy
Change logic for when location cannot be changed for a static component to be independent of has begun play and have to do with whether construction script is running or the level is in the process of loading (mostly for backwards compatibility adjustments in post load).
#jira UE-36146
#jira UE-24647
Change 3152100 on 2016/10/05 by Ben.Zeigler
Remove pragma optmize
Change 3152112 on 2016/10/05 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3152072
Change 3152134 on 2016/10/05 by Jurre.deBaare
Simplygon/Merge actor issues
#fix for emissive output on meshes that do not have emissive properties
#fix for texture binning, not removing invalid split area causing overlapped textures
Change 3152136 on 2016/10/05 by James.Golding
UE-36859 Fix tooltip saying you can click to stop recording
Change 3152169 on 2016/10/05 by James.Golding
UE-31209 UE-30935 : Expose bDeformableMesh and bFastCook options in FTriMeshCollisionData
ProceduralMeshComponent will now cook using 'fast' and 'deformable' options, so updating collision on sections should work correctly
Change ERuntimePhysxCookOptimizationFlags to EPhysXMeshCookFlags and use that to pass options to CookConvex and CookTriMesh
Change 3152202 on 2016/10/05 by Jurre.deBaare
Mac/Linux fix
Change 3152303 on 2016/10/05 by Marc.Audy
Fix deprecation warning post merge from main
Change 3152320 on 2016/10/05 by Martin.Wilson
Fix root motion from everything calculating incorrect root motion when animations haven't been ticking
#jira UE-35364
Change 3152354 on 2016/10/05 by James.Golding
PoseDriver should pass through if no poses activated
Change 3152357 on 2016/10/05 by James.Golding
UE-36844 Remove unused OnAssetModifiedNotifier delegate from PoseAsset, ensure OnPoseListChanged is called when updating PoseAsset from anim.
Change 3152556 on 2016/10/05 by Marc.Audy
Remove autos
Change 3152560 on 2016/10/05 by Marc.Audy
Don't allow child actor references to be dragged from the outliner to a level script
#jira UE-16700
Change 3152568 on 2016/10/05 by Marc.Audy
Don't allow non-networking code to set bRemoteOwned in the actor spawn parameters
Remove deprecated bNoCollisionFail
#jira UE-35928
Change 3152575 on 2016/10/05 by Marc.Audy
Allow construction script to run post move for native classes. Actor can determine whether it should only occur on finish or every call to post edit move
Change 3153101 on 2016/10/06 by Thomas.Sarkanen
Fix crash re-opening the viewport in Persona-based editors
#jira UE-36775 - Editor crashes when re-opening viewport in Persona
Change 3153139 on 2016/10/06 by James.Golding
UE-36908 Remove GetRuntimeOnlyCookOptimizationFlags if cooking is not supported
Change 3153160 on 2016/10/06 by Thomas.Sarkanen
Fix for crash when deleting additive layer track
Code had not been updated to use the new delgate system (was still using reciprocal FPersona ptr).
#jira UE-36740 - Crash when removing or disabling an additive layer track in Persona
Change 3153175 on 2016/10/06 by Benn.Gallagher
Fixed crashes when using subinstances in non-default states. we previously initialized the anim instances in the node initialize, but in states that haven't been hit by an initialize this will happen off the game thread which is not allowed.
#jira UE-36900
Change 3153223 on 2016/10/06 by Thomas.Sarkanen
Fixed crash when opening an asset from the blend space editor
Code was still trying to open 'old' Persona when it was disabled.
Also fix other call sites where this was being done outside of asset type actions.
#jira UE-36766 - Crash attempting to open an asset from Aim Offset graph in Persona
Change 3153324 on 2016/10/06 by Thomas.Sarkanen
Prevented invalid GUIDs from being saved into smart name containers
AddOrFindName now checks to see if existing GUIDs are valid before using them.
AddName now requires a valid GUID to be passed in.
Also added Modify() call to the skeleton when FindOrAddSmartName is called from VerifySmartNameInternal, as without this the skeleton might not get saved.
Also add Laurent's fix for fixing up already-saved invalid GUIDs (CL 3138068).
#jira UE-36367 - It is possible for curves with an invalid GUID to be saved into the USkeleton asset
Change 3153348 on 2016/10/06 by Martin.Wilson
Re add ticking code so all Persona editors viewports tick during drag events (went missing in Persona refactor)
#jira UE-36751
Change 3153426 on 2016/10/06 by Mieszko.Zielinski
Added missing elements of block comments support in BT editor #UE4
Change 3153454 on 2016/10/06 by Benn.Gallagher
Fixed crash using anim debug with subinstances that are preceded by branching nodes.
#jira UE-36935
[CL 3153517 by Ori Cohen in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2839897 on 2016/01/22 by Ori.Cohen
Allow static mesh editor to specify a default collision profile.
#rb Lina.Halper
#UE-2836
Change 2840489 on 2016/01/22 by Ori.Cohen
Fix collision customization so that it respects const editing property
#rb Marc.Audy
Change 2840528 on 2016/01/22 by Ori.Cohen
Fix compile error and actually get value from attribute
Change 2840672 on 2016/01/22 by Zak.Middleton
#ue4 - Include data from USkinnedMeshComponent in USkeletalMeshComponent::GetResourceSize().
#rb Michael.Noland
Change 2841314 on 2016/01/24 by Marc.Audy
Fix depressingly frequent misspellings of 'suppress'
Change 2841323 on 2016/01/24 by Marc.Audy
Reserve worst case memory for TSet Intersect, Union, and Difference to avoid memory allocations during iteration
Ensure that TSet Intersect considers the least number of elements possible
Early out from TSet Contains if Other is larger than this
Clarify comment on TSet Difference
#rb Steve.Robb
Change 2841380 on 2016/01/24 by Aaron.McLeran
UE-25586 Audio assets not correctly reporting resource memory usage
Tested on PC/PS4 and with Editor builds. Memory reporting is working for all cases now.
Change 2841385 on 2016/01/24 by Aaron.McLeran
UE-21210 Adding subtitle priority to USoundWave
Change 2841386 on 2016/01/24 by Marc.Audy
Return null for GameNetDriver if World is null instead of crashing
Change 2841409 on 2016/01/24 by Aaron.McLeran
UE-25514 Removing load for default objects for every sound wave
Change 2841858 on 2016/01/25 by Ori.Cohen
Make sure that PIE face index results are consistent with runtime
#rb Benn.Gallagher
Change 2841977 on 2016/01/25 by Ori.Cohen
Fix object type customization so that it's only enabled when custom is selected. (Accidently broke this in recent change)
Change 2841982 on 2016/01/25 by Marc.Audy
Minor optimization by avoiding recreating FNames repeatedly in constructor
Change 2842169 on 2016/01/25 by Benn.Gallagher
Fixes to animBP compiler and instance to store and double buffer internal machine state weights on the instance. So they can be queried cross-machine without issue.
#rb Lina.Halper
Change 2842390 on 2016/01/25 by Ori.Cohen
Fix in world editing of BodyInstance not working.
No longer serializing Scale3D as this is allways initialized in InitBody.
No longer overwriting MassInKg and renamed to to MassInKgOverride which better reflects what this variable does.
#JIRA UE-25518
#rb Lina.Halper
Change 2843579 on 2016/01/26 by Marc.Audy
Only update replication when it actually changes
Don't check calling SetIsReplicated if the class cannot replicate, instead output an error message
Fix spelling in comment
#rb Ori.Cohen
Change 2843627 on 2016/01/26 by Marc.Audy
Add \\ as a default console key for Italian keyboard layouts
#jira UE-25198
#rb James.Golding
Change 2843628 on 2016/01/26 by Marc.Audy
Don't reconstruct FName on each call to GetHitResultAtScreenPosition
#rb James.Golding
Change 2843671 on 2016/01/26 by Martin.Wilson
Fix incorrect bone transforms being pushed to the renderer during SetSkeletalMesh. This presented as motion blur artifacts in editor
#rb Thomas.Sarkanen
Change 2843768 on 2016/01/26 by Marc.Audy
Inline Get Component functions in TriggerBase
Change 2844003 on 2016/01/26 by Zak.Middleton
#ue4 - Fix FMath::Fmod(X, Y) sometimes returning small negative values for positive X and Y due to float imprecision. Added tests to math tests at startup to check this, and also to better handle results close to Y. Wrap the ensure on Y=0 within a conditional so a breakpoint can be used during debugging (to distinguish between zero and very small input).
#codereview Laurent.Delayen
Change 2844005 on 2016/01/26 by Zak.Middleton
#ue4 - Convert uses of fmod() and fmodf() to use FMath::Fmod() instead.
Also see CL 2844003
[CL 2855709 by Marc Audy in Main branch]