#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
============================
MAJOR FEATURES & CHANGES
============================
Change 3494741 by Steve.Robb
Generated code size savings.
#jira UE-43048
Change 3495484 by Steve.Robb
Fix for generated indices of static arrays when saving configs.
Change 3497926 by Robert.Manuszewski
Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything.
Change 3498077 by Robert.Manuszewski
Only use the recursion guard in async loading code when the event driven loader is enabled.
Change 3498112 by Ben.Marsh
UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own.
Change 3500239 by Robert.Manuszewski
Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes.
Change 3500395 by Steve.Robb
Extra codegen savings when not in hot reload.
Change 3501004 by Steve.Robb
EObjectFlags now have constexpr operators.
Change 3502079 by Ben.Marsh
UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary.
Change 3502527 by Steve.Robb
Fix for zero-sized array compile error in generated code when all functions are editor-only.
Change 3502542 by Ben.Marsh
UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead.
Change 3502868 by Steve.Robb
Workaround for inefficient generated code with stateless lambdas on Clang.
Change 3503550 by Steve.Robb
Another generated code lambda optimization.
Change 3503582 by Ben.Marsh
BuildGraph: Add support for nullable parameter types.
Change 3504424 by Steve.Robb
New AllOf, AnyOf and NoneOf algorithms.
Change 3504712 by Ben.Marsh
UAT: Less spammy log and error output from UAT.
* Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception).
* Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information.
* AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log)
* Name of the calling function is not included in console output by default, but still included in the log.
Change 3504808 by Ben.Marsh
UAT: Suppress P4 output when running a recursive instance of UAT.
Change 3505044 by Steve.Robb
Code generation improved for TCppClassType code.
Change 3505485 by Ben.Marsh
Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module.
Change 3505699 by Ben.Marsh
Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins.
Change 3506055 by Ben.Marsh
UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output.
Change 3507745 by Robert.Manuszewski
Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses).
Change 3507911 by Ben.Marsh
Plugins: Minor changes to plugin descriptors.
* Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors.
* Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from.
Change 3508669 by Ben.Marsh
EC: Parse multi-line messages from UBT and UAT.
Change 3508691 by Ben.Marsh
Fix double-spacing of cook stats.
Change 3509245 by Steve.Robb
UHT makefiles removed.
Flag audit removed.
Change 3509275 by Steve.Robb
Fix for mismatched stat categories in AudioMixer.
#jira UE-46129
Change 3509289 by Robert.Manuszewski
Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably.
Change 3509294 by Robert.Manuszewski
UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it.
Change 3509312 by Steve.Robb
GitHub# 3679: Add TArray constructor that takes a raw pointer and a count
Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too.
#jira UE-46136
Change 3509396 by Steve.Robb
GitHub# 3676: Fix TUnion operator<< compile error
#jira UE-46099
Change 3509633 by Steve.Robb
Fix for line numbers on multiline macros.
Change 3509938 by Gil.Gribb
UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading.
Change 3510593 by Daniel.Lamb
Fixed up unsoilicited files getting populated with files which aren't finished being created yet.
#test None
Change 3510594 by Daniel.Lamb
Fixed up temp files directory for patching.
Thanks David Yerkess @ Milestone
#review@Ben.Marsh
Change 3511628 by Ben.Marsh
PR #3707: Fixed UBT stack size (Contributed by gildor2)
Change 3511808 by Ben.Marsh
Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git)
#jira UE-46540
Change 3512017 by Ben.Marsh
Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface.
Change 3513935 by Steve.Robb
Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477.
Change 3514142 by Steve.Robb
MemoryProfiler2 added to generated solution.
Change 3516463 by Ben.Marsh
Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user.
Change 3517860 by Ben.Marsh
PR #3727: FString Dereference Fixes (Contributed by jovisgCL)
Change 3517967 by Ben.Marsh
Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line.
Change 3518070 by Steve.Robb
Disable Binned2 stats in shipping non-editor builds.
Change 3520079 by Steve.Robb
Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions.
#jira UE-24034
Change 3520080 by Robert.Manuszewski
Made max package summary size to be configurable with ini setting
Change 3520083 by Steve.Robb
Force a GC after hot reload to clean up reinstanced objects which may still tick.
#jira UE-40421
Change 3520480 by Robert.Manuszewski
Improved assert message when the initial package read request was too small.
Change 3520590 by Graeme.Thornton
SignedArchiveReader optimizations
- Loads more stats
- Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader
- Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time
- Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries
Change 3521023 by Graeme.Thornton
Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing
Change 3521787 by Ben.Marsh
PR #3736: Small static code analysis fixes (Contributed by jovisgCL)
Change 3521789 by Ben.Marsh
PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar)
Change 3524721 by Ben.Marsh
Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core.
Change 3524741 by Ben.Marsh
Move PumpMessages() into FPlatformApplicationMisc.
Change 3525399 by Ben.Marsh
UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment.
Change 3525743 by Ben.Marsh
UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds.
Change 3525746 by Ben.Marsh
EC: Include the clobber option on new workspaces, to allow overriding version files when syncing.
Change 3526453 by Ben.Marsh
UGS: Do not generate project files when syncing precompiled binaries.
Change 3527045 by Ben.Marsh
Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting.
Change 3527420 by Ben.Marsh
UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing).
Config files are now read from:
Engine/Programs/UnrealGameSync/UnrealGameSync.ini
Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini
If a project is selected:
<ProjectDir>/Build/UnrealGameSync.ini
<ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini
If the .uprojectdirs file is selected:
Engine/Programs/UnrealGameSync/DefaultProject.ini
Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini
Change 3528063 by Ben.Marsh
Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse.
Change 3528415 by Ben.Marsh
UAT: Remove \r characters from the end of multiline log messages.
Change 3528427 by Ben.Marsh
EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent.
Change 3528485 by Ben.Marsh
EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places.
Change 3528505 by Steve.Robb
PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL)
#jira UE-46819
Change 3528772 by Robert.Manuszewski
Enabling actor and blueprint clustering in ShooterGame
Change 3528786 by Robert.Manuszewski
PR #3760: Fix typo (Contributed by jesseyeh)
Change 3528792 by Steve.Robb
PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL)
#jira UE-46962
Change 3528941 by Robert.Manuszewski
Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object.
#jira UE-44996
Change 3530241 by Ben.Marsh
UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value.
Change 3531377 by Ben.Marsh
Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it.
This has several advantages over the per-module platform whitelist/blacklist:
* Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore.
* References to dependent plugins from platform-specific plugins can now be eliminated.
* Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly).
* The editor can load any plugins without having to whitelist supported editor host platforms.
UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime.
Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary.
Change 3531502 by Jin.Zhang
Add support for GPUCrash #rb
Change 3531664 by Ben.Marsh
UBT: Change output format from C# JSON writer to match output by the engine.
Change 3531848 by Ben.Marsh
UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable.
Change 3531869 by Ben.Marsh
UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field.
Change 3532474 by Ben.Marsh
UBT: Use the same mechanism as UAT for logging exceptions.
Change 3532734 by Graeme.Thornton
Initial VSCode Support
- Tasks generated for building all game/engine/program targets
- Debugging support for targets on Win64
Change 3532789 by Steve.Robb
FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap.
Set_Add and Map_Add no longer have a return value.
FScriptSet::Find and FScriptMap::Find functions are now FindIndex.
FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash.
Change 3532845 by Steve.Robb
Obsolete UHT settings deleted.
Change 3532875 by Graeme.Thornton
VSCode
- Add debug targets for different target configurations
- Choose between VS debugger (windows) and GDB (mac/linux)
Change 3532906 by Graeme.Thornton
VSCode
- Point all builds directly at UBT rather than the batch files
- Adjust mac build tasks to run through mono
Change 3532924 by Ben.Marsh
UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root.
Change 3535234 by Graeme.Thornton
VSCode - Pass intellisense system a list of paths to use for header resolution
Change 3535247 by Graeme.Thornton
UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation
Change 3535376 by Graeme.Thornton
VSCode
- Added build jobs for C# projects
- Linked launch tasks to relevant build task
Change 3537083 by Ben.Marsh
EC: Change P4 swarm links to start at the changelist for a build.
Change 3537368 by Graeme.Thornton
Fix for crash in FSignedArchiveReader when multithreading is disabled
Change 3537550 by Graeme.Thornton
Fixed a crash in the taskgraph when running single threaded
Change 3537922 by Steve.Robb
Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT.
Change 3539691 by Graeme.Thornton
VSCode - Various updates to get PC and Mac C++ projects building and debugging.
- Some other changes to C# setup to allow compilation. Debugging doesn't work.
Change 3539775 by Ben.Marsh
Plugins: Various fixes to settings for enabling plugins.
* Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled).
* Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed.
* Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them.
Change 3540788 by Ben.Marsh
UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile).
Example usage:
public class UnrealPakTarget : TargetRules
{
public UnrealPakTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Program;
LinkType = TargetLinkType.Monolithic;
LaunchModuleName = "UnrealPak";
if(HostPlatform == UnrealTargetPlatform.Win64)
{
PreBuildSteps.Add("echo Before building:");
PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
PostBuildSteps.Add("echo After building!");
PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
}
}
}
Change 3541664 by Graeme.Thornton
VSCode - Add problemMatcher tag to cpp build targets
Change 3541732 by Graeme.Thornton
VSCode - Change UBT command line switch to "-vscode" for simplicity
Change 3541967 by Graeme.Thornton
VSCode - Fixes for Mac/Linux build steps
Change 3541968 by Ben.Marsh
CRP: Pass through the EnabledPlugins element in crash context XML files.
#jira UE-46912
Change 3542519 by Ben.Marsh
UBT: Add chain of references to error messages when configuring plugins.
Change 3542523 by Ben.Marsh
UBT: Add more useful error message when attempt to parse a JSON object fails.
Change 3542658 by Ben.Marsh
UBT: Include a chain of references when reporting errors instantiating modules.
Change 3543432 by Ben.Marsh
Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set.
Change 3543436 by Ben.Marsh
UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails.
Change 3543536 by Ben.Marsh
UBT: Downgrade message about redundant plugin references to a warning.
Change 3543871 by Gil.Gribb
UE4 - Fixed a critical crash bug with non-EDL loading from pak files.
Change 3543924 by Robert.Manuszewski
Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes.
+Small optimization to token stream generation code.
Change 3544469 by Jin.Zhang
Crashes page displays the list of plugins from the crash context #rb
Change 3544608 by Steve.Robb
Fix for nativized generated code.
#jira UE-47452
Change 3544612 by Ben.Marsh
Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages().
#jira UE-47449
Change 3545954 by Gil.Gribb
Fixed a critical crash bug relating to a race condition in async package summary reading.
Change 3545968 by Ben.Marsh
UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same.
#jira UE-47419
Change 3545976 by Ben.Marsh
EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch.
Change 3546185 by Ben.Marsh
Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped.
Change 3547084 by Gil.Gribb
Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms.
Change 3547968 by Gil.Gribb
Fixed critical race which potentially could cause a crash in the pak precacher.
Change 3504722 by Ben.Marsh
BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run.
For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as:
ERROR: Unable to write to foo.txt
while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" />
at Engine\Build\InstalledEngineBuild.xml(91)
(see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)
Change 3512255 by Ben.Marsh
Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated.
Change 3512332 by Ben.Marsh
Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4.
Change 3512393 by Ben.Marsh
Rename FPaths::GameLogDir() to FPaths::ProjectLogDir().
Change 3513452 by Ben.Marsh
Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project.
Change 3516262 by Ben.Marsh
Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor.
* Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod.
* The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders).
Change 3517565 by Ben.Marsh
Remove fixed engine version numbers from OSS plugins.
Change 3518005 by Ben.Marsh
UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false.
Change 3518054 by Ben.Marsh
UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard.
Change 3524496 by Ben.Marsh
Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core.
Change 3524641 by Ben.Marsh
Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc.
Change 3528723 by Steve.Robb
MoveTemp now static asserts if passed a const reference or rvalue.
MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious.
Fixes to violations of these new rules.
Change 3528876 by Ben.Marsh
Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste.
Change 3529073 by Ben.Marsh
Add script to package ShooterGame for any platforms.
Change 3531493 by Ben.Marsh
Update platform-specific plugins to declare the target platforms they support.
Change 3531611 by Ben.Marsh
UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates.
Change 3531868 by Ben.Marsh
Resaving project descriptors to remove invalid fields.
Change 3531983 by Ben.Marsh
UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders.
* Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer.
* Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type)
* Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo"))
* An error is output if any restricted folder names other than the output platform are in the staged output.
Change 3540315 by Ben.Marsh
UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers.
Change 3542410 by Ben.Marsh
UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already.
Change 3543018 by Ben.Marsh
UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions.
Change 3544371 by Steve.Robb
Fixes to TSet_Add and TMap_Add BPs.
#jira UE-47441
[CL 3548391 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3280282 on 2017/01/31 by Matt.Kuhlenschmidt
GitHub 3171 : fix 'memoreport -full' causes ensure condition fail on particle object
Change 3281111 on 2017/02/01 by Michael.Dupuis
#jira UE-36318 : was'nt notifying that we changed the current level in the case where you add/create new level in the Level window
Change 3281225 on 2017/02/01 by Jamie.Dale
Several improvements to culture switching and LocRes files
- LocRes files now de-duplicate translations when they're generated, which can result in smaller LocRes files.
- The localization compilation step now produces a LocNat file, which contains meta-data specifying the native culture during compile, and where the native LocRes file can be found.
- Changing cultures now loads the native localization data prior to loading the non-native translations to ensure that translations are always applied to a consistent base.
- The "leet" culture (available when localization testing is enabled) is now always applied against the native translation, and correctly restores non-translated text when switching away from the "leet" culture.
- "-culture=leet" now works correctly on the command line ("-leet" also works).
- LoadLocalizationResourcesForCulture is no longer called multiple times during initialization of the text localization manager.
- General clean-up of localization code to favor using LocKeyFuncs with maps and sets, rather than rolling their own key funcs.
Change 3281291 on 2017/02/01 by Alexis.Matte
Make sure the sections material slot assignation is persist correctly for staticmesh and for skeletal mesh
#jira UE-39639
Change 3281718 on 2017/02/01 by Michael.Dupuis
#jira UE-34186: invert processing order of special character, to take into account that key name could be considered a special character and would cause the assumption done to no longer be valid
Change 3281861 on 2017/02/01 by Alexis.Matte
Fix import of morph target when there is no animation
#jira UE-41383
Change 3282791 on 2017/02/02 by Chris.Wood
Split crash analytics methods to fix comment parsing issues.
[UE-32787] - Document Crash Report Client analytics events in code
Change 3283316 on 2017/02/02 by Alexis.Matte
Make sure we do not import more then the maximum allowed node
#jira UE-41405
Change 3283349 on 2017/02/02 by Jamie.Dale
Updated Portal to stage its .locnat files
Change 3283927 on 2017/02/02 by Matt.Kuhlenschmidt
Fix component/actor selection becoming out of sync after undo/redo
#jira UE-41416
Change 3284061 on 2017/02/02 by Alexis.Matte
Fix the scene importer front x axis import
#jira UE-41318
Change 3284280 on 2017/02/02 by Alex.Delesky
#jira UE-41060 - Placing blocking volumes in the level via the Content Menu's "Place Actor" command will now place a blocking volume in the level and not generate an empty warning in the output log
Change 3285053 on 2017/02/03 by Michael.Dupuis
#jira UE-33777: Handle the global landscape editor ui command list so specified shortcut will be treated
Change 3285444 on 2017/02/03 by Jamie.Dale
Updated FastDecimalFormat to support the correct 0-9 numerals for the current locale
These are typically still Latin, but Middle Eastern languages have some variants.
This addresses an inconsistency between FText formatting of numbers and dates (since numbers always used Latin, but dates used the culture correct numerals).
Change 3287422 on 2017/02/06 by Michael.Dupuis
#jira UE-36580: Improved the whole word algo to take into consideration localisation
Change 3287455 on 2017/02/06 by Alexis.Matte
When swaping the mesh point by the mesh component, we noe clean up the override material instead of empty it.
#jira UE-41397
Change 3287745 on 2017/02/06 by Alexis.Matte
Merge from orion dev-general cl:3286668
Fix a crash when importing a LOD containing different material with less sections
Change 3287996 on 2017/02/06 by Michael.Dupuis
#jira UE-37290: fixed naming to be "move to level" instead of "move level"
Change 3288090 on 2017/02/06 by Jamie.Dale
Fixing missing include breaking the FText natvis
Change 3288105 on 2017/02/06 by Jamie.Dale
FTextStringHelper::ReadFromString_ComplexText now only looks at the start of the buffer when matching the complex text macros
Change 3288150 on 2017/02/06 by Jamie.Dale
Fixing display names for tutorial categories so that they can be localized
They were already FText, but the config wasn't defining them in a localizable way.
#jira UE-37926
Change 3288469 on 2017/02/06 by Alex.Delesky
#jira UE-35464 - Enables the editor to parse SubRip Subtitles files to create subtitle assets.
This also introduces the Subtitles module.
Change 3288540 on 2017/02/06 by Alex.Delesky
Backing out changelist 3288469 due to build issue with module includes
#jira none
Change 3289074 on 2017/02/06 by Alex.Delesky
Back out changelist 3288540 - reintroducing Subtitles module to parse SubRip Subtitles files
#jira UE-35464
Change 3289753 on 2017/02/07 by Michael.Dupuis
#jira UE-34599: Take into consideration UMaterialExpressionMaterialFunctionCall when getting the GUID
Change 3290097 on 2017/02/07 by Nick.Darnell
Automation - The automation framework no longer buckets errors, warnings and log statements into a seperate set of buckets. There is now only one log, and all entries go into it to provide some context when things fail. Continued working on the styling of the reports.
Change 3290182 on 2017/02/07 by Michael.Trepka
Added missing initialization for SWindow::bIsMirrorWindow
Change 3290472 on 2017/02/07 by Michael.Dupuis
#jira UE-37358: Add reference list in the dialog for all delete type
Change 3290513 on 2017/02/07 by Michael.Dupuis
#jira UE-37958: was testing the trailing number 0 twice and never testing the 1
Change 3290543 on 2017/02/07 by Michael.Dupuis
#jira UE-35931: Refresh detail panel on selection lost
Change 3290581 on 2017/02/07 by Michael.Dupuis
Fixed possible crash if we have no level blueprint specified (was crashing during the delete of an actor)
Change 3290721 on 2017/02/07 by Michael.Dupuis
#jira UE-40360: Pass the custom spawning struct which contain the level override into to the spawn function
Change 3291958 on 2017/02/08 by Alexis.Matte
Back out revision 26 from //UE4/Dev-Editor/Engine/Source/Developer/AssetTools/Private/AssetTools.cpp
Change 3292017 on 2017/02/08 by Alexis.Matte
Add some fbx automation tests to validate material re-import
Change 3292030 on 2017/02/08 by Michael.Dupuis
#jira UE-37958: was testing the trailing number 0 twice and never testing the 1
Change 3293062 on 2017/02/08 by Jamie.Dale
Reduced the number of allocations that happen when rebuilding text
This change removes the wasteful FTextHistory::ToText function and replaces it with two more specialized functions; FTextHistory::BuildLocalizedDisplayString and FTextHistory::BuildInvariantDisplayString.
These new functions return an FString (for the display string), rather than an FText (which was simply mined for its display string). Simply avoiding going via an FText saves at least two allocations per-rebuild.
Changes:
- Removed FTextHistory::ToText and replaced it with FTextHistory::BuildLocalizedDisplayString and FTextHistory::BuildInvariantDisplayString.
- Moved the localization aware chronological and transformation implementations into FTextChronoFormatter and FTextTransformer. These return an FString which avoids an FText allocation during rebuild, and is simply passed into an FText during normal FText usage.
- Moved FText::AsDate, FText::AsDateTime, FText::AsTime, FText::ToUpper, and FText::ToLower into Text.cpp, and these now use FTextChronoFormatter and FTextTransformer from the common text implementation.
- Moved FText::AsTimespan into Text.cpp. This had no dependency on ICU, so this is now the common text implementation.
- Added FTextFormatter::FormatStr variants. FTextFormatter::Format calls these FTextFormatter::FormatStr versions internally, and they're also used during text rebuilding (saving not only an FText allocation, but also a container copy).
- Removed FText::CreateNumericalText and FText::CreateChronologicalText as they were mostly superfluous.
- General update from using MakeShareable to MakeShared (saving 1 allocation).
- General clean-up of L10N/I18N class friendship.
#jira UE-41533
Change 3293292 on 2017/02/08 by Alex.Delesky
Performing some cleanup in the Subtitles module, and creating a SubtitlesEditor module for the subtitles asset factories since it causes issue in client builds.
Change 3293477 on 2017/02/08 by Jamie.Dale
Fixed TProperty::InitializeValueInternal and TProperty::DestroyValueInternal mismatch when dealing with fixed size arrays
#jira UE-41007
Change 3293571 on 2017/02/08 by Matt.Kuhlenschmidt
Fix lots of outline data being added to the font cache due to wrongly hashing outline material and color data.
Change 3293572 on 2017/02/08 by Matt.Kuhlenschmidt
Fix details panel categories in the static mesh editor
Change 3294216 on 2017/02/09 by Michael.Dupuis
#jira UE-40609: manually position the window based on it'S max possible size
#3128 GitHub
Change 3294430 on 2017/02/09 by Jamie.Dale
Kerning-only text shaping no longer draws characters to get their metrics
It now goes via the low-level FT caches like HarfBuzz does.
Change 3294588 on 2017/02/09 by Alexis.Matte
If we remove a LODGroup from baseengine.ini, the fbx importer UI will now be able to recover in case the last fbx import was done with the just removed LODGroup
Change 3294847 on 2017/02/09 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3295093 on 2017/02/09 by Arciel.Rekman
Linux: fix Setup.sh not working in paths with space (UE-41819).
Change 3295205 on 2017/02/09 by Matt.Kuhlenschmidt
Fix material UV's no longer working om 9 slice elements
Change 3295816 on 2017/02/09 by Arciel.Rekman
Linux: fix starting programs from a path with space.
Change 3296129 on 2017/02/09 by Arciel.Rekman
Linux i686: changes necessary to compile BlankProgram.
- Added new architecture to UBT.
- Fixed system headers.
- Added third party libs for i686:
- jemalloc
- elftoolchain
- zlib
- SDL2
- libc++
Change 3296564 on 2017/02/10 by Jamie.Dale
Cleaned up PO comment preservation
Change 3296694 on 2017/02/10 by Jamie.Dale
AllocateNameEntry now takes TCharType* rather than void* and cast
Change 3296744 on 2017/02/10 by Jamie.Dale
Moved the PO DOM from UnrealEd to Internationalization
Change 3297250 on 2017/02/10 by Jamie.Dale
Split the PO import/export pipeline out of the commandlet
Change 3297420 on 2017/02/10 by Alexis.Matte
Add Isolate and highlight feature for the material panel in the staticmesh and the skeletal editor.
#jira UE-38985
Change 3297594 on 2017/02/10 by Alexis.Matte
When importing from fbx a static mesh with find material anywhere, the next LODs import by the user will create new material entries instead of using the existing one.
Change 3297752 on 2017/02/10 by Arciel.Rekman
i686 support: more third party libs.
- libcurl
- OpenSSL
- libpng
- libvorbis
- libogg
- libopus
Change 3297754 on 2017/02/10 by Arciel.Rekman
i686 support: PhysX
Change 3297922 on 2017/02/10 by Alexis.Matte
When importing a new LOD to a staticmesh, the data source file is not anymore wipe or change to the last fbx import filename.
Change 3298330 on 2017/02/10 by Arciel.Rekman
i686: missing libcurl.
Change 3298620 on 2017/02/11 by Jamie.Dale
FLocTextHelper improvements
- It can now support non-standard target layouts (where the native and foreign cultures are in different locations - see FLocTextTargetPaths).
- The XForeignArchive functions are now more strict, and *only* accept foreign cultures (use the XArchive functions instead if you're using both native and foreign cultures as parameters).
Change 3299293 on 2017/02/13 by Matt.Kuhlenschmidt
PR #3241: UE-41870: Add quotes when passing through the directory path (Contributed by projectgheist)
Change 3299299 on 2017/02/13 by Matt.Kuhlenschmidt
PR #3224: Git plugin: fix git autodetection and add error message (Contributed by SRombauts)
Change 3299391 on 2017/02/13 by Matt.Kuhlenschmidt
Fix material instances being marked dirty when opening
#jira UE-41721, UE-41719
Change 3299441 on 2017/02/13 by Nick.Darnell
PR #3243: Fix bug that UWidget::GetOwningPlayer doesn't return (Contributed by yeonseok-yi)
Change 3299567 on 2017/02/13 by Nick.Darnell
Slate - The Checkbox no longer just passes visibility down to the internal widgets it creates, that prevents future changes to effect it if it starts collapsed.
#jira UE-41904
Change 3299870 on 2017/02/13 by Jamie.Dale
Added cycle counters for font rendering/shaping
Change 3300116 on 2017/02/13 by Michael.Dupuis
#jira UE-41866: Update cache when performing an undo
Change 3300178 on 2017/02/13 by Alexis.Matte
Fix a crash when re-importing a LOD with more sections then the base LOD
Change 3300191 on 2017/02/13 by Alexis.Matte
Make sure we do not loose castshadow and recomputetangents section flags when we re-import a skeletal mesh.
Change 3300351 on 2017/02/13 by Alexis.Matte
Remove the clean up of unused material for the staticmesh editor. Unused material can be delete manually in the UI
#jira UE-39639
Change 3302138 on 2017/02/14 by Nick.Darnell
Automation - Adding support for -DeveloperReportOutputPath and -DeveloperReportUrl to permit local runs of the automation tool to generate reports on the report server, and launch the browser window to view them.
Change 3302139 on 2017/02/14 by Nick.Darnell
UMG - Additional fixes to the way we migrate changes from the preview to the serialized version of the widget tree. This fixes several issues with edit-inline objects on UWidgets.
Change 3302281 on 2017/02/14 by Nick.Darnell
Slate - Bringing over changes to the invalidation panel from one of the game streams. This fixes issues with animations in volatile widgets, as well as some issues with cache relative offset, and offers a method for enabling a different caching method to preserve batching through a commandline, but at the cost of not being able to use GPU buffers, possibly a better option on mobile in some cases.
Change 3302415 on 2017/02/14 by Nick.Darnell
Disabling the open asset editor test.
Change 3302976 on 2017/02/14 by Nick.Darnell
Automation - Updating one of the tests to open 70 different known asset types, and ensure that they open without dirtying the package. AutomationTestSettings are now defaultengine, not sure why they setup to be user specific previously. Most of these settings need to be removed, or split off into the modules that own them, rather than being in Engine. TODO.
Change 3303724 on 2017/02/15 by Matt.Kuhlenschmidt
Removed hard coded list of thumbnails, preventing objects with valid thumbnails from showing up. Thumbnails are now shown by default. Use meta=(DisplayThumbnail=false) to remove
#jira UE-41958
Change 3303729 on 2017/02/15 by Matt.Kuhlenschmidt
PR #3253: UE-34539: (Bugfix) Allow binary files in git stored via git-fat, git-lfs, etc to be diffed (take 2) (Contributed by rpav)
Change 3303733 on 2017/02/15 by Matt.Kuhlenschmidt
PR #3248: Fix for TAssetSubClassOf properties reset on undo. (Contributed by StefanoProsperi)
Change 3303823 on 2017/02/15 by Nick.Darnell
Automation - Continued improvements on screenshots. Added some fixes to turn off the tonemapper when visualizing buffers. Fixed several screenshots due to this change. Adding lightboxes to the reports. Adding some styling to make things sweeter.
Change 3303937 on 2017/02/15 by Matt.Kuhlenschmidt
Fix build error
Change 3303982 on 2017/02/15 by Nick.Darnell
Automation - Making the opening of the image no longer threaded, not really helpful for the IO operation and just makes it harder to follow.
Change 3304058 on 2017/02/15 by Matt.Kuhlenschmidt
Fix build attempt #2 (not reproducible locally)
Change 3304393 on 2017/02/15 by Matt.Barnes
Submitting test content for UEQATC-3548
Change 3304517 on 2017/02/15 by Nick.Darnell
Slate - Making some fixes to the automatic disabling of the pixel snapping code with render transforms. Sometimes it gets confused, we may want to move to a seperate transform stack for layout and render, and make sure the element drawer has access to both.
Change 3304560 on 2017/02/15 by Nick.Darnell
UMG - SA fix.
Change 3304890 on 2017/02/15 by Matt.Kuhlenschmidt
PR #3220: UE-41243: Force resolution in standalone if large than primary workin. (Contributed by projectgheist)
Change 3305360 on 2017/02/15 by Arciel.Rekman
Linux: fix crash on exit (UE-41907).
- It is not safe to dereference UAnimGraphNode_PoseDriver::StaticClass during the final shutdown sequence since the instance has already been destroyed in StaticExit().
Change 3306023 on 2017/02/16 by Nick.Darnell
Paper2D - Adding a method to create SlateBrushes from PaperSprites the same way we can for materials and textures in blueprints.
Change 3306030 on 2017/02/16 by Nick.Darnell
Slate - Making some additional fixes to invalidation panels from a game branch. Adding a RoundToVector function to FVector2D, fixing the 3 places we defined a RoundToInt (which wasn't a great name since the convention wasn't meant to be used that way).
Change 3306031 on 2017/02/16 by Nick.Darnell
Slate - Retainer widgets no longer tick using PreTick on SlateApplication, they now paint during their normal paint.
Change 3306046 on 2017/02/16 by Nick.Darnell
UMG - Adding CanEditChange to WidgetComponent to gray out the CylinderArcAngle property unless you select the right geometry mode.
Change 3308887 on 2017/02/17 by Matt.Kuhlenschmidt
Fix crash if blurs are rotated
#jira UE-42037
Change 3309114 on 2017/02/17 by Jamie.Dale
Unifying non-shaped text to use the same atlas cache as shaped text
Change 3310044 on 2017/02/17 by Matt.Kuhlenschmidt
Outline color on text elements is now inherited properly
#jira UE-40691
Change 3310268 on 2017/02/17 by Matt.Kuhlenschmidt
Guard against rendering MIDs with potentially no parent in slate.
#jira UE-42047
Change 3311531 on 2017/02/20 by Michael.Dupuis
#jira UETOOL-1100:
Add the possibility to have dynamic min/max slider value
Synchonize all Color vector together when changing the min/max slider value
Change 3311534 on 2017/02/20 by Michael.Dupuis
incremental build fix
Change 3311535 on 2017/02/20 by Michael.Dupuis
incremental build fix take 2...
Change 3311743 on 2017/02/20 by Michael.Dupuis
buildfix lunix incremental
Change 3312496 on 2017/02/20 by Arciel.Rekman
Linux: fix PhysX crash in i686.
- Changed layout to one that works.
Change 3313127 on 2017/02/20 by Jamie.Dale
Fixed crash when performing a non-async cooked package save
It isn't safe to call TotalSize on the BulkArchive when it's not a FBufferArchive (as used during async save) once the archive has been closed.
Change 3313990 on 2017/02/21 by Nick.Darnell
Automation - Added a summary area at the top of the report.
Change 3314034 on 2017/02/21 by Jamie.Dale
Fixed crash when deleting a streamed font
Change 3314942 on 2017/02/21 by Nick.Darnell
Automation - More templating styling work.
Change 3315080 on 2017/02/21 by Nick.Darnell
Automation - Providing a way for users to remove explict events from the event log when automated tests run. Needed for other systems linked into the automation system like google mock.
Change 3315452 on 2017/02/21 by Nick.Darnell
Json - Adding support for Map and Set properties to the JsonObjectConverter. Can now save out map and sets. No support for loading them yet.
Change 3315614 on 2017/02/21 by Nick.Darnell
Json - Adding support for loading sets and map json data.
Change 3315924 on 2017/02/21 by Arciel.Rekman
Vulkan: edigrating various Linux fixes by Josh.
- This is to make Linux Vulkan work in Dev-Editor easier (for the contractor and myself).
Original descriptions:
CL 3313445
- Various Vulkan fixes:
- Compiles in Linux
- Many cubemap bugs squashed
- Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear()
- Added compute fences
CL 3314152
- Fixed compile error on Mac, but I am pretty sure we can just remote VulkanRHI from Mac building entirely, but needs to be tested.
Change 3316741 on 2017/02/22 by Jamie.Dale
Ensure that enums used by BP nodes have been PostLoaded so they have the correct display names
#jira UE-42253
Change 3316800 on 2017/02/22 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3317058 on 2017/02/22 by Alexis.Matte
Fix the scene importer to support correctly the obj file format
#jira UE-35606
Change 3318039 on 2017/02/22 by Arciel.Rekman
i686 support: added missing libwebsockets.
Change 3318095 on 2017/02/22 by Arciel.Rekman
i686 support: Oodle.
Change 3319002 on 2017/02/23 by Michael.Dupuis
#jira UE-41794 : Do not exit the landscape mode when doing undo from the creation of the landscape
Change 3319012 on 2017/02/23 by Alexis.Matte
PR #3066: Improve asset import by permitted relative paths and easing editing of mapped mount points. (Contributed by paulevans)
#jira UE-40039
Change 3319035 on 2017/02/23 by Nick.Darnell
UMG - Adding a note about the font sizes in UE4 in Slate, using 96 dpi.
#jira UE-42170
Change 3319040 on 2017/02/23 by Matt.Kuhlenschmidt
PR #3278: Git plugin: fix revision number for blueprint diff menu (Contributed by SRombauts)
#jira UE-42129
Change 3319072 on 2017/02/23 by Michael.Dupuis
#jira UETOOL-1101: Add support for DetailGroup reset to default
Right now it's only enable for the color grading
Change 3319077 on 2017/02/23 by Nick.Darnell
Automation - Moving away from most of the templating being done in C++. Moving to dust.js to just do it in the browser window. The json report file is now the actual source of the information we use to template the resulting report html. Maaay have to move to doing the templating server side in the future to stream it to the client better, but avoiding that so we don't have to ship a server. Disabling several places we were taking editor screenshots, none of that code was actually comparing screenshots, it was a hold-over from earlier days.
PhysX - Fixing a problem with Physx FillInlinePxShapeArray. Deprecating it, adding FillInlinePxShapeArray_AssumesLocked, and locking places we were assuming it was already locked in the landscape component.
Change 3319088 on 2017/02/23 by Nick.Darnell
PR #3245: UE-41707: Re-order includes correctly (Contributed by projectgheist)
#jira UE-41914
Change 3319104 on 2017/02/23 by Michael.Dupuis
fix incremental build
Change 3319146 on 2017/02/23 by Matt.Kuhlenschmidt
PR #3292: Git plugin: fix update status on directories broken since UE4.12 (Contributed by SRombauts)
#jira UE-42272
Change 3319252 on 2017/02/23 by Michael.Dupuis
fix warning with missing #undef LOCTEXT_NAMESPACE
Change 3319298 on 2017/02/23 by Alex.Delesky
Removing the Subtitles and SubtitlesEditor modules (it'll eventually be brought back as the Overlay and OverlayEditor modules)
Change 3319388 on 2017/02/23 by Alexis.Matte
Fbx Importer now find collision model under fbx LOD Group
#jira UE-42141
Change 3319528 on 2017/02/23 by Michael.Dupuis
Fixed Undo/Redo to be consistent with other vector modifcation behavior
Change 3319583 on 2017/02/23 by Alexis.Matte
Fix the sample rate to use the least common multiplier of all keys
#jira UE-42012
Change 3319705 on 2017/02/23 by Nick.Darnell
Static Analysis - Fixing sonobjectconverter.cpp(460) : warning C6011: Dereferencing NULL pointer 'ArrayProperty'.
Change 3319711 on 2017/02/23 by Nick.Darnell
Editor - Adding some checks to make sure the struct we're accessing is still a valid handle.
#jira UE-42262
Change 3319736 on 2017/02/23 by Alex.Delesky
Adding Subtitles and SubtitlesEditor to the JunkManifest file.
Change 3319919 on 2017/02/23 by Nick.Darnell
Automation - Fixing an issue with moving a location that doesn't exist.
Change 3319932 on 2017/02/23 by Alexis.Matte
Fbx importer, do not apply more then one time the transform option to the scene node.
#jira UE-42277
Change 3320105 on 2017/02/23 by Nick.Darnell
Editor - Adding some additional checks to the margin customization.
#jira UE-42262
Change 3321577 on 2017/02/24 by Jamie.Dale
Moving Internationalization module from Runtime to Developer
Change 3321625 on 2017/02/24 by Jamie.Dale
Moving InternationalizationSettings module from Developer to Editor
Change 3321642 on 2017/02/24 by Jamie.Dale
Moving SCulturePicker from the Localization module to the InternationalizationSettings module
Change 3321734 on 2017/02/24 by Alexis.Matte
PR #2979: Fix extra root bone for Blender exported FBX. (Contributed by manmohanbishnoi)
We fix the extra root only when the file creator is from blender and the root node is named armature. We cannot simply remove all dummy node, since this is use by the rigid mesh workflow.
#jira UE-39050
Change 3321912 on 2017/02/24 by Jamie.Dale
Split LocalizationCommandletExecution out of the Localization module to remove some editor dependencies
Change 3322274 on 2017/02/24 by Jamie.Dale
Moving Localization module from Editor to Developer, and merging the Internationalization module into it
Removed hard-dependency between Engine and Localization/Internationalization via an interface.
Change 3322774 on 2017/02/25 by Jamie.Dale
Unifying LocRes and LocNat file format between generation and loading
This lets the code in Core be shared by Localization, and allows some code that was proxying via archives (due to the code being logically identical, but different C++ types) to use these new types directly.
#tests Built Debug, Shipping, and Editor. Verified that LocNat and LocRes generation and loading worked as before.
Change 3322795 on 2017/02/25 by Jamie.Dale
Fixing mismatch between SOURCE_CONTROL_WITH_SLATE and its .Build.cs file
The define was set to disable Slate for Linux program targets only, but the .Build.cs disabled Slate for all Linux targets.
Since the define was touched most recently (CL# 2534983), I updated the .Build.cs file to match its logic, and moved the definition of the define to the .Build.cs file so that they stay in sync with one another.
Change 3322853 on 2017/02/25 by Jamie.Dale
Moved the conflict and word count reporting to FLocTextHelper
Change 3323089 on 2017/02/26 by Jamie.Dale
Added functions to get the target name and path from FLocTextHelper
Change 3323391 on 2017/02/27 by Ben.Cosh
This fixes an issue with blueprint config variables having their value destroyed by CDO serialization
#Jira UE-40586 Blueprint variable defaults set from config files value are overwritten by CDO serialization
#Proj Engine, CoreUObject
Change 3323406 on 2017/02/27 by Ben.Cosh
Fixed a problem that caused UK2Node::ExpandSplitPin to destroy pins it didn't own in when expanding a collapsed graph during compilation.
#jira UE-41211 - Crash when splitting a UDS pin on a collapsed graph
#Proj BlueprintGraph
Change 3323572 on 2017/02/27 by Nick.Darnell
Automation - Continued itteration on the style of the automation reports, now with attentional info, like where the log came from.
Automation - Fixing a bug in the functional actor tests, navigating to the actors sometimes opened other objects in the package, now it only opens the map. Also improved the way we focus the actor so that the level editor is also brought to the foreground.
Automation - Fixing a bug in how the automation system was registering for capturing logging. It was swapping out GWarn for its own version, but GWarn isn't called for anything that isn't an error or warning, meaning that none of the Display/Logging or analytics capture attempts were actually working. Suddenly a flood of informations started being captured during tests. For now - only going to capture 'Display' logs instead of 'Log' level.
Automation - Successful comparisons now print more information so that the automation logs do a better job of tracking the flow of the test.
Automation - The screenshot comparison test now prints more information even during successful comparisons.
Editor - The message log no longer emits a SetSelection, just because the selection is updated the categoriry view model. This was causing things like the automation tool, which sets the selection every time (which may itself be an issue) to completely rebuild the message log every time a new automation message was emited. The message log now checks if the selection would actually change the viewstate before it does it.
Domino Test - Adding an arrow to visualize the state of the up vector the test is looking for; playing with idea for test visualizers that may help with debugging in the future.
Change 3323580 on 2017/02/27 by Michael.Trepka
Fixed some Xcode 8.3 compile errors
Change 3323634 on 2017/02/27 by Nick.Darnell
Build - Fix incremental build.
Change 3323740 on 2017/02/27 by Jamie.Dale
Adding #error if the SOURCE_CONTROL_WITH_SLATE define is missing
Change 3323865 on 2017/02/27 by Nick.Darnell
Automation - Disabling the screenshot from the small editor icons test, until the editor screenshot method starts comparing things, and the screenshots we take are better / more scoped.
Change 3324228 on 2017/02/27 by Jamie.Dale
Can no longer name assets or folders with a leading underscore
#jira UE-40541
Change 3324429 on 2017/02/27 by Jamie.Dale
Removing FLocTextTargetPaths
It was added to support something that I'm now going to do a different way.
Change 3324473 on 2017/02/27 by Jamie.Dale
Moved the GatherText SCC utils into the Localization module
Change 3324481 on 2017/02/27 by Jamie.Dale
Moving the localized asset utils out of GatherText base
Change 3324485 on 2017/02/27 by Jamie.Dale
Cleaning up some includes now that the localization SCC is no longer in GatherText
Change 3324910 on 2017/02/28 by Nick.Darnell
Slate - Moving the SlateRotatedRect into its own file, and removing FSlateRotatedClipRectType, since there's no longer a difference and we only use FSlateRotatedRect.
Change 3325329 on 2017/02/28 by Michael.Dupuis
#jira UE-42083: Removed various Modify(true) that would force user to save the levels even if they did'nt really modified them
Replace TMap<TLazyObjectPtr,...> as it would dirty the level at every Find performed
Change 3325410 on 2017/02/28 by Michael.Dupuis
missing include for incremental build
Change 3325415 on 2017/02/28 by Nick.Darnell
UMG - Adding some setters and getters for RedrawTime to the WidgetComponent.
Change 3325418 on 2017/02/28 by Nick.Darnell
Automation - Fixing the warnings on startup about smoke tests taking longer than 2s. Had to add an option to disable capturing the callstack when running smokes, it adds a bit too much overhead during startup.
Change 3325698 on 2017/02/28 by Alexis.Matte
Put back the code to isolate material versus section in the skeletal mesh. The code was override by a temporary hack done in paragon branch
Change 3325790 on 2017/02/28 by Michael.Trepka
Copy of CL 3319588
Fixed address sanitizer support in MacToolChain (Apple changed the name of the env variable Xcode uses to enable it) and added support for thread sanitizer
Change 3326118 on 2017/02/28 by Alexis.Matte
Add LOD settings LOD distances to fbx import dialog option. The option are not supported yet by the scene importer
#jira UE-41291
Change 3326183 on 2017/02/28 by Alexis.Matte
PR #3298: Import SpecularFactor for Roughness and Shininess for Metallic textures (Contributed by VladimirPobedinskiy)
#jira UE-42301
Change 3326196 on 2017/02/28 by Jamie.Dale
Force the correct package localization ID when duplicating a BP for nativization
Change 3327037 on 2017/03/01 by Michael.Dupuis
fixed fortnite mac non editor build
Change 3327483 on 2017/03/01 by Jamie.Dale
Renaming LocNat to LocMeta
Change 3327486 on 2017/03/01 by Jamie.Dale
Renaming LocNat to LocMeta
Change 3327541 on 2017/03/01 by Michael.Trepka
Removed Mac OpenGL RHI files and disabled building of OpenGL RHI on Mac
Change 3328000 on 2017/03/01 by Nick.Darnell
Automation - Noisy rendering features are now disabled by default when taking screenshots.
Change 3328323 on 2017/03/01 by Michael.Trepka
Copy of CL 3307526
Fixed mouse position issues in fullscreen mode on Mac
Change 3328410 on 2017/03/01 by Alexis.Matte
Remove unwanted option when importing skeletal mesh
Make the FBX tests uptodate with the new ImportUI options
#jira UE-41291
Change 3329586 on 2017/03/02 by Jamie.Dale
Adding missing includes when running with bUseMallocProfiler enabled
Change 3329999 on 2017/03/02 by Nick.Darnell
UMG - Removing a deprecated 4.8 function to get the label on UWidget.
Change 3330004 on 2017/03/02 by Nick.Darnell
UMG - Adding TargetPlatform to the dependencies of UMGEditor module.
Change 3330021 on 2017/03/02 by Nick.Darnell
UMG - Adding TargetPlatform to the private include path of the UMG module.
Change 3330041 on 2017/03/02 by Nick.Darnell
Engine - Adding a comment to the PreLoadMap call so people know what the string being passed in is.
Change 3330048 on 2017/03/02 by Nick.Darnell
Editor - Don't allow querying the cursor in the editor viewport while saving packages. Depending upon the code that gets triggered, it may cause packages to load, or things to be initialized while saving is occuring.
Change 3330602 on 2017/03/02 by mason.seay
Map for Functional Screenshot Test Bug
Change 3330632 on 2017/03/02 by Alexis.Matte
Fix fbx crash when there is only one UVChannel but using the naming convention to place it further then the first index
Change 3330862 on 2017/03/02 by Jamie.Dale
Adding FPaths::SetExtension
This is like FPaths::ChangeExtension, but also applies the extension if the file doesn't have one.
Change 3331491 on 2017/03/03 by Nick.Darnell
Automation - Fixing a threading issue in the SAsyncImage, it was accessing potentially bogus memory if the Widget had been deleted before the task ran.
Change 3331498 on 2017/03/03 by Nick.Darnell
Build - Fixing a build warning.
Change 3331807 on 2017/03/03 by Nick.Darnell
Automation - Making the Disable Noisy Rendering Features more robust, disabling a few more markers. Adding a better way of rolling back the changes.
Change 3331999 on 2017/03/03 by Michael.Trepka
Fixed a memory leak on texture creation with BulkData in OpenGLTexture.cpp
Change 3332481 on 2017/03/03 by Arciel.Rekman
Fix building lighting in commandlet (UE-42551).
- Process task graph while running as commandlet.
- Also, if for any reason - like the lack of -messaging - local swarm interface fails to initialize or takes too much time to send the message, bail out.
Change 3332606 on 2017/03/04 by Jamie.Dale
Fixing crash reporting loc word counts when the report is starting empty
Change 3332614 on 2017/03/04 by Jamie.Dale
Fixed text namespaces being treated as case-insensitive when export to JSON manifests and archives
Change 3332619 on 2017/03/04 by Jamie.Dale
Fixing CIS error
Change 3333000 on 2017/03/06 by Matt.Kuhlenschmidt
PR #3295: Non-editable FStringAssetReference using VisibleAnywhere (Contributed by projectgheist)
#jira UE-42284
Change 3333039 on 2017/03/06 by Alexis.Matte
Make custom ui for FbxSceneImportData object
#jira UE-37896
Change 3333047 on 2017/03/06 by Nick.Darnell
UMG - Removing an extra assignment in WidgetSwitcher.
Change 3333056 on 2017/03/06 by Alexis.Matte
Build fix
Change 3333073 on 2017/03/06 by Matt.Kuhlenschmidt
Added more logging for when window creation fails due to too many windows.
#jira UE-42478
Change 3333081 on 2017/03/06 by Matt.Kuhlenschmidt
PR #3327: Git Plugin: fix RunDumpToFile() to check git ReturnCode (Contributed by SRombauts)
#jira UE-42535
Change 3333103 on 2017/03/06 by Matt.Kuhlenschmidt
PR #3336: UE-42407: using GetWindowMode instead of switching on IsFullscreenViewport (Contributed by stefanzimecki)
#jira UE-42407, UE-42565
Change 3333142 on 2017/03/06 by Jamie.Dale
Added a way to view/copy a list references (including those that aren't loaded) to the reference viewer
Change 3333443 on 2017/03/06 by Matt.Kuhlenschmidt
Eliminate the usage of SWebBrowser to show viewport controls in level viewports. There is an non-trivial startup cost initializing CEF and is not worth paying that cost on editor startup for one tiny control. The button now opens a web page on click.
#jira UE-42461
PR #3314: Drop UE4Editor -> CEF dependency to 2x speedup Linux UE4Editor startup (Contributed by slonopotamus)
Change 3333914 on 2017/03/06 by Matt.Kuhlenschmidt
Remove double middle mouse click to change to perspective view
#jira UE-42444
Change 3333936 on 2017/03/06 by Matt.Kuhlenschmidt
Fixed excessive fname initialization in these files
Change 3334063 on 2017/03/06 by Alexis.Matte
fix build linux
Change 3334166 on 2017/03/06 by Jamie.Dale
Adding Data Table export/import support for TMap and TSet
#jira UE-42415
Change 3334459 on 2017/03/06 by Alexis.Matte
PR #3334: Respect bForceFrontXAxis option when exporting to FBX (Contributed by rajkosto)
#jira UE-42563
Change 3335132 on 2017/03/07 by Jamie.Dale
Fixing typo
Change 3335140 on 2017/03/07 by Jamie.Dale
Fixing CSV import warnings in GameplayEffects test
Change 3335164 on 2017/03/07 by Alexis.Matte
Avoid selecting skeletal mesh section in the level when high light them in persona editor
#jira UE-20151
Change 3335186 on 2017/03/07 by Jamie.Dale
Fixed CSV parser missing empty cells at the end of the string
Change 3335218 on 2017/03/07 by Arciel.Rekman
SDL2: delete unused project/build files.
Change 3335222 on 2017/03/07 by Arciel.Rekman
SDL2: delete more unused project/build files.
Change 3335230 on 2017/03/07 by Matt.Kuhlenschmidt
Additional fixes for blur and blur slot not propagating padding to each other
#jira UE-42553
Change 3335896 on 2017/03/07 by Jamie.Dale
ToolTips and Engine were double gathering the same meta-data
#jira UE-36480
Change 3336009 on 2017/03/07 by Matt.Kuhlenschmidt
Fix details panels becoming unusable if "Show only Modified Properties" is enabled and there are no modified properties
Change 3336247 on 2017/03/07 by Jamie.Dale
Selection height is now the max of the line height and text height to account for negative line scaling
#jira UE-40673
Change 3336253 on 2017/03/07 by Jamie.Dale
Added a setting to control whether we should use the font metrics or the bounding box when laying out a font
#jira UE-41074
Change 3336303 on 2017/03/07 by Arciel.Rekman
Refactor of OS memory allocation functions.
- Bring PageSize/OSAllocationGranularity in line with the established definitions.
- PageSize is a hardware mapping granularity that is also used for PageProtect() and any other functions that involve setting virtual memory properties.
- OSAllocationGranularity is a virtual address allocation granularity that on some platforms may be applied on top of that (notably VirtualAlloc in Windows only returns addresses that are 16 page aligned).
- BinnedPageSize and BinnedAllocationGranularity are the values expected by Binned and Binned2 for size and the alignment of OS allocations.
- Disable the logic in CachedOSPageAllocator that allowed buffers larger than the requested size to be returned.
- This caused wrong allocation size to be passed in BinnedFreeToOS() from Binned2.
- Make Binned2 work on Linux
- Addresses returned from BinnedAllocFromOS() need to be BinnedPageSize (minimum 64KB) aligned for Binned2 to work. This results in the need to artificially align mmap()'d addresses, at some performance cost.
- The same function can be used on other systems with mmap()/munmap() (Mac, Android, iOS)
- Switch Linux to Binned2 by default.
- Add ability to sanity-check OS memory allocations.
- Debug and Development build will store a descriptor to check that values passed to BinnedFreeToOS() are the same (mmap-based allocation only).
Change 3337098 on 2017/03/08 by Michael.Dupuis
#jira UE-42589: Added a guard if the mesh component is not attached, this can happen when moving a component out of the screen
Change 3337183 on 2017/03/08 by Matt.Kuhlenschmidt
Hide the preview toolbar button, it is not being used
Change 3337801 on 2017/03/08 by Michael.Trepka
Fixed some module dependencies to make sure we don't build OpenGLDrv on Mac
Change 3338373 on 2017/03/08 by Joe.Graf
Fixed external plugin cooking and deployment by remapping plugin directories upon cook & deployment
Tested directory structures:
D:\SomePluginDir
D:\UE4\AnotherPluginDir
D:\UE4\Engine\Plugins
D:\UE4\MyProject\Plugins
Change 3338482 on 2017/03/08 by Alexis.Matte
Remove "BlueprinReadOnly" flag on "WITH_EDITORONLY_DATA" class variable
Change 3338679 on 2017/03/08 by Matt.Kuhlenschmidt
Fixed arrow keys not working to navigate between elements in the details panel
Change 3339086 on 2017/03/09 by Dmitriy.Dyomin
Added: Mobile friendly slate settings
Change 3339366 on 2017/03/09 by Nick.Darnell
Build - Attempting to fix build.
#jira UE-42675
Change 3339506 on 2017/03/09 by Jamie.Dale
Fixing Linux Server build error
#jira UE-42675
Change 3340450 on 2017/03/09 by Cody.Albert
Ensure that the hittest grid is valid before trying to find a focusable widget
Change 3340492 on 2017/03/09 by Arciel.Rekman
Fix IOS compile error (UE-42695).
Change 3340565 on 2017/03/09 by Arciel.Rekman
Fix another compile error (UE-42695).
Change 3341527 on 2017/03/10 by Alexis.Matte
Fix crash when dragging a re-import scene and there is new asset created
#jira UE-42766
[CL 3341914 by Nick Darnell in Main branch]