#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]
#rb none
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 4073383 by Patrick.Boutot
[AJA] Set base timecode for AJA TimecodeProvider
Change 4075631 by Patrick.Boutot
Change icon for TimecodeSynchronizer.
Update TimecodeSynchronizer with the new AJA delayed open sources.
Add TimecodeProvider to TimecodeSynchronizer. Can now sync with TimecodeProvider or a master.
Make sure the source are ready before viewing them.
Remove PreRoll command.
Change 4077328 by JeanMichel.Dignard
Fixed SoftObjectPtr/Paths becoming invalid when saving a new world since it's being moved from /Temp/Untitled to its own package.
#jira UEENT-1423
Change 4077338 by Rex.Hill
USD plugin updated to v8.4 with python support
Change 4079063 by Rex.Hill
USD sdk recompiled as vs2015 targeting older version of CRT, also dependency added for PythonScriptPlugin
Change 4079911 by Rex.Hill
USD pyd files recompiled
Change 4080058 by Rex.Hill
Fix usd plugin loading, added missing libtrace.dll
Change 4080376 by Matt.Hoffman
Improvements to Sequence Recorder's public API to expose more functionality for third parties.
Change 4084984 by Matt.Hoffman
Sequence Recorder can now set a global time dilation when recording starts, optionally ignoring the dilation when recording keys. This is useful for recording objects in your scene that move too fast to track with a camera but still ending up with the same length recording in the end.
#jira UESP-670
Change 4086688 by Matt.Hoffman
Exposes getting and setting keys from sequencer sections via the scripting layer. Examples for how to work with Python and key data can be found in /Plugins/MovieScene/SequencerScripting/Content/Python in the form of "sequencer_examples.py" and "sequencer_key_examples.py". Documentation on how to use these examples is included in the python file.
#jira UESP-547
Change 4088904 by Max.Chen
Sequence Recorder: Set actor tags as unique
Change 4089176 by Max.Chen
Sequence Recorder: Add option to record to the target level sequence playback range length.
Change 4089180 by Max.Chen
Sequence Recorder: Add protection agains null movie scene sections
Change 4089205 by Max.Chen
Sequence Recorder: Save recorded audio files if auto save is on.
#jira UESP-660
Change 4089206 by Max.Chen
Sequencer: When importing fbx, if a camera is created, force mapping to be by name matching only so that other nodes in the fbx file do not get mapped onto the newly created camera.
#jira UE-59347
Change 4089214 by Max.Chen
Sequence Recorder: Add support for looping/rolling takes
#jira UESP-658
Change 4089280 by Max.Chen
Sequence Recorder: Added support to specify properties from actor classes (camera rig rail - current position on rail)
Change 4093824 by Andrew.Rodham
Editor: Added option to class pickers to force use of class Display Names
Change 4093826 by Andrew.Rodham
Removed implicit gamma to linear conversion from EXR writer
- This was only implemented for exr data that was supplied as 8 bits per channel (ie. uint8), but there is no way of communicating with the Image Writer API to tell it whether you want it to do that conversion. This code is too low level to be making assumptions about what color-space the data is in.
- This ensures that R8G8B8A8 render targets exported as EXR are exported as-is without any modification
#jira UESP-545
Change 4093830 by Andrew.Rodham
Fixed shutdown crash when destroying a media player that was still playing
Change 4093831 by Andrew.Rodham
Fixed exception handling in png image wrapper
Change 4093833 by Andrew.Rodham
Slate: Fixed not being able to set a hyperlink on notifications with unbound attributes that had explicit values set
Change 4093841 by Andrew.Rodham
Added a utility struct for dealing with editor actor layers from within Blueprints
Change 4093867 by Andrew.Rodham
Sequencer: Added the ability to implement custom capture protocols for movie scene captures
- Converted capture protocol settings and instances to be single UObjects. This unifies the two concepts, and allows for Blueprint implementations.
- Removed capture protocol registry since it is no longer required.
- Removed FCaptureProtocolID in favor of class discovery at runtime.
- Added new module "ImageWriteQueue", responsible for asynchronously managing a queue of image file write operations.
- Added new capture protocol for capturing final pixels to EXR (including burn-ins)
- Added a new BP function, ExportToDisk, accessible on all UTexture properties for writing texture and render target data to image files
- New global BP nodes for querying movie capture status: IsCaptureInProgress, FindCaptureProtocol
- Removed Flush On Draw functionality from viewports and frame grabber since it is unnecessary.
#jira UESP-545
Change 4094239 by Rex.Hill
Export sequence to usd
#jira UESP-563
Change 4094393 by Andrew.Rodham
Renamed references of 'BufferName' to 'StreamName' for user defined capture protocols
Change 4094622 by Patrick.Boutot
Add MediaFrameworkUtilitites plugin.
Add MediaBundle. An asset that create a MediaPlayer, MediaSource, MediaTexture and MaterialInstance.
Add MediaBundleActor. Can auto play a MediaBundle when click & drag in the viewport.
Add the Media category in placement mode.
Add flag on the MediaPlayer that prevent it from closing when PIE is started or closed.
Change 4094673 by Anousack.Kitisa
Created widget to display metadata as list view of tags/values.
#jira UEENT-1296
Change 4094795 by Simon.Therriault
MediaFrameworkUtilities
- Adding default media texture for default media bundle material
- Changed default material to unlit
Change 4094867 by Rex.Hill
Usd sequence exporter camera rotation corrected
Change 4096426 by JeanLuc.Corenthin
- Fixed logic of FLayoutUV::FindCharts to properly extract the list of triangles based on a mesh description.
- Fixed logic in FMeshDescriptionOperations::ConverToRawMesh & FMeshDescriptionOperations::ConvertHardEdgesToSmoothGroup to take in account the fact that the arrays are sparse arrays
- Fixed logic in FQuadricSimplifierMeshReduction::ReduceMeshDescription which wrongly assumed that number of vertex instances equals three times the number of triangles.
- Added early-out in UMeshDescription::ComputePolygonTriangulation when perimeter has 3 vertex indices
- Changed version of static mesh and mesh description
- Fixed issue with mismatching attribute set when generating LOD meshes
#jira UEENT-887, UE-59474, UE-59471
Change 4097101 by Patrick.Boutot
Remove warning in PropertyEditorClass when trying to load the "None" class.
Change 4097443 by Rex.Hill
USD export bake keys
Change 4097468 by Patrick.Boutot
Edit and initialize the timecode provider of the editor.
Change 4097479 by Anousack.Kitisa
Added support for commandlet and unattended script modes to Plugin Warden.
#jira UE-57333
Change 4097578 by Rex.Hill
USD export tweaks
Change 4098257 by Simon.Therriault
GarbageMatteCaptureComponent
- Adding spawned actor tracking to be able to use GarbageMatteActor spawned in editor.
Change 4100072 by Jamie.Dale
Updated wrapped enums to be more consistent with native Python enums
- Wrapped enums now generate values that are instances of the enum type itself, containing a name and value field (like native Python enums).
- Wrapped enums are now strongly typed and do not allow implicit conversion from numbers (explicit casting is available, but throws if the value is unknown).
- Wrapped enum entries may be compared against numbers (even numbers that don't have valid values) via the == and != operators (like IntEnum in Python).
- Wrapped enums may now be iterated (like native Python enums).
- Wrapped enums now return a length based on their number of entries (like native Python enums).
- ScriptName meta-data can now be used with enum entries.
Change 4100255 by Patrick.Boutot
[MediaBundle] Modify the base shader to support "failed texture"
Change 4103838 by Simon.Therriault
MR Garbage Matte Component
- Adding FocalDriver interface to be able to poll focal information from outside (cinecamera). Could be updated to be event driven.
Change 4115616 by Rex.Hill
USD Exporter now exposed to UI
Change 4116333 by Simon.Therriault
MediaBundle
- Updated default media bundle to include lens distortion and chromakeying
- Added possibility to spawn material editor for MediaBundle inner material
- Fix for inner objects flags preventing asset deletion
- Fix for CloseMedia not being called when changing map
Lens Distortion
- Fix for not being able to generate a Identity lens displacement map
Change 4117952 by Rex.Hill
Expose OpenEditorForAssets to python
Change 4118498 by Rex.Hill
Sequencer USD export can now export properties of actors in levels
Change 4118515 by Rex.Hill
Update sequencer export task comment
Change 4118706 by Rex.Hill
Sequencer USD updates
Change 4118968 by Rex.Hill
Sequencer USD export now supports visibility
Change 4119702 by Simon.Therriault
MediaBundle
- Fix crash when changing MediaBundle on Actor multiple times.
- Fix crash when Undoing after placing a MediaBundle and pressing Stop then Undo.
- Fixed bad reference count in MediaBundle when undo/redo of MediaBundle setting changed on MediaBundleActor
- Added PostEditChange after setting MaterialProperty to fix potential propagation.
Change 4120060 by Patrick.Boutot
Fix typo for TimecodeProviderClassName.
Add "Config required restart"
Add a button to reapply the CustomTimeStep or TimecodeProvider
Change 4122062 by Krzysztof.Narkowicz
Fixed movie burnout fixed timestep. Engine didn't use a fixed time step due to a following bug:
1. UAutomatedLevelSequenceCapture::Initialize calls UMovieSceneCapture::Initialize.
2. UMovieSceneCapture::Initialize creates FRealTimeCaptureStrategy and calls CaptureStrategy->OnInitialize().
3. UAutomatedLevelSequenceCapture::Initialize changes CaptureStrategy to FFixedTimeStepCaptureStrategy, but no one calls CaptureStrategy->OnInitialize(); after that and this function is required to set the fixed time step.
4. Result: movies are burned out with variable time step, causing different inconsistencies between frames, settings and HW configurations.
#jira none
Change 4122236 by Anousack.Kitisa
Made the "Import Into Level..." File menu action follow the EditorImport flag of a SceneImportFactory.
#jira UE-57612
#jira UEENT-762
Change 4122588 by Rex.Hill
Sequencer Export USD lights now supported
Change 4122822 by JeanMichel.Dignard
Fix for UV packing FlipX. Don't flip the empty columns at the end since they are always expected to be on the right side. The same was already done for FlipY.
#jira UE-56664
Change 4123009 by JeanMichel.Dignard
Copied fixes from MeshUtilities LayoutUV to MeshDescription LayoutUV
Change 4123517 by JeanLuc.Corenthin
Fixed crash when running cooked game crash with asset imported from datasmith
#jira UE-60173
Change 4124569 by Patrick.Boutot
[AJA]
When the CustomTimeStep & TimecodeProvider signal is lost in the editor (not in PIE), try to re-synchronize every second.
Change 4126421 by Max.Chen
Sequencer: Add the ability to switch the takes of all the selected shots/subsections.
#jira UESP-761
Change 4133010 by Simon.Therriault
MediaBundle
- Made assets in the bundle visible in the content browser (different package per asset) and updated to support duplication correctly
- Quick fix for MaterialDynamicInstance garbage matte parameter not going back to default value when cleared.
- Added looping option on the bundle
Keyer and lens materials
- Renamed some parameter groups to Keyer_XX
Change 4135728 by Rex.Hill
MovieSceneCapture crash fix when iteration on classes defined in python
Change 4135732 by Rex.Hill
Sequencer scripting: expose get playback range, sub sequence get sequence
Change 4135734 by Rex.Hill
USD python code refactored
Change 4136017 by Matt.Hoffman
Fixes FrameNumber nodes tripping an ensure when using them via Blueprints and fixes FrameNumbers & friends not being properly breakable in BP.
#jira UE-60188
Change 4147959 by Patrick.Boutot
Media Output Architecture. Support 8bits & 10bits color. Capture the buffer as is with the correct pixel format and the corredt target size.
Change 4147962 by Patrick.Boutot
Remove AjaMediaViewportOutput && AjaMediaViewportOutputImpl.
Refactor AjaMediaOutput to extend MediaOutput.
Refactor AjaMediaGrameGrabberProtocol to use AjaMediaCapture.
Create AjaMediaCapture.
Change 4148395 by Rex.Hill
USD python code cleanup
Change 4152901 by Rex.Hill
Fix crash when recompiling blueprint or script class that serializes an object reference manually
Change 4152906 by Rex.Hill
USD level import/export exposed to UI
Change 4152956 by Rex.Hill
Rename unreal_usd to usd_unreal to avoid future module name conflicts
Change 4153331 by Rex.Hill
Simplify USD attribute definitions
Change 4155472 by Rex.Hill
USD level import now handles cameras and lights
Change 4155832 by Patrick.Boutot
Fix Packaging for MediaFrameworkUtilities
Fix MediaPlayer that crash on close when the engine is closing.
Change 4156020 by Mike.Zyracki
LIVE LINK Sequencer Recording and Playback
#jira UESP-714
#jira UESP-715
Support for Live Link Recording/Playback with Sequencer.
Basically if we see a MotionController controlled by a LiveLink Subject or a LiveLink Component on a Actor we create a LiveLinkTrack for it that will record raw sequencer data into. We currently do that at the end of recording but will investigate saving it as we record.
For Playback we create a Live Link Subject per recorded track and push up interpolated data per Engine Tick on Evaluate. We need to see if we need to send out raw data but that's complicated due to the fact that sequencer time may not be sequential but random,
Moved FLiveLinkTimeFrame to LiveLinkTypes so we can grab raw data. Added functions to LiveLinkClient/Subject to get raw data so we dont' need to do expensive searches.
Also changed that code so that we can only save the LiveLinkData when specified. We decided to have the sequencer own saving of the live link data so we explicilty turn on saving when we start to record and then turn if off at the end. Without this it's possible to easily run out of memory while LiveLink records.
In order to record LiveLinkComponents under Actors we had to change ActorRecording to record ActorComponents and not jus SceneComponents. Not sure of any drawbacks with this but it seems to work well. Had to make sure we stll keeped attach/parent/child logic when recording.
Change 4158488 by Rex.Hill
USD scene import/export now uses UsdLux lights
Change 4158742 by Rex.Hill
USD: Add test for level export and import
Change 4161645 by Patrick.Boutot
Update MediaRecorder to use the ImageWriteQueue.
Add flag in IImageWriteQueue.Enqueue to prevent block if the queue is full.
Change 4161651 by Patrick.Boutot
Modify MediaCompositing to use an existing MediaPlayer
Change 4161657 by Patrick.Boutot
Extend the SequenceRecorder to support additional object to record from other plugins.
Add SequenceRecorder for MediaPlayer. Will record every frame to disk that the MediaPlayer produce.
Change 4162699 by Rex.Hill
USD export sequence updates
Change 4163138 by Rex.Hill
USD sequence export test added
Change 4163426 by Mike.Zyracki
Fix for Curve Names being kept and AutoSetting Tangents on Live Link Recording
Change 4165714 by Patrick.Boutot
[MediaCapture]
Remove color box that tell the status of the MediaCapture.
Add MediaCapture's name and use an image to represent the status.
Use a ScrollBox around the "preview" output.
Can select any actors.
Only show the selectable camera grid when there is more than one camera.
Change 4166652 by Rex.Hill
Expose SetMobility to scripting
Change 4167292 by Mike.Zyracki
Make sure we call Finalize Evaluation when closing or deleting the Sequencer. This will make sure TearDown is called on sections which fixes issues with LiveLink Sources not getting deleted and probably also issues with MovieScenePlayers not getting released correctly.
Also includes addition to show the SubjectName next to the Sequencer Source in the LiveLinkClient UI.
Change 4170578 by Rex.Hill
PackageTools exposed to scripting
Change 4170619 by Rex.Hill
Fix ReversePolygonFacing crash
Change 4170621 by Rex.Hill
USD mesh import can now be given list of individual meshes
Change 4172495 by Matt.Hoffman
Fixes some flipped logic in Sequencer Media Track that was preventing it from working as expected.
Slightly simplifies the logic on setting up movie data, and ensures that the external movie player has a callback registered so that SeekTo calls will work. Makes it so that you can specify your own sound component with an external media player as a media player can have multiple sound components listening to it. Adds support for flagging the media player to loop to help cue some media sources like EXR to handle loop points better.
#jira None
Change 4173387 by Jon.Nabozny
Bookmark usability and extensibility improvements
Change 4173755 by Rex.Hill
PackageTools namespace deprecation
Change 4181799 by Patrick.Boutot
Fix precesion error when importing a camera switcher in sequencer
#jira UE-61212
Change 4184435 by Patrick.Boutot
Only show the MediaCapture tab spawner in the level editor.
Make sure the Material used to draw the render target is GCed.
Change 4195803 by Patrick.Boutot
Warn user if the AJA CustomTimeStep is used with VSync enabled.
Change 4195866 by Patrick.Boutot
Remove mention of CharBGR10A2 in AJA. The feature is not yet ready.
Change 4196059 by Rex.Hill
Fix linux compile due to a .cpp including BookMarkBase.h instead of BookmarkBase.h
Change 4196380 by Patrick.Boutot
MediaCapture capture the backbuffer when the Viewport don't use an internal texture.
#jira UE-61601
Change 4199378 by Patrick.Boutot
For MediaFramework, add support for 10bits RGB texture
Change 4199380 by Patrick.Boutot
[AJA] Add support for 10bits RGB texture in input
Fix interlaced format that wasn't using the proper Stride value.
Change 4200359 by Jamie.Dale
Renamed some "K2_" prefixed functions for Python
Change 4203016 by Max.Chen
Sequencer: Add movie scene locking/read only.
Fixed a few bugs with locked sections - shouldn't be able to create or move keys on locked sections
#jira UESP-867
Change 4203018 by Max.Chen
Sequencer: Test for movie scene read only before calling modify/transactions.
#jira UESP-867
Change 4203622 by Simon.Therriault
Bringing Aja MediaOutput MediaMode fix from Release 4.20
Change 4204895 by Rex.Hill
Expose several file path functions to scripting
Change 4206747 by Rex.Hill
USD level import and export updates
Change 4206783 by Rex.Hill
USD updates
Change 4207021 by Rex.Hill
USD, fix rotation on level import when there is non-uniform scale
Change 4207414 by Rex.Hill
USD import static mesh material improvements
Change 4209733 by Patrick.Boutot
Change the log time to use the current frame Timecode
#jira UEENT-1107
Change 4209738 by Patrick.Boutot
Option to automatically try to reopen the MediaSource again if an error is detected
Change 4210385 by Max.Chen
Sequencer: Fix CurrentShot LocalTime computation by using sequence time in playback resolution to compute the local shot time.
Also, fixed the burnin asset so that CurrentShotLocalTime is hooked up to ShotFrame instead of MasterTime.
This fixes a bug where the burnin's {ShotFrame} is not reporting the local shot frame number.
#jira UE-61728
Change 4219824 by Patrick.Boutot
Use the correct EditorCondition for property MaxNumAncillaryFrameBuffe
Change 4220706 by Louise.Rasmussen
Sequencer: Syncronizes Sections using Source Timecode Relative to the first Selected Section
#JIRA UESP-826
Change 4220708 by Louise.Rasmussen
Sequencer: Adds SourceTimecode option to the Render Movie Settings Burn In
#JIRA UESP-826
Change 4226970 by Patrick.Boutot
Add a Timecode widget, TimecodeProvider widget and a TimecodeProvider Tab
Change 4227333 by Rex.Hill
USD Sequencer export now supports deltas
Change 4227455 by Matt.Hoffman
Adds support to the Audio Mixer Submix to pause and resume a recording.
#jira UESEQ-77
Change 4230963 by Patrick.Boutot
Make the namespace an import option
Change 4234208 by Jon.Nabozny
Fixed crash when 5 or more LiveLink sources were connected at the same time
Change 4234273 by Jon.Nabozny
Add methods in FApp to get the current Timecode FrameRate.
Change 4237170 by Simon.Therriault
MediaCapture
Fix for MediaCapture panel not working in PIE
Change 4243758 by Andrew.Rodham
It's now possible to resolve pixel data from a render target whose texture resource is still pending creation
Change 4244790 by Matt.Hoffman
This adds experimental support to Sequencer's Render to Movie for exporting audio via rendering a second pass.
This requires the new audio mixer (launch editor with "-audiomixer") and currently supports exporting to .wav. The second pass disables rendering in the Viewport and disables capturing frames during this pass which removes the overhead caused by rendering the scene. Complex scenes still evaluate the sequence which may impact performance in complex situations (such as the Fortnite Launch Trailer).
Current Limitations:
Requires the new audio mixer ("-audiomixer")
The second pass must acheive real time framerates. The audio engine is only built to handle real time situations (due to the high precision needed, gotten via the platform clock) so any drops in engine framerate during the second pass will cause a desync of the audio (as there will be more samples captured than frames of video).
The editor has significant overhead which often prevents achieving consistent real-time rates. Using "Capture in New Process" alleviates this issue, even without closing the Editor.
Audio has been enabled for both image capture and audio capture passes, which means stuttery audio now plays back during image capture. Attempts to alleviate this issue ended up conflicting with some editor code that forces the audio multiplier to 1.0 each Tick(), so audio has to play on both image and audio passes. Forces background audio (otherwise your output audio wav will be blank!) when app is not in focus, though users should leave the app in focus for best performance.
#jira UESEQ-77, UESP-669
Change 4246443 by Simon.Tourangeau
Remove Beta flag from nDisplay plugin
#jira UEENT-1716
Change 4246480 by Simon.Tourangeau
Fix nDisplay plugin icon
#jira UEENT-1715
Change 4246571 by Simon.Tourangeau
Merging Lauren's VR Editor fixes
4085915 Gamma correction fixes for VR Mode Content Browser icons and camera previews
4087955 Adding a third looping option to the Sequencer Radial Menu. Selecting the Looping option now cycles through No Looping > Loop All > Loop Range
4089914 Adding set start/end range buttons to radial menu
4090502 Fixing sequencer looping not being set correctly
4092824 Cameras are now visible in VR Mode - interim implementation until Game Mode works entirely
4095161 Fix for opening a sequence blocking level editor tab drag and drop
4096999 Making a VR Edit show flags mode that is similar to Game Mode but without the Game flag set to true, does hide billboards. Camera hide/show behavior is now correct.
4097286 Placing cameras now only summons the preview panel once you release
4100941 New spawn location for camera preview window (in front and to the side, on whichever side matches your UI hand)
4102732 Hiding VR editor elements from camera preview
4103378 Added camera burnin text on preview windows as well.
4103466 Fixes for camera text
4103779 Fix for the actor previews not unpinning when entering VR mode.
4105722 Adding support for multiple viewport previews in VR mode, and not creating a new viewport interaction if one already exists when getting it.
4106982 Any dockable window can now be placed in the world.
4107298 Fix for crash when closing multiple camera previews
4107426 Fix for crash when connecting node with no texture set
4136343 UI windows docked "to the world" no longer scale with you and stay the size they are docked at.
4136345 Settings for tweaking VR mode movement
4147473 Fix for controllers not showing up
4147734 Sequencer scrubbing will now pause when removing your thumb from a Vive touchpad
4171489 Added external UI panel support to VREditor module. Created an example camera-adjusting UI
4186392 Second fix for sequencer scrubbing on the radial menu
Change 4247984 by Jamie.Dale
Fixed potential memory corruption caused by Python glue code generation
#jira UE-62397
Change 4255471 by Anousack.Kitisa
Added functionalities to add/insert/remove UV channel from a StaticMesh accessible through the StaticMeshEditor and scripting.
#jira UEENT-1592
#jira UEENT-1597
#jira UEENT-1660
Change 4256323 by Anousack.Kitisa
Added Polygon Selection Mode by smoothing group in the MeshEditor.
#jira UEENT-1594
Change 4258012 by Homam.Bahnassi
Extending UVEdit material function to support mirroring. #jira UE-57306
Change 4258231 by Jamie.Dale
Fixed GetHostName failing to convert UTF-8 data correctly
Change 4258579 by Jamie.Dale
Ensure that packages re-created after deleting their only asset are marked as fully loaded
Change 4258652 by Jamie.Dale
Added script exposed method to convert an Unreal relative path to absolute
Change 4259124 by Patrick.Boutot
For MediaBundle, show or hide the failed texture on console.
#jira UE-61672
Change 4259264 by Jamie.Dale
Show an error if trying to use ExecutePythonScript without Python enabled
#jira UE-62318
Change 4259451 by Jamie.Dale
No longer use stale subtitles in dialogue waves
#jira UE-61500
Change 4259511 by Jamie.Dale
Fix crash when passing None as the class for find/load_asset
#jira UE-62130
Change 4259542 by Patrick.Boutot
Can select the TimecodeSynchronizer from the Toolbar menu. Add option to show it in the toolbar. Can be defaulted by user/machine.
Change 4259582 by Patrick.Boutot
Hide Edit & Paste from PropertyMenuAssetPicker
Change 4260760 by Max.Chen
Sequencer: Fix dereferencing null pointer - CameraNode
Change 4260895 by Jamie.Dale
Changing localization target settings now updates the gather INI files immediately
Change 4262166 by Patrick.Boutot
Add support for MediaSourceProxy and MediaOutputProxy.
Change 4262535 by Andrew.Rodham
Sequencer: Added a method for user-defined capture protocols to resolve a buffer and pass it directly to a bound delegate handler
Originating source CL#4261391
Change 4262669 by Patrick.Boutot
Add MediaProfile. It let the user select their media sources and media outputs by machine by user.
Change 4264577 by Patrick.Boutot
Change the type of FMediaFrameworkCaptureCameraViewportCameraOutputInfo.LockedCameraActors to LazyObject to enable cross level reference.
#jira UE-62438
Include dependence to settings
Change 4265750 by JeanLuc.Corenthin
Fix array's size issues with MeshDescription utility functions
#jira UEENT-1574
Change 4268181 by Patrick.Boutot
Mark LockedCameraActors as deprecated.
[CL 4279869 by JeanMichel Dignard in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3512118 by Marc.Olano
Fix rare Sobol shader data problem. Mismatch with CPU code after a large number of points
Resubmit of portion of //UE4/Dev-Rendering@3509854 that was rolled back to avoid massive shader recompiles during integration testing
Change 3512129 by Benjamin.Hyder
Fixing up content in TM-SobolNoise
Change 3512151 by Rolando.Caloca
DR - Fixed some layouts that were general
- Added some extra dump information
Change 3512160 by Benjamin.Hyder
Still Fixing TM-Sobol
Change 3512180 by Marc.Olano
PCSS for spotlights. Like directional PCSS this is experimental, activated by r.Shadow.FilterMethod.
Change 3512261 by Michael.Lentine
Move Subsurface to shared properties.
Previously the same code could be executed multiple times without being optimized out if multiple inputs used the same subsurface output.
#jira UE-44405
Change 3512288 by Rolando.Caloca
DR - Fix issue when recycling image handles
Change 3512338 by Michael.Lentine
Fix precision if user enters a multiple of 90 degree rotation for transforms.
This will only work for exact values. Generally comparing float point numbers using == is unsafe but it should be ok in this case as they are exact values entered from the UI. We may want to later expand this to include thresholding using a value ~1e-7.
#jira UE-46137
Change 3512424 by Michael.Lentine
Regenerate BaseColor.uasset and Specular.uasset to not have the notforclient flags set.
#jira UE-44315
Change 3512686 by Brian.Karis
Fix for quadric assert in infiltrator. Due to bad tangents in source mesh.
Change 3512696 by Brian.Karis
Unrevert TAA. Fixed DOF NaN artifacts
Change 3512717 by Marcus.Wassmer
PR #3714: Fix typo in EOcclusionCombineMode (Contributed by Mumbles4)
Change 3513112 by Richard.Wallis
Crash when packaging for iOS with Shared Material Native Libraries and Share Material Shader Code from windows platform. Offline shader compile for archiving not done - shader header has missing offline compile flag for native Metal library archiving.
Fix includes:
- Handle offline compile failure when not running on Mac and no remote is configured (or remote fails). (I think it's this point at which the crash in the bug report is at).
- Make sure remote can build for native Metal libraries and archive correctly - this should now support Linux platforms or Mac to Mac (if enabled in MetalShaderCompiler.cpp) for testing if required.
- Updated to include remote calling into the xcode 9 Metal pch fix already submitted by Mark Satt.
#jira UE-45657
Change 3513357 by Richard.Wallis
Windows compile fix.
Change 3513375 by Guillaume.Abadie
Exposes the possibility to manually destroy the GPU ressource of UTextureRenderTarget2D.
Change 3513685 by Richard.Hinckley
#jira UEDOC-3822
Fixing a comment that refers to a non-existent function, for documentation purposes.
Change 3513705 by Marc.Olano
Updates to Sobol test levels in RenderTest project
Change 3513730 by Rolando.Caloca
DR - Fix mip size copying resolve targets
- Fix compute fence
- Fix descriptor set texture layout
- More dump info
Change 3513742 by Marc.Olano
Texture-free numeric print for shader debugging
Change 3513777 by Daniel.Wright
Handled edge case where no furthest samples are found in precomputed visibility
Change 3514852 by Rolando.Caloca
DR - Fix -directcompile on SCW
Change 3515049 by Rolando.Caloca
DR - hlslcc dump crash fix
Change 3515167 by Rolando.Caloca
DR - hlslcc - Fix bogus string pointer
- Allow reading from non-scalar UAVs
Change 3515745 by Rolando.Caloca
DR - Linux compile fix
Change 3515862 by Rolando.Caloca
DR - Remove old reference to CCT
- Link with hlslcc debug libs on SCW debug config for easier debugging
Change 3516292 by Rolando.Caloca
DR - glslang exe fixes
Change 3516568 by Rolando.Caloca
DR - hlslcc - Copy fix for *Buffer as functionparameters
Change 3516659 by Marcus.Wassmer
Fix some d3derrors with distance fields
Change 3516801 by Daniel.Wright
Fixed crash when doing editor 'Force Delete' on a static mesh whose distance field is still being built. Any UObject reference that is to an asset can be NULL'ed by the editor.
Change 3516825 by Rolando.Caloca
DR - Some initial fixes for structured buffers
Change 3516843 by Rolando.Caloca
DR - Fix for Vulkan dist fields
Change 3516869 by Marcus.Wassmer
Add format to the createrendertarget blueprint node
Change 3516957 by Daniel.Wright
Fixed bUsesDistortion being editable
Change 3516965 by Daniel.Wright
Still mark the distance field task completed, even if the static mesh has been deleted
Change 3517039 by Yujiang.Wang
GitHub #2655: Optimization for shadow map resolution selection for spot lights
* Use the radius of the inscribed sphere at the cone end as the spot light's screen radius
Note: slight drop of shadow quality of spot lights may occur when they are far away from the camera. This is intended, since before this optimization they tend to be always rendered with the maximum shadow map resolution (2048), which is very costly
#jira UE-33982
Change 3517069 by Yujiang.Wang
Fix for ScissorRect settings in d3d11 being lost under certain scenarios
* Scissor rectangle is always enabled in the low-level d3d11 pipeline, and it is expected that at least one ScissorRect is present no matter whether RHISetScissorRect is called with bEnable=false (when it is false we just use a big rect to make it effectively disabled)
* However FD3D11StateCacheBase::ClearState() clears all the states, which removes scissor rectangles and causes problems for certain routines (FScene::UpdateSkyCaptureContents)
* Now SetScissorRectIfRequiredWhenSettingViewport will always set a effectively disabled ScissorRect on each FD3D11DynamicRHI::RHISetViewport call, just like d3d12 does
#jira UE-45465 UE-44760
Change 3517134 by Yujiang.Wang
CIS fix
Change 3517662 by Rolando.Caloca
DR - Execute upload Vulkan cmds on the RHI thread
- Fix crash with structured buffer
Change 3517677 by Rolando.Caloca
DR - Update/copy textures on RHI thread
Change 3517680 by Rolando.Caloca
DR - Copy texture bulk data on rhi thread
Change 3517748 by Marcus.Wassmer
temporary workaround for one class of GPU crashes
Change 3518832 by Rolando.Caloca
DR - Copy & extend 3518077
- Fix for movable skylight shader missing on simple forward (low lighting quality mode)
Change 3519973 by Richard.Wallis
Jittering in Engine Menu Dropdown Options. Jitter fix: Fix some areas that hadn't been changed from RoundToInt (from previous CL's) to CeilToInt.
#jira UE-46505
Change 3520849 by Uriel.Doyon
Fixed issue with investigate texture command and dynamic component entries.
Change 3521064 by Guillaume.Abadie
Returns absolute path of shader files on error to avoid work loss in visual studio that can't figure out that a sln relative and absolute path might leading to same file on disk.
Change 3521834 by Rolando.Caloca
DR - Fix decals on Vulkan
Change 3521892 by Rolando.Caloca
DR - Fix Vulkan texture streaming
Change 3523181 by Rolando.Caloca
DR - Copy from 3523176
UE4.17 - Fix Vulkan scissor causing text to not clip
Change 3523534 by Yujiang.Wang
UE-46631: Implement a scalable LongGPUTask to fix ProfileGPU
* A new, scalable, platform-independent IssueLongGPUTask is now implemented in UtilityShaders
* Removed IssueLongGPUTask and G*Vector4VertexDeclaration from RHI implementations
* The measurement of the execution time of a basic LongGPUTask unit is kicked off on the very first frame
#jira UE-46631
Change 3524552 by Yujiang.Wang
Fix iteration number calculation of LongGPUTask
Change 3524975 by Joe.Graf
Moved the Hamming-weight function from StaticMeshDrawList.inl to FGenericPlatformMath
Added SSE versions using _mm_popcnt_u64 for platforms that support it
Added a SSE check to gracefully exit when missing the instruction and it was expected to be there
#CodeReview: arciel.rekman, brian.karis
Change 3525306 by Daniel.Wright
Fixed ensure from LPV
Change 3525346 by Rolando.Caloca
DR - Fix linking issue
Change 3525459 by Daniel.Wright
Volumetric Lightmaps - higher quality precomputed GI on dynamic objects and GI on Volumetric Fog
* Enabled by default on all maps, effective after a lighting build. This replaces the existing Precomputed Light Volume and Indirect Lighting Cache features.
* New Lightmass World Settings: VolumeLightingMethod, VolumetricLightmapDetailCellSize and VolumetricLightmapMaximumBrickMemoryMb.
* Lightmass computes lighting samples in an adaptive grid, with higher density around geometry inside the importance volume. Positions outside the importance volume get lit with the border texels.
* Improved Lightmass volume solver to use importance photons and full adaptive final gather, so volume samples have similar quality to 2d lightmaps.
* A static indirection texture is built covering the importance volume and flattening the brick tree by storing the offset to the highest density brick at each indirection cell.
* Seamless and efficient GPU interpolation across density levels is achieved by adding a single row of padding to bricks, copied from neighbors, and stitching up bricks with lower density neighbors
* The Volumetric lightmap stores Irradiance as a 3 band SH, which is 27 floats, quantized into 28 bytes, 7 texture lookups.
* A full screen barebones material using Volumetric Lightmaps costs .42ms on 970 GTX, while Indirect Lighting Cache Point costs .32ms
* Sky bent normal is also stored for stationary skylights and Directional Light Shadowing for Single Sample Shadow receiving.
* Volumetric fog, Movable components, unbuilt Static Components, SingleSampleShadow receiving and Capsule Shadows use Volumetric Lightmaps if available
* New Visualization show flag for Volumetric Lightmap sample points
* Level streaming of volume light data is not currently supported with this method
Change 3525461 by Daniel.Wright
Lowered default r.Shadow.RadiusThreshold for Epic shadow settings as it was causing a lot of visible artifacts from small objects popping out. This will increase shadowmap cost slightly (13.5ms RT -> 14.3ms RT in Fortnite on PS4, no measurable GPU difference).
Change 3526459 by Rolando.Caloca
DR - Fix validation error
Change 3526474 by Rolando.Caloca
DR - Integrate from GV
Change 3526487 by Daniel.Wright
Disabled Volumetric Lightmap filtering with neighbors due to artifacts
Fix linux compile errors
Change 3526833 by Rolando.Caloca
DR - Workaround for hlslcc
Change 3526991 by Uriel.Doyon
Integrated 3526859 : Texture mip bias is now reset whenever the streaming budget increases. This fixes an issue where textures persistently become low res after a memory spike.
Change 3527574 by Rolando.Caloca
DR - Added some missing resource entries for SCW direct mode
Change 3527625 by Rolando.Caloca
DR - Copy from 3527113
UE4.17 - Fix Vulkan not calling Present
Change 3528461 by Brian.Karis
Support larger hash sizes. Added uint list hashing function.
Change 3528780 by Rolando.Caloca
DR - Default Vulkan resources
Change 3528818 by Rolando.Caloca
DR - glslang - Added missing accessor
Change 3528839 by Rolando.Caloca
DR - Fix virtual path issue when using non-engine relative absolute paths
Change 3528900 by Daniel.Wright
Fixed variable shadowing
Change 3529039 by Rolando.Caloca
DR - Read Spirv reflection data (not used yet)
Change 3529040 by Joe.Graf
Fixed the 32bit compile failures for the popcnt optimization
#CodeReview: arciel.rekman
Change 3529060 by Rolando.Caloca
DR - hlslcc - New flag for keeping resource names
Change 3529344 by Rolando.Caloca
DR - Delete unused file
Change 3529723 by Brian.Karis
Fixed static analysis cleaner.
Change 3531357 by Michael.Trepka
Updated Mac glslang libraries with latest changes. Also, updated the Xcode project (generated with CMake) and moved it to a different location so that it no longer uses hardcoded absolute paths. It should be easy to rebuild these libraries in the future.
Change 3531517 by Joe.Graf
Added support for ddx_fine, ddy_fine, ddx_coarse, ddy_coarse to hlslcc
#CodeReview: arciel.rekman, mark.satterthwaite, rolando.caloca
Change 3531626 by Joe.Graf
Mac version of the popcount optimization
Changed Linux version to use the same builtin
#CodeReview: mark.satterthwaite, arciel.rekman
Change 3531837 by Chris.Bunner
SetScissorRectIfRequiredWhenSettingViewport sets the viewport size by default rather than disabling the scissor rect.
#jra UE-46753
Change 3533415 by Joe.Graf
Renamed the SSSE3 checks per feedback
#CodeReview: arciel.rekman
Change 3533480 by Michael.Lentine
Use more accurate descriptions for shader recompile options
Change 3533511 by Joe.Graf
Updated the GenericPlatformMisc to match the SSSE3 name change
#CodeReview: arciel.rekman
Change 3533521 by Marcus.Wassmer
Fix scenerenderer leak when updating out of view planar reflections
Change 3533528 by Joe.Graf
Updated comments
#CodeReview: n/a
Change 3533608 by Mark.Satterthwaite
New manual Xcode project for glslang so that we include all the necessary code and can link again.
Change 3534260 by Mark.Satterthwaite
Fix the Xcode 9 Beta 3 compile errors in MetalRHI without breaking Xcode 8.3.3.
Change 3535789 by Yujiang.Wang
Fix for wrong hair shading in forward shading
* IBL reflections should be turned off for hairs
Change 3537059 by Ben.Marsh
Fixing case of iOS directories, pt1
Change 3537060 by Ben.Marsh
Fixing case of iOS directories, pt2
Change 3538297 by Michael.Lentine
Add shader comparison test.
Adding the basic test case.
Adding logic to Common.ush to enable FP16 conditionally on a define (which is not set by default)
Adding more exported functionality to automation for use in the shader test.
Change 3538309 by Michael.Lentine
Add missing file from Shader Test CL.
Change 3538751 by Michael.Lentine
Add missing pragma once.
Change 3539236 by Michael.Lentine
Do not ignore return values.
Change 3539237 by Michael.Lentine
Check in the correct file
Change 3540343 by Rolando.Caloca
DR - Added t.DumpHitches.AllThreads
Change 3540661 by Yujiang.Wang
Fix spot tube light direction
* The tube direction for a spot light was pointing along the light direction, now it is along the local Z axis which is perpendicular to the light direction. Lightmass is also touched
* A new LightTangent is added to FDeferredLightData
* Packed all the values from LightSceneProxy->GetParameters into a single FLightParameters struct to avoid copy-pasting them everywhere
Change 3541129 by Rolando.Caloca
DR - vk - Copy all Vulkan fixes from 4.17
Change 3541347 by Yujiang.Wang
Fix wrong ViewFlags being set between objects when rendering shadow depth maps
* Bug caused by trying to share DrawRenderState between objects, but SetViewFlagsForShadowPass was designed to start from a fresh render state
* Now SetViewFlagsForShadowPass recalculates and sets the flags on each call
Change 3542603 by Rolando.Caloca
DR - vk - Allow sharing samplers on Vulkan
Change 3542639 by Jian.Ru
Changed warning text to better indicate that global clip plane needs to be enabled for planar reflection
#RB Marcus.Wassmer
Change 3543167 by Michael.Lentine
Fix naming for the shader comparison tests.
Change 3543210 by Uriel.Doyon
Fixed an issue when computing material scales where the default material ends up being used instead of the required material.
In that case, we used the default settings for texture streaming (assuming a scale of 1).
Change 3543221 by Brian.Karis
Simplifier optimizations
Change 3543239 by Arciel.Rekman
hlslcc: remove FCustomStd* workarounds.
- This was previous attempt to work around problems arising from different STL used for building libhlslcc (in the cross-toolchain) and possibly different STL used for building engine (on the system).
- The same problem has been resolved by bundling libc++.
Change 3543946 by Michael.Lentine
Add comparison output.
Change 3544277 by Brian.Karis
Fixed uninitialized var error
Change 3544404 by Rolando.Caloca
DR - Fix broken textures
Change 3544503 by Jian.Ru
Ensure lighting failure delegates are always called
#RB Marcus.Wassmer,Daniel.Wright
#3689
Change 3545241 by Daniel.Wright
Fixed spotlight whole scene shadows using a radius 2x too long
Change 3545347 by Daniel.Wright
Fixed shadow occlusion culling broken by shadowmap caching change. FProjectedShadowKey is now computed correctly for whole scene shadows and SDCM_StaticPrimitivesOnly shadowmaps will fall back to the query for a SDCM_MovablePrimitivesOnly, since the static primitives shadowmap's query is not issued every frame.
Change 3546196 by Marcus.Wassmer
Fix minor typo
Change 3546459 by Daniel.Wright
ULevel::PostEditChangeProperty recreates rendering resources if MapBuildData is modified - fixes a crash when Force Deleting the MapBuildData package.
Change 3546469 by Jian.Ru
Take into account CVarStaticMeshLODDistanceScale during static mesh LOD calculation
Change 3546804 by Daniel.Wright
[Copy] Added SendAllEndOfFrameUpdates draw event to wrap skin cache events
Change 3546814 by Daniel.Wright
[Copy] Only use skylight OcclusionMaxDistance for the global distance field if it casts shadows
Change 3546815 by Daniel.Wright
[Copy] Snap volumetric fog light function target resolution to a factor of 32 to avoid constant texture reallocation
Change 3546817 by Daniel.Wright
[Copy] Warmup time warning
Change 3546828 by Daniel.Wright
[Copy] Fixed UWorld::DestroyActor in PIE calling InvalidateLightingCacheDetailed which can do a FlushRenderingCommands and cause a large hitch
Change 3546836 by Daniel.Wright
[Copy] ULightComponent::InvalidateLightingCacheInner uses MarkRenderStateDirty instead of slow reregister + FlushRendingCommands, and only for lights which might have static lighting data
Change 3546849 by Rolando.Caloca
DR - vk - Fix missing samplerstates
- Fixes for structured buffers
- Add missing Draw and Dispatch Indirect
Change 3547516 by Brian.Karis
Linear time 5-coloring for planar graphs.
Brought in the Planarity library written by John Boyer, heavily edited and trimmed down to only include code necesary for graph coloring. Put behind a simple wrapper.
Change 3547542 by Brian.Karis
Linear time 5-coloring for planar graphs.
Brought in the Planarity library written by John Boyer, heavily edited and trimmed down to only include code necesary for graph coloring. Put behind a simple wrapper.
Change 3547563 by Brian.Karis
Fixed some compiler warnings and hopefully some errors.
Change 3547610 by Brian.Karis
Replaced macros with inlined functions
Change 3547620 by Brian.Karis
Clean up includes
Change 3547770 by Marcus.Wassmer
GPU Crash for MTBF analytics
Change 3547773 by Marcus.Wassmer
Updated doxygen comment for new analytic
Change 3548244 by Rolando.Caloca
DR - Fix for translucency
Change 3548352 by Yujiang.Wang
Added soft source radius for point and spot lights
* Soft source radius controls how 'blurry' the shape of specular lighting looks
* Implemented by LobeRoughness modification
* Better approximation for spherical lights so that they don't look sharp when the radius is large using 'smoothed representative point' method
* Suppoted LightTangent in forward shading
Change 3548530 by Brian.Karis
Fix for mac build
Change 3548770 by Rolando.Caloca
DR - vk - Prereq work for Vulkan parallel RHI contexts
Change 3548772 by Jian.Ru
Fixed an issue that caused an ensure when switching levels in D3D10. #rb Marcus.Wassmer
Change 3548865 by Daniel.Wright
With shadowmap caching of whole scene shadows, only one of the cache modes issues an occlusion query. Fixes a crash where the static primitive shadowmap is culled but the movable primitive shadowmap is visible, which is normally not possible.
Change 3548952 by Rolando.Caloca
DR - Allow separate samplers in the shaders on Vulkan
Change 3549197 by Marcus.Wassmer
Fix DX12 PIx not working in cooked builds
Change 3549209 by Daniel.Wright
Occlusion culling for CSM, from the main camera, controlled by 'r.Shadow.OcclusionCullCascadedShadowMaps'. Disabled by default as rapid view changes don't work well with latent occlusion queries.
Change 3549943 by Ben.Marsh
Include better diagnostic information when a modified build product is detected after running a build step.
Change 3550546 by Rolando.Caloca
DR - Fix merge issue
Change 3550962 by Marcus.Wassmer
EarlyZ Masking requires full depth prepass, so just force it to.
Change 3551062 by Daniel.Wright
Handle NULL skylight
Change 3551104 by Rolando.Caloca
DR - vk - Remove assert to match other platforms
Change 3551221 by Rolando.Caloca
DR - vk - Add mirror clamp to edge extension
- Fix framebuffer deletion
Change 3551224 by Daniel.Wright
Volumetric lightmap increase density around static lights affecting a voxel brighter than LightBrightnessSubdivideThreshold.
Change 3551495 by Rolando.Caloca
DR - vk - Intiial support for async queue
Change 3552101 by Rolando.Caloca
DR - vk - Fix for async
Change 3552102 by Rolando.Caloca
DR - SkinCache - Fix potential leak on staging buffers for recompute tangents
- Integrate changes from 4.17 for memory optimizations
Change 3552104 by Rolando.Caloca
DR - vk - Support for SRVs for index buffers
Change 3552838 by Rolando.Caloca
DR - vk - Enable debug markers if found
Change 3553106 by Rolando.Caloca
DR - vk - Fixes for index buffer SRVs
Change 3553107 by Rolando.Caloca
DR - vk - Enable recompute tangents on Vulkan
Change 3553154 by Rolando.Caloca
DR - vk - Fix crash with null uav
Change 3553342 by Yujiang.Wang
Fix redundant skylights in AdvancedPreviewScene
* PreviewScene was changed to using a skylight instead of ambient cubemap to support forward shading
* AdvancedPreviewScene originally had a skylight, now it is changed to using the one inherited from PreviewScene
Change 3553481 by Rolando.Caloca
DR - Integrate fix for D3D12 support of index buffers SRVs
#jira UE-47674
Change 3553715 by Rolando.Caloca
DR - Fix crash when launching PC with -featureleveles31
Change 3553725 by Rolando.Caloca
DR - Redo fix
Change 3553803 by Rolando.Caloca
DR - Shader compile fixes for ES3.1
Change 3553963 by Rolando.Caloca
DR - vk - Remove extra IRDump
Change 3554741 by Ben.Marsh
CIS fix.
Change 3555222 by Rolando.Caloca
DR - vk - static analysis fix
Change 3555362 by Rolando.Caloca
DR - vk - Prep work for separate present queue
Change 3556800 by Daniel.Wright
Fixed screenshot for simple volume material doc
Change 3556942 by Brian.Karis
Fixed Bokeh DOF regression.
Change 3556959 by Rolando.Caloca
DR - vk - Rework staging buffer peak usage
Change 3557497 by Daniel.Wright
Better display name for Unbound property on post process volume
Change 3557499 by Daniel.Wright
Disable r.GenerateLandscapeGIData by default, opt-in for kite demo. Projects that want to use heightfield GI need to opt-in to r.GenerateLandscapeGIData.
Change 3557068 by Olaf.Piesche
Configurable spawn rate scaling reference value; sets the zero-scale reference value (default: 2), so additional quality levels can be added and scaling customized further.
IMPORTANT: This sets the reference to 3 in PS4Scalability.ini; effects on PS4 are again going to have reduced spawn rates versus PC and Neo, as intended by the FX artists starting with this change.
#tests QAGame test maps
Change 3558123 by Rolando.Caloca
DR - vk - static analysis fix
Change 3558685 by Yujiang.Wang
Github #3323: Two sided foliage lightmap directionality fix
* Subsurface is not intended to work with lightmaps that don't have directionality, however we still want it to look similar to a directional one
* Now it uses a constant directionality value
#jira UE-42523
Change 3559052 by Brian.Karis
Hopefully fix static analysis
Change 3559113 by Rolando.Caloca
DR - Fix crash witrh planar reflections
Change 3559275 by Yujiang.Wang
Fix race condition on several scalability CVars between rendering thread and game thread
Change 3559612 by Rolando.Caloca
DR - vk - SM5 with uniform buffers backend support
Change 3559716 by Rolando.Caloca
DR - hlslcc - Fix linker warning on SCW debug
Change 3559768 by Rolando.Caloca
DR - vk - Keep ub names for bindings
Change 3560195 by Rolando.Caloca
DR - accessor
Change 3560275 by Rolando.Caloca
DR - vk - Support for uniform buffers
Change 3560913 by Rolando.Caloca
DR - vk - Fix static analysis
Change 3561145 by Rolando.Caloca
DR - Don't crash if out of resource table bits
Change 3561194 by Rolando.Caloca
DR - vk - Integrate timestamp fixes
Change 3562009 by Rolando.Caloca
DR - vk - Workaround for bad UTexture data
Change 3563884 by Chris.Bunner
VK_NULL_HANDLE fix.
Change 3563885 by Jian.Ru
Ignore a warning caused by enabling distance field generation so that test Cube_Blue and Cube_Section don't fail. #rb Chris.Bunner
Change 3565943 by Jian.Ru
Add extra warning log triggered when attempt to create FRWBuffer greater than 256MB in ComputeLightGrid() #rb Chris.Bunner
Change 3569479 by Michael.Lentine
Integrate rhino shader changes to dev-rendering
Change 3569511 by Michael.Lentine
Fix formating and string out on windows.
Change 3569572 by Yujiang.Wang
Fix MeasureLongGPUTaskExecutionTime crashing on AMD on Macs
Change 3569614 by Yujiang.Wang
Flush rendering commands before measuring the long GPU task's excution time to get accurate results
Change 3570524 by Jian.Ru
Add extra parentheses to avoid compilation warning #rb Chris.Bunner
Change 3570722 by Chris.Bunner
Static analysis workaround - same code, just validating compile-time assumptions a little further.
Change 3570880 by Jian.Ru
Add small depth offset to avoid depth test failing during velocity pass
#jira UE-37556
Change 3572532 by Jian.Ru
Disable a warning to let tests pass
#jira UE-48021
Change 3573109 by Michael.Lentine
Checkin Michael.Trepka's fix for external dynamic libraries on mac.
This is needed to make the build go green on mac.
Change 3573995 by Jian.Ru
Move an include out of define to let nightly build pass
Change 3574777 by Chris.Bunner
Continued merge fixes.
Change 3574792 by Rolando.Caloca
DR - Rename todo
Change 3574794 by Chris.Bunner
Re-adding includes lost in a pre-merge merge.
Change 3574879 by Michael.Trepka
Disabled a couple of Mac deprecation warnings
Change 3574932 by Chris.Bunner
Merge fix.
Change 3575048 by Michael.Trepka
Fixed iOS compile warnings
Change 3575530 by Chris.Bunner
Duplicating static analysis fix CL 3539836.
Change 3575582 by Chris.Bunner
Fixed GetDimensions return type in depth resolve shaders.
Compile error fix.
Change 3576326 by Chris.Bunner
Static analysis fixes.
Change 3576513 by Michael.Trepka
Updated Mac MCPP lib to be compatible with OS X 10.9
Change 3576555 by Richard.Wallis
Metal Validation Errors. Dummy black volume texture is in the wrong format in the Metal shader for the VolumetricLightmapIndirectionTexture. Create a new dummy texture with pixel format PF_R8G8B8A8_UINT.
#jira UE-47549
Change 3576562 by Chris.Bunner
OpenGL SetStreamSource stride updates.
Change 3576589 by Michael.Trepka
Fixed Mac CIS warnings and errors in Dev-Rendering
Change 3576708 by Jian.Ru
Fix cascade preview viewport background color not changing
#jira UE-39687
Change 3576827 by Rolando.Caloca
DR - Minor fix for licensee
Change 3576973 by Chris.Bunner
Fixing up HLSLCC language spec mismatch (potential shader compile crashes in GL and Vulkan).
Change 3577729 by Rolando.Caloca
DR - Fix for info on SCW crashes
Change 3578723 by Chris.Bunner
Fixed issue where custom material attribute was using display name as hlsl function name.
Change 3578797 by Chris.Bunner
Fixed pixel inspector crashing on high-precision normals gbuffer format.
#jira UE-48094
Change 3578815 by Yujiang.Wang
Fix for UE-48207 Orion cooked windows server crash on startup
* Crash caused by rendering features not available in a dedicated server build
* Skip over MeasureLongGPUTaskExecutionTime when !FApp::CanEvenRender()
#jira UE-48207
Change 3578828 by Daniel.Wright
Disable volumetric lightmap 3d texture creation on mobile
Change 3579473 by Daniel.Wright
Added View.SharedBilinearClampSampler and View.SharedBilinearWrapSampler. Used these to reduce base pass sampler counts with volumetric lightmaps.
Change 3580088 by Jian.Ru
Fix QAGame TM-CharacterMovement crashing on PIE
#jira UE-48031
Change 3580388 by Daniel.Wright
Fixed shadowed light injection into volumetric fog fallout from Rhino merge
Change 3580407 by Michael.Trepka
Updated Mac UnrealPak binaries
Change 3581094 by Michael.Trepka
Fix for ScreenSpaceReflections not working properly on iOS 11
Change 3581242 by Michael.Trepka
Fixed a crash on startup on Mac when launching TM-ShaderModels in QAGame
#jira UE-48255
Change 3581489 by Olaf.Piesche
Replicating CL 3578030 from Fortnite-Main to fix #jira UE-46475
#jira FORT-47068, FORT-49705
Don't inappropriaely touch game thread data on the render thread. Push SubUV cutout data into a RT side object owned by the sprite dynamic data.
#tests FN LastPerfTest
Change 3581544 by Simon.Tovey
Fix for ensure accessing cvar from task thread.
#tests no more ensure
Change 3581934 by Chris.Bunner
Fixed ConsoleVariables.ini break from merge.
Change 3581968 by Jian.Ru
Fix QAGame TM-ShaderModels PIE crash when resizing game viewport
#jira UE-48251
Change 3581989 by Richard.Wallis
Fix for NULL PrecomputedLightingBuffer. It is null for first frame request in forward rendering so should have the GEmptyPrecomputedLightingUniformBuffer set in these cases after it's been initially tried to be set not before.
#jira UE-46955
Change 3582632 by Chris.Bunner
Resolved merge error.
Change 3582722 by Rolando.Caloca
DR - Workaround for PF_R8G8B8A8_UINT on GL
#jira UE-48208
Change 3584096 by Rolando.Caloca
DR - Fix for renderdoc crashing in shipping
#jira UE-46867
Change 3584245 by Jian.Ru
Fix System.Promotion.Editor.Particle Editor test crash
#jira UE-48235
Change 3584359 by Yujiang.Wang
Fix for UE-48315 Wall behind base in Monolith is flickering white in -game Orion
* Caused by dot(N, V) being negative
* Clamp to (0, 1)
#jira UE-48315
Change 3587864 by Mark.Satterthwaite
Fix the GPU hang on iOS caused by changes to the Depth-Stencil MSAA handling: you can't store the MSAA stencil results on iOS < 10 unless you use the slower MTLStoreActionStoreAndMultisampleResolve which we don't need for the mobile renderer.
#jira UE-48342
Change 3587866 by Mark.Satterthwaite
Correctly fix iOS compilation errors against Xcode 9 Beta 5 and Xcode 8.3.3 - duplicating function definitions is guaranteed to be wrong.
Change 3588168 by Mark.Satterthwaite
Move the Xcode version into the Metal shader format header, not the DDC key, so that we can handle bad compiler/driver combinations in the runtime and don't force all users to recompile every time the Xcode version changes.
Change 3588192 by Rolando.Caloca
DR - Fix d3d12 linker error when EXECUTE_DEBUG_COMMAND_LISTS is enabled
Change 3588291 by Rolando.Caloca
DR - Fix for d3d12 command list crash: Commited resources can not have aliasing barriers
#jira UE-48299
Change 3590134 by Michael.Trepka
Copy of CL 3578963
Reset automation tests timer after shader compilation when preparing for screenshots taking to make sure tests don't time out.
Change 3590405 by Rolando.Caloca
DR - hlslcc - support for sqrt(uint)
Change 3590436 by Mark.Satterthwaite
Rebuild Mac hlslcc for CL #3590405 - without the various compiler workarounds left over from before the recent code changes.
Change 3590674 by Rolando.Caloca
DR - vk - Integration from working branch
- Fixes distance field maps
- Compute pipelines stored in saved file
- Adds GRHIRequiresRenderTargetForPixelShaderUAVs for platforms that need dummy render targets
Change 3590699 by Rolando.Caloca
DR - Fix distance fields mem leak
Change 3590815 by Rolando.Caloca
DR - vk - Fixes for uniform buffers and empty resource tables
Change 3590818 by Mark.Satterthwaite
Temporarily switch back to OpenVR v1.0.6 for Mac only until I can clarify what to do about a required but missing API hook for Metal. Re-enabled and fixed compile errors with Mac SteamVR plugin code.
Change 3590905 by Mark.Satterthwaite
For Metal shader compilation where the bytecode compiler is unavailable force the debug compiler flag and disable the archiving flag because storing text requires this.
#jira UE-48163
Change 3590961 by Mark.Satterthwaite
Submitted on Richard Wallis's behalf as he's on holiday:
Mac fixes for Compute Skin Cache rendering issues (resulting in incorrect positions and tangents) and for recomputing tangents. Problem sampling from buffers/textures as floats with packed data. Some of the data appears as denorms so get flushed to zero then reinterpreted as uints via asuint or in Metal as_type<uint>(). Fix here for Metal seems to be to use uint types for the skin cache SRV's and as_type<> to floats instead.
There could be some other areas where we're unpacking via floats that could affect Metal and I'm not sure how this will impact on other platforms.
#jira UE-46688, UE-39256, UE-47215
Change 3590965 by Mark.Satterthwaite
Remove the Z-bias workaround from Metal MRT as it isn't required and actually causes more problems.
Change 3590969 by Mark.Satterthwaite
Make all Metal shader platforms compile such that half may be used, unless the material specifies full precision.
Change 3591871 by Rolando.Caloca
DR - Enable PCSS on Vulkan & Metal
- Enable capsule shadows on Vulkan
Change 3592014 by Mark.Satterthwaite
Remove support for Mac OS X El Capitan (10.11) including the stencil view workaround.
Bump the minimum Metal shader standard for Metal SM4, SM5 & Metal MRT to v1.2 (macOS 10.12 Sierra & iOS 10) so we can use FMAs and other newer shader language features globally.
Enable the new GRHIRequiresRenderTargetForPixelShaderUAVs flag as Metal is like Vulkan and needs a target for fragment rendering.
Also fix the filename for direct-compile & remove the old batch file generation in the Metal shader compiler.
Change 3592171 by Rolando.Caloca
DR - CIS fix
Change 3592753 by Jian.Ru
repeat Daniel's fix on xb1 profilegpu crash (draw events cannot live beyond present)
Change 3594595 by Rolando.Caloca
DR - Fix D3D shader compiling run time stack corruption failure on debug triggering falsely
Change 3594794 by Michael.Trepka
Call FPlatformMisc::PumpMessages() before attempting to toggle fullscreen on Mac to fix an issue on some Macs running 10.13 beta that would ignore the toggle fullscreen call freezing the app
Change 3594999 by Mark.Satterthwaite
Disable MallocBinned2 for iOS as on Rhino it worked but on iOS 10.0.2 there are bugs (munmap uses 64kb granularity, not the 4096 the code expects given the reported page-size).
While we are here remove the spurious FORCE_MALLOC_ANSI from the iOS platform header.
#jira UE-48342
Change 3595004 by Mark.Satterthwaite
Disable Metal's Deferred Store Actions and combined Depth/Stencil formats on iOS < 10.3 as there are bugs on earlier versions of iOS 10.
#jira UE-48342
Change 3595386 by Mark.Satterthwaite
Silence the deprecation warning for kIOSurfaceIsGlobal until SteamVR switches to one of the newer IOSurface sharing mechanisms.
Change 3595394 by Rolando.Caloca
DR - Added function for tracking down errors in the hlsl parser
- Added support for simple #if 0...#endif
Change 3599352 by Rolando.Caloca
DR - Fixes for HlslParser
- Added missing attributes for functions
- Fixed nested assignment
Change 3602440 by Michael.Trepka
Fixed Metal shader compilation from Windows with remote compilation disabled
#jira UE-48163
Change 3602898 by Chris.Bunner
Resaving assets.
Change 3603731 by Jian.Ru
fix a crash caused by a material destroyed before the decal component
#jira UE-48587
Change 3604629 by Rolando.Caloca
DR - Workaround for PF_R8G8B8A8_UINT on Android
#jira UE-48208
Change 3604984 by Peter.Sauerbrei
fix for orientation not being limited to that specified in the plist
#jira UE-48360
Change 3605738 by Chris.Bunner
Allow functional screenshot tests to request a camera cut (e.g. tests relying on temporal aa history).
#jira UE-48748
Change 3606009 by Mark.Satterthwaite
Correctly implement ClipDistance for Metal as an array of floats as required by the spec. and fix a few irritating issues from the merge that should not have.
- When compiling a tessellation vertex shader in the SCW direct mode we can't evaluate non-existant defines and we don't actually need to.
- The define names, values & shader file name are irrelevant to the Metal output key, but the shader format name & Metal standard really do matter - should speed up Metal shader compilation a bit.
- Move the shader vertex layer clip-distance to index 2 to avoid conflicts.
- Don't default initialise the debug code string for Metal shaders or it won't print out the actual code....
#jira UE-47663
Change 3606108 by Mark.Satterthwaite
Temporary hack to avoid a crash in AVPlayer.
#jira UE-48758
Change 3606121 by Mark.Satterthwaite
Fix Windows compilation.
Change 3606992 by Chris.Bunner
Static analysis fix.
[CL 3608256 by Marcus Wassmer in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3323393 on 2017/02/27 by Ben.Cosh
This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations
#Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602]
#Proj Engine
Change 3379355 on 2017/04/04 by Lauren.Ridge
Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences.
Change 3379389 on 2017/04/04 by Nick.Darnell
Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated.
Change 3379551 on 2017/04/04 by Nick.Darnell
Automation - Adding more logging to the automation controller when generating reports.
Change 3379554 on 2017/04/04 by Nick.Darnell
UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts.
Change 3379565 on 2017/04/04 by Nick.Darnell
UMG - Deprecating OPTIONA_BINDING, moving to PROPERTY_BINDING in place and you'll need to define a PROPERTY_BINDING_IMPLEMENTATION. Will make bindings safer to call from blueprints.
Change 3379576 on 2017/04/04 by Lauren.Ridge
Parameter group dropdown now sorts alphabetically
Change 3379592 on 2017/04/04 by JeanMichel.Dignard
Fbx Morph Targets import optimisation
- Only reimport the points for each morphs and compute the tangents for the wedges affected by those points.
- Removed the full skeletal mesh rebuild on each morph target import.
- Allow MeshUtilities::ComputeTangents_MikkTSpace to only recompute the tangents that are zero.
Gains around 7.30 mins for 785 morph targets in mikkt space and 1.30 mins using built-in normals, with provided test file.
#jira UE-34125
Change 3380260 on 2017/04/04 by Nick.Darnell
UMG - Fixing some OPTIONAL_BINDINGS that needed to be converted.
Change 3380551 on 2017/04/05 by Andrew.Rodham
Sequencer: Fixed ImplIndex sometimes not relating to the source data index when compiling at the track level
#jira UE-43446
Change 3380555 on 2017/04/05 by Andrew.Rodham
Sequencer: Automated unit tests for the segment and track compilers
Change 3380647 on 2017/04/05 by Nick.Darnell
UMG - Tweaking some stuff on the experimental rich textblock.
Change 3380719 on 2017/04/05 by Yannick.Lange
Fix 'Compile FortniteClient Mac' and 'Compile Ocean iOS' Failed with Material.cpp errors. Wrapping WITH_EDITOR around ParameterGroupData.
#jira UE-43667
Change 3380765 on 2017/04/05 by Nick.Darnell
UMG - Fixing a few more instances of OPTIONAL_BINDING.
Change 3380786 on 2017/04/05 by Yannick.Lange
Wrap SortPriority in GetParameterSortPriority with WITH_EDITOR.
Change 3380872 on 2017/04/05 by Matt.Kuhlenschmidt
PR #3453: UE-43004: YesNo MessageDialog instead of YesNoCancel (Contributed by projectgheist)
Change 3381635 on 2017/04/05 by Matt.Kuhlenschmidt
Expose static mesh material accessors to blueprints
#jira UE-43631
Change 3381643 on 2017/04/05 by Matt.Kuhlenschmidt
Added a way to enable or disable the component transform units display independently from unit display anywhere else. This is off by default
Change 3381705 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
Change 3381959 on 2017/04/05 by Yannick.Lange
Back out changelist 3381705. Old changelist.
Change 3382049 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors in a wrapper class.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
- Deprecated SetInputPreProcessor, but made it work with RegisterInputPreProcessor and UnregisterInputPreProcessor.
Change 3382450 on 2017/04/06 by Andrew.Rodham
Sequencer: Fixed 'ambiguous' overloaded constructor for UT linux server builds
Change 3382468 on 2017/04/06 by Yannick.Lange
Rename AllowWorldMovement parameter to bAllow.
Change 3382474 on 2017/04/06 by Yannick.Lange
Make GetInteractors constant because we dont want it to be possible to change this arrray.
Change 3382492 on 2017/04/06 by Yannick.Lange
VR Editor: Floating UI's are stored in a map with FNames as key.
Change 3382502 on 2017/04/06 by Yannick.Lange
VR Editor: Use asset container for auto scaler sound.
Change 3382589 on 2017/04/06 by Nick.Darnell
Slate - Upgrading usages of SetInputPreprocessor. Also adjusting the API for the new preprocessor functions to have an option to remove all, which was what several usages expected. Also updated the deprecated version of SetInputPreprocessor to removeall if null is provided for the remove, mimicing the old functionality.
Change 3382594 on 2017/04/06 by Nick.Darnell
UMG - Deprecating GetMousePositionScaledByDPI, this function has too many issues, and I don't want to break buggy backwards compatability, so just going to deprecate it instead. For replacement, you can now access an FGeometry representing the viewport (after DPI scale has been added to the transform stack), and also the FGeometry for a Player's Screen widget host, which might be constrained for splitscreen, or camera aspect.
Change 3382672 on 2017/04/06 by Nick.Darnell
Build - Fixing incremental build.
Change 3382674 on 2017/04/06 by Nick.Darnell
Removing a hack added by launcher.
Change 3382697 on 2017/04/06 by Matt.Kuhlenschmidt
Fixed plugin browser auto-resizing when scrolling. Gave it a proper splitter
Change 3382875 on 2017/04/06 by Michael.Trepka
Modified FMacApplication::OnCursorLock() to avoid a thread safety problem with using TSharedPtr/Ref<FMacWindow> of the same window on main and game threads simultaneously.
#jira FORT-34952
Change 3383303 on 2017/04/06 by Lauren.Ridge
Adding sort priority to texture parameter code
Change 3383561 on 2017/04/06 by Jamie.Dale
Fixed MaximumIntegralDigits incorrectly including group separators in its count
Change 3383570 on 2017/04/06 by Jamie.Dale
Added regression tests for formatting a number with MaximumIntegralDigits and group separators enabled
Change 3384507 on 2017/04/07 by Lauren.Ridge
Mesh painting no longer paints on invisible components. Toggling visiblity refreshes the selected set.
#jira UE-21172
Change 3384804 on 2017/04/07 by Joe.Graf
Fixed a clang error on Linux due to missing virtual destructor when deleting through the interface pointer
#CodeReview: marc.audy
#rb: n/a
Change 3385011 on 2017/04/07 by Matt.Kuhlenschmidt
Fix dirtying levels just by copying actors if the level contains a foliage actor. The foliage system makes lazy asset pointers
#jira UE-43750
Change 3385127 on 2017/04/07 by Lauren.Ridge
Adding WITHEDITOR to OnDragDropCheckOverride
Change 3385241 on 2017/04/07 by Jamie.Dale
Removing warning if asking for a null or empty localization provider
Change 3385442 on 2017/04/07 by Arciel.Rekman
Fix a number of problems with Linux splash.
- Thread safety (UE-40354).
- Inconsistent font (UE-35000).
- Change by Cengiz Terzibas.
Change 3385708 on 2017/04/08 by Lauren.Ridge
Resaving VREditor asset container with engine version
Change 3385711 on 2017/04/08 by Arciel.Rekman
Speculative fix for a non-unity Linux build.
Change 3386120 on 2017/04/10 by Matt.Kuhlenschmidt
Fix stats not being enabled when in simulate
Change 3386289 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3466: Git plugin: add option to autoconfigure Git LFS (Contributed by SRombauts)
Change 3386301 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3470: Git Plugin: disable "Keep Files Checked Out" checkbox on Submit to Source Control Window (Contributed by SRombauts)
Change 3386381 on 2017/04/10 by Michael.Trepka
PR #3461: Mac doesn't return the correct exit code (Contributed by projectgheist)
Change 3388223 on 2017/04/11 by matt.kuhlenschmidt
Deleted collection: MattKTest
Change 3388808 on 2017/04/11 by Lauren.Ridge
Reset arrows now only display for non-default values in the Material Instance editor. Reset to default arrows now are placed in the correct location for SObjectPropertyEntryBox and SPropertyEditorAsset. SResetToDefaultPropertyEditor now takes a property handle in the constructor, instead of an FPropertyEditor.
#jira UE-20882
Change 3388843 on 2017/04/11 by Lauren.Ridge
Forward declaring custom reset override. Fix for incremental build error
Change 3388950 on 2017/04/11 by Nick.Darnell
PR #3450: UMG "Lock" Feature (Contributed by GBX-ABair).
Epic Edit: Made some changes to make it work with named slots, added an option not to always recursively itterate the children, also removed the dependency on SWidget changes.
Change 3388996 on 2017/04/11 by Matt.Kuhlenschmidt
Removed crashtracker
Change 3389004 on 2017/04/11 by Lauren.Ridge
Fix for automated test error - additional safety check for if the reset button has been successfully created.
Change 3389056 on 2017/04/11 by Matt.Kuhlenschmidt
Removed editor live streaming
Change 3389077 on 2017/04/11 by Jamie.Dale
Removing QAGame config change
Change 3389078 on 2017/04/11 by Nick.Darnell
Fortnite - Fixing an input preprocessor warning.
Change 3389136 on 2017/04/11 by Nick.Darnell
Slate - Removing deprecated 'aspect ratio' locking box cells, never really worked, deprecated a long time ago.
Change 3389147 on 2017/04/11 by Nick.Darnell
UMG - Fixing a critical error with the alignment of the lock icon.
#jira UE-43881
Change 3389401 on 2017/04/11 by Nick.Darnell
UMG - Adds a designer option to control respecting the locked mode.
Change 3389638 on 2017/04/11 by Nick.Darnell
UMG - Adding the Widget Reflector button to the widget designer.
Change 3389639 on 2017/04/11 by Nick.Darnell
UMG - Tweaking the respect lock icon.
Change 3390032 on 2017/04/12 by JeanMichel.Dignard
Fixed project generation when using subfolders in Target.SolutionDirectory (ie: SolutionDirectory = "Programs\MyProgram")
Change 3390033 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3472: Exposed Distributions to Game Projects and Plugins (Contributed by StormtideGames)
Change 3390041 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3446: Add missing TryLock to PThreadCriticalSection and add RAII helper for try locking. (Contributed by Laurie-Hedge)
Change 3390196 on 2017/04/12 by Lauren.Ridge
Fix for crash on opening assets without reset to default button enable
Change 3390414 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3300: UE-5528: Added check for empty startup tutorial path (Contributed by projectgheist)
#jira UE-5528
Change 3390427 on 2017/04/12 by Jamie.Dale
Fixed not being able to set pure whitespace values on FText properties
#jira UE-42007
Change 3390712 on 2017/04/12 by Jamie.Dale
Content Browser search now takes the display names of properties into account
#jira UE-39564
Change 3390897 on 2017/04/12 by Nick.Darnell
Slate - Changing the order that the tabs draw in so that the draw front to back, instead of back to front.
Change 3390900 on 2017/04/12 by Nick.Darnell
Making a Cast CastChecked in UScaleBox.
Change 3390907 on 2017/04/12 by Nick.Darnell
UMG - Adding GetMousePositionOnPlatform and GetMousePositionOnViewport as other replacements that people can use rather than GetMousePositionScaledByDPI.
Change 3390934 on 2017/04/12 by Cody.Albert
Fix to set correct draw layer in FSlateElementBatcher::AddElements
Change 3390966 on 2017/04/12 by Nick.Darnell
Input - Force inline some core input functions.
Change 3391207 on 2017/04/12 by Jamie.Dale
Fixed moving a folder containing a level not moving the level
Also removed some redundant usage of ContentBrowserUtils::GetUnloadedAssets
#jira UE-42091
Change 3391327 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming
Change 3391405 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming (part 2)
Change 3391407 on 2017/04/12 by Mike.Fricker
Removed some remaining EditorLiveStreaming and CrashTracker code
Change 3392296 on 2017/04/13 by Yannick.Lange
VR Editor: New assets in asset containers for gizmo rotation.
Change 3392332 on 2017/04/13 by Nick.Darnell
Slate - Removing delegate hooks from the safezone and scalebox widget when the widgets are cleaned up.
Change 3392349 on 2017/04/13 by Cody.Albert
Corrected typo
Change 3392688 on 2017/04/13 by Yannick.Lange
VR Editor: Resaved asset containers
Change 3392905 on 2017/04/13 by Jamie.Dale
Fixed FPaths::ChangeExtension and FPaths::SetExtension stomping over the path part of a filename if the name part of the had no extension but the path contained a dot, eg) C:/First.Last/file
Change 3393514 on 2017/04/13 by Yannick.Lange
VR Editor: Temp direct interaction pointer.
Change 3393930 on 2017/04/14 by Yannick.Lange
VR Editor: Remove unused transform gizmo
Change 3394084 on 2017/04/14 by Max.Chen
Audio Capture: No longer beta
Change 3394499 on 2017/04/14 by Cody.Albert
Updated UMovieSceneSpawnTrack::PostLoad to call ConditionalPostLoad on bool track before converting it to a spawn track
#rnx
Change 3395703 on 2017/04/17 by Yannick.Lange
Duplicate from Release-4.16 CL 3394172
Viewport Interaction: Fix disable animation when aiming for gizmo stretch handles.
#jira UE-43964
Change 3395794 on 2017/04/17 by Mike.Fricker
#rn Fixed FastXML not loading XML files with attributes delimited by single quote characters
Change 3395945 on 2017/04/17 by Yannick.Lange
VR Editor: Swap end and start of laser, because they start of laser was using end mesh.
Change 3396253 on 2017/04/17 by Michael.Dupuis
#jiraUE-43693:
While moving foliage instance between levels, UI count was'nt updating properly
Moved MoveSelectedFoliageToLevel to EdModeFoliage as we required more treatment than was done in LevelCollectionModel
Ask to save foliage type as asset while moving between level foliage instances containing local foliage type
Change 3396291 on 2017/04/17 by Michael.Dupuis
#jira UE-35029:
Added a cache for mesh bounds so if the bounds changed we can rebuild the occlusion tree
Added possibility to register on bounds changed of a static mesh in editor mode
Rebuild the occlusion tree if the mesh bounds changed
Rebuild the occlusion tree if we change the mesh associated with a foliage type
Optimize some operation to not Rebuild the occlusion tree for every instance added/remove instead it's done at the end of the operation
Change 3396293 on 2017/04/17 by Michael.Dupuis
#jira UE-40685:
Improve Collision With World algo, to support painting pitch rotated instance or not on a flat terrain or slope respecting the specified ground angles
Change 3397660 on 2017/04/18 by Matt.Kuhlenschmidt
PR #3480: Git plugin: improve/cleanup init and settings (Contributed by SRombauts)
Change 3397675 on 2017/04/18 by Alex.Delesky
#jira UE-42383 - Adds a delegate to the placement mode module to allow users to register custom categories and listen to when they should be refreshed.
Change 3397818 on 2017/04/18 by Yannick.Lange
ViewportInteraction and VR Editor: - Replace GENERATED_UCLASS_BODY with GENERATED_BODY.
- Remove destructors for uobjects.
Change 3397832 on 2017/04/18 by Yannick.Lange
VR Editor: Remove unused vreditorbuttoon
Change 3397884 on 2017/04/18 by Yannick.Lange
VREditor: Addition to 3397832, remove unused vreditorbuttoon.
Change 3397985 on 2017/04/18 by Michael.Trepka
Another attempt to solve the issue with dsymutil failing with an error saying the input file did not exist. We now check for the input file's existence in a loop 30 times (once a second) before trying to call dsymutil. Also, added a FixDylibDependencies as a prerequisite for dSYM generation.
#jira UE-43900
Change 3398030 on 2017/04/18 by Jamie.Dale
Fixed outline changes not automatically updating the text layout used by a text block
#jira UE-42116
Change 3398039 on 2017/04/18 by Jamie.Dale
Unified asset drag-and-drop
FAssetDragDropOp now handles both assets and asset paths, and FAssetPathDragDropOp has been removed. This allows assets and folders to be drag-dropped at the same time in the Content Browser.
#jira UE-39208
Change 3398074 on 2017/04/18 by Michael.Dupuis
Fixed crash in cooking fortnite
Change 3398351 on 2017/04/18 by Alex.Delesky
Fixing PlacementMode module build error
Change 3398513 on 2017/04/18 by Yannick.Lange
VR Editor: - Remove unused previousvreditor member.
- Removing extensions when exiting vr mode without having to find the extensions.
Change 3398540 on 2017/04/18 by Alex.Delesky
Removing a private PlacementMode header that was included in a public one.
Change 3399434 on 2017/04/19 by Matt.Kuhlenschmidt
Remove uncessary files from p4
Change 3400657 on 2017/04/19 by Jamie.Dale
Fixed potential underflow when using negative digit ranges with FastDecimalFormat
Change 3400722 on 2017/04/19 by Jamie.Dale
Removed some check's that could trip with malformed data
Change 3401811 on 2017/04/20 by Jamie.Dale
Improved the display of asset tags in the Content Browser
- Numeric tags are now displayed pretty printed.
- Numeric tags can now be displayed as a memory value (the numeric value should be in bytes).
- Dimensional tags are now split and each part pretty printed.
- Date/Time tags are now stored as a timestamp (which has the side effect of sorting correctly) and displayed as a localized date/time.
- The column view now shows the same display values as the tooltips do.
- The tooltip now uses the tag meta-data display name (if set).
- The tag meta-data display name can now be used as an alias in the Content Browser search.
#jira UE-34090
Change 3401868 on 2017/04/20 by Cody.Albert
Add screenshot save directory parameter to editor and project settings
#rn Added options to the settings menu to specify screenshot save directory
Change 3402107 on 2017/04/20 by Jamie.Dale
Cleaned up the "View Options" menu in the Content Browser
Re-organized some of the settings into better groups, and fixed some places where items would still be shown in the asset view when some of these content filter options were disabled (either via a setting, or via the UI).
Change 3402283 on 2017/04/20 by Jamie.Dale
Creating a folder in the Content Browser now creates the folder on disk, and cancelling a folder naming now removes the temporary folder
#jira UE-8892
Change 3402572 on 2017/04/20 by Alex.Delesky
#jira UE-42421
PR #3311: Improved log messages (Contributed by projectgheist)
Change 3403226 on 2017/04/21 by Yannick.Lange
VR Editor: - Removed previous quick menu floating UI panel.
- Added the concept of a info display floating UI panel.
- Used info display for showing sequencer timer.
Change 3403277 on 2017/04/21 by Yannick.Lange
VR Editor: - Set window mesh for info display panel.
- Add option to null out widget when hidden.
Change 3403289 on 2017/04/21 by Yannick.Lange
VR Editor: Don't load VREditorAssetContainer asset when starting editor.
Change 3403353 on 2017/04/21 by Yannick.Lange
VR Editor: Fix variable 'RelativeOffset' is uninitialized when used within its own initialization.
Change 3404183 on 2017/04/21 by Matt.Kuhlenschmidt
Fix typo
Change 3405378 on 2017/04/24 by Alex.Delesky
#jira UE-42550 - Audio thumbnails should never rerender now, even with real-time thumbnails enabled
Change 3405382 on 2017/04/24 by Alex.Delesky
#jira UE-42097 - The Main Frame window will no longer steadily grow if it's closed while not maximized
Change 3405384 on 2017/04/24 by Alex.Delesky
#jira UE-43985 - Duplicating Force Feedback, Sound Wave, or Sound Cue assets from the context menu after right-clicking on the playback controls will now correctly select the newly created asset for rename.
Change 3405386 on 2017/04/24 by Alex.Delesky
#jire UE-42239 - Blueprints that have been duplicated from another blueprint will now render their thumbnails correctly instead of displaying a flat black thumbnail.
Change 3405388 on 2017/04/24 by Alex.Delesky
#jira UE-43241 - Blueprint classes that derive from notplaceable classes (such as SpectatorPawn and GameMode) can no longer be placed within the level editor via the right-click Add/Replace menus
Change 3405394 on 2017/04/24 by Alex.Delesky
#jira UE-42137 - Users can no longer access the widget object of a Widget Component from within actor construction scripts
Change 3405429 on 2017/04/24 by Alex.Delesky
Fixing a naming issue for CL 3405378
Change 3405579 on 2017/04/24 by Cody.Albert
Fixed bad include from CL#1401868
#jira UE-44238
Change 3406716 on 2017/04/24 by Max.Chen
Sequencer: Add attach/detach rules for attach section.
#jira UE-40970
Change 3406718 on 2017/04/24 by Max.Chen
Sequencer: Set component velocity for attached objects
#jira UE-36337
Change 3406721 on 2017/04/24 by Max.Chen
Sequencer: Re-evaluate on stop. This fixes a situation where if you set the playback position to the end of a sequence while it's playing, the sequence will stop playing but won't re-evaluate to the end of the sequence.
#jira UE-43966
Change 3406726 on 2017/04/24 by Max.Chen
Sequencer: Added StopAndGoToEnd() function to player
#jira UE-43967
Change 3406727 on 2017/04/24 by Max.Chen
Sequencer: Add cinematic options to level sequence player
#jira UE-39388
Change 3407097 on 2017/04/25 by Yannick.Lange
VR Editor: Temp asset for free rotation handle gizmo.
Change 3407123 on 2017/04/25 by Michael.Dupuis
#jira UE-44329: Only display the message in attended mode and editor (so user can actually perform the save)
Change 3407135 on 2017/04/25 by Max.Chen
Sequencer: Load level sequence asynchronously.
#jira UE-43807
Change 3407137 on 2017/04/25 by Shaun.Kime
Fixing comments to refer to correct function name.
Change 3407138 on 2017/04/25 by Max.Chen
Sequencer: Mark actor that the spawnable duplicates as a transient so that the level isn't dirtied. Then clear the transient flag on the object template.
#jira UE-30007
Change 3407139 on 2017/04/25 by Max.Chen
Sequencer: Fix active marker in sub, cinematic, control rig sections.
#jira UE-44235
Change 3407229 on 2017/04/25 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3407343 on 2017/04/25 by Matt.Kuhlenschmidt
Added a world accessor to blutilties so they can operate on the editor world (spawn,destroy actors etc)
Change 3407401 on 2017/04/25 by Nick.Darnell
Slate - Adding a Round function to SlateRect. Also adding a way to convert a Transform2D to a full matrix.
Change 3407842 on 2017/04/25 by Matt.Kuhlenschmidt
Made AssetTools a uobject interface so it could be access from script.
A few methods were deprecated and renamed to enforce a consistent UI. Now all asset tools methods that expose a dialog have "WithDialog" in their name to differentiate them from methods that do not open dialogs and could be used by scripts for automation. C++ users may still access IAssetTools but should not ever need to use the UAssetTools interface class
Change 3407890 on 2017/04/25 by Matt.Kuhlenschmidt
Removed temp method
Change 3408084 on 2017/04/25 by Matt.Kuhlenschmidt
Exposed source control helpers to script
Change 3408163 on 2017/04/25 by Matt.Kuhlenschmidt
Deprecated actor grouping methods on UUnrealEdEngine and moved their functionality into their own class( UActorGroupingUtils). There is a new editor config setting to set which grouping utils class is used and defaults to the base class. The new utility methods are exposed to script.
Change 3408220 on 2017/04/25 by Alex.Delesky
#jira UE-43387 - The Levels window will now support the organization of streaming levels using editor-only folders.
Change 3408239 on 2017/04/25 by Matt.Kuhlenschmidt
Added a file helpers API to script. This one is a wrapper around FEditorFileUtils for now to work around some issues exposing legacy methods to script but FEditorFileUtils will be deprecated soon
Change 3408314 on 2017/04/25 by Jamie.Dale
Fixed typo
Change 3408911 on 2017/04/25 by Max.Chen
Level Editor: Delegate for when viewport tab content changes.
#jira UE-37805
Change 3408912 on 2017/04/25 by Max.Chen
Sequencer: Transport controls are added when viewport content changes and only to viewports that support it (ie. cinematic viewport doesn't allow it since it has its own transport controls). This fixes issues where transport controls wouldn't be visible in newly created viewports and also would get disabled when switching from default to cinematic and back to default.
#jira UE-37805
Change 3409073 on 2017/04/26 by Yannick.Lange
VR Editor: Fix starting point of lasers.
Change 3409330 on 2017/04/26 by Matt.Kuhlenschmidt
Fix CIS
Change 3409497 on 2017/04/26 by Alexis.Matte
Fix crash importing animation with skeleton that do not match the fbx skeleton.
#jira UE-43865
Change 3409530 on 2017/04/26 by Michael.Dupuis
#jira UE-44329: Only display the log if we're not running a commandlet
Change 3409559 on 2017/04/26 by Alex.Delesky
#jira none - Fixing case of header include for CL 3408220
Change 3409577 on 2017/04/26 by Yannick.Lange
VR Editor: being able to push/pull along the laser using touchpad or analog stick when transforming object towards laser impact.
Change 3409614 on 2017/04/26 by Max.Chen
Sequencer: Add Scrub() to movie scene player.
Change 3409658 on 2017/04/26 by Jamie.Dale
Made the handling of null item selection consistent in SComboBox
If the selection was initially null and the combo was closed, it would previously pass through the null entry to its child SListView, which would then always think the selection was changing when the combo was opened and cause it to immediately close again.
Change 3409659 on 2017/04/26 by Jamie.Dale
Added preset Unicode block range selection to the font editor UI
#jira UE-44312
Change 3409755 on 2017/04/26 by Max.Chen
Sequencer: Back out bIsUISound for scrubbing.
Change 3410015 on 2017/04/26 by Max.Chen
Sequencer: Fix crash on asynchronous level sequence player load.
#jira UE-43807
Change 3410094 on 2017/04/26 by Max.Chen
Slate: Enter edit mode and return handled if not read only.
Change 3410151 on 2017/04/26 by Michael.Trepka
Fix for building EngineTest project on Mac
Change 3410930 on 2017/04/27 by Matt.Kuhlenschmidt
Expose editor visibility methods on Actor to blueprint/script
Change 3411164 on 2017/04/27 by Matt.Kuhlenschmidt
Fix crash when repeatedly spaming ctrl+s and ctrl+shift+s to save.
PR #3511: UE-44098: Replace check with if-statement (Contributed by projectgheist)
Change 3411187 on 2017/04/27 by Jamie.Dale
No longer attempt to use the game culture override in the editor
Change 3411443 on 2017/04/27 by Alex.Delesky
#jira UE-43730, UE-43703 - Material Instances will now correctly use their preview meshes when being edited, or will use their parent's preview mesh if their preview mesh has not been set and the parent's is valid.
Change 3411809 on 2017/04/27 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3411810 on 2017/04/27 by Cody.Albert
Scrollbox now properly calls Invalidate while scrolling
Change 3411892 on 2017/04/27 by Alex.Delesky
#jira UE-40031
PR #3065: Ignore .vs folder when initializing git projects (Contributed by mattiascibien)
Change 3412002 on 2017/04/27 by Jamie.Dale
Fixed crash when using an invalid regex pattern
#jira UE-44340
Change 3412009 on 2017/04/27 by Cody.Albert
Fixed Invalidation Panel to apply scale only to volatile elements, correcting an issue with Cache Relative Positions
Change 3412631 on 2017/04/27 by Jamie.Dale
Implemented support for hiding empty folders in the Content Browser
"Empty" in this case is defined as folders that recursively don't contain assets or classes. Folders that have been created by the user or have at any point contained content during the current editing session are always shown.
This also fixes some places where the content filters would miss certain folders (usually due to missing checks when processing AssetRegistry events), and allows asset and path views to be synced to folder selections (as well as asset selections), which improves the experience when renaming folders, and navigating the Content Browser history.
#jira UE-40038
Change 3413023 on 2017/04/27 by Max.Chen
Sequencer: Fix filtering so that it includes parent nodes only and doesn't recurse through to add their children.
Change 3413309 on 2017/04/28 by Jamie.Dale
Fixed shadow warning
Change 3413327 on 2017/04/28 by Jamie.Dale
Added code to sanitize some known strings before passing them to ICU
Change 3413486 on 2017/04/28 by Matt.Kuhlenschmidt
Allow AssetRenameData to be exposed to blueprints/script
Change 3413630 on 2017/04/28 by Jamie.Dale
Moved FUnicodeBlockRange into Slate so that it can be used for C++ defined fonts as well as those defined in the font editor
Change 3414164 on 2017/04/28 by Jamie.Dale
Removing some type-unsafe placement new array additions
Change 3414497 on 2017/04/28 by Yannick.Lange
ViewportInteraction: - Add arcball sphere asset.
- Add opacity parameter to translucent gizmo material.
Change 3415021 on 2017/04/28 by Max.Chen
Sequencer: Remove spacer nodes at the top and bottom of the node tree.
This fixes the artifact of having spaces at the top and bottom which get selected when you click on the space and when you press Home and End to go to the top or bottom of the tree.
#jira UE-28931
Change 3415786 on 2017/05/01 by Matt.Kuhlenschmidt
#rn PR #3518: Allow PaintedVertices to be sized down (Contributed by jasoncalvert)
Change 3415836 on 2017/05/01 by Alex.Delesky
#jira UE-39203 - You can now summon the reference viewer from the content browser using the keyboard shortcut.
Change 3415837 on 2017/05/01 by Alex.Delesky
#jira UE-34947 - When the user attempts to download an IDE from within the editor (due to needing one to add a C++ class), the window that hosts the widget will now close if it's a modal window.
Change 3415839 on 2017/05/01 by Alex.Delesky
#jira UE-42049
PR #3266: Profiler: added Thread filter (Contributed by StefanoProsperi)
Change 3415842 on 2017/05/01 by Michael.Dupuis
#jira UE-44514 : Removed the warning as it's causing more issue than it fixes.
Change 3416511 on 2017/05/01 by Matt.Kuhlenschmidt
Make UHT generate WITH_EDITOR guards around UFunctions generated in a WITH_EDITOR C++ block. This prevents these functions from being generated in non-editor builds
Change 3416520 on 2017/05/01 by Yannick.Lange
Viewport Interaction: - Toggle ViewportWorldInteraction with command for desktop testing without having to use VREditor.
- Add helper function to add a unique extension by subclass.
Change 3416956 on 2017/05/01 by Matt.Kuhlenschmidt
Exposed EditorLevelUtils to script. This allows creation of streaming levels, setting the current level and moving actors between levels
Change 3416964 on 2017/05/01 by Matt.Kuhlenschmidt
Prevent foliage from marking actors dirty as HISM components are added and removed from the scene.
Change 3416988 on 2017/05/01 by Lauren.Ridge
PR #3122: UE-40262: Color tabs according to asset type (Contributed by projectgheist)
Changed the highlight style to be around the icon and match the content browser color and style.
#jira UE-40437
Change 3418014 on 2017/05/02 by Yannick.Lange
Viewport Interaction: Remove material members from base transform gizmo and use asset container to get materials.
Change 3418087 on 2017/05/02 by Lauren.Ridge
Adding minor tab icon surrounds
Change 3418602 on 2017/05/02 by Jamie.Dale
Fixed a crash that could occur due to bad data in the asset registry
It was possible for FAssetRegistry::PrioritizeSearchPath to re-order the BackgroundAssetResults in response to callback from FAssetRegistry::AssetSearchDataGathered, which caused integrity issues with the array, and would lead to results being missed, or an existing result being processed twice (which due to certain assumptions would result in it being deleted, and bad data being left in the asset registry).
These results lists now use a custom type that prevents the mutation of items that have already been processed but not yet trimmed.
Change 3418702 on 2017/05/02 by Matt.Kuhlenschmidt
Fix USD files that reference other USD files not finding the referenced files by relative path. Requires USD third party changes only
Change 3419071 on 2017/05/02 by Arciel.Rekman
UBT: optimize FixDeps step on Linux.
- Removes the need to re-link unrelated engine libraries when recompiling a code project.
- Makes builds faster on machines with multiple cores.
- The module that has circularly referenced dependencies is considered cross-referenced itself.
- Tested compilation on Linux (native & cross) and Mac (native).
Change 3419240 on 2017/05/02 by Cody.Albert
Bound widgets in animation tracks can no longer be swapped with widgets from a different widget blueprint, which would lead to a crash
Change 3420011 on 2017/05/02 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3420507 on 2017/05/03 by Lauren.Ridge
Selecting a camera or other preview actor in VR Mode now creates a floating in-world viewport. Also deselect all Actors when moving into and out of VR Mode
Change 3420643 on 2017/05/03 by andrew.porter
QAGame - Adding test content to QA-Sequencer for using spawnables with override bindings
Change 3420678 on 2017/05/03 by andrew.porter
QAGame: Updating override binding sequence
Change 3420961 on 2017/05/03 by Jamie.Dale
Exposed some missing Internationalization functions to BPs
Change 3422767 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Extensibility for dragging on gizmo handles
Removed ETransformGizmoInteractionType completely and replaced it with UViewportDragOperation. Using the ETransformGizmoInteractionType enum made external extensibility impossible. Now every gizmo handle group has a component called UViewportDragOperationComponent which holds a UViewportDragOperation of a certain type. This UViewportDragOperation can be inherited to create a custom method to calculate a new transform for the objects when dragging the gizmo handle.
Change 3422789 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Fix duplicate console variable.
Change 3422817 on 2017/05/04 by Andrew.Rodham
Sequencer: Changed level sequence object references to always use a package and object path based lookup
- Newly created binding references now consist of a package name and an inner object path for actors, and just an inner object path for components. The package name is fixed up dynamically for PIE, which means it can work correctly for multiplayer PIE, and when levels are streamed in during PIE (functionality previously unavailable to lazy object ptrs)
- Added a way of rebinding all possessable objects in the current sequence (Rebind Possessable References)
- Level sequence binding references no longer use native serialization now that TMap serialization is fully supported.
- Multiple bindings are now supported in the API layer of level sequence references, although this is not yet exposed to the sequencer UI.
#jira UE-44490
Change 3422826 on 2017/05/04 by Andrew.Rodham
Removed erroneous braces
Change 3422874 on 2017/05/04 by James.Golding
Adding MaterialEditingLibrary to allow manipulation of materials within the editor.
- Refactored code out of MaterialEditor where possible
Marked some material types as BP-accessible, to allow to editor-Blueprint access.
Remove unused 'bSkipPrim' property from Set/CheckMaterialUsage
Change 3422942 on 2017/05/04 by Lauren.Ridge
Tab padding adjustment to allow tabs with icons to be the same height as tabs without
Change 3423090 on 2017/05/04 by Jamie.Dale
Added a way to get the source package path for a localized package path
Added tests for the localized package path checks.
Change 3423133 on 2017/05/04 by Jamie.Dale
Fixed a bug where a trailing quote without a newline at the end of a CSV file would be added to the parsed text rather than converted to a terminator
Change 3423301 on 2017/05/04 by Max.Chen
Sequencer: Add JumpToPosition which updates to a position in a scrubbing state.
Change 3423344 on 2017/05/04 by Jamie.Dale
Updated localized asset group caching so that it works in non-cooked builds
Change 3423486 on 2017/05/04 by Lauren.Ridge
Fixing deselection code in VWI
Change 3423502 on 2017/05/04 by Jamie.Dale
Adding automated localization tests
Change 3424219 on 2017/05/04 by Yannick.Lange
- Hide FWidget when ViewportWorldInteraction starts.
- Added option to EditorViewportClient to not render FWidget without using FWidget::SetDefaultVisibility.
Change 3425116 on 2017/05/05 by Matt.Kuhlenschmidt
PR #3527: Modified comments (Contributed by projectgheist)
Change 3425239 on 2017/05/05 by Matt.Kuhlenschmidt
Fix shutdown crash in projects that unregister asset tools in UObjects being destroyed at shutdown.
Change 3425241 on 2017/05/05 by Max.Chen
Sequencer: Components aren't deselected from the sequencer tree view when they get deselected in the viewport/outliner.
#jira UE-44559
Change 3425286 on 2017/05/05 by Jamie.Dale
Text duplicated as part of a widget archetype now maintains its existing key
#jira UE-44715
Change 3425477 on 2017/05/05 by Andrew.Rodham
Sequencer: Do not deprecate legacy object references since they still need to be serialized on save
- Also re-add identical via equality operator so that serialization works again
Change 3425681 on 2017/05/05 by Jamie.Dale
Fixed fallback font height/baseline measuring
Change 3426137 on 2017/05/05 by Jamie.Dale
Removing PPF_Localized
It's an old UE3-ism that's no longer tested anywhere
Change 3427434 on 2017/05/07 by Yannick.Lange
ViewportInteraction: Null check for viewport.
Change 3427905 on 2017/05/08 by Matt.Kuhlenschmidt
Removed the concept of a global selection annotation. This poses a major problem when more than one selection set is clearing it. If more than one selection set is in a transaction the last one to be serialized will clear and rebuild the annotation thus causing out of sync issues with component and actor selection sets. This change introduces the concept of a per-selection set annotation to avoid being out of sync. Actor and ActorComponent now override IsSelected (editor only) to make use of these selections.
#jira UE-44655
Change 3428738 on 2017/05/08 by Matt.Kuhlenschmidt
Fix other usage of USelection not having a selection annotation
#jira UE-44786
Change 3429562 on 2017/05/08 by Matt.Kuhlenschmidt
Fix crash on platforms without a cursor
#jira UE-44815
Change 3429862 on 2017/05/08 by tim.gautier
QAGame: Enable Include CrashReporter in Project Settings
Change 3430385 on 2017/05/09 by Lauren.Ridge
Resetting user focus to game viewport after movie finishes playback
#jira UE-44785
Change 3430695 on 2017/05/09 by Lauren.Ridge
Fix for crash on leaving in the middle of a loading movie
#jira UE-44834
Change 3431234 on 2017/05/09 by Matt.Kuhlenschmidt
Fixed movie player setting all users to focus which breaks VR controllers
[CL 3432852 by Matt Kuhlenschmidt in Main branch]