This change consists of multiple changes:
Core:
- Deprecation of ANY_PACKAGE macro. Added ANY_PACKAGE_DEPRECATED macro which can still be used for backwards compatibility purposes (only used in CoreUObject)
- Deprecation of StaticFindObjectFast* functions that take bAnyPackage parameter
- Added UStruct::GetStructPathName function that returns FTopLevelAssetPath representing the path name (package + object FName, super quick compared to UObject::GetPathName) + wrapper UClass::GetClassPathName to make it look better when used with UClasses
- Added (Static)FindFirstObject* functions that find a first object given its Name (no Outer). These functions are used in places I consider valid to do global UObject (UClass) lookups like parsing command line parameters / checking for unique object names
- Added static UClass::TryFindType function which serves a similar purpose as FindFirstObject however it's going to throw a warning (with a callstack / maybe ensure in the future?) if short class name is provided. This function is used in places that used to use short class names but now should have been converted to use path names to catch any potential regressions and or edge cases I missed.
- Added static UClass::TryConvertShortNameToPathName utility function
- Added static UClass::TryFixShortClassNameExportPath utility function
- Object text export paths will now also include class path (Texture2D'/Game/Textures/Grass.Grass' -> /Script/Engine.Texture2D'/Game/Textures/Grass.Grass')
- All places that manually generated object export paths for objects will now use FObjectPropertyBase::GetExportPath
- Added a new startup test that checks for short type names in UClass/FProperty MetaData values
AssetRegistry:
- Deprecated any member variables (FAssetData / FARFilter) or functions that use FNames to represent class names and replaced them with FTopLevelAssetPath
- Added new member variables and new function overloads that use FTopLevelAssetPath to represent class names
- This also applies to a few other modules' APIs to match AssetRegistry changes
Everything else:
- Updated code that used ANY_PACKAGE (depending on the use case) to use FindObject(nullptr, PathToObject), UClass::TryFindType (used when path name is expected, warns if it's a short name) or FindFirstObject (usually for finding types based on user input but there's been a few legitimate use cases not related to user input)
- Updated code that used AssetRegistry API to use FTopLevelAssetPaths and USomeClass::StaticClass()->GetClassPathName() instead of GetFName()
- Updated meta data and hardcoded FindObject(ANY_PACKAGE, "EEnumNameOrClassName") calls to use path names
#jira UE-99463
#rb many.people
[FYI] Marcus.Wassmer
#preflight 629248ec2256738f75de9b32
#codereviewnumbers 20320742, 20320791, 20320799, 20320756, 20320809, 20320830, 20320840, 20320846, 20320851, 20320863, 20320780, 20320765, 20320876, 20320786
#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20430220 via CL 20433854 via CL 20435474 via CL 20435484
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)
[CL 20448496 by robert manuszewski in ue5-main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870586 by ryan durand in Main branch]
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3297108 on 2017/02/10 by Mieszko.Zielinski
Added AISight's peripherial vision angle claming as well as marked up UI to not allow values from outside of [0,180] range #UE4
#jira UE-41114
Change 3299467 on 2017/02/13 by Marc.Audy
Don't try to update active sounds on audio thread if the audio component is not active. If these functions are callled from a constructor on an async loading thread it can cause a crash
Change 3300692 on 2017/02/13 by Marc.Audy
no auto
Change 3301424 on 2017/02/14 by Marc.Audy
Handle gateway expansion before the node matching loop
#jira UE-41858
Change 3301547 on 2017/02/14 by Marc.Audy
PR #3246: Added BindDelegate that supports functions with custom (static) arguments (Contributed by PhoenixBlack)
#jira UE-41926
Change 3301557 on 2017/02/14 by Marc.Audy
When passing null to Rename for the new name, maintain the OldName is possible
#jira UE-41937
Change 3301676 on 2017/02/14 by Marc.Audy
Fix pending occlusion async traces from crashing during shutdown
#jira UE-41939
Change 3302705 on 2017/02/14 by Mieszko.Zielinski
Removed 'PRAGMA_DISABLE_OPTIMIZATION' uccurences from AIModule #UE4
Change 3302898 on 2017/02/14 by Dan.Oconnor
Fix double negative
Change 3302954 on 2017/02/14 by Dan.Oconnor
Make sure we use a good version of the class
Change 3302977 on 2017/02/14 by Dan.Oconnor
Optimization in reinstancer turned back on - 3302898 has fixed the regression
Change 3302984 on 2017/02/14 by Dan.Oconnor
Relink classes that were not recompiled in a wave of the compilation manager - currently only happens for data only blueprints.
This fixes issues in Odin when using the compilation manager
Change 3303824 on 2017/02/15 by Richard.Hinckley
Updating URL for FABRIK system information.
Change 3304284 on 2017/02/15 by Dan.Oconnor
Build fix
Change 3304297 on 2017/02/15 by Dan.Oconnor
Shadow variable fix
Change 3304465 on 2017/02/15 by Lukasz.Furman
fixed handling pathfollowing's requests by FloatingPawnMovement
#jira UE-41884
Change 3305031 on 2017/02/15 by Marc.Audy
All objects should get PostLoadSubobjects calls, regardless of whether they are outered to a CDO or not
#jira UE-41708
Change 3305505 on 2017/02/15 by Michael.Noland
Blueprints: Fix a crash when opening a BP with a parent class that no longer exists (unguarded access to the parent class)
Change 3305506 on 2017/02/15 by Michael.Noland
QAGame: Created some assets that reference a non-existent type to test 'gracefully' handling missing native class types
Change 3306091 on 2017/02/16 by Marc.Audy
PR #3263: Fixed duplicate comment from OnAudioFinished (Contributed by FrostByteGER)
#jira UE-42027
Change 3306574 on 2017/02/16 by Marc.Audy
Linked To pins can belong to invalid nodes and fail to load, this shouldn't be considered fatal
Change 3307160 on 2017/02/16 by Marc.Audy
Rename(null, null ... is sometimes used to just force a name out of the way, so in that case don't try and maintain old name.
Change 3307982 on 2017/02/16 by Michael.Noland
QAGame: Added another test asset for missing classes (this time a missing node class placed in a BP)
Change 3308097 on 2017/02/16 by Michael.Noland
Graph Editor: Instantly clear GraphNodeForMenu and GraphPinForMenu as soon as the menu is dismissed, fixing crashes and other odd issues after deleting pins
#jira UE-41789
Change 3308303 on 2017/02/16 by Dan.Oconnor
Make sure we don't call GetDefaultObject while compiling on a non-native class
Change 3308850 on 2017/02/17 by Mieszko.Zielinski
Fully exposed NavModifierVolume as ENGINE_API #UE4
Change 3309624 on 2017/02/17 by Phillip.Kavan
[UE-40443] Recursively emit ctor initialization code for nested default subobjects when nativizing a Blueprint class.
change summary:
- modified FEmitDefaultValueHelper::OuterGenerate() to recursively detect and handle nested default subobjects.
#jira UE-40443
Change 3310475 on 2017/02/17 by Dan.Oconnor
Split bluepint compilation into CompileClassLayout and CompileFunctions, fix class hierarchy after creating reinstancers in blueprintcompilation manager. Together this means we don't need to run RecompileBlueprintBytecode
Change 3310487 on 2017/02/17 by Dan.Oconnor
Fix build error missed by preflgiht
Change 3310497 on 2017/02/17 by Dan.Oconnor
More build fixes for things missed by preflight...
Change 3310635 on 2017/02/17 by Dan.Oconnor
Remove unused parameter and add comment to blueprint compilation manager explaining abuse of bBeingCompiled
Change 3310639 on 2017/02/17 by Dan.Oconnor
Shadow variable fixes, not sure why these are being detected now
Change 3311855 on 2017/02/20 by Marc.Audy
Fix UChildActorComponent::ParentComponent being null on the client
#jira UE-42140
Change 3312444 on 2017/02/20 by Marc.Audy
Add a bAutoDestroy pin to BP Spawn Sound and Force Feedback nodes to allow users to reuse the created component
#jira UE-41267
Change 3312691 on 2017/02/20 by mason.seay
Deleting map now that bug has been fixed
Change 3312709 on 2017/02/20 by Phillip.Kavan
[UE-39705] Fix broken collision shapes when cooking with optimized BP component data option.
change summary:
- modified FComponentInstancingDataUtils::RecursivePropertyGather() to exclude deprecated properties, since they won't be serialized on save.
- modified FBlueprintCookedComponentInstancingData::LoadCachedPropertyDataForSerialization() to remove the PPF_UseDeprecatedProperties flag (these are no longer included in the delta).
- modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to remove the PPF_UseDeprecatedProperties flag (was being incorrectly used here).
- modified AActor::CreateComponentFromTemplateData() to remove the PPF_UseDeprecatedProperties flag (was being incorrectly used here; this caused deprecated property defaults to be copied out to the instance).
- modified AActor::CreateComponentFromTemplateData() to append RF_PostLoad/RF_NeedPostLoadSubobjects and call PostDuplicate()/ConditionalPostLoad() on the new instance (needed to mirror what SDO does in the unoptimized case - for proper physics RB setup specifically, but may be other areas where that's needed).
#jira UE-39705
Change 3313161 on 2017/02/20 by Mieszko.Zielinski
PR #3272: Use Pawn for GetNavAgentPropertiesRef(). (Contributed by drelidan7)
Change 3314151 on 2017/02/21 by Mieszko.Zielinski
fix to hlods complaining about missing nav collision in cooked builds #UE4
Made sure hlod-generated StaticMeshes are marked as not having navigation data
#jira UE-42034
Change 3314355 on 2017/02/21 by Marc.Audy
Set error message back to be correctly about mobility
#jira UE-42209
Change 3314566 on 2017/02/21 by Phillip.Kavan
[UE-40801] Switch to an ensure() to potentially help diagnose a one-off assertion crash in the SCS editor if encountered again in a future release.
#jira UE-40801
Change 3315459 on 2017/02/21 by Mike.Beach
Updated marquee selection in graph editors. Ctrl dragging now inverts nodes' selection state (not only deselects them - holding alt is now for only deselection).
#jira UE-16359
Change 3315546 on 2017/02/21 by Mike.Beach
Mirroring CL 3294552
Count "GeneratedStub" as a success for cooked file generation - ensures the saved asset gets recorded in the asset registry.
#jira ODIN-5869
Change 3315554 on 2017/02/21 by Mike.Beach
Do not generate NativizedAsset plugin files if no Blueprints were nativized (cut down on mod generate/cook time).
#jira ODIN-6211
Change 3317225 on 2017/02/22 by mason.seay
Enable Net Use Owner Frequency on blueprints. This allows the client to use different weapons. Doesn't fix UE-42017 though.
Change 3317495 on 2017/02/22 by Marc.Audy
Expose raw input device configurations to other modules by request
#jira UE-42204
Change 3319966 on 2017/02/23 by Nick.Atamas
Polished up the material reroute node:
- Removed some unnecessary widgets
- Centered the pin node
Change 3320099 on 2017/02/23 by Mike.Beach
Guarding against passing self pins to referance parameters (it is not a property that is referencable, and would crash). Notifying the user through pin connection messages, and providing a script exception.
#jira UE-40861
Change 3321227 on 2017/02/24 by Marc.Audy
Just use name rather than going Name -> String -> TCHAR -> Name
Change 3321425 on 2017/02/24 by Marc.Audy
Minor optimizations to avoid string construction when doing StaticFindObject and ResolveName
Change 3321630 on 2017/02/24 by Mike.Beach
Removing reference notation from actor pointer param - allowing you to pass 'self' to Blueprint exposed function.
Change 3321845 on 2017/02/24 by Lukasz.Furman
fixed navlink processor trace accepting only components with WorldStatic object type
#ue4
Change 3322474 on 2017/02/24 by Aaron.McLeran
UE-42345 Rewriting thumbnail renderer
Change 3322490 on 2017/02/24 by Aaron.McLeran
UE-42345 Forgot to take abs of sample before averaging
Change 3323562 on 2017/02/27 by Mike.Beach
Fixing bad merge, copying loop from //UE4/Main that accidently got replaced.
Change 3323685 on 2017/02/27 by Mike.Beach
Preventing us from cross-binding editor & PIE actors when we fixup level script actor bindings (on duplicate for PIE).
#jira UE-30816
Change 3323776 on 2017/02/27 by Marc.Audy
Coding standard clean up pass
Change 3324050 on 2017/02/27 by Ben.Zeigler
Fix issue with a StreamableHandle being cancelled while in progress leaving the in progress flag active. Added and improved error messages when streaming goes wrong
Port of 3317217, 3315540, and 3314374 from UE4-Fortnite
Change 3324294 on 2017/02/27 by Ben.Zeigler
Engine changes needed to support "Asset Management" UI:
Add concept of "Manage" dependency to the Asset Registry, to represent that an asset like a texture is managed by a Primary Asset. This will be used to compute usage statistics and chunking
Add ability for AssetManager to override the PrimaryAssetType/Id on a asset data loaded off disk. Needed so the asset audit tools work properly
Significant performance improvements to the asset registry dependency gather, and correctly report as in progress while dependencies are still being gathered. On Fortnite it now finishes in 10 seconds instead of 100
Add bUpdateDiskCacheAfterLoad option for the asset registry, if true (default) this will update the Asset Registry's disk cache when an object is loaded, only in the editor. This is so changes made in PostLoad are correctly mirrored in the disk cache
Add PrimaryAssetType as a wrapper struct around FName to allow customizations and blueprint usage, clean up the noexport definitions for a few related classes
Add Asset Manager code to create and query "Manage" references used for auditing and chunking
Add code to read AssetManager scanning rules out of the AssetManagerSettings object, also settable in editor
Made it so UWorlds are now PrimaryAssets of the type Map, and enable the AssetManager by default for all games
Port of CL #3323720 and related fixes from Fortnite
Change 3324295 on 2017/02/27 by Ben.Zeigler
Add AssetManagerEditor which contains the editor interface for the AssetManager system, and engine code needed to support it
Add support for Management references to the Reference Viewer, and add ability to extend that context menu from plugins/games
Add struct customizations for PrimaryAssetId and PrimaryAssetType
Add AssetAuditBrowser window that shows a specialized asset picker for auditing, accessible from content browser, reference viewer, and main windows pane
Add AssetAuditContext, which is a cleaned up port of the one from Paragon. This needs some more work before being final
Expose PropertyCustomizationHelpers::MakePropertyComboBox which allows making an "enum-like" combo box for struct customizations, it now works much like the PropertyEditorAsset UI
Add Custom Column support to AssetView/AssetPicker. This can be used to show runtime-generated column data
Fix bug in SAssetView where column view did not work with a filter predicate, because the column view was generated before the deferred filter predicate run, leading to an empty filter
Port of CL #3323722 and related fixes from Fortnite
Change 3324398 on 2017/02/27 by Ben.Zeigler
CIS fix
Change 3324442 on 2017/02/27 by Ben.Zeigler
Nonunity fix discovered while testing my nonunity fix
Change 3325465 on 2017/02/28 by Marc.Audy
Expand RawInput to support up to 20 buttons
Change 3325468 on 2017/02/28 by Marc.Audy
Fix CIS
Change 3325887 on 2017/02/28 by Phillip.Kavan
[UE-41893] Implicitly nativize child Blueprints that override one or more BlueprintCallable functions from a parent Blueprint.
change summary:
- added FBlueprintEditorUtils::ShouldNativizeImplicitly()
- modified FBlueprintGlobalOptionsDetails::IsNativizeEnabled() to disable the 'Nativize' checkbox when the BP is implicitly enabled
- modified FBlueprintGlobalOptionsDetails::GetNativizeState() to set the 'Checked' state when the BP is implicitly enabled
- modified FBlueprintGlobalOptionsDetails::GetNativizeTooltip() to set an alternate tooltip for the disabled state (when the BP is implicitly enabled)
- modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to ensure that implicitly-enabled BPs are flagged as selected for nativization
#jira UE-41893
Change 3326713 on 2017/02/28 by Marc.Audy
Update MAX_NUM_CONTROLLER_BUTTONS to match number of keys created
Change 3327688 on 2017/03/01 by Marc.Audy
Fix spelling, remove autos
Change 3328139 on 2017/03/01 by Marc.Audy
Win32 doesn't report the DeviceData in the same way that Win64 does, removing filtered check for now so that Win32 packaged games can use RawInput (4.15.1)
#jira UE-42375
Change 3328550 on 2017/03/01 by Mike.Beach
Typo fix in cast node tooltip.
Change 3328575 on 2017/03/01 by Nicholas.Blackford
Submitting Tick Interval Functional Test
Change 3328972 on 2017/03/02 by Jack.Porter
Fix for crash entering Landscape mode
#jira UE-42497
Change 3329224 on 2017/03/02 by Nick.Bullard
Removing Redirector from EngineTest project
Change 3330093 on 2017/03/02 by Mike.Beach
Modified fix from Marc.Audy - Guarding against malformed graphs (missing their schema), which can happen in the middle of an undo transaction (removing the graph). Returning the graph's path name in this situation (instead of the display name), so we atleast have some semblance of context.
#jira UE-42166
Change 3330306 on 2017/03/02 by Mike.Beach
Replacing ArrayLibrary Get() calls in blueprints with a custom node, which can be toggled back and forth from returning by reference or by value.
#jira UE-6451
Change 3330626 on 2017/03/02 by samuel.proctor
Functional Test for Blueprint Containers
Change 3330690 on 2017/03/02 by Mike.Beach
Modified the fix from CL 3308097 - cannot clear the edgraph pin context since many menu actions expect it be available still as the menu is clossing (menu's dismiss gets triggered before the action is executed).
#jira UE-42500
Change 3330704 on 2017/03/02 by Mike.Beach
CIS fix - fallout from CL 3330306
Change 3330875 on 2017/03/02 by Dan.Oconnor
Iteration on compile manager - removed skeleton compile pass in favor of FastGenerateSkeletonClass (directly generate reflection data from blueprint source data - no graph cloning)
Change 3330892 on 2017/03/02 by Mike.Beach
CIS fix for linux builds - include filename is case sensitive.
Change 3331585 on 2017/03/03 by Mike.Beach
Fix for CIS issues (fallout from CL 3330306) - had success/failure return value flipped. Spuriously failing on deprecated node fixup.
Change 3333455 on 2017/03/06 by Ben.Zeigler
Cleaned up version of CL #3332060, fixes crashes when calling StreamableManager::SynchronousLoad from inside a async PostLoad callback
Also disable the "do sync load as async load" code in EDL, as EDL basically already does that internally
Move the recursion guard inside async load tick outside of the EDL section, it's just as unsafe with EDL off
Change 3333484 on 2017/03/06 by Ben.Zeigler
#jira UE-42312 Fix crash trying to read Searchable Name references to objects in the same package, now guess at package/object name
Change 3333553 on 2017/03/06 by Ben.Zeigler
#jira UE-42387 Don't write out empty generated ini files for config files that are empty in both source and destination, this stops plugins without configs from ending up in cache
Change 3333697 on 2017/03/06 by Mike.Beach
Resolving some CIS errors - fix for missed handling of split-struct pins (fallout from CL 3330306) on deprecated node conversion (mapping old pins to new pins).
Change 3334047 on 2017/03/06 by Ben.Zeigler
#jira UE-42587 Now that we handle Add gameplay cues correctly by deferring them until after load, we also need to handle Remove cues, to avoid cues being stuck on permanently.
Change 3334228 on 2017/03/06 by Ben.Zeigler
#jira UE-42153 Fix several crashes with gameplay tag query structs
#jira UE-39760 Fix it to display tag query description on creation
Change 3335221 on 2017/03/07 by Lukasz.Furman
fixed compilation errors for macros: UE_VLOG_MESH, UE_CVLOG_MESH
#ue4
Change 3335733 on 2017/03/07 by dan.reynolds
Fixing Attenuation Shape Material Reference
Change 3335918 on 2017/03/07 by Mike.Beach
More deeply nesting an active world check in UMeshComponent::CacheMaterialParameterNameIndices(). Only guarding the parts that use the world (prior to this, we were blocking material parameter discovery, which was causing cooked content to loose material settings).
#jira UE-42480
Change 3336053 on 2017/03/07 by zack.letters
Moved and renamed test to meet naming convention and proper location
Change 3336087 on 2017/03/07 by Phillip.Kavan
[UE-18618] Fix an ensure() misfire on PIE exit for listen server mode.
change summary:
- Modified UWorld::TransferBlueprintDebugReferences() to allow the LevelScript BP's target debug object reference to be reset to NULL when CreatePIEWorldBySavingToTemp() has recompiled it during the PIE startup process and autosaved the BP as a temporary.
#jira UE-18618
Change 3336118 on 2017/03/07 by Phillip.Kavan
Ensure that BP class component templates are included as preload dependencies where appropriate.
Change 3336418 on 2017/03/07 by Marc.Audy
Set the PIEInstanceID before calling ConvertToPIEPackageName (4.15.1)
#jira UE-42507
Change 3336529 on 2017/03/07 by dan.reynolds
AEOverview UMG Interface
Change 3336729 on 2017/03/07 by Michael.Noland
Blueprints: Changed a checkSlow() followed by unguarded access to an if and ensure() in BlueprintActionFilterImpl::IsDeprecated to prevent a potential crash in release if the node class is invalid for some reason
#jira UE-42519
Change 3337054 on 2017/03/08 by Mieszko.Zielinski
Fixed UGameplayTaskResource::AutoResourceID getting cleared on hot reload #UE4
Change 3337605 on 2017/03/08 by Mieszko.Zielinski
PR #3345: Fix reversed comparison in FGameplayResourceSet::HasAllIDs (Contributed by hoelzl)
Change 3337612 on 2017/03/08 by Lina.Halper
Commenting out ensure as this doesn't cause any harm and fix it up later by itself.
- adding ticket for further investigation
#rb: Martin.Wilson
#jira: UE-42062
Change 3338353 on 2017/03/08 by Mike.Beach
Undoing CL 3320099, and instead allowing self nodes to be plugged into const ref inputs. Now auto-generating ref terms for the self node (the input param expects an addressable UProperty). Skipping this for native functions, as UHT already does something similar.
#jira UE-40861
Change 3340052 on 2017/03/09 by Marc.Audy
Don't mark a blueprint dirty if the default value isn't actually set
#jira UE-42511
Change 3340211 on 2017/03/09 by samuel.proctor
Adding TMap/TSet tests for Containers Functional Test
Change 3340272 on 2017/03/09 by Marc.Audy
auto removals
small optimizations
Change 3340341 on 2017/03/09 by Marc.Audy
Fortnite fixes for blueprint exposed editor only struct members
#jira UE-42430
Change 3340356 on 2017/03/09 by Marc.Audy
Do not allow blueprint exposed editor only struct members
#jira UE-42430
Change 3340369 on 2017/03/09 by Mike.Beach
Certain operations expect set/map elements to be constructed, instead of using an 'uninitialized' value (like with FStrings, previously this would blow up attempting to assign a value to an FString that hadn't been constructed). Fix is to construct the member when we make space in the container (emulating execSetArray).
#jira UE-42572
Change 3340445 on 2017/03/09 by mason.seay
Renamed and updated test map. Also disabled tests until reviewed
Change 3340627 on 2017/03/09 by Marc.Audy
Remove autos
Change 3340639 on 2017/03/09 by Dan.Oconnor
Avoid CDO creation when asking if an object IsDefaultSubobject
Change 3340642 on 2017/03/09 by Marc.Audy
Correctly maintain removed items from arrays when duplicating actors via T3D
#jira UE-42278
Change 3340689 on 2017/03/09 by Dan.Oconnor
Avoid UObject::Modify calls when renaming edgraph nodes as part of UEdGraphNode::PostLoad() or UEdGraph::MoveNodesToAnotherGraph
Change 3340709 on 2017/03/09 by Dan.Oconnor
Remove misplace dClassDefaultObject null check for now
Change 3340710 on 2017/03/09 by Dan.Oconnor
Avoid FindRedirectedPropertyName when performing StaticDuplicateObject
Change 3340728 on 2017/03/09 by Dan.Oconnor
Null checking CDO so that we can duplicate a class with no CDO
Change 3342184 on 2017/03/10 by mason.seay
Nav mesh generation test - not finished
Change 3342930 on 2017/03/13 by Mieszko.Zielinski
Added missing undefining of local macros in VisualLoggerAutomationTests.cpp #UE4
Change 3343739 on 2017/03/13 by Marc.Audy
Protect against ChildActorClass becoming null while ChildActorTemplate remains valid.
Change 3343758 on 2017/03/13 by Marc.Audy
Ensure that when you change visibility, children also get marked dirty as needed.
SetVisibility is no longer virtual, use OnVisibilityChanged in subclasses instead
#jira UE-42240
Change 3343816 on 2017/03/13 by Mike.Beach
Making sure we build CrashReporter for nativized clients.
#jira UE-42056
Change 3343858 on 2017/03/13 by Phillip.Kavan
Back out changelist 3336118 (per discussion) - did not solve the issue.
Change 3344218 on 2017/03/13 by Mike.Beach
Patching some holes in the wildcard pin logic for our new array GetItem node (making sure the node properly retains its type).
Change 3344388 on 2017/03/13 by Mike.Beach
Preventing make/break nodes from being in the context menu for structs that are not labeled 'BlueprintType' (still available if you drag off a node with a struct pin of that type).
#jira UE-37971
Change 3344411 on 2017/03/13 by dan.reynolds
AEOverviewMain update
- Organized Variables
- Added comments on level interface with UI script
Change 3344956 on 2017/03/14 by Marc.Audy
Remove autos
Slight optimization
Change 3345365 on 2017/03/14 by Mike.Beach
In the Blueprint diff tool, no longer assuming that graph names are unique (using the outer path to find matching graphs between diff panels).
#jira UE-42787
Change 3345565 on 2017/03/14 by Marc.Audy
auto removal
Change 3345654 on 2017/03/14 by Marc.Audy
Allow hierarchical metadata querying when HACK_HEADER_GENERATION is true
Change 3345771 on 2017/03/14 by Zak.Middleton
#ue4 - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]:
ClientNetSendMoveDeltaTime=0.0111f
ClientNetSendMoveDeltaTime=0.0222f
ClientNetSendMoveThrottleAtNetSpeed = 10000
ClientNetSendMoveThrottleOverPlayerCount=10
These are the default values maintained for backwards compat.
Related to OR-36422.
Change 3346314 on 2017/03/14 by Dan.Oconnor
Add two features to FBlueprintCompileReinstancer. Exposing it's CPFUO extensions and add a flag to avoid potentially unneeded CDO duplication.
Change 3346329 on 2017/03/14 by Dan.Oconnor
Avoid CDO creation in UBlueprintGeneratedClass::PostLoad - rely instead on compiler
Change 3346436 on 2017/03/14 by Dan.Oconnor
Compilation Manager iteration - improvements to reinstancing logic and postponement of reinstancing reference replacement until after loading has finished (done strictly to reduce the number of 'find references' calls). Behavior change is behind the GMinimalCompileOnLoad flag
Change 3346632 on 2017/03/14 by Ben.Zeigler
Change StringClassReference customization to use MustImplement and BlueprintBaseOnly metadata, to match the metadata used by SubclassOf customization
Add missing Class Property metadata to the metadata list
Change 3347525 on 2017/03/15 by Marc.Audy
PR #3371: Fix for binding ability action to input component (Contributed by ryanjon2040)
#jira UE-42810
Change 3347562 on 2017/03/15 by Phillip.Kavan
[UE-32816] Support for value-based bitfield enum associations in the editor.
notes:
- default mode is still index-based, so there are no backwards-compatibility issues
change summary:
- new metadata key for flagging enums as value-based (UseEnumValuesAsMaskValuesInEditor)
- modified SPropertyEditorNumeric::Construct() to include logic for handling value-based enum associations
- modified SGraphPinInteger::Construct() to include logic for handling value-based enum associations
- added default value fixup to UK2Node_BitmaskLiteral, so that changed/removed values get masked out on load
- switched UK2Node_BitmaskLiteral::PostLoad() to Serialize(), so that default value fixup occurs before compilation
#jira UE-32816
Change 3348030 on 2017/03/15 by Marc.Audy
Remove experimental blueprintable components setting, they are supported fully
Change 3348034 on 2017/03/15 by Phillip.Kavan
CIS fix.
Change 3348054 on 2017/03/15 by Marc.Audy
Fix shadow error
Change 3348063 on 2017/03/15 by mason.seay
Updateed bp logic to use asserts. Added scenarios to descriptions of tests
Change 3348131 on 2017/03/15 by mason.seay
Updating maps and reorganizing content
Change 3348146 on 2017/03/15 by Mike.Beach
Making it so we can use DataTable variables as inputs in the GetDataTableRow node. The output pin is now a wildcard when the row type is undefined, and we throw an access error at runtime if the table and output type don't match.
Change 3348213 on 2017/03/15 by dan.reynolds
AEOverview UMG Update
- Added level selection persistence between categories (so you can pick and choose from multiple categories)
- Added a clear all selections button
- Added comments to the UMG BP
Change 3348344 on 2017/03/15 by Lukasz.Furman
fixed missing path following result flag descriptions
#ue4
Change 3348489 on 2017/03/15 by mason.seay
Moved content and updated test descriptions
Change 3348496 on 2017/03/15 by Mike.Beach
Keeping the new version of the GetArrayItem node from causing a stack overflow with wildcard reroute nodes.
Change 3348502 on 2017/03/15 by Ben.Zeigler
#jira UE-42935 Fix several issues with GameplayTag and Container switch nodes crashing. Container didn't handling having multiple empty nodes correctly
Fix general issue with Switch nodes where removing an execution pin with right click was not synchronizing the pin list properly
Change it so the Container switch shows the simple tag string instead of Case 0, and change it to not quote by default for Container display strings
Change 3348504 on 2017/03/15 by Ben.Zeigler
#jira UE-41554 Add GameplayTag initialization to InitializeObjectReferences if it hasn't been initialized yet, this is important so it gets initialized before being initialized from unsafe areas like Serialize
Change 3348512 on 2017/03/15 by Mike.Beach
Reroute nodes connected to a new output, will propagate the type through its inputs (was previously treating the input's wildcard type as authoritative).
Change 3348513 on 2017/03/15 by Phillip.Kavan
[UE-38979] Error out on an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration.
change summary:
- added TIsAbstract<T> for traits testing to see if native C++ types are abstract (in terms of C++, not UE4)
- changed TCppStructOps::IsAbstract() to use TIsAbstract<T>
- added UClass::CppClassOps to capture class-specific traits info for the underlying C++ class type
- modified UClass::PurgeClass() to clean up class-specific traits info (if valid)
- modified FNativeClassHeaderGenerator::ExportNativeGeneratedInitCode() to generate code to initialize class-specific traits info for compiled-in class types
- modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to throw an error during nativization if a target BP class is found to implement a native interface class that's also abstract (i.e. an interface class that declares one or more of its methods as pure virtual)
- modified BlueprintActionFilterImpl::IsExtraneousInterfaceCall() to initially exclude any native interface class that is also abstract
- modified FKismetEditorUtilities::CanBlueprintImplementInterface() to additionally exclude any native class that is also abstract
- modified FBlueprintInterfaceFilter::IsClassAllowed() to additionally exclude any native class that is also abstract
#jira UE-38979
Change 3348651 on 2017/03/15 by Mike.Beach
Fixing the new GetDataTableRow node so that it'll give you the option of reroute nodes.
Change 3348684 on 2017/03/15 by Michael.Noland
Blueprints: Allow string and text variables to be marked as multi-line
PR #3294: UE-42147: Add multiline to BP view details (Contributed by projectgheist)
#jira UE-42275
Change 3348691 on 2017/03/15 by Michael.Noland
Cameras: Added support for specifying a default aspect ratio and whether or not to constrain to it in a camera manager subclass; useful when using custom view logic that doesn't source from a camera component as the view target
PR #2593: Finish implementing aspect ratio handling for PlayerCameraManager (Contributed by CleanCut)
#jira UE-33052
Change 3348698 on 2017/03/15 by Michael.Noland
Removed a sprite reference from trigger shape classes and excluded some component references from camera rigs in cooked builds
PR #2922: Ensuring editor data is not accessed when excluded from cook (Contributed by moritz-wundke)
#jira UE-38484
Change 3348722 on 2017/03/15 by Dan.Oconnor
Fix replacement bug - due to last minute refactor of this reference replacer call
Change 3348736 on 2017/03/15 by Michael.Noland
Blueprints: Added missing include for UTextProperty (compiled fine locally both with the file checked out and the file unmodified)
Change 3348810 on 2017/03/15 by Michael.Noland
Blueprints: Added support for seeing the user defined tooltip on get/set nodes for local variables
PR #3256: UE-41098: Added UFunction argument (Contributed by projectgheist)
Change 3348811 on 2017/03/15 by Michael.Noland
PR #3380: Added CancelAbility Blueprint node (Contributed by ryanjon2040)
#jira UE-42904
Change 3348969 on 2017/03/15 by Dan.Oconnor
Build fix
Change 3349023 on 2017/03/16 by Aaron.McLeran
Copying //Tasks/UE4/Private-GDC17-Audio to Dev-Framework (//UE4/Dev-Framework)
Change 3349389 on 2017/03/16 by mason.seay
Finished up Navigation map. Improved Navmesh map (still needs some work before review)
Change 3349575 on 2017/03/16 by Marc.Audy
Emit ScriptMacros.h in addition to ObjectMacros.h in generated headers
Change 3349628 on 2017/03/16 by Ben.Zeigler
Add direct support for Chunk setting to AssetManager. If AssetManager exists and no game callback is set it uses the new, much faster method. Otherwise it falls back to the old one
Fix some memory corruption issues in ChunkManifestGenerator where it was modifying a map while iterating it, could lead to assets ending up in multiple chunks accidentally
Remove the "Old Cooker" entirely, it hasn't functioned since around 4.9
Various fixes to AssetManagerEditorModule
Convert ShooterGame to use the AssetManager for chunking
Change 3349629 on 2017/03/16 by Ben.Zeigler
Change Fortnite to use the AssetManager chunking system, which simplifies the chunk 1 setup significantly
Also includes changes made on Fortnite Branch as CL #3323724:
Fortnite changes to take advantage of the Manage dependency in the asset manager
Move definition of asset types to ini from native, and simplify it so all zone themes are scanned, even if not used
Make FeedbackBank a primary asset type. It's currently editor only as there are some outdated banks we don't want to cook
Change 3350043 on 2017/03/16 by Marc.Audy
Fix Audio compile errors
Change 3350092 on 2017/03/16 by Dan.Oconnor
Fix missing output parameters when the function result node is pruned
Change 3350190 on 2017/03/16 by Ben.Zeigler
CIS fix
Change 3350707 on 2017/03/16 by Dan.Oconnor
Add means of enabling BlueprintCompilationManager via editor ini. Wedging the check into LaunchEngineLoop because of assets that are loaded during engine initialization
Change 3350820 on 2017/03/16 by Joe.Conley
Xenakis project: Setting GameMode to GameMode instead of None so the game doesn't crash on Play
Change 3350893 on 2017/03/16 by Dan.Oconnor
Build fix
Change 3351017 on 2017/03/16 by Dan.Oconnor
Using ordered arguments instead of named arguments improves load time in BP heavy projects
Change 3351056 on 2017/03/16 by Dan.Oconnor
Avoiding Copies
Change 3351062 on 2017/03/16 by Dan.Oconnor
Enable BlueprintCompilationManager by default - this is a major change in code path when loading uassets that contain blueprints
Change 3351770 on 2017/03/17 by Marc.Audy
Fix CIS warnings
Change 3351818 on 2017/03/17 by Mike.Beach
CopyPropertiesForUnrelatedObjects() will now only copy tagged data when the two objects truly are unrelated (different native base classes). We have to do this because the two native base classes may have different serialization methods that add/expect different data, which is not compatible with the other.
#jira UE-35970
Change 3351918 on 2017/03/17 by Mike.Beach
CIS fix - renaming local so it doesn't conflict with the one in the outer scope.
Change 3351931 on 2017/03/17 by Ben.Zeigler
Make CoreRedirects a proper Automated Test, and fix a test failure with not handling : in the output string
Fix legitimate regression where doing a package -> package rename would clear Outer, this was a result of a fix I made in Main a few weeks ago
Change 3351956 on 2017/03/17 by Dan.Oconnor
Make sure result element is emptied when calling Intersect, Union, or Difference
#jira UE-42993
Change 3352049 on 2017/03/17 by Ben.Zeigler
#Jira UE-42118 Add RemoveGameplayTag to the tag blueprint library
Delete (with redirector) redundant AddGameplayTagToContainer function that got accidentally added in parallel on Fortnite. Decided to keep the shorter TagContainer parameter name for both though
Change 3352065 on 2017/03/17 by Aaron.McLeran
Fixing compile errors
- deleting unused files
- removing #pragma once in SSynthKnob.cpp
- Making phonon have win64 whitelist to avoid compiling on other platforms
Change 3352100 on 2017/03/17 by Aaron.McLeran
Fixing compile errors
- Moving header file to public folder since it's used outside of module
Change 3352182 on 2017/03/17 by Ben.Zeigler
#jira UE-39815 Fix several issues with renaming tags in the tag settings view, it now deletes redirectors properly when renaming or making a new tag that matches an existing redirector
Change 3352286 on 2017/03/17 by Ben.Zeigler
#jira UE-39519 Add error messages when only one of GameMode/GameState is derived from the outdated parent classes
Modified version of PR #3285: Add error log messages if the GameMode/GameState are mis-matched (Contributed by jwatte)
Change 3352299 on 2017/03/17 by Ben.Zeigler
#jira UE-40544
PR #3130: UE-40544: Check pause state if state change is allowed (Contributed by projectgheist)
Change 3352303 on 2017/03/17 by Ben.Zeigler
#jira UE-40856
Commit PR #3147: Remove unnecessary directory separator for GetSaveGamePath (Contributed by projectgheist)
Remove unnecessary FString casting and in OpenGLDebugFrameDump.cpp there were FString multiplications that would never compile
Change 3352320 on 2017/03/17 by Ben.Zeigler
#jira UE-40087 Fix it so console keybind can be used in shipping games with console enabled
Commit PR #3079: Fix ALLOW_CONSOLE define usage (Contributed by KrisRedbeard)
Change 3352338 on 2017/03/17 by Ben.Zeigler
#jira UE-42800
PR #3367: Made CheatManager more useful for non-FPShooters (Contributed by crumblycake)
Change 3352352 on 2017/03/17 by Dan.Oconnor
Emptying map instead of trying to remove an element when conversion of a value type fails - can't remove a single element until the map is rehashed
#jira UE-42937
Change 3352581 on 2017/03/17 by Lukasz.Furman
fixed memory leak in navmesh generators
copy of CL# 3352356
#ue4
Change 3352665 on 2017/03/17 by Aaron.McLeran
Fixing build error
- Adding virtual destructor to FSoundWaveSoundWaveAssetActionExtender
- Also renamed the class to only include SoundWave once!
- Fixing static analysis warning on null deref.
Change 3352685 on 2017/03/17 by Dan.Oconnor
Fix for bad behavior of GetValues and GetKeys functions when there are gaps in a TMap (e.g. due to Remove calls)
#jira UE-42547
Change 3352706 on 2017/03/17 by Aaron.McLeran
Fixing build error
Changing TSharedPtr<FSoundWaveSoundWaveAssetActionExtender> to TSharedPtr<ISoundWaveAssetActionExtensions>
Change 3352708 on 2017/03/17 by Dan.Oconnor
Data only and interface blueprints need SkeletonGeneratedClass set on load so that they can be used by the BlueprintEditor
#jira UE-43023
Change 3352860 on 2017/03/17 by Lukasz.Furman
fixed memory leak in navmesh generators
copy of CL# 3352849
#ue4
Change 3352967 on 2017/03/17 by Dan.Oconnor
Avoid tagging blueprints as modified while compiling with the new compilation manager. Leaving old code path unaffected, although it may benefit from this change.
#jira UE-43027
Change 3352979 on 2017/03/17 by Dan.Oconnor
Static analysis driven fixes
#jira UE-43044
Change 3352987 on 2017/03/17 by Aaron.McLeran
Fixing build error
- Removing myo from other platforms, win64 only
Change 3353234 on 2017/03/18 by Marc.Audy
Fix Win32 build
Change 3353344 on 2017/03/19 by Marc.Audy
Fix cyclic includes in new Audio code
Change 3353350 on 2017/03/19 by Marc.Audy
Disable static analysis for myo third party code
Change 3353750 on 2017/03/20 by Marc.Audy
Fix additional cyclic include
Change 3353926 on 2017/03/20 by Mieszko.Zielinski
Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if prop's AgentRadius is not set #UE4
This results in using FNavAgentProperties::DefaultProperties in navigation system queries to fallback to default query extent.
#jira UE-18493
Change 3354249 on 2017/03/20 by Mike.Beach
Raising a UHT error if you use a non-byte enum type in a Blueprint function. Blueprints currently only support uint8 enums (already an error if you tag the enum with 'BlueprintType', this error just emulates/extends that one).
#jira UE-42479
Change 3354464 on 2017/03/20 by Dan.Oconnor
Fix missing source path when using compilation manager
Change 3354499 on 2017/03/20 by Dan.Oconnor
Disable compilation manager
Change 3354620 on 2017/03/20 by Ben.Zeigler
#jira UE-43087 Fix crash when calling HasGPUEmitter on a Server build, this is newly an issue because it is calling GetAssetRegistryTags in more places than it used to
Change 3354714 on 2017/03/20 by Michael.Noland
PR #3352: Fixed issue with diffed Blueprints being searchable (Contributed by MichaelSchoell)
#jira UE-42655
Change 3354718 on 2017/03/20 by Michael.Noland
Engine: Change FViewport::IsGameRenderingEnabled to be static
PR #3317: FViewport::IsGameRenderingEnabled (Contributed by tomix1024)
#jira UE-42471
Change 3354721 on 2017/03/20 by Michael.Noland
PR #3293: Made GetDefaultLocale accessible in blueprint (Contributed by derekvanvliet)
#jira UE-42274
Change 3354907 on 2017/03/20 by Aaron.McLeran
Fixing content in xenakis map
Change 3355223 on 2017/03/20 by Ben.Zeigler
#jira UE-43096 Fix crash when trying to ResolveName a path that ends in . (apparently when you LoadObject empty string, it ends up trying to load "." before giving up
Change 3355297 on 2017/03/20 by Dan.Oconnor
Fix incorrect flag settings from fast skeleton path.. this is part of the fix for UE-43083
Change 3355373 on 2017/03/20 by Michael.Noland
PR #3222: Allow Blueprint Variables to be Readonly (Contributed by FrostByteGER)
#jira UE-41640
Change 3355417 on 2017/03/20 by Ben.Zeigler
Fix formatting bug where I forgot some braces
Change 3355462 on 2017/03/20 by Aaron.McLeran
UE-43046 Property type changed with no possible conversion
Resaved asset in question
Change 3355629 on 2017/03/20 by Dan.Oconnor
Don't warn the user when their return node that has no pins (other than an exec pin). These return nodes cannot be deleted and connecting them does nothing. Prior to recent changes the warning never fired because the return node would be pruned and not validated.
Change 3355631 on 2017/03/20 by Dan.Oconnor
Fix compilation results spam in compilation manager. Scoped compiler events (e.g. BP_SCOPED_COMPILER_EVENT_STAT(EKismetCompilerStats_CompileTime);) will flush the results log if no 'event' has been started. Timing data collected via this mechanism will not be useful (can only measure entire call to ::Flush in compilation manager)
Change 3356127 on 2017/03/21 by Richard.Hinckley
#jira UEDOC-4711
Updated an invalid/old URL in a comment to a valid/current URL.
Change 3356193 on 2017/03/21 by Marc.Audy
Temporarily remove editor only properties in FCameraFocusSettings until we correctly no longer create pins for struct properties that are not exposed to blueprints
#jira UE-43420
Change 3356222 on 2017/03/21 by Marc.Audy
Expose new attenuation settings to blueprints to resolve cook warnings.
Change 3356286 on 2017/03/21 by Richard.Hinckley
#jira UEDOC-4711
Selected a different URL for the update.
Change 3356339 on 2017/03/21 by Marc.Audy
Delete unconnected return nodes to fix fortnite cook warnings
Change 3356827 on 2017/03/21 by Ben.Zeigler
Explicitly disable copy operations for streamable manager objects. This may be causing some obscure crashes like WEX-5182 but I am not sure how the copy constructor would be getting called. Either way it's unsafe
Put in protection against passing in duplicate items to RequestAsyncLoad, which is another possible cause of internal data corruption
Add some more ensures to track down possible issues with handle corruption
Change 3356920 on 2017/03/21 by Ben.Zeigler
Fix ensure just checked in to not go off when handles are halfway through being cancelled
Change 3358152 on 2017/03/22 by Phillip.Kavan
#jira UE-43102 - Fix an occasional crash on load in nativized EDL-enabled builds with non-nativized child BPs.
Change summary:
- Modified AActor::PostLoadSubobjects() to skip the CheckAndApplyComponentTemplateOverrides() call in the CDO case; at that point the ICH may not be fully loaded, but we don't require the non-nativized child BP's CDO to be fixed up anyway.
[CL 3358685 by Marc Audy in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2937390 on 2016/04/07 by Cody.Albert
#jira UE-29211
Fixed slider to properly bubble unhandled OnKeyDown events
Change 2939672 on 2016/04/11 by Richard.TalbotWatkin
Made a change to how file check out notifications work. Now the dirty package state is processed at the end of every tick, meaning that packages which are dirtied and then cleaned again are not processed. This fixes an issue where a number of child blueprints were flagged as needing checkout when a parent blueprint was compiled. This also allows multiple packages which are dirtied at the same time to be treated as one transaction.
#jira UE-29193 - "Files need check-out" prompt spams Blueprint users
Change 2939686 on 2016/04/11 by Richard.TalbotWatkin
A number of further improvements to mesh vertex color painting:
* Lower LODs are now automatically fixed up for instances which were created in a previous bugged version of the engine.
* Since lower LODs cannot currently have their vertex colors edited, their vertex colors are always derived from LOD0.
* Fixed a bug when building lower LODs so that vertices in neighboring octree nodes are considered when looking for the nearest vertex from LOD0 which corresponds.
* Fixed issue where static meshes with imported LODs would not have the lower LODs' override colors set when "Copy instance vertex colors to source mesh" was used (static meshes with generated LODs were always getting correct override colors).
#jira UE-28563 - Incorrectly displayed LOD VertexColor until paint mode is selected
Change 2939906 on 2016/04/11 by Nick.Darnell
Automation - Adding several enhancements to the automation framework and improving the UI.
* Tests in the UI now have a link to the source and line where they orginate.
* There's now a general purpose latent lambda command you can use to run arbitrary code latently.
* Added Inlined AddCommand for regular and networked commands to the base automation class, to avoid the use of the macro, which prevents breakpoints from working in lambda code.
* Front end now has better column displays offering more room to the test name
* Changed several events to the automation controller to multicast delegates so that many could hook them.
* The UI now refreshes the selection after tests finish so that the output log updates.
Change 2939908 on 2016/04/11 by Nick.Darnell
Automation - The editor import/export tests are now a complex test and actually sperate out all the tests that can be run, some trickiness was required on the filenames so that they didn't expand into more child tests in the UI. (replacing .'s with _'s)
Change 2940028 on 2016/04/11 by Nick.Darnell
Automation - Removing the search box from the toolbar. It's now inlined above the test tree. Tweaking the padding to make it look more other windows and make everything not look so squished. Recursive expansion now works on tests.
Change 2940066 on 2016/04/11 by Nick.Darnell
Automation - Moving the filter group dropdown out of the toolbar and onto the line with the search box above the treeview - additional tweaks to it.
Change 2940092 on 2016/04/11 by Jamie.Dale
PR #2248: Datatable select next row (Contributed by FineRedMist)
Change 2940093 on 2016/04/11 by Jamie.Dale
PR #2248: Datatable select next row (Contributed by FineRedMist)
Change 2940157 on 2016/04/11 by Jamie.Dale
Fixing FTextTest due to some changes made to how currency is formatted
Change 2940694 on 2016/04/12 by Richard.TalbotWatkin
Fixed issue where vertex override colors were not being propagated correctly for generated lower LODs.
#jira UE-29360 - Override Colors not propagated correctly to generated lower LODs
Change 2942379 on 2016/04/13 by Richard.TalbotWatkin
Fixed issue where entering PIE while selecting an actor in Mesh Paint mode could lead to a MeshPaintStaticMeshAdapter holding onto an invalid pointer to an old mesh component, and causing a crash upon leaving the mode. This can happen because, when loading a new streaming level, the proxy actor can be selected when starting PIE, which will subsequently be added to the tool's internal lists. This needs to be added as a GC reference so that it can be NULLed when forcibly destroyed.
#jira UE-29345 - Crash occurs exiting the editor after enabling mesh paint mode and PIEing
Change 2942947 on 2016/04/13 by Richard.TalbotWatkin
Fixed crash when pasting a material function call node from one project to another in which it is not defined.
#jira UE-27087 - Crash when pasting MaterialFunctionCall expressions into the material editor between projects
Change 2943452 on 2016/04/14 by Richard.TalbotWatkin
Updated F4 debug key binding to match what's in ShowFlags.cpp
PR #2197 (contributed by mfortin-bhvr)
Change 2943824 on 2016/04/14 by Alexis.Matte
#jira UE-29090
Make sure we cannot open the color picker when a property is edit const
Change 2943841 on 2016/04/14 by Alexis.Matte
#jira UE-28924
tooltip was add for every hierarchy import option
Change 2943927 on 2016/04/14 by Alexis.Matte
#jira UE-29423
Add Obj support for scene importer
Github PR #2272
Change 2943967 on 2016/04/14 by Richard.TalbotWatkin
Added relevant fields from FBodyInstance to the FoliageType customizations.
#jira UE-20138 - FoliageType has a FBodyInstance but only shows Collision Presets and not other FBodyInstance properties
Change 2948397 on 2016/04/19 by Andrew.Rodham
Moved FSlateIcon definition to SlateCore
It was previously declared as SLATE_API, despite its header residing inside SlateCore. Reviewed by Jamie Dale.
Change 2948805 on 2016/04/19 by Andrew.Rodham
Editor: Deprecated FName UEdGraphNode::GetPaletteIcon(FLinearColor&); in favor of FSlateIcon UEdGraphNode::GetIconAndTint(FLinearColor&); to allow for icons in external style sets to be used.
- Previously, all icons were assumed to reside within FEditorStyle, which is not the case and would create broken icons in the graph editor. All relevant code has been updated to use FSlateIcon structures instead of a simple name.
- This change required a significant overhaul to FClassIconFinder to support FSlateIcons. To keep the API clean, FSlateIconFinder now deals with FSlateIcon class icon finding operations, and FClassIconFinder for the most part just adds actor specific logic.
#jira UE-26502
Change 2950658 on 2016/04/20 by Alexis.Matte
#jira UE-24333
Skinxx workflow, we now output an error if there is mix of material with skinxx and some with no skinxx suffix
Change 2950663 on 2016/04/20 by Alexis.Matte
#jira UE-29582
When exporting to fbx we have to export each material instance as one fbx material
Change 2951240 on 2016/04/21 by Alexis.Matte
#jira UE-28473
Make sure light are render properly after importing a fbx scene
Change 2951421 on 2016/04/21 by Alexis.Matte
#jira UE-29773
fbx skeletalmesh import now support mesh hierarchy
Change 2955873 on 2016/04/26 by Richard.TalbotWatkin
PR #2225: Fix working package directory from the launch profiles (Contributed by projectgheist)
Change 2955965 on 2016/04/26 by Nick.Darnell
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 2956717 on 2016/04/26 by Andrew.Rodham
Editor: World Outliner now correctly calls ProcessEditDelete on editor modes that have asked to process delete operations
#jira UE-26968
Change 2956822 on 2016/04/26 by Andrew.Rodham
Editor: Fixed actors not being removed from the scene outliner when they are added and removed on the same frame
#jira UE-7777
Change 2956931 on 2016/04/26 by Nick.Darnell
New Module - UATHelper - Moving the UAT launching code from the MainFrame module into a reusable module other modules can trigger.
Change 2956932 on 2016/04/26 by Nick.Darnell
Plugins - Now allowing you to package a plugin from the plugin browsing view. Still work in progress.
Change 2957164 on 2016/04/26 by Nick.Darnell
Hot Reload - Fixing hot reload, it no longer creates a temporary copy of the module manager. Making the copy constructor private on the module manager to prevent this in the future.
Change 2957165 on 2016/04/26 by Nick.Darnell
Fixing the Editor Mode plugin sample, it no longer provides a bad starting example for where to create your widgets.
#jira UE-28456
Change 2957510 on 2016/04/27 by Nick.Darnell
PR #2198: Git Plugin implement the Sync operation to update local files using the git pull --rebase command (Contributed by SRombauts)
#jira UE-28763
Change 2957511 on 2016/04/27 by Andrew.Rodham
Editor: Make favorites button on details panel non-focusable
- This was preventing users being able to tab between value fields on the details panel
Change 2957610 on 2016/04/27 by Nick.Darnell
PR #1836: Git plugin: make initial commit when initializing new project (Contributed by SRombauts)
#jira UE-24190
Change 2957667 on 2016/04/27 by Jamie.Dale
Fixed crash that could happen in FTextLayout::GetLineViewIndexForTextLocation if passed a bad location
#jira OR-18634
Change 2958035 on 2016/04/27 by Nick.Darnell
Fixing the DesignerRebuild flag detection so that we can just refresh the slate widget without recreating the preview UObject, which causes the destruction of the details panel, and the slate widget recreation was the only part that was required.
Change 2958272 on 2016/04/27 by Jamie.Dale
Added FAssetData::GetTagValue to handle getting asset tag values in a type-correct way
This allows type-conversion using LexicalConversion, and also has specializations for FString, FText, and FName.
#jira UE-12096
Change 2958348 on 2016/04/27 by Jamie.Dale
PR #2282: Slate font shutdown order fix (Contributed by FineRedMist)
Change 2958352 on 2016/04/27 by Jamie.Dale
Fixed the subtitle manager updating the wrong list of subtitles
#jira UE-29511
Change 2958390 on 2016/04/27 by Jamie.Dale
Removed some old placement-new style array insertions
Change 2959360 on 2016/04/28 by Richard.TalbotWatkin
Fixed potential crash when mesh painting actors whose geometry adapters are no longer registered.
#jira UE-29615 - [CrashReport] UE4Editor_MeshPaint!FEdModeMeshPaint::DoPaint() [meshpaintedmode.cpp:1127]
Change 2959724 on 2016/04/28 by Cody.Albert
Merging hardware survey gating logic from 4.10
#jira UE-28666
Change 2959807 on 2016/04/28 by Cody.Albert
Removed deprecated function call
#jira UE-28666
Change 2959894 on 2016/04/28 by Cody.Albert
Fix for scroll offset being clamped by content size, not scroll max
#jira UE-20676
Change 2960048 on 2016/04/28 by Jamie.Dale
Added FAssetData::GetTagValueRef to go along with FAssetData::GetTagValue
#jira UE-12096
Change 2960782 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2960885 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2961170 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2961171 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2961173 on 2016/04/29 by Jamie.Dale
Removed some inline duplication on the specialized template functions
#jira UE-12096
Change 2963124 on 2016/05/02 by Jamie.Dale
FExternalDragOperation can now contain both text and file data at the same time
This better mirrors what the OS level drag-and-drop operations are capable of, and some applications will actually give you both bits of data at the same time.
#jira UE-26585
Change 2963175 on 2016/05/02 by Jamie.Dale
Updated some font editor tooltips to be more descriptive
#jira UE-17429
Change 2963290 on 2016/05/02 by Jamie.Dale
The Localise UAT command can now be run with a null localisation provider
Change 2963305 on 2016/05/02 by Jamie.Dale
Fixed minor typo
Change 2963402 on 2016/05/02 by Jamie.Dale
Cleaned up all the current localization key conflicts and warnings from gathering Engine code
#jira UE-25833
Change 2963415 on 2016/05/02 by Jamie.Dale
Rephrased a message that could generate a CIS warning
#jira UE-25833
Change 2964184 on 2016/05/03 by Jamie.Dale
Fixed duplicate "Font" entry in asset picker menu
This was caused by PropertyCustomizationHelpers::GetNewAssetFactoriesForClasses using CanCreateNew rather than ShouldShowInNewMenu, as UFont has two factories, but one is supposed to be hidden from the UI.
We also now make sure the factories are sorted by display name before being shown in the UI.
#jira UE-24903
Change 2966108 on 2016/05/04 by Nick.Darnell
Engine - Rearranging the order of ELoadingPhase's enums so that they match the loading order of modules.
Change 2966113 on 2016/05/04 by Nick.Darnell
[Engine Loop Change] UEngine now defines a Start() function, that subclasses can use to start game related things after initialization of the engine. This is done so that after the Init() call on UEngine, we can then perform a module load for the ELoadingPhase::PostEngineInit phase of loading, then inform the UEngine that it's time to start the game. Therefore, UGameEngine now tells the GameInstance to Start during this phase now.
Change 2966121 on 2016/05/04 by Jamie.Dale
Config writing improvements when dealing with property values
This updates FConfigFile::ShouldExportQuotedString to make sure that a property value containing any characters that FParse::LineExtended will consume when parsing back in the config file (such as { and }, or a trailing \) cause the string to be quoted.
This also adds FConfigFile::GenerateExportedPropertyLine to generate the INI key->value lines in a consistent and correctly escaped way, and makes sure that everything that writes out lines to a config file uses it.
FConfigCacheIni::SetString and FConfigCacheIni::SetText have been updated to update the value even if it only differs by case.
UObject::SaveConfig and UObject::LoadConfig have had some code whitespace fix-up (from a bad merge).
Change 2966122 on 2016/05/04 by Jamie.Dale
Added a setting to control dialogue wave audio filenames
Change 2966481 on 2016/05/04 by Jamie.Dale
PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist)
Change 2966887 on 2016/05/04 by Jamie.Dale
PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist)
Change 2967488 on 2016/05/05 by Ben.Marsh
Changes to support packaging plugins from the editor.
* UBT now has an option to explicitly disable hot-reloading in any circumstances.
* When running with -module arguments for a monolithic target, UBT will no longer try to relink the executable in source builds (so it's possible to compile plugin libs outside of an installed engine build without having already built UE4Game).
* When packaging, a temporary host project is always generated in the output directory to avoid invalidating intermediates in the source directory.
* An empty Config\FilterPlugin.ini file is written out with instructions on how to list additional files to package if it is not already present.
Change 2967947 on 2016/05/05 by Nick.Darnell
PR #2358: Properly display Mip Level Count and Format for UTexture2DDynamic Textures (Contributed by Allegorithmic)
#jira UE-30371
Change 2968333 on 2016/05/05 by Jamie.Dale
Fixed MultiLine not working with arrays of string or text properties
- The detail customizations for FString and FText properties now read the meta-data off the correct property.
- The UDS editor now lets you set the "MultiLine" meta-data on arrays of FString and FText properties.
- Fixed changing the "MultiLine" flag on a UDS property not rebuilding the default value editor.
- Fixed the default values panel in the UDS editor having a title area.
#jira UE-30392
Change 2968999 on 2016/05/06 by Jamie.Dale
Fixed infinite loop in the editor if a directory that is being watched is deleted
#jira UE-30172
Change 2969105 on 2016/05/06 by Richard.TalbotWatkin
Fixed issue where opening a submenu while the parent menu had a text box focused would lead to a crash. The graph node comment text widget now only dismisses all menus if the text commit info implies that it was committed by some user action.
#jira UE-29086 - Crash When Typing a Node Comment and Hovering Over the Alignment Option
Change 2969440 on 2016/05/06 by Jamie.Dale
Significant performance improvements when pasting a large amount of text
#jira UE-19712
Change 2969619 on 2016/05/06 by Andrew.Rodham
Auto-reimport is now disabled inside an editor running in unattended mode
Change 2969621 on 2016/05/06 by Jamie.Dale
Added the ability to override the subtitle used on a dialogue wave
This is useful for effort sounds, plus some other cases, such as characters speaking in a foreign language not known to the player.
#jira UETOOL-795
Change 2970588 on 2016/05/09 by Chris.Wood
Fix typo in operator expression in UEndUserSettings::SetSendAnonymousUsageDataToEpic()
[UE-26958] - GitHub 2056 : Fixing typo in the operator
#2056
Change 2971151 on 2016/05/09 by Chris.Wood
Logging ensure fails as errors. Automated tests with ensure fails will be unsuccessful.
[UE-19579] - If an ensure() fails within an automated test, the test can still show a positive result.
[UE-26575] - GitHub 2030 : Add error-severity message to log on ensure.
PR #2030
Change 2971267 on 2016/05/09 by Alexis.Matte
Wrong parameter when calling GetImportOptions
#jira UE-30299
Change 2972073 on 2016/05/10 by Richard.TalbotWatkin
Fixed UModel methods which make surfaces as modified.
#jira UE-28831 - Unable to undo material placement on BSP
Change 2972329 on 2016/05/10 by Nick.Darnell
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 2972887 on 2016/05/10 by Alexis.Matte
#jira UE-30167
We now import the geometric transform also when we uncheck the absolute transform in the vertex.
Change 2973664 on 2016/05/11 by Nick.Darnell
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 2973717 on 2016/05/11 by Nick.Darnell
Fixing compiler issues from main merge.
#jira UE-30590
Change 2973846 on 2016/05/11 by Jamie.Dale
Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue
These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects).
The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue.
This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made).
Change 2973847 on 2016/05/11 by Jamie.Dale
Changing the loading phase in the localization dashboard now writes to the default config
#jira UE-30482
Change 2973866 on 2016/05/11 by Jamie.Dale
Deprecated some functions that were taking an unused position.
These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version.
- FViewportFrame::ResizeFrame
- FSceneViewport::ResizeFrame
- FSceneViewport::ResizeViewport
[CL 2973886 by Nick Darnell in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2870336 on 2016/02/17 by Marc.Audy
Continued splitting up Orion Build
* Restructure from platform based MakeBuild steps in to a PS4, Server, and Windows Client MakeBuild
* Cook server data only once for both Windows and Linux (windows reuses Linux server data)
* Split compilation of Win64 Client and Server such that MakeBuild_Server only builds Server and MakeBuild_WindowsClient only builds Client
#jira UEB-580
#rb Ben.Marsh
#tests Preflight and generated Windows Client and Server work to play game
Change 2870026 on 2016/02/17 by Wes.Hunt
Don't allow array shrinking when removing the corruption wrapper trailer.
#rb none
Updating CIS Counter
Change 2869725 on 2016/02/17 by Dmitry.Rekman
More analytics and QoS stats added for 0.19.
#rb none
#tests Ran Windows client and Linux server on compatible content.
Change 2869705 on 2016/02/16 by Ryan.Gerleve
Fix replicated properties and call RepNotifies of startup actors when scrubbing in replays.
This is the engine support for fixing OR-6817, towers not respawning when rewinding replays.
#rb john.pollard
#tests golden path, replays, ps4 nomcp
Change 2869644 on 2016/02/16 by Jason.Bestimt
#ORION_DEV - Merge MAIN (0.18) at CL# 2869635
#Tests:none
#RB:none
Change 2869586 on 2016/02/16 by Marcus.Wassmer
Fix texturestreaming RHI flushes.
#rb none
#test goldenpath
#codereview Gil.Gribb
Change 2869279 on 2016/02/16 by Lukasz.Furman
fixed minion hit reaction directions
#orion OR-13953
#rb Mieszko.Zielinski
#tests PIE: hit minions with various abilities from different angles, checked velocity of death particles when killed by abilities and towers
#codereview Dan.Youhon
Change 2869277 on 2016/02/16 by Wes.Hunt
During cook, when a package is not ready to save, actually early out of the saving code. Saves somewhere in the 130s to 200s range for cooks.
#rb daniel.lamb
#tests local windows cooks, preflight PS4 cooks
Change 2869132 on 2016/02/16 by Mieszko.Zielinski
Added a function to AISenseConfig allowing native-code MaxAge configuration #UE4
#rb Lukasz.Furman
#test none required
Change 2868981 on 2016/02/16 by Wes.Hunt
remove -LogCookStats cmdline check, always log cook stats. -SendCookAnalytics flag is still used.
This was requested by NickP.
#rb none
#tests local windows cooks
Change 2868975 on 2016/02/16 by Wes.Hunt
Don't submit DDC usage stats for zero-sized events.
#rb none
#tests local windows cook
Change 2868956 on 2016/02/16 by Jason.Bestimt
#ORION_DEV - Merge MAIN (0.18) at CL# 2868926
#RB:none
#Tests:none
Change 2868889 on 2016/02/16 by Max.Chen
Sequencer: Only allow transport control binding when editing level editor sequencers.
#rb none
#tests none
Change 2868663 on 2016/02/16 by David.Ratti
downgrade warning to display
#rb none
#tests compile
Change 2868624 on 2016/02/16 by Marcus.Wassmer
Re-Enable Defrag validation for devgeneral
#rb none
#test none
Change 2868493 on 2016/02/16 by Benn.Gallagher
Added a few more stats to morph target updates to try and narrow down hitches
#rb Bruce.Nesbit
#tests pie, -game Win64
Change 2868445 on 2016/02/16 by Dmitry.Rekman
Linux: report crashes due to stack overflow (OR-14519).
- Reserve memory for alternative stack for signal handlers. Adds about 128KB memory per thread.
- Force process spawning to use vfork() when no pipes are needed.
- Ignore all signals except explicitly handled.
- Prevent signals from being raised while another one is handled.
- Added "debug threadrecurse" and "debug threadstackoverflow" to test that.
[CL 2873763 by Andrew Grant in Main branch]
UETOOL-332 - Collections 2.0
UETOOL-373 - Check robustness of Collections 2.0
The collection manager will now fix-up any references to redirectors within its collections once the asset registry has finished discovering all the available assets. It also adds a watcher so it can pick up any moves or deletes as they happen.
All of this fix-up is applied to the in-memory copy of the collection, and doesn't get persisted to disk until it needs to be (because referenced redirectors are being deleted). This helps to minimize issues with source control availability and shared/private collections.
This change also makes sure that objects that are being referenced by a collection will leave a redirector behind, and also adds some extra context (such as the collection name) to some of the source control errors that may be reported when saving a collection.
[CL 2602519 by Jamie Dale in Main branch]