2019-12-26 15:33:43 -05:00
// Copyright Epic Games, Inc. All Rights Reserved.
2014-03-14 14:13:41 -04:00
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#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]
2016-11-23 15:48:37 -05:00
# include "K2Node_BreakStruct.h"
2022-08-30 23:03:03 -04:00
# include "BPTerminal.h"
2016-02-12 17:00:45 -05:00
# include "BlueprintEditorSettings.h"
2022-08-30 23:03:03 -04:00
# include "Containers/Array.h"
# include "Containers/EnumAsByte.h"
# include "Containers/Map.h"
# include "Containers/UnrealString.h"
# include "Delegates/Delegate.h"
# include "EdGraph/EdGraphPin.h"
# include "EdGraphSchema_K2.h"
# include "EdGraphUtilities.h"
# include "EditorCategoryUtils.h"
# include "Engine/Blueprint.h"
2024-06-19 08:00:57 -04:00
# include "StructUtils/UserDefinedStruct.h"
2022-08-30 23:03:03 -04:00
# include "EngineLogs.h"
# include "Internationalization/Internationalization.h"
# include "K2Node_StructOperation.h"
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
# include "Kismet/KismetMathLibrary.h"
2022-08-30 23:03:03 -04:00
# include "Kismet2/BlueprintEditorUtils.h"
# include "Kismet2/CompilerResultsLog.h"
# include "KismetCompiledFunctionContext.h"
# include "KismetCompiler.h"
# include "KismetCompilerMisc.h"
# include "Logging/LogCategory.h"
# include "Logging/LogMacros.h"
# include "Math/Rotator.h"
# include "Math/UnrealMathSSE.h"
# include "Math/Vector2D.h"
# include "Misc/AssertionMacros.h"
# include "PropertyCustomizationHelpers.h"
# include "Serialization/Archive.h"
# include "Styling/AppStyle.h"
# include "Templates/Casts.h"
# include "Trace/Detail/Channel.h"
# include "UObject/Class.h"
# include "UObject/NameTypes.h"
# include "UObject/Object.h"
# include "UObject/ObjectPtr.h"
2021-04-28 12:42:10 -04:00
# include "UObject/ObjectSaveContext.h"
2022-08-30 23:03:03 -04:00
# include "UObject/UnrealType.h"
# include "UObject/WeakObjectPtrTemplates.h"
2014-03-14 14:13:41 -04:00
# define LOCTEXT_NAMESPACE "K2Node_BreakStruct"
//////////////////////////////////////////////////////////////////////////
// FKCHandler_BreakStruct
class FKCHandler_BreakStruct : public FNodeHandlingFunctor
{
public :
FKCHandler_BreakStruct ( FKismetCompilerContext & InCompilerContext )
: FNodeHandlingFunctor ( InCompilerContext )
{
}
FBPTerminal * RegisterInputTerm ( FKismetFunctionContext & Context , UK2Node_BreakStruct * Node )
{
check ( NULL ! = Node ) ;
if ( NULL = = Node - > StructType )
{
CompilerContext . MessageLog . Error ( * LOCTEXT ( " BreakStruct_UnknownStructure_Error " , " Unknown structure to break for @@ " ) . ToString ( ) , Node ) ;
return NULL ;
}
//Find input pin
UEdGraphPin * InputPin = NULL ;
for ( int32 PinIndex = 0 ; PinIndex < Node - > Pins . Num ( ) ; + + PinIndex )
{
UEdGraphPin * Pin = Node - > Pins [ PinIndex ] ;
if ( Pin & & ( EGPD_Input = = Pin - > Direction ) )
{
InputPin = Pin ;
break ;
}
}
check ( NULL ! = InputPin ) ;
//Find structure source net
UEdGraphPin * Net = FEdGraphUtilities : : GetNetFromPin ( InputPin ) ;
check ( NULL ! = Net ) ;
FBPTerminal * * FoundTerm = Context . NetMap . Find ( Net ) ;
FBPTerminal * Term = FoundTerm ? * FoundTerm : NULL ;
if ( NULL = = Term )
{
// Dont allow literal
if ( ( Net - > Direction = = EGPD_Input ) & & ( Net - > LinkedTo . Num ( ) = = 0 ) )
{
CompilerContext . MessageLog . Error ( * LOCTEXT ( " InvalidNoInputStructure_Error " , " No input structure to break for @@ " ) . ToString ( ) , Net ) ;
return NULL ;
}
// standard register net
else
{
2014-09-26 11:32:41 -04:00
Term = Context . CreateLocalTerminalFromPinAutoChooseScope ( Net , Context . NetNameMap - > MakeValidName ( Net ) ) ;
2014-03-14 14:13:41 -04:00
}
Context . NetMap . Add ( Net , Term ) ;
}
UStruct * StructInTerm = Cast < UStruct > ( Term - > Type . PinSubCategoryObject . Get ( ) ) ;
if ( NULL = = StructInTerm | | ! StructInTerm - > IsChildOf ( Node - > StructType ) )
{
CompilerContext . MessageLog . Error ( * LOCTEXT ( " BreakStruct_NoMatch_Error " , " Structures don't match for @@ " ) . ToString ( ) , Node ) ;
}
return Term ;
}
void RegisterOutputTerm ( FKismetFunctionContext & Context , UScriptStruct * StructType , UEdGraphPin * Net , FBPTerminal * ContextTerm )
{
2020-03-15 10:33:45 -04:00
if ( FProperty * BoundProperty = FindFProperty < FProperty > ( StructType , Net - > PinName ) )
2014-03-14 14:13:41 -04:00
{
2015-08-12 04:24:48 -04:00
if ( BoundProperty - > HasAnyPropertyFlags ( CPF_Deprecated ) & & Net - > LinkedTo . Num ( ) )
{
FText Message = FText : : Format ( LOCTEXT ( " BreakStruct_DeprecatedField_Warning " , " @@ : Member '{0}' of struct '{1}' is deprecated. " )
, BoundProperty - > GetDisplayNameText ( )
, StructType - > GetDisplayNameText ( ) ) ;
CompilerContext . MessageLog . Warning ( * Message . ToString ( ) , Net - > GetOuter ( ) ) ;
}
2016-02-12 17:00:45 -05:00
UBlueprintEditorSettings * Settings = GetMutableDefault < UBlueprintEditorSettings > ( ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
FBPTerminal * Term = Context . CreateLocalTerminalFromPinAutoChooseScope ( Net , Net - > PinName . ToString ( ) ) ;
2016-02-26 16:58:26 -05:00
Term - > bPassedByReference = ContextTerm - > bPassedByReference ;
2014-03-14 14:13:41 -04:00
Term - > AssociatedVarProperty = BoundProperty ;
Context . NetMap . Add ( Net , Term ) ;
Term - > Context = ContextTerm ;
if ( BoundProperty - > HasAnyPropertyFlags ( CPF_BlueprintReadOnly ) )
{
Term - > bIsConst = true ;
}
}
else
{
CompilerContext . MessageLog . Error ( TEXT ( " Failed to find a struct member for @@ " ) , Net ) ;
}
}
2014-06-13 06:14:46 -04:00
virtual void RegisterNets ( FKismetFunctionContext & Context , UEdGraphNode * InNode ) override
2014-03-14 14:13:41 -04:00
{
UK2Node_BreakStruct * Node = Cast < UK2Node_BreakStruct > ( InNode ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
check ( Node ) ;
2014-03-14 14:13:41 -04:00
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
if ( ! UK2Node_BreakStruct : : CanBeBroken ( Node - > StructType , Node - > IsIntermediateNode ( ) ) )
2014-03-14 14:13:41 -04:00
{
CompilerContext . MessageLog . Warning ( * LOCTEXT ( " BreakStruct_NoBreak_Error " , " The structure cannot be broken using generic 'break' node @@. Try use specialized 'break' function if available. " ) . ToString ( ) , Node ) ;
}
if ( FBPTerminal * StructContextTerm = RegisterInputTerm ( Context , Node ) )
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
for ( UEdGraphPin * Pin : Node - > Pins )
2014-03-14 14:13:41 -04:00
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
if ( Pin & & EGPD_Output = = Pin - > Direction )
2014-03-14 14:13:41 -04:00
{
RegisterOutputTerm ( Context , Node - > StructType , Pin , StructContextTerm ) ;
}
}
}
}
} ;
2016-02-19 13:49:13 -05:00
UK2Node_BreakStruct : : UK2Node_BreakStruct ( const FObjectInitializer & ObjectInitializer )
: Super ( ObjectInitializer )
, bMadeAfterOverridePinRemoval ( false )
2014-03-14 14:13:41 -04:00
{
}
2019-12-13 11:07:03 -05:00
static bool CanCreatePinForProperty ( const FProperty * Property )
2014-08-05 14:16:02 -04:00
{
const UEdGraphSchema_K2 * Schema = GetDefault < UEdGraphSchema_K2 > ( ) ;
FEdGraphPinType DumbGraphPinType ;
const bool bConvertable = Schema - > ConvertPropertyToPinType ( Property , /*out*/ DumbGraphPinType ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
const bool bVisible = ( Property & & Property - > HasAnyPropertyFlags ( CPF_BlueprintVisible ) ) ;
2014-08-05 14:16:02 -04:00
return bVisible & & bConvertable ;
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
bool UK2Node_BreakStruct : : CanBeBroken ( const UScriptStruct * Struct , const bool bForInternalUse )
2014-03-14 14:13:41 -04:00
{
2019-03-08 15:05:01 -05:00
if ( Struct & & ! Struct - > HasMetaData ( FBlueprintMetadata : : MD_NativeBreakFunction ) & & UEdGraphSchema_K2 : : IsAllowableBlueprintVariableType ( Struct , bForInternalUse ) )
2014-03-14 14:13:41 -04:00
{
2019-12-13 11:07:03 -05:00
for ( TFieldIterator < FProperty > It ( Struct ) ; It ; + + It )
2014-03-14 14:13:41 -04:00
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
if ( CanCreatePinForProperty ( * It ) )
2014-03-14 14:13:41 -04:00
{
2014-08-05 14:16:02 -04:00
return true ;
2014-03-14 14:13:41 -04:00
}
}
}
return false ;
}
void UK2Node_BreakStruct : : AllocateDefaultPins ( )
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
if ( StructType )
2014-03-14 14:13:41 -04:00
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
UEdGraphNode : : FCreatePinParams PinParams ;
PinParams . bIsConst = true ;
PinParams . bIsReference = true ;
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3278667)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3278667 on 2017/01/31 by Chris.Wood
Added extra context to crash analytics and crash reports in the Editor.
[UE-41306] - Add context to crash analytics and crash reports (with Editor user activity)
When a Slate tab becomes active or foregrounded, we take its LayoutIdentity, Label and Content Widget Type and generate a string from all three. This gives context for what the user was doing. The string is set as the UserActivity and passed to MTBF analytics, crash analytics and crash reporter.
Also added filter to the UserActivity tracking system that defaults to Game mode to preserve previous behavior. Editor now switches it to Editor mode and starts setting the activity in this mode.
#jira UE-41306
Change 3278637 on 2017/01/30 by Dmitriy.Dyomin
Fixed: iOS Device displays textures darker than in Editor
#jira UE-41298
Change 3278566 on 2017/01/30 by Jack.Porter
Fix #WITH_EDITOR in InstancedStaticMesh.cpp
#jira UE-41292
Change 3278195 on 2017/01/30 by Alexis.Matte
Fix the re-import skeletal mesh regression, where all material disapear.
#jira UE-41294
Change 3278173 on 2017/01/30 by Frank.Fella
PlatformMediaSource - Don't allow the user to nest platform media sources, and also fail validation on nested platform media sources just in case they are set outside of the cusomization UI.
#Jira UE-40779
Change 3278156 on 2017/01/30 by Josh.Adams
- Adding the missed #include line for IsWindowsServer()
#jira UE-41304
Change 3278088 on 2017/01/30 by Mike.Beach
Mirroring CL 3249423 from Dev-BP.
Fix to keep placeholder classes from being needlessly created (when the object they represent already exists) - instead, attempt to lookup and find the existing import objects (which used to be set, but could be cleared during async loading by FLinkerManager::DissociateImportsAndForcedExports()).
#jira OR-34038
Change 3278036 on 2017/01/30 by Mike.Beach
Mirroring CL 3277671 from Dev-BP.
Refactoring FBlueprintCompilerCppBackend::SortNodesInUberGraphExecutionGroup() a bit. Catching cases that weren't acounted for - detecting cyclical logic now when we've pulled a node/statement out of order, and other nodes need to fall through to that logic (not relying on a goto).
#jira UE-41188, UE-41189, UE-41186, UE-41037
Change 3277974 on 2017/01/30 by Josh.Adams
- Hopeful workaround for COM crash in HandleGameExplorerIntegration function
#jira UE-41080
Change 3277951 on 2017/01/30 by Ori.Cohen
Fix access violation in physx.
#JIRA ODIN-5199
Change 3277773 on 2017/01/30 by Jamie.Dale
Fixing crash that could occur with null meta-data
#jira UE-41271
Change 3277549 on 2017/01/30 by Max.Chen
Sequencer: Back out changelist 3276452 because it breaks other uses of the time snapping interval in the settings.
#jira UE-41009
Change 3277510 on 2017/01/30 by Jamie.Dale
Fixed localization sometimes having incorrect keys in cooked builds
Merged CL# 3276233 and CL# 3277273.
#jira UE-41271
Change 3277500 on 2017/01/30 by Michael.Trepka
Added -Wno-undefined-var-template on Mac to work around an issue with compiling UHT in Xcode 8.3
#jira UE-41225
Change 3277421 on 2017/01/30 by Arciel.Rekman
TestPAL: delete unused test (UE-36984)
#jira UE-36984
(Edigrating CL 3267568 from Dev-Platform to Release-4.15)
Change 3277410 on 2017/01/30 by Jeff.Fisher
UE-41152 more non-unity include fixes.
-Matthew Griffin showed me how to run this locally, so I was able to locally reproduce the errors and this fixed them (the previous fixes were insufficient rather than incorrect).
#jira UE-41152
Change 3277230 on 2017/01/30 by Jack.Porter
Fixed issue with static lighting for Foliage and Instanced Static Meshes where shadows on instances in LOD levels other than LOD 0 was incorrect.
#jira UE-39884
Change 3277178 on 2017/01/30 by Allan.Bentham
enable FORCE_FLOATS with iOS metal shaders when full precision material setting is set.
#jira UE-41253
Change 3277134 on 2017/01/30 by Matthew.Griffin
Fixed NonUnity compile issues
Change 3276503 on 2017/01/28 by Jeff.Fisher
UE-41152 more non-unity include fixes.
#jira UE-41152
Change 3276452 on 2017/01/28 by Max.Chen
Sequencer: Changed the time snapping interval in the toolbar ui so that it no longer additionally updates the sequencer setting. The value used in the sequencer settings is only used to initialize a new level sequence.
#jira UE-41009
Change 3276130 on 2017/01/27 by Phillip.Kavan
[UE-40894] Fix data loss issues with non-native Blueprint classes that override inherited component default values from a nativized parent Blueprint class hierarchy.
- Mirrored from //UE4/Dev-Blueprints (CL# 3276109).
#jira UE-40894
Change 3276013 on 2017/01/27 by Lina.Halper
- fix issue with additive pose preview applying twice
#jira: UE-41216
#code review:Thomas.Sarkanen
Change 3275990 on 2017/01/27 by Mitchell.Wilson
Disabling 'Used with skeletal mesh' on some materials to resolve errors and warnings.
#jira UE-40736
Change 3275885 on 2017/01/27 by Matt.Kuhlenschmidt
Fixed missing slate style assets log warning
#jira UE-41148
Change 3275805 on 2017/01/27 by Ori.Cohen
Fix incorrect warning about moving simulated bodies during tick group. The existing code would warn if you had a kinematic that was SimulationDisabled (i.e. meaning it's not in the sim scene).
#JIRA UE-37270
Change 3275797 on 2017/01/27 by Shaun.Kime
In some cases, it was possible to create a SRetainerWidget that does not have a valid scene. This would cause the recorded scene index to be mismatched with the actual rendering index when played back in the future.
#jira OR-34919
Change 3275681 on 2017/01/27 by Lina.Halper
Dupe change of CL 3273803, 3274129, 3274700
#jira: UE-41163
#code review:Daniel.Wright, Martin.Wilson
Change 3275624 on 2017/01/27 by Benn.Gallagher
Fixed crash when creating destructible meshes from static meshes with null material interface entries
#jira UE-38998
Change 3275601 on 2017/01/27 by Matt.Kuhlenschmidt
Fix crash when a kdop collision generation fails and there are existing collision meshes selected. We no longer clear out unrelated collision primitives when kdop generation fails.
#jira UE-41220
Change 3275545 on 2017/01/27 by Chris.Bunner
Added flag for retreiving debug materials from GetUsedMaterials calls on rendering components.
#jira UE-40482
Change 3275522 on 2017/01/27 by Max.Chen
Sequencer: Call modify before setting row indices
#jira UE-40682
Change 3275518 on 2017/01/27 by Max.Chen
Sequencer: Switch to static pointer to fix crash when tearing down curve editor.
#jira UE-41105
Change 3275475 on 2017/01/27 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
-Fixing non-unity missing includes.
#jira UE-41152
Change 3275387 on 2017/01/27 by Steve.Robb
Prevent engine reinstancing on hot reload.
Copied from CL# 3265490.
#jira UE-40765
Change 3275279 on 2017/01/27 by Josh.Adams
- Redoing change 3274305 in 4.15
#jira UE-40451
Change 3275233 on 2017/01/27 by Luke.Thatcher
[PLATFORM] [PS4] [!] Fix share play initialization logic.
#jira UE-41209
Change 3275227 on 2017/01/27 by Alex.Delesky
Duplicating the fix for UE-40791 from Dev-Editor CL 3265714 - The ForceFeedback thumbnail's Play and Stop icons will now render correctly, and will only be visible while an effect is playing or when the cursor hovers over the icon.
#jira UE-40791
Change 3275057 on 2017/01/27 by Peter.Sauerbrei
fix for crash after changing the metal shader version
#jira ue-41183
Change 3275031 on 2017/01/27 by Matthew.Griffin
Added architecture hash to path for Linux generated includes, didn't realize that this was part of the path.
Change 3275005 on 2017/01/27 by Matthew.Griffin
Re-enabled Cache of cooked platform data during DerivedDataCache commandlet
Moved caching DDC of non-host platform data behind an option so it's not done for Installed Build by default
Removed other platforms from Launcher Samples and changed 'CookPlatforms' to 'DDCPlatforms' so that its purpose is more clear
Change 3274828 on 2017/01/27 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
-Fixing non-unity missing include.
#jira UE-41152
Change 3274799 on 2017/01/27 by Arciel.Rekman
Fix for installed Linux cross-toolchain (UE-40392).
- Pull request #3111 contributed by rubu.
#jira UE-40392
Change 3274756 on 2017/01/27 by Max.Chen
Sequencer: Update the parent guid with the new possessable guid. This fixes a bug where the parent guid isn't set properly and so folders aren't retained when assign actors and running fix up actor references.
#jira UE-41010
Change 3274755 on 2017/01/27 by Max.Chen
Sequencer: Call notify movie scene data changed when creating a camera instead of marking the instances as needing a refresh.
#jira UE-41019
Change 3274597 on 2017/01/26 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
-Fixing monolithic include warning.
#jira UE-41152
Change 3274564 on 2017/01/26 by Mike.Beach
Following the example of other nodes with external dependencies (like UK2Node_SwitchEnum), and making sure the struct is preloaded before we use it (the struct needs to have a valid size).
#jira UE-41073
Change 3274535 on 2017/01/26 by Mike.Beach
Removed ensure that was blocking a wrapper function call to a non-nativized function lib from being generated (while not optimal, the generated code works).
#jira UE-41190
Change 3274512 on 2017/01/26 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
Merging cl 3255506 Copyright update for google
-note most of the changes went in with the previous 3 androidvr-devvr change integrations, these two were not otherwise changed.
-just incrementing the year
//depot/Partners/Google/AndroidVR-DevVR/Engine/...
to //UE4/Release-4.15/Engine/...
#jira UE-41152
#review-3273588
Change 3274511 on 2017/01/26 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
Merging cl 3243495 Adding GoogleVRTransition2D plugin to handle VR->2D->VR transition for daydream app.
//depot/Partners/Google/AndroidVR-DevVR/Engine/...
to //UE4/Release-4.15/Engine/...
#jira UE-41152
#review-3273586
Change 3274510 on 2017/01/26 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
Merging cl 3243494 Update GoogleVR plugin to v1.2.
-Upgrade GVR NDK to 1.10.0
-Add easy to use GoogleVR input component, including controller component for daydream and a gaze based reticle component for cardboard.
-Make the GoogleVRSplash rendered with depth.
-Add built in arm model support in GoogleVR controller plugin.
-Add "Use ExternalFilesDir for UE4Game files" option in AndroidRuntimeSetting to support saving game progress without requesting EXTERNAL_STORAGE permission in Andoird 23+
-Remove the "Package for Daydream" option in AndroidRuntimeSetting.
-Fix the crash on iOS9 when GoogleVR plugin is enabled.(udn/325432)
//depot/Partners/Google/AndroidVR-DevVR/Engine/...
to //UE4/Release-4.15/Engine/...
#jira UE-41152
#review-3273585
Change 3274509 on 2017/01/26 by Jeff.Fisher
UE-41152 Merge Improved Daydream Support from Google
Merging cl 3243493 Adding AndroidPermission plugin to handle runtime permission request and check for android api 23 and above.
-The plugin works for both daydream and normal Android application.
-For Daydream app, it need to work with GoogleVRTransition2D plugin.
//depot/Partners/Google/AndroidVR-DevVR/Engine/...
to //UE4/Release-4.15/Engine/...
#jira UE-41152
#review-3273583
Change 3274485 on 2017/01/26 by Chris.Babcock
Fix handling of numbers in textedit (allow decimals)
#jira UE-41198
#ue4
#android
Change 3274457 on 2017/01/26 by Mike.Beach
Fix to CIS warning (fallout from CL 3274362)
#jira UE-41072, UE-41071, UE-41070
Change 3274445 on 2017/01/26 by Arciel.Rekman
Proper fix for deploying to Linux (UE-40023).
- The logic is: if the base path (local to PC, one we are replacing) *ends* with a separator, add the separator to the dest path (one we're mapping to). Previous fix had a last minute change that inverted it.
#jira UE-40023
Change 3274428 on 2017/01/26 by Brian.Karis
Fixed bloom flickering on high contrast HDR edges when r.TemporalAACatmullRom was enabled.
#jira UE-41138
Change 3274362 on 2017/01/26 by Mike.Beach
Restructuring how we apply individual (exclusive) Blueprint nativization flags...
1. Explicitly flagging Blueprints as dependencies for nativization (and communicating that to the user)
2. Now applying nativization flag to authoritative config for all dependencies on save
3. Flagging new dependencies (parent or interface) as needing nativization (when required)
4. Ignore bDontNativizeDataOnlyBP setting when nativization mode is set to explicit
#jira UE-41072, UE-41071, UE-41070
Change 3274349 on 2017/01/26 by Yannick.Lange
VREditor: Fix Laser not hidden on MotionControllers with docked Menu/UI Panels
#jira UE-40070
Change 3274301 on 2017/01/26 by Chris.Bunner
Added missing material expression tooltips/keywords for new nodes based on 4.15 preview feeback.
#jira UE-41193
Change 3274254 on 2017/01/26 by Ryan.Gerleve
Fix for IsInGameThread() checks that could fail in debug builds while recording a replay with tick.DoAsyncEndOfFrameTasks and demo.ClientRecordAsyncEndOfFrame enabled.
#jira UE-39911
Change 3274121 on 2017/01/26 by Josh.Adams
- Fixed build error with landscape gizmo
#jira UE-41177
Change 3274114 on 2017/01/26 by Dan.Oconnor
Updating all references before calling post edit - prevents objects from being destroyed or created while updating references
#jira UE-40121
Change 3273971 on 2017/01/26 by Chris.Bunner
Update material instance permutations when we have already set param/switch overrides, then only change the base properties.
#jira UE-39754
Change 3273842 on 2017/01/26 by Daniel.Wright
Attempt to remove instructions from code features only present in the forward renderer, so we are showing users their graph cost. Allows shader complexity in forward to sortof match deferred.
#jira UE-41167
Change 3273750 on 2017/01/26 by Jeff.Fisher
UE-41137 //UE4/Main: Step 'Compile Ocean (Win32/Win64)' - 2 Errors - SteamVRController.cpp
-Fixing build break for Ocean. Maybe they are using an older compiler?
#jira UE-31137
Change 3273602 on 2017/01/26 by Michael.Trepka
Fix for UE-41146
#jira UE-41146
Change 3273506 on 2017/01/26 by Maciej.Mroz
#jira ODIN-4991, UE-41035
merged cl3273497 from Dev-Blueprints branch
Nativization:
EX_AddMulticastDelegate - generated code calls TMulticastScriptDelegate::AddUniqe instead of TMulticastScriptDelegate::Add.
Change 3273464 on 2017/01/26 by Mitchell.Wilson
Resaving asset to resolve warning.
#jira UE-41008
Change 3273413 on 2017/01/26 by Marc.Audy
Fix crash when audio device fails to initialize
#author Andrew.Grant
#jira UE-41143
Change 3273391 on 2017/01/26 by Jack.Porter
Fixed ensure encountered when using the Copy/Paste sub-tool in sculpt mode
#jira UE-40480
Change 3273343 on 2017/01/26 by Matt.Kuhlenschmidt
Resetting the preview on a material now properly clears the thumbnail which could have a stale references that was impossible to fix.
Fixed on asset exibiting this problem
#jira UE-40300
Change 3273243 on 2017/01/26 by Jamie.Dale
Speculative fix for an issue where User Defined Enum display names were being lost on upgrade to 4.15
#jira UE-41130
Change 3273235 on 2017/01/26 by Graeme.Thornton
Fix for some memory being left hanging around when loading bulk data asyncronously under certain circumstances
#jira UE-37815
Change 3273225 on 2017/01/26 by Ben.Cosh
This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations
#Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602]
#Proj Engine
Change 3273224 on 2017/01/26 by Josh.Stoddard
Increment FDerivedDataPhysXCooker to force recook of PhysX data
#jira UE-39791#rb none #lockdown james.golding
Change 3273201 on 2017/01/26 by Jack.Porter
Fixed problem where UpdateInstanceTransform blueprint function was not updating bounds correctly
#jira UE-41126
Change 3273122 on 2017/01/26 by Graeme.Thornton
Added some extra log output for situations where a compressed block in an archive doesn't have a valid header
#jira UE-38767
Change 3273116 on 2017/01/26 by Benn.Gallagher
Fix for crash generating clothing skinning data due to coplanar check triggering a check() on small triangles
#jira UE-41112
Change 3273077 on 2017/01/26 by Thomas.Sarkanen
Allowed LODs other than LOD0 to have screen sizes greater than 1
#jira UE-41125 - Static mesh LODs other than LOD0 cannot be set to screen sizes greater than 1
Change 3273061 on 2017/01/26 by Matthew.Griffin
Disabled code caching data for all platforms until we can figure out why it's filling up DDC cache
Change 3272938 on 2017/01/25 by Arciel.Rekman
Fix launch on a remote Linux machine (UE-38691).
- Device id is now used to get target platform, so should match it exactly.
#jira UE-38691
Change 3272816 on 2017/01/25 by Ben.Marsh
Fix VS2017 being displayed as 'Visual Studio 15' in the Windows target settings panel.
Change 3272590 on 2017/01/25 by Daniel.Wright
Workaround for "error X3067: 'GetObjectWorldPosition': ambiguous function call" which happens when FMaterialPixelParameters and FMaterialVertexParameters have the same number of floats with the HLSL compiler. Function overload resolution appears to identify types based on how many floats / ints / etc they contain.
#jira UE-41099
Change 3272419 on 2017/01/25 by Arciel.Rekman
Linux: fix remote deploying of a packaged build (UE-40023).
#jira UE-40023
Change 3272355 on 2017/01/25 by Daniel.Wright
Prevent a large shadow depth bias due to low resolution from causing near plane clipping
#jira UE-40873
Change 3272196 on 2017/01/25 by tim.gautier
Updating TM-UMG content for UI visibility
#jira UE-29618
Change 3272114 on 2017/01/25 by Michael.Dupuis
#jira UE-29817 : backout of CL from Dev-Editor fixing this jira
Change 3271953 on 2017/01/25 by Michael.Trepka
Attempt to fix UE-40956 - Rare crash occurs in CoreAudio in Vehicle Game on Mac when quitting.
#jira UE-40956
Change 3271945 on 2017/01/25 by Olaf.Piesche
Replicating CL 3271564
#jira UE-40980
#udn 325525
Fix uniform buffers for mesh particles; these should really be on the mesh collector, so allocating them as a one frame resource is safe.
Change 3271883 on 2017/01/25 by Daniel.Wright
UWorld::AreAlwaysLoadedLevelsLoaded takes into account bShouldBeVisible. Fixes reflection captures not getting uploaded when there's an invisible always loaded level, which is supposed to be invisible.
#jira UE-40724
Change 3271686 on 2017/01/25 by Marc.Audy
Properly fix line endings in all cases when installing a c++ feature pack
#jira UE-40939
Change 3271631 on 2017/01/25 by Ryan.Gerleve
In UEngine::CommitMapChange, rename the new ULevelStreaming objects so that the main world is their outer. This is more correct in general, and will cause those levels to be added to the correct level collection during FlushLevelStreaming.
Also use MoveTemp to add the streaming level list to the main world, so that the fake world will no longer reference them.
#jira UE-40524
Change 3271611 on 2017/01/25 by Allan.Bentham
Ensure texture's buildsettings are not marked as streamable if the target platform does not support streaming.
#jira UE-40927
Change 3271504 on 2017/01/25 by tim.gautier
Updated default values of UMG_Behavior
#jira UE-29618
Change 3271491 on 2017/01/25 by Luke.Thatcher
[PLATFORM] [PS4] [!] Fix bug in AT9 audio cooking.
- Maximum mono bitrate is 144kbps, but 100% quality mono tracks were selecting 168kbps, causing the AT9 tool to fail.
- Also bumped AT9 engine format to recook potentially broken audio data.
#jira UE-40761
Change 3271428 on 2017/01/25 by Chris.Bunner
Bug in previous CL.
#jira UE-39953
Change 3271413 on 2017/01/25 by Lina.Halper
#DUPEFIX of CL 3270776
#jira: UE-41082
Change 3271403 on 2017/01/25 by tim.gautier
Adjusted UMG_Blur intensity settings.
#jira UE-29618
# rb cristina.riveron
Change 3271300 on 2017/01/25 by Luke.Thatcher
[PLATFORM] [PS4] [^] Merge (as edit) fix for NpToolkit2 initialization in 6CPU mode, from //UE4/Dev-Platform to //UE4/Release-4.15 (Original CL 3271215)
- Default thread affinity in the InitParams structure is 7 CPUs.
- Using this affinity in games with 6CPU mode set in param.sfo causes init() to fail.
- We now select 6 or 7 CPU affinity based on what sceKernelGetCpumode reports at runtime.
#jira UE-41079
Change 3271197 on 2017/01/25 by Andrew.Rodham
Sequencer: Ensure initial evaluation range correctly sets exclusive lower boundary for subsequent evaluations
- This prevents us from erroneously evaluating the initial time twice as part of swept evaluations)
#jira UE-40758
Change 3270386 on 2017/01/24 by tim.gautier
Updated UMG_Blur to include second Low-Quality asset
#jira UE-29618
Change 3270267 on 2017/01/24 by Arciel.Rekman
Linux: fix not being able to run a packaged build (UE-37016, UE-39648).
- Fixed expansion of paths with spaces in the bootstrap script.
- Also increased the timeout since large projects can sometimes get killed on start.
- Also killed spammy console output.
#jira UE-37016
Change 3270203 on 2017/01/24 by Chris.Babcock
Fixed issue with Mac and Linux install and uninstall scripts if ANDROID_HOME not set (contributed by nathansizemore)
#jira UE-41042
#PR #3160
#ue4
#android
Change 3270037 on 2017/01/24 by tim.gautier
Checking in UMG_Blur for UMG test coverage
#jira UE-29618
Change 3269829 on 2017/01/24 by matt.barnes
Adding content for Material Attribute testing
#jira UE-29618
Change 3269700 on 2017/01/24 by Josh.Stoddard
force relink of PhysX libs
#jira UE-39791 #rb ori.cohen #lockdown james.golding
Change 3269621 on 2017/01/24 by Allan.Bentham
Make sure 'intrinsic_GetHDR32bppEncodeModeES2()' reports no encoding mode when mobileHDR == false
#jira UE-41023
Change 3269503 on 2017/01/24 by Josh.Stoddard
Integrate PhysX change 3268008 from //UE4/Dev-Physics-Upgrade
#jira UE-39791 #lockdown james.golding #rb josh.stoddard
Change 3269359 on 2017/01/24 by Jack.Porter
Fix for Web browser widget crash on Android when packaged for Distribution
#jira UE-39451
Change 3269316 on 2017/01/24 by Thomas.Sarkanen
Fixed non-unity issues with last change for UE-40945
#jira UE-40945 - Crash trying to import facial animations
Change 3269047 on 2017/01/23 by Yannick.Lange
VREditor: Fix VREditor Laser not hidden on MotionControllers with docked Menu/UI Panels
#jira UE-40070
Change 3268824 on 2017/01/23 by Rolando.Caloca
UE4.15 - Fix for right eye showing black on VR
#jira UE-40900
Change 3268752 on 2017/01/23 by Nick.Whiting
Fix for assertion for binding an MSAA'd scene color with a non-MSAA'd texture.
#jira UE-39304
Change 3268722 on 2017/01/23 by Olaf.Piesche
Replicating 3256329
#jira UE-38615
Removing unnecessary assert that fires when exporting emitters.
Change 3268220 on 2017/01/23 by Nick.Whiting
Adding in a new CVar (vr.SteamVR.UsePostPresentHandoff), which defaults to 0. When set to 0, we do NOT use the SteamVR PostPresentHandoff, which costs some performance GPU time. When 1, we use the call, and get some extra GPU performance. However, this call is NOT safe for scenes that have frame-behind GPU work, like SceneCapture components and Widget Components
#jira UE-40570
Change 3268180 on 2017/01/23 by Marc.Audy
PendingKill Actors will no longer register their components when the level is being loaded
#jira UE-40505
Change 3268076 on 2017/01/23 by Matthew.Griffin
Changed Mac SunTemple cook jobs to use Sample Editor to avoid errors about mismatched files
#jira UE-40806
Change 3267997 on 2017/01/23 by Mitchell.Wilson
Increased lightmap size on spheres in volumes example to resolve issue with lighting.
Corrected misspelling in multiple examples and one UMG asset.
#jira UE-40890 UE-40926 UE-40882 UE-40928 UE-40825 UE-40819
Change 3267892 on 2017/01/23 by Mitchell.Wilson
Removed preview mesh on M_Bird_Inst that was referencing a static mesh that was removed or renamed to resolve warnings in CIS.
#jira UE-40300
Change 3267866 on 2017/01/23 by Thomas.Sarkanen
Prevented crash when using Facial Animation importer
Also hid the feature behind an experiemental setting flag, as it is not ready for users yet.
#jira UE-40945 - Crash trying to import facial animations
Change 3267834 on 2017/01/23 by Nick.Darnell
An addition to 3255247, this also adds input processing incrementing for double click, and preview mouse down.
#jira UE-40313
Change 3267785 on 2017/01/23 by Marc.Audy
Put proper line endings when modifying template files when installing feature pack
#jira UE-40939
Change 3267761 on 2017/01/23 by Mitchell.Wilson
Moved left landscape mesh slightly to hide a seam that can be seen when using VR and looking over the railing.
#jira UE-40916
Change 3267632 on 2017/01/23 by Jurre.deBaare
Marker syncs not working correctly in Blend Spaces
#fix Ensure that SampleIndexWithMarkers is serialized
#JIRA UE-40975
[CL 3287682 by Matthew Griffin in Main branch]
2017-02-06 10:41:38 -05:00
PreloadObject ( StructType ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
CreatePin ( EGPD_Input , UEdGraphSchema_K2 : : PC_Struct , StructType , StructType - > GetFName ( ) , PinParams ) ;
2014-03-14 14:13:41 -04:00
2014-08-05 14:16:02 -04:00
struct FBreakStructPinManager : public FStructOperationOptionalPinManager
{
2019-12-13 11:07:03 -05:00
virtual bool CanTreatPropertyAsOptional ( FProperty * TestProperty ) const override
2014-08-05 14:16:02 -04:00
{
2015-04-16 14:02:15 -04:00
return CanCreatePinForProperty ( TestProperty ) ;
2014-08-05 14:16:02 -04:00
}
} ;
{
FBreakStructPinManager OptionalPinManager ;
OptionalPinManager . RebuildPropertyList ( ShowPinForProperties , StructType ) ;
OptionalPinManager . CreateVisiblePins ( ShowPinForProperties , StructType , EGPD_Output , this ) ;
}
2014-03-14 14:13:41 -04:00
// When struct has a lot of fields, mark their pins as advanced
if ( Pins . Num ( ) > 5 )
{
if ( ENodeAdvancedPins : : NoPins = = AdvancedPinDisplay )
{
AdvancedPinDisplay = ENodeAdvancedPins : : Hidden ;
}
for ( int32 PinIndex = 3 ; PinIndex < Pins . Num ( ) ; + + PinIndex )
{
if ( UEdGraphPin * EdGraphPin = Pins [ PinIndex ] )
{
EdGraphPin - > bAdvancedView = true ;
}
}
}
}
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039)
#lockdown Nick.Penwarden
#rb none
#rnx
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3343905 by Dan.Oconnor
ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches
Change 3346637 by Ben.Zeigler
Actually fix in non editor builds
Change 3355484 by Dan.Oconnor
Back out FMemberReference Optimization
Change 3425833 by Ben.Zeigler
#jira UE-31749 Fix it so Undo works properly when modifying a local variable
#jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value
Change 3510091 by Marc.Audy
Expose on Spawn functional test
#rnx
Change 3510100 by Marc.Audy
Fix spelling error
#rnx
Change 3510132 by Marc.Audy
Fix issues with marking a widget blueprint class as abstract
Change 3510133 by Marc.Audy
Minor code cleanup
#rnx
Change 3510178 by Ben.Zeigler
#jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build
Change 3510466 by Ben.Zeigler
Start adding basic ability system tests to enginetest, very minimal so far
Change 3511295 by Marc.Audy
Fix wasted work going weak -> object -> weak -> object
#rnx
Change 3511824 by Marc.Audy
Fix spelling error in tooltip
#jira UE-46515
#rnx
Change 3514446 by Ben.Zeigler
Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode.
Change 3514578 by Marc.Audy
Move clearing of the actor component need end of frame update mark to base class instead of just primitive component
Change 3514583 by Ben.Zeigler
Better fix to last delegate checkin that also handles moving functions between modules but not renaming
Change 3515325 by Dan.Oconnor
Fix for rare orphan pin false positive, rare exposed on spawn false positive
#rnx
Change 3515761 by Marc.Audy
fix shipping configuration
#rnx
Change 3515772 by Marc.Audy
Fix static analysis warnings
#rnx
Change 3516287 by Marc.Audy
Fix references to instanced components not being updated when resetting component to default
#jira UE-44706
#rnx
Change 3516303 by Marc.Audy
Back out CL# 3516287 while an oddity is investigated
#rnx
Change 3516563 by Marc.Audy
(4.17) Fix references to instanced components not being updated when resetting component to default
#jira UE-44706
Change 3516637 by Phillip.Kavan
#jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script.
Change summary:
- Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name.
Change 3517735 by Marc.Audy
Avoid unnecessary string copy
#rnx
Change 3517931 by Marc.Audy
Small optimization to CleanupActors
Change 3518221 by Dan.Oconnor
Fix rare crash when running ConformImplementedEvents when async loading
#jira UE-45348
Change 3518270 by Ben.Zeigler
#jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection
Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection
Change 3518271 by Marc.Audy
Get rid of unnecessary construction differentiation if custom reset is being used
Change 3518310 by Ben.Marsh
Re-adding IOS files with correct case.
Change 3518423 by Ben.Zeigler
#jira UE-46574 Initial support for chunk installation in Asset Manager.
Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access
Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally
Change 3518480 by Marc.Audy
Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class
#jira UE-46737
Change 3518498 by Ben.Zeigler
Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load
Update test map to catch this
Change 3518526 by Ben.Zeigler
IOS Fix
Change 3518619 by Ben.Zeigler
#jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set
Change 3518747 by Phillip.Kavan
#jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy.
Change summary:
- Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API.
- Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time.
- Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent.
- Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log.
Change 3518756 by Michael.Noland
(4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points
Change 3518760 by Michael.Noland
Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning
Change 3518771 by Michael.Noland
AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset
Change 3518818 by Michael.Noland
Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas()
#rnx
Change 3518822 by Michael.Noland
Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set
Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set
Change 3518824 by Michael.Noland
Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time
Change 3519073 by Michael.Noland
QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method
Change 3519076 by Michael.Noland
Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world)
#rnx
Change 3519079 by Michael.Noland
Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index
Change 3519081 by Michael.Noland
Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet)
Change 3519082 by Michael.Noland
VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor
Change 3519084 by Michael.Noland
Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set
Change 3521889 by Michael.Noland
Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above)
#rnx
Change 3521987 by Michael.Noland
Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig
Change 3522101 by Michael.Noland
Physics: Improved the comment on UPhysicalMaterial::Friction
#rn
Change 3522105 by Michael.Noland
Physics: Fixed a few crashes in UVehicleWheel when spawned directly
Change 3522106 by Michael.Noland
Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time
Change 3522109 by Michael.Noland
Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places
Change 3522121 by Michael.Noland
Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest)
Change 3522783 by Zak.Middleton
#ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before).
Change 3525477 by Dan.Oconnor
Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared
Change 3526538 by Ben.Zeigler
Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks
Copy of CL #3526501
Change 3526817 by Ben.Zeigler
#jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed
Change 3526873 by Ben.Zeigler
#jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is
Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector
Change 3526958 by Marc.Audy
(4.17) Don't copy and then break pin links when reconstructing. Instead simply move.
#jira UE-46935
Change 3528916 by Marc.Audy
PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes)
#jira UE-45347
Change 3529080 by mason.seay
BP asset for undetermined type bug
Change 3529381 by Marc.Audy
Fix ability to insert duplicates in to a set or map
Change 3529471 by Dan.Oconnor
Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc()
Change 3530876 by Marc.Audy
Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist)
Also refactored MakeArray/Set to share a base MakeContainer class
Cleaned up some dead code from MakeArray
Added icon for MakeSet
Added Functional Test for MakeSet
#jira UE-43717
Change 3531070 by Phillip.Kavan
#jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded.
Change summary:
- Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP.
Change 3531081 by Marc.Audy
Remove deprecated CustomMapParamValue code
Change 3531094 by Phillip.Kavan
#jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty.
Change summary:
- Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer.
Change 3531186 by Phillip.Kavan
Back out changelist 3531094 (temp CIS fix).
#rnx
Change 3532082 by Marc.Audy
Move garbage collection timers and other management to UEngine instead of UWorld
Fixes CollectGarbage blueprint node not working in shipping
#jira UE-46566
Change 3532134 by Phillip.Kavan
Restored changelist 3531094 w/ fix for non-unity.
- Mirrored from //UE4/Release-4.17 (CL# 3531232).
#rnx
Change 3533009 by Marc.Audy
Fixup missing function and deprecation warnings
Change 3534056 by Marc.Audy
(4.17) Fix expose on spawn of map and sets to work
#jira UE-47140
Change 3534761 by Marc.Audy
(4.17) Apply code review changes to Dev-Framework as well
#rnx
Change 3535147 by Dan.Oconnor
Build fix, already made in 4.17
#rnx
Change 3535530 by mason.seay
Resaving to remove error when opening level blueprint
Change 3535581 by Marc.Audy
Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does.
#jira UE-46533
Change 3535583 by Marc.Audy
When properties are imported in to a child actor component the cached instance data is invalidated, so clear it.
#jira UE-46533
Change 3535617 by Marc.Audy
PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist)
#jira UE-47188
#jira UE-39237
Change 3535671 by Marc.Audy
Change NodeFactory to look at interface to use sequence node instead of each node having to add itself
Change 3535955 by Marc.Audy
Prevent MakeSet from removing split pins
Change 3536114 by Michael.Noland
Paper2D: Removing deprecated code from 4.3/4.4 era
#rnx
Change 3536120 by Michael.Noland
Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header
Change 3536124 by Michael.Noland
Physics: Removed deprecated methods that were replaced by _AssumesLocked variations
Change 3536131 by Michael.Noland
Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it
Change 3536138 by Michael.Noland
Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility
Change 3536167 by Dan.Oconnor
When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager
#jira UE-46904
Change 3536221 by Michael.Noland
Editor: Removing deprecated code from 4.9 or earlier
Change 3536240 by Michael.Noland
Blueprints: Removed long-deprecated TypeToString method from the K2 schema
#rnx
Change 3536243 by Michael.Noland
AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method
Change 3536244 by Michael.Noland
Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now
Change 3536250 by Michael.Noland
CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility
Change 3536253 by Michael.Noland
Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility
Change 3536310 by Michael.Noland
Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility
Change 3536397 by Mieszko.Zielinski
Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4
#jira UE-46860
Change 3536404 by Michael.Noland
Platform: Added a warning for others when they try to remove this 'deprecated' method
Change 3536639 by Michael.Noland
CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent
#rnx
Change 3536893 by Michael.Noland
Blueprints: Clear the stale value on the value pin when a map find node fails to find an item
#jira UE-47233
Change 3536902 by Michael.Noland
Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints
#rnx
Change 3537038 by Ben.Marsh
Fixing case of iOS directories, pt1
Change 3537039 by Ben.Marsh
Fixing case of iOS directories, pt2
Change 3538246 by Michael.Noland
UnrealTournament: Fixing issues with renamed enum
#rnx
Change 3538618 by Ben.Zeigler
Fix ensure when closing sequencer transform UI
Change 3540213 by Ben.Zeigler
#jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0.
Change 3540253 by Marc.Audy
Only copy default values for input pins as output pins do not have them
#rnx
Change 3540376 by Marc.Audy
Add utility FromPinType for FEdGraphTerminalType
#rnx
Change 3540433 by Marc.Audy
Add MakeMap
#jira UE-47093
Unify IsConnectionDisallowed for containers and fix static analysis warning
#jira UE-47291
Change 3540585 by Phillip.Kavan
#jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject.
Change summary:
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject.
Change 3541147 by Dan.Oconnor
Fix for not being able to override custom events when using the compilation manager post 3536167
#jira UE-47292
#rnx
Change 3541177 by Ben.Zeigler
#jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package
Copy of CL #3541027
Change 3541325 by Dan.Oconnor
K2node data table data needs to preload data before the compilation queue is flushed
#rnx
#jira UE-47319
Change 3541409 by Michael.Noland
Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager
#jira UE-47322
[reimplementing CL# 3541404 in Dev-Framework]
Change 3541418 by Dan.Oconnor
Fix for bad SKEL_ CDO reference in blueprint bytecode
#jira UE-47265
#rnx
Change 3541482 by Dan.Oconnor
Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints
#rnx
#jira UE-47319
Change 3541817 by Marc.Audy
Fix static analysis warnings
#rnx
Change 3542299 by Michael.Noland
Blueprints: Speculative fix for static analysis warning
#rnx
Change 3542406 by Marc.Audy
Use a check slow to avoid any cost
#rnx
Change 3542486 by Michael.Noland
Asset Manager: Removing an unnecessary ensure (it's a potentially expected case)
#jira UE-47380
Change 3542659 by Michael.Noland
Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place
#jira UE-47385
Change 3543620 by Dan.Oconnor
Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile
#jira UE-47415
#rnx
Change 3518415 by Ben.Zeigler
#jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure
Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases
Change 3534339 by Michael.Noland
Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code
[CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
void UK2Node_BreakStruct : : PreloadRequiredAssets ( )
{
PreloadObject ( StructType ) ;
Super : : PreloadRequiredAssets ( ) ;
}
2014-04-23 18:30:37 -04:00
FText UK2Node_BreakStruct : : GetNodeTitle ( ENodeTitleType : : Type TitleType ) const
2014-03-14 14:13:41 -04:00
{
2014-09-03 18:17:44 -04:00
if ( StructType = = nullptr )
{
return LOCTEXT ( " BreakNullStruct_Title " , " Break <unknown struct> " ) ;
}
2015-04-02 11:16:23 -04:00
else if ( CachedNodeTitle . IsOutOfDate ( this ) )
2014-09-02 19:08:09 -04:00
{
FFormatNamedArguments Args ;
2024-04-22 12:56:39 -04:00
Args . Add ( TEXT ( " StructName " ) , StructType - > GetDisplayNameText ( ) ) ;
2014-09-02 19:08:09 -04:00
// FText::Format() is slow, so we cache this to save on performance
2015-04-02 11:16:23 -04:00
CachedNodeTitle . SetCachedText ( FText : : Format ( LOCTEXT ( " BreakNodeTitle " , " Break {StructName} " ) , Args ) , this ) ;
2014-09-02 19:08:09 -04:00
}
return CachedNodeTitle ;
2014-04-23 18:30:37 -04:00
}
2014-09-03 18:14:09 -04:00
FText UK2Node_BreakStruct : : GetTooltipText ( ) const
2014-03-14 14:13:41 -04:00
{
2014-09-03 18:17:44 -04:00
if ( StructType = = nullptr )
{
return LOCTEXT ( " BreakNullStruct_Tooltip " , " Adds a node that breaks an '<unknown struct>' into its member fields " ) ;
}
2015-04-02 11:16:23 -04:00
else if ( CachedTooltip . IsOutOfDate ( this ) )
2014-09-03 18:17:44 -04:00
{
// FText::Format() is slow, so we cache this to save on performance
2015-04-02 11:16:23 -04:00
CachedTooltip . SetCachedText ( FText : : Format (
2014-09-03 18:17:44 -04:00
LOCTEXT ( " BreakStruct_Tooltip " , " Adds a node that breaks a '{0}' into its member fields " ) ,
2024-04-22 12:56:39 -04:00
StructType - > GetDisplayNameText ( )
2015-04-02 11:16:23 -04:00
) , this ) ;
2014-09-03 18:17:44 -04:00
}
return CachedTooltip ;
2014-03-14 14:13:41 -04:00
}
void UK2Node_BreakStruct : : ValidateNodeDuringCompilation ( class FCompilerResultsLog & MessageLog ) const
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3459524 by Marc.Audy
Get/Set of properties that were previously BPRW/BPRO should error when used
#jira UE-20993
Change 3460004 by Phillip.Kavan
#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.
Change summary:
- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.
Change 3461210 by Phillip.Kavan
#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.
Change summary:
- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.
Notes:
- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.
Change 3461373 by Lukasz.Furman
fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
#jira UE-44231
Change 3461409 by Lukasz.Furman
fixed reenabling automatic navmesh generation in Editor Preferences
#ue4
Change 3461550 by Ben.Zeigler
#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors
Change 3462625 by Zak.Middleton
#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).
github PR #3620
Change 3462796 by Dan.Oconnor
Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame
#jira UE-45434
Change 3462995 by Ben.Zeigler
#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin
Change 3463099 by Ben.Zeigler
#jira UE-45471 Allow abstract base classes for primary assets
Change 3464809 by Marc.Audy
Expose FVector2D / FVector2D to blueprints
#jira UE-45427
Change 3467254 by Mieszko.Zielinski
Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4
Change 3467644 by Dan.Oconnor
Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
#jira UE-45443, UE-45444
Change 3468176 by Dan.Oconnor
Fix dependent blueprints being marked dirty when a blueprint is compiled
Change 3468353 by Michael.Noland
UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game
Change 3470532 by Dan.Oconnor
Re-enable compilation manager
Change 3470572 by Dan.Oconnor
Fix for pin paramters resetting when an archetype was reinstanced
#jira UE-45619
#rnx
Change 3471949 by Mason.Seay
Adding Primary Assets for testing
Change 3472074 by Ben.Zeigler
#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking
Change 3472079 by Ben.Zeigler
With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here
Change 3473429 by Lukasz.Furman
changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473476 by Lukasz.Furman
changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
#jira UE-41884
Change 3473663 by Ben.Zeigler
Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added
Change 3473679 by Mason.Seay
Slight cleanup of test map and added ability to teleport across level for easy navigation
Change 3473712 by Marc.Audy
Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value
Change 3474055 by Marc.Audy
When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
#jira UE-41828
Change 3474119 by mason.seay
Tweaked Force Feedback test
Change 3474156 by Marc.Audy
Actually enable orphan pin retention
Change 3474382 by Ben.Zeigler
Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing
Change 3474386 by Ben.Zeigler
Close popup window when adding asset class to audit window
Change 3474491 by Ben.Zeigler
Remove ability for Worlds to not be saved as assets, this has been the default since 2014.
Change 3475363 by Marc.Audy
Alt-click now works with orphaned pins
#jira UE-45699
Change 3475523 by Marc.Audy
Fixup Fortnite and Paragon content for orphaned pin errors and warnings
Change 3475623 by Phillip.Kavan
#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.
Change summary:
- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.
Change 3476008 by Dan.Oconnor
Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.
#jira UE-18765
Change 3476115 by Dan.Oconnor
Fix missing category information for inherited functions when using compilation manager
#jira UE-45660
#rnx
Change 3476577 by Lukasz.Furman
added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
#ue4
Change 3476587 by Phillip.Kavan
#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.
Change summary:
- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).
Notes:
- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.
#rnx
Change 3476723 by Dan.Oconnor
Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
#jira UE-45468
#rnx
Change 3476948 by Michael.Noland
Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing
Change 3476970 by Ben.Zeigler
Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly
Change 3477536 by Marc.Audy
Don't display default value box on linked orphaned input pins
Change 3477835 by Marc.Audy
Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
#jira UE-45754
Change 3478027 by Marc.Audy
Minor performance optimization
#rnx
Change 3478198 by Phillip.Kavan
#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.
Change summary:
- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.
Change 3478485 by Marc.Audy
Eliminate extraneous error messages about orphaned pins on get/set nodes
#jira UE-45749
#rnx
Change 3478756 by Marc.Audy
Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
#jira UE-45721
#rnx
Change 3478926 by Marc.Audy
Non-blueprint type structs can no longer be made/broken
Non-blueprint visible properties in structs will no longer have pins created for them
#jira UE-43122
Change 3478988 by Marc.Audy
DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
#jira UE-45524
Change 3479818 by Marc.Audy
Allow ctrl-drag off of orphan pins
#jira UE-45803
Change 3480214 by Marc.Audy
Modifications to user defined enumerations are now transacted
#jira UE-43866
Change 3480579 by Marc.Audy
Maintain all pin properties through transactions.
#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.
Change 3481043 by Marc.Audy
Make/Break of structs does not depend on having blueprint exposed properties.
Splitting of a struct pin still requires blueprint exposed properties.
#jira UE-45840
#jira UE-45831
Change 3481271 by Ben.Zeigler
Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
Clean up ChunkDependencyInfo and make it properly public
Move ShouldSetManager to be WITH_EDITOR
Ported from WEX branch
#RB peter.sauerbrei
Change 3481373 by Dan.Oconnor
Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes
#jira UE-45704
Change 3481380 by Ben.Zeigler
Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful
Change 3482362 by Marc.Audy
Fix properties not exposed to blueprint warnings for input properties on function graphs.
#jira UE-45824
Change 3482406 by Ben.Zeigler
#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map
Change 3482498 by Ben.Zeigler
Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class
Change 3482517 by Lukasz.Furman
fixed smart navlink update functions removing important flag
#jira UE-45875
Change 3482538 by Marc.Audy
When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
#jira UE-45846
Change 3482773 by Marc.Audy
Don't show default value or pass by reference for exec pins
#jira UE-45868
Change 3482791 by Ben.Zeigler
#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function
Change 3483131 by Zak.Middleton
#ue4 - InterpToMovementComponent:
- Fix velocity not zeroed when interpolation stops.
- Various fixes when calculating velocity and time when substepping is enabled.
- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).
#jira UE-45690
Change 3483146 by Phillip.Kavan
#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.
Change summary:
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.
Change 3483340 by Ben.Zeigler
Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets
Change 3483548 by Michael.Noland
Epic Friday: Playing around with some prototype traps
Change 3483700 by Phillip.Kavan
Fix CIS cook crash introduced by last submit.
#rnx
Change 3485217 by Ben.Zeigler
#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function
Change 3485367 by Dan.Oconnor
Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager
#jira UE-45756
Change 3485565 by Ben.Zeigler
#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable
Change 3485566 by Marc.Audy
Fix crashes caused by undo/redo of user defined struct changes
#jira UE-45775
#jira UE-45781
Change 3485805 by Michael.Noland
PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)
#jira UE-43747
Change 3485807 by Michael.Noland
PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)
#jira UE-44041
Change 3485811 by Michael.Noland
Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)
Change 3485829 by Michael.Noland
Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded
Change 3485830 by Michael.Noland
PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
#jira UE-45002
Change 3486039 by Michael.Noland
PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible
#jira UE-44014
Change 3486093 by Michael.Noland
PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)
#jira UE-42903
Change 3486139 by Michael.Noland
Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
#rn
Change 3486154 by Michael.Noland
Framework: Speculative fix for CIS error about FStructOnScope
#rnx
Change 3486180 by Dan.Oconnor
Better match old logic for determining when to skip data only compile
#jira UE-45830
Change 3487276 by Marc.Audy
Fix crash when using Setter with a locally scoped variable
#rnx
Change 3487278 by Marc.Audy
Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected
Change 3487658 by Marc.Audy
Ensure that child actor template is created for subclasses
#jira UE-45985
Change 3487699 by Marc.Audy
Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase
Change 3487813 by Dan.Oconnor
Asset demonstrating a crash
Change 3488101 by Marc.Audy
Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
Correctly orphan pins when a node goes to 0 pins.
Change 3488337 by Marc.Audy
Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
#jira UE-46020
Change 3488512 by Dan.Oconnor
ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it
#jira UE-45830, UE-45965
#rnx
Change 3488631 by Michael.Noland
Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level
#jira UE-45630
Change 3488665 by Michael.Noland
Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
- The category, raw name, and tooltip of the property are now included as part of the filter text as well
- The property tooltip is now displayed when hovering over the property name
- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate
Change 3489324 by Marc.Audy
Fix recursion causing stack crash
#jira UE-46038
#rnx
Change 3489326 by Marc.Audy
Fix cooking crash
#jira UE-46031
#rnx
Change 3489687 by mason.seay
Assets for testing orphan pins
Change 3489701 by Marc.Audy
Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
#jira UE-46051
#jira UE-46052
#rnx
Change 3490352 by Dan.Oconnor
Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint
#jira UE-46062
Change 3490814 by Marc.Audy
Make callfunction/macro instances save all pins in orphan state more similar to previous behavior
#rnx
Change 3491022 by Dan.Oconnor
Properly clean up 'Key' property when we fail to create a value property
#jira UE-45279
Change 3491071 by Ben.Zeigler
#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.
Change 3491244 by Michael.Noland
Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)
#jira UE-32948
Change 3491276 by Michael.Noland
Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
#jira UE-43372
Change 3491562 by Marc.Audy
Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
#jira UE-46020
#rnx
Change 3491658 by Marc.Audy
Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert
#rnx
Change 3491946 by Marc.Audy
ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
DestroyImpl now prunes out SubPins that had already been trashed
#rnx
Change 3492040 by Marc.Audy
Discard exec/then pins from a callfunction that has been converted to a pure node
#rnx
Change 3492200 by Zak.Middleton
#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.
#jira UE-46012
Change 3492290 by Ben.Zeigler
#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed
Change 3492311 by Marc.Audy
Don't clear the pin type if what you're connecting to's pin type is wildcard
#rnx
Change 3492680 by Dan.Oconnor
Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset
Change 3492826 by Marc.Audy
Don't do pin connection list change notifications from DestroyPins while regenerating on load
#jira UE-46112
#rnx
Change 3492851 by Michael.Noland
Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters
Change 3492852 by Michael.Noland
Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class
Change 3492934 by Marc.Audy
Fix ensure and crash delete macro containing orphaned pin
#rnx
Change 3493079 by Dan.Oconnor
Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)
#rnx
Change 3493346 by Phillip.Kavan
#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.
Change summary:
- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.
Change 3493938 by Michael.Noland
Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
#jira UE-45780
Change 3493945 by Michael.Noland
Blueprints: Fixed GetDelegatePoperty typos
#rnx
Change 3493997 by Michael.Noland
Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
#jira UE-45760
Change 3493998 by Dan.Oconnor
Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days
Change 3494025 by Michael.Noland
Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)
#rnx
Change 3494026 by Michael.Noland
Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
#rnx
Change 3496382 by Ben.Zeigler
Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress
Change 3496688 by Marc.Audy
Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
#jira UE-46073
Change 3496830 by Michael.Noland
Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata
#rnx
Change 3496840 by Michael.Noland
Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)
Change 3497038 by Michael.Noland
Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
- You can also specify a set of items to grant to your local inventory when it is created
Change 3497204 by Marc.Audy
Fix AbilitySystemComponent not being blueprint readable.
#rnx
Change 3497668 by Mieszko.Zielinski
Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4
#jira UE-43659
Change 3497677 by Mieszko.Zielinski
Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4
Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry
#jira UE-41293
Change 3497678 by Mieszko.Zielinski
Marked AbstractNavData class as transient #UE4
We never want to save it to levels
Change 3497679 by Mieszko.Zielinski
Made NavModifierVolume responsive to editor-time property changes #UE4
#jira UE-32831
Change 3497900 by Dan.Oconnor
Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
#rnx
Change 3497904 by Dan.Oconnor
Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
#jira UE-46153
#rnx
Change 3497907 by Dan.Oconnor
Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class
#rnx
#jira UE-46186
Change 3498218 by mason.seay
Updates to pin testing BP's
Change 3498323 by Mieszko.Zielinski
Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4
Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers
#jira UE-44891
Change 3499007 by Marc.Audy
Allow systems to hook Pre and PostCompile to do custom behaviors
Change 3499013 by Mieszko.Zielinski
Made AbstractNavData class non-transient again #UE4
Implemented AbstractNavData instances' transientness in a different manner.
#jira UE-46194
Change 3499204 by Mieszko.Zielinski
Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion
Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.
#jira UE-43799
Change 3499321 by mason.seay
Updated bp for struct testing
Change 3499388 by Marc.Audy
Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).
Change 3499390 by Marc.Audy
Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.
#rnx
Change 3499420 by Michael.Noland
Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses
The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
- Assert: Asserts, the calling code is not expecting to handle a failure gracefully
- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread
The typical recommended call pattern is to use something like:
if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
{
... Do something with World
}
Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
#jira UE-42458
Change 3499429 by Michael.Noland
Engine: Removed a bogus TODO (the problematic code had already been reworked)
#rnx
Change 3499470 by Michael.Noland
Core: Improved and corrected the comment for ensure()
- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
- It now only fires once per ensure() by default, added a note about ensureAlways()
#rnx
Change 3499643 by Marc.Audy
Use TGuardValue instead of manually managing it
#rnx
Change 3499874 by Marc.Audy
Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log
Change 3499875 by Marc.Audy
When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
#jira UE-46224
Change 3499927 by Dan.Oconnor
UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker
#jira UE-43458
Change 3499953 by Michael.Noland
Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions
Change 3499957 by Michael.Noland
Animation: Added runtime errors for nullptr ControlRigs passed into BP methods
#rnx
Change 3499958 by Michael.Noland
Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error
#rnx
Change 3499959 by Michael.Noland
Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints
Change 3499960 by Michael.Noland
AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object
Change 3499968 by Michael.Noland
Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues
#rnx
Change 3499969 by Michael.Noland
Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack
#rnx
Change 3499973 by Michael.Noland
Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget
Change 3499979 by Michael.Noland
Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material
Change 3499984 by Michael.Noland
Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected
Change 3499993 by Michael.Noland
Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS
Change 3500009 by Michael.Noland
Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)
#rnx
Change 3500011 by Michael.Noland
Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms
Change 3500012 by Michael.Noland
Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset
Change 3500014 by Michael.Noland
Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)
Change 3500019 by Michael.Noland
Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments
Change 3500020 by Michael.Noland
Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)
Change 3501062 by Marc.Audy
MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
Fix inability to undo/redo pin additions to sequence node
Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
#jira UE-46164
#jira UE-46270
Change 3501330 by Michael.Noland
AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)
#jira UE-46271
Change 3501356 by Marc.Audy
Fix crash when multi-editing actor blueprints
#jira UE-46248
Change 3501408 by Michael.Noland
Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)
Change 3501457 by Phillip.Kavan
#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.
Change summary:
- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.
Change 3502741 by Phillip.Kavan
#jira UE-45782 - Fix undo for index pin type changes.
Change summary:
- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.
Change 3502939 by Michael.Noland
Back out changelist 3499927
Change 3503087 by Marc.Audy
Re-fixed ocean content as editor had also changed so had to take theirs and redo
#rnx
Change 3503266 by Ben.Zeigler
#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory
Change 3503325 by mason.seay
updated Anim BP to prep for pin testing
Change 3503445 by Marc.Audy
Fix crash caused by OldPins being destroyed before rewiring
#rnx
Change 3505024 by Marc.Audy
Fix NodeEffectsPanel blueprint as it was using pins that no longer existed
#rnx
Change 3505254 by Marc.Audy
Don't include orphan pins when gather source property names
If a property doesn't exist for a source property name just skip the property rather than crashing
#jira UE-46345
#rnx
Change 3506125 by Ben.Zeigler
#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place
Change 3506334 by Dan.Oconnor
Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
#jira UE-46411
Change 3506439 by Dan.Oconnor
Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo
#jira UE-46308
Change 3506468 by Dan.Oconnor
Return to pre 3488512 behavior, as it causes bad default values
#jira UE-46414
#rnx
Change 3506733 by Marc.Audy
Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
#jira UE-45965
#author Dan.OConnor
#rnx
Change 3507531 by Ben.Zeigler
#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays
Change 3507924 by mason.seay
Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues
Change 3507962 by Marc.Audy
Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958
#rnx
Change 3509131 by Dan.Oconnor
Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table
#jira UE-46311
Change 3509345 by Marc.Audy
CVar to disable orphan pins if necessary
#rnx
Change 3509959 by Marc.Audy
Protect against crashing due to large values in Timespan From functions
#jira UE-43840
Change 3510040 by Marc.Audy
Remove all the old unneeded ShooterGame test maps
#rnx
[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
Super : : ValidateNodeDuringCompilation ( MessageLog ) ;
2014-03-14 14:13:41 -04:00
if ( ! StructType )
{
MessageLog . Error ( * LOCTEXT ( " NoStruct_Error " , " No Struct in @@ " ) . ToString ( ) , this ) ;
}
2014-08-05 14:16:02 -04:00
else
{
bool bHasAnyBlueprintVisibleProperty = false ;
2019-12-13 11:07:03 -05:00
for ( TFieldIterator < FProperty > It ( StructType ) ; It ; + + It )
2014-08-05 14:16:02 -04:00
{
2019-12-13 11:07:03 -05:00
const FProperty * Property = * It ;
2014-08-05 14:16:02 -04:00
if ( CanCreatePinForProperty ( Property ) )
{
2014-08-08 11:13:17 -04:00
const bool bIsBlueprintVisible = Property - > HasAnyPropertyFlags ( CPF_BlueprintVisible ) | | ( Property - > GetOwnerStruct ( ) & & Property - > GetOwnerStruct ( ) - > IsA < UUserDefinedStruct > ( ) ) ;
2014-08-05 14:16:02 -04:00
bHasAnyBlueprintVisibleProperty | = bIsBlueprintVisible ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
const UEdGraphPin * Pin = FindPin ( Property - > GetFName ( ) ) ;
2014-08-05 14:16:02 -04:00
const bool bIsLinked = Pin & & Pin - > LinkedTo . Num ( ) ;
if ( ! bIsBlueprintVisible & & bIsLinked )
{
MessageLog . Warning ( * LOCTEXT ( " PropertyIsNotBPVisible_Warning " , " @@ - the native property is not tagged as BlueprintReadWrite or BlueprintReadOnly, the pin will be removed in a future release. " ) . ToString ( ) , Pin ) ;
}
if ( ( Property - > ArrayDim > 1 ) & & bIsLinked )
{
MessageLog . Warning ( * LOCTEXT ( " StaticArray_Warning " , " @@ - the native property is a static array, which is not supported by blueprints " ) . ToString ( ) , Pin ) ;
}
}
}
if ( ! bHasAnyBlueprintVisibleProperty )
{
MessageLog . Warning ( * LOCTEXT ( " StructHasNoBPVisibleProperties_Warning " , " @@ has no property tagged as BlueprintReadWrite or BlueprintReadOnly. The node will be removed in a future release. " ) . ToString ( ) , this ) ;
}
2016-02-19 13:49:13 -05:00
if ( ! bMadeAfterOverridePinRemoval )
{
Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //UE4/Fortnite-Staging @ 3026859)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3016173 on 2016/06/16 by Lukasz.Furman
fixed path updates in nested move tasks
#jira FORT-25742
Change 3015722 on 2016/06/15 by Bob.Tellez
#UE4 Avoiding a crash in FOnlinePartySystemMcp::PublishPartyInfoToPresence
#JIRA OR-14102
Change 3015626 on 2016/06/15 by Bob.Tellez
#UE4 Experimental fix for hitches involving spinlocks in windows.
#JIRA FORT-25253
Change 3015473 on 2016/06/15 by Bob.Tellez
#UE4 Compiling CrashReportClient in VS2013 instead of 2015 until we can figure out the appropriate way to install the redist on end-user machines.
#JIRA FORT-25748
Change 3014721 on 2016/06/15 by Bob.Tellez
#UE4 Returning false in cases where we want to skip replication of GameplayAbilities structures in NetDeltaSerialize. This fixes a bug where actors trying to become net dormant were not allowed because they were continuously reporting that they had data to replicate.
#JIRA FORT-25689
Change 3014323 on 2016/06/15 by Rob.Cannaday
When kicked from lobby beacon, restore the persistent party after leaving the previous persistent party
#jira FORT-25407
#tests front end parties, being kicked from outpost lobby
Change 3013712 on 2016/06/14 by Bob.Tellez
#UE4 Fix DrawNetDriverDebug crash during map transitions
Change 3013418 on 2016/06/14 by Mark.Satterthwaite
Don't release Metal buffers directly into the buffer pool, instead defer this until the command-buffer is known to have finished. This prevents the CPU from trying to modify the buffer while the GPU is still reading it if the GPU has fallen so far behind the CPU and therefore eliminates one possible cause of invalid access on the GPU.
#jira FORT-24510
Change 3013394 on 2016/06/14 by Mark.Satterthwaite
Report Metal command-buffer failures in MetalQuery in the same way as MetalCommandList and make them fatal as well. This ensures that the game doesn't try to continue if the commands failed as that is unsafe.
#jira FORT-24808
Change 3012977 on 2016/06/14 by Fred.Kimberley
Add a blueprint exposed function to evaluate an attribute from a given base value.
Change 3012755 on 2016/06/14 by Bob.Tellez
#UE4 ExclusiveInternalFlags is now respected when passing in a null ObjectPackage in StaticFindObjectFastInternalThreadSafe
#JIRA FORT-113
Change 3011948 on 2016/06/13 by Mark.Satterthwaite
Workaround a Fortnite crash on launch for Mac OpenGL - one or more shaders are using the bit-cast operators (asuint(), asfloat()) that aren't available with GLSL version 150. In order to use them the GLSL version must be 330 which means switching the version tag at runtime. There will be Mac GPUs on 10.10.5 which don't correctly implement these instructions so this really isn't a fix - that would be to change shaders to not use SM5-level instructions.
Change 3011659 on 2016/06/13 by Bob.Tellez
#UE4 Better handling of checked state in SGameplayTagWidget::IsTagChecked. Checking direct child tags was not sufficient and also not needed since HasTag allows you to follow parent tags when checking for an explicit tag.
Change 3011647 on 2016/06/13 by Rob.Cannaday
Fix for multiple account login not kicking previous logins
Client was not parsing response from backend. Client was expecting content-type to be "application/json" (using FString::Equals). Backend was returning "application/json;charset=UTF-8". Changed usage from FString::Equals to FString::StartsWith
#jira FORT-25452
#tests multiple account login, frontend only
Change 3011436 on 2016/06/13 by Nick.Cooper
#UE4 - Added bRelativeToInitialFOV option to UCameraAnim, defaulting to true. If turned off, camera anims will use the camera's current FOV as the initial FOV for the animation
#jira FORT-23606
Change 3010411 on 2016/06/12 by Bob.Tellez
#UE4 Fix for a possible case where a reference to an async loading package that would contain a level gets replicated before the level it contains is fully serialized, causing network loading code client side to attempt to load the package even though it is not allowed to load maps.
#jira FORT-113, FORT-22222
Change 3009885 on 2016/06/10 by Billy.Bramer
#jira FORT-25361
[FORT-25361] Health and shield values are incorrect when slotting survivors with bonuses
- Fix some resultant bugs from swapping attributes to be struct-based:
- Fix issue wherein the initial creation of the client-side aggregator could be initialized with the computed final value from the server, resulting in incorrect client-side math
- Fix issue where subsequent changes to the aggregator's base value on the client would be lost
Change 3009514 on 2016/06/10 by Bob.Tellez
#UE4 Remove final usage of the task graph in WmfMediaPlayer to dodge shutdown crashes.
Change 3009197 on 2016/06/10 by Michael.Trepka
Disabled reverb on Mac again. It's too expensive and doesn't fix FORT-22090 anyway
Change 3008392 on 2016/06/09 by Ben.Zeigler
#jira FORT-25244
Change it so application error codes like 400/404 do not cause the mcp to think it is disconnected from the backend. Only 408, 501, 502, and 504 now result in ServiceUnavailable.
Change 3008106 on 2016/06/09 by Lukasz.Furman
fixed cutting corners near navmesh obstacles in detour crowd's string pulling
#jira FORT-24981
Change 3008039 on 2016/06/09 by Bob.Tellez
#UE4 Fixed conversion of TAssetPtr to UObject* properties for the case where the referenced object is not already loaded.
Change 3007864 on 2016/06/09 by Fred.Kimberley
Updates to supporting attributes as structs. Adding functionality that makes them easier to use and override in projects.
Change 3007682 on 2016/06/09 by Michael.Trepka
Re-enabled reverb on Mac
Change 3006971 on 2016/06/08 by Saul.Abreu
#fortnite
#jira FORT-25169
Added node costs types, cost amounts, and remaining balance for each cost type to the NodePurchase analytics event.
Change 3006933 on 2016/06/08 by Chris.Gagnon
Fixed up all the Power levle widget use cases.
#Jira FORT-23472, FORT-24132, FORT-24144, FORT-24952, FORT-24924
Change 3006633 on 2016/06/08 by Dmitry.Rekman
Linux: propagate ensure message to the CR (FORT-23030).
- Without this, ensure() has a generic "SIGTRAP" error message, which is misleading for QA.
#tests Tried "debug ensure" a few times, observed crash report (on the website) with the proper message
#jira FORT-23030
Change 3006036 on 2016/06/08 by Rob.Cannaday
Remove warning about missing "recentplayers" field. The absence of the field is gracefully handled in the client and is only absent if the list is absent on the server.
#jira FORT-18687
Change 3005216 on 2016/06/07 by Bob.Tellez
#UE4 Avoiding layout invalidation if you use SetEnabled to set an identical enabled state. This is the same as how SetVisibility works.
Change 3004857 on 2016/06/07 by Rob.Cannaday
Fix for incorrect reason displayed for inability to join party
#jira FORT-13517
Change 3004811 on 2016/06/07 by Michael.Trepka
Increased the number of input buses for CoreAudio 3D Mixer to support 64 audio channels. Also, added a warning to FAudioDevice::StartSources so it doesn't silently ignore sound source initialization failures.
Change 3004553 on 2016/06/07 by Lukasz.Furman
fixed AnySpawners activating before navmesh unlock & rebuild
#jira FORT-25067
Change 3004083 on 2016/06/07 by Bob.Tellez
#UE4 Fixing GenerateApplicationPath for monolithic games.
Change 3003457 on 2016/06/06 by Bob.Tellez
#UE4 Add a little info to a warning about failing to load a file for streaming.
Change 3003256 on 2016/06/06 by Bob.Tellez
#UE4 Fixed a bug where not having a crash report would cause CrashReportClient not not properly exit on Mac
Change 3003146 on 2016/06/06 by jonathan.lindquist
switching from a ceil and lerp technique to an if statement to provide better transform results.
Change 3002048 on 2016/06/06 by Daniel.Broder
Support for setting Scalar and Vector Materials by Index rather than by name on MIDs.
This feature allows much better performance in cases where large numbers of parameters are being set per frame and where the indices can be cached by the calling code in an initialization step.
#RB Stephan.Delmer
#CodeReview Bob.Tellez
#UE4 #ReleaseNote
Change 3001315 on 2016/06/05 by Daniel.Broder
Fixed crash that could occur when the FPhysScene* was null (the world has no PhysicsScene) in USkeletalMeshComponent::TermArticulated(). That could happen when loading a world without fully instantiating it, such as when right-clicking a world in the context browser rather than opening the world directly.
#RB Stephan.Delmer
Ori, I wasn't sure if the whole line (and the line below it using PScene) should be moved within the if (PhysScene) block or not, but this change seems to fix it. If they can safely be moved, that would be presumably more efficeint though (since we'd only compare vs. nullptr once).
#CodeReview Ori.Cohen
#UE4 #Fortnite #BugFix
Change 3001001 on 2016/06/04 by Fred.Kimberley
Added meta data about attributes and a post serialize function so we can recover attributes that have changed their type.
Adding Fortnite specific attribute type specialization. This type enforces minimum and maximum values for attributes.
Change 3000613 on 2016/06/03 by Sam.Spiro
#fort online 24747
Take change from SamZ to get connection change delegates firing correctly
Add a delegate to the frontend player controller to logout if the connection goes bad (when all retries have failed)
#RB Ben.Zeigler
Change 3000482 on 2016/06/03 by Rob.Cannaday
Fix problem where newly added friends don't recognize party invitations
#jira FORT-19415
From CL 2953432:
Ignore presence updates for local user with different resources
#jira OR-19929
#tests front end party invites
Change 2998044 on 2016/06/02 by Lukasz.Furman
fixed path box intersection test used to verify if hotspot is still required for updated path
#jira FORT-24422
Change 2997948 on 2016/06/02 by Eric.Newman
Moved ProdCom to bottom of file w/ deprecation comment, and clarified deprecation criteria. Will probably need to be removed in //UE4 first and check for any fallout from EC jobs failing
Change 2997660 on 2016/06/02 by Chris.Wood
Changed Linux server crash handler to force CRC log paths to match main engine log.
[UE-30259] - Some server crashes are missing from crashreporter database
Should allow us to have CRC logs uploaded to S3 along with main logs easily.
Change 2996702 on 2016/06/01 by Bob.Tellez
#UE4 You can now use Edit Asset on Level assets in the reference viewer.
Change 2996683 on 2016/06/01 by Tim.Tillotson
#fortnite
Fix analytics comments, changed a few NULL to nullptr, and removed stale code.
#JIRA FORT-23833
Change 2996548 on 2016/06/01 by Bob.Tellez
#Fortnite Fixing up or deleting remaining references to homebase buildings. HBOnboarding_BuildHeroBuilding is the last reference now and it will be removed soon.
Change 2996322 on 2016/06/01 by Bob.Tellez
#UE4 Fix for specifying more than one ini override on the command line
Change 2996306 on 2016/06/01 by Bob.Tellez
#UE4 Delete unneeded and broken script to unlock files in xcode. Does not work since XCode 6.3.
Change 2995634 on 2016/06/01 by Jonathan.Lindquist
imrpoving the wind magnitude and noise texture
Change 2995249 on 2016/05/31 by Bob.Tellez
#UE4 Importing "INVALID" in FUniqueNetIdRepl no longer triggers the warning about using ImportText during cook.
Change 2992135 on 2016/05/26 by Bob.Tellez
#UE4 extern for GuardedMain in LaunchLinux to fix nonunity
Change 2991912 on 2016/05/26 by jonathan.lindquist
moved a texture sample into a new grouping
Change 2991738 on 2016/05/26 by Bob.Tellez
#UE4 Level SaveAs now duplicates the world before saving it. This fixes a problem where level assets had the same guids for objects saved in them, which causes LazyObjectPtr issues when they are both in memory at the same time since they can not be uniquely identified.
Change 2991449 on 2016/05/26 by Lukasz.Furman
AI Ftests will now delay spawning until navmesh is ready
#fortnite
Change 2990705 on 2016/05/25 by Chris.Gagnon
New stats panel, upon stat changes there is a delta pop up.
New Squads Tab.
Navigation from nodes to squad slots working.
Added GetAnimationCurrentTime() to UMG Animation API.
#RB Fred.Kimberley, Saul.Abreu
Change 2990286 on 2016/05/25 by Bob.Tellez
#UE4 Fix logging error regarding max tag container replication size
Change 2990285 on 2016/05/25 by Bob.Tellez
#UE4 Fix for crash when using "ShowDebug Game" client side
Change 2989977 on 2016/05/25 by Lukasz.Furman
auto generating navigation bounds from building grid data, UnitNavMeshBounds volume is no longer required
#fortnite
Change 2989174 on 2016/05/24 by Bob.Tellez
#UE4 Added GC reason to the log message declaring that we are doing a GC during the cook commandlet.
Change 2988571 on 2016/05/24 by Jonathan.Lindquist
submitting a fix for grass-like hierarchy layouts
Change 2985428 on 2016/05/20 by Bob.Tellez
Experimenting with making UGS CIS not rebuild UBT when incremental building.
Change 2985319 on 2016/05/20 by Bob.Tellez
#UE4 Removing NumActorChannelsReadyDormant stat as it is somewhat expensive to calculate.
Change 2985258 on 2016/05/20 by Billy.Bramer
- Add GetFloatAttributeBase and GetFloatAttributeBaseFromAbilitySystemComponent to AbilitySystemBlueprintLibrary, allows querying for a base value of an attribute
Change 2985157 on 2016/05/20 by Bob.Tellez
Experimenting with non-unity CIS
Change 2984664 on 2016/05/19 by Bob.Tellez
#UE4 Pasting multiple cells into the property matrix no longer depends on your selected tiles, only your target cell. This is to match the behavior in Excel. Pasting a single cell into multiple cells remains unchanged.
Change 2984663 on 2016/05/19 by Bob.Tellez
#UE4 Fixed a crash in the property matrix involving going into edit mode on rows that include widgets that are not editable.
Change 2984613 on 2016/05/19 by Bob.Tellez
#UE4 You can now text import gameplay tags by directly using the tag string (i.e. Evolution.Hero.Soldier). This allows pasting these strings directly into the property matrix or other property-based editors.
Change 2984508 on 2016/05/19 by Billy.Bramer
- Add constructors for the new struct based attribute
Change 2983883 on 2016/05/19 by Lukasz.Furman
disabled movement mode in EQS testing pawn to prevent it from falling at PIE start
#ue4
Change 2983770 on 2016/05/19 by Bob.Tellez
#UE4 Fixed a bug where "OutputToScreen" BP messages would get stuck disabled after a screenshot (using a number of different codepaths). All screenshots now preserve the state of the "suppress messages" bool.
#JIRA FORT-24303
Change 2982306 on 2016/05/18 by Bob.Tellez
Also experimenting with not updating version files in UGS CIS.
Change 2982154 on 2016/05/18 by Lukasz.Furman
changed navwalking geometry conforming to use building prop special case
#jira FORT-24215
Change 2982019 on 2016/05/18 by Bob.Tellez
Trying out incremental CIS builds
Change 2981192 on 2016/05/17 by Bob.Tellez
#UE4 No longer staging movie files for dedicated server builds.
Change 2981023 on 2016/05/17 by Lukasz.Furman
added new mode for NavWalking geometry conforming: prefer height closer to current one
this should allow standing on top of props or walking off them in lower LOD, instead of moving at ground level - needed for survivors on low cars
Change 2980578 on 2016/05/17 by Lukasz.Furman
added option for disabling path replan in crowd manager, turned it off in fortnite
this must be handled through path update events and corridor assignment or else hotspot detection will break
#jira FORT-24116
Change 2980364 on 2016/05/17 by Lukasz.Furman
unified bounds tests for applying navmesh modifiers, always expanding bounds one cell height on Z axis to cover for voxelization roundings
#jira FORT-24045
Change 2980360 on 2016/05/17 by Lukasz.Furman
more detailed logs for using custom navlinks
#jira FORT-23990
Change 2979880 on 2016/05/16 by Bob.Tellez
#UE4 Raising scalability threshold for high end machines to adjust for modern hardware.
Change 2979522 on 2016/05/16 by Saul.Abreu
#fortnite
Added IsValid BP-exposed method for FGameplayAttribute (which is already a BP-exposed struct type), as there is no existing method of validating a gameplay attribute from blueprints. Useful for UI that represents an attribute.
Change 2977690 on 2016/05/13 by Daniel.Broder
Made most FBox functions FORCEINLINE to improve DebugGame performance.
#Fortnite: This change (just on IsInsideOrOn()) improved DebugGame performance for one part of Wind performance in Fortnite by ~18%.
#CodeReview Bob.Tellez
#UE4 #ReleaseNotes
Change 2977517 on 2016/05/13 by Daniel.Broder
Added ForceInline to TIndexedContainerIterator<...>::operator!=(...). This change improved DebugGame performance of a for loop using ranged-based syntax by ~27%!
#CodeReview Bob.Tellez
#Fortnite Wind perf improvement in DebugGame builds.
#UE4 #ReleaseNote
Change 2974910 on 2016/05/11 by Bob.Tellez
#UE4 More graceful handling of export class names in string asset references.
Change 2974095 on 2016/05/11 by Bob.Tellez
#UE4 Fixed a bug where the RenderTargetOutputFormat for velocity rendering when using r.BasePassOutputsVelocity=True was using the wrong output index.
Change 2973663 on 2016/05/11 by John.Abercrombie
[implemented by Ben.Marsh]
UBT: Add a config setting to allow overriding the output directory for PCH files. To use, edit Engine\Saved\UnrealBuildTool\BuildConfiguration.xml and add:
<BuildConfiguration>
<PCHOutputDirectory>D:\TestOutputDir</PCHOutputDirectory>
</BuildConfiguration>
Change 2972603 on 2016/05/10 by Saad.Nader
#Fort Added the catalyst to the requirements of an evolvable item. It will only disable the evolution button if there is a catalyst.
Change 2971741 on 2016/05/09 by Bob.Tellez
#UE4 Adding more context to an error message about serializing FUniqueNetIdRepl during cook.
Change 2969838 on 2016/05/06 by Bob.Tellez
#Fortnite Added FN PS4 to build scripts
Change 2969542 on 2016/05/06 by Bob.Tellez
#UE4 Fixed a crash that involved renaming SCS nodes during compile on load.
#JIRA FORT-23754
Change 2969520 on 2016/05/06 by Billy.Bramer
- Fix missing virtual destructor now that the initter struct has virtual members
Change 2969467 on 2016/05/06 by Billy.Bramer
- Change FAttributeSetInitter to only contain pure virtual functions in preparation for making it easier to provide a custom implementation per game
- Change the existing example FAttributeSetInitter to be called FAttributeSetInitterDiscreteLevels, make it derive from FAttributeSetInitter (DiscreteLevels is now allocated by default for now)
- Add support for the new struct-based attribute type to FAttributeSetInitterDiscreteLevels
- Fix typos in the initter
- Convert usages of FString in AbilitySystemGlobals to FStringAssetReference, where appropriate
- Allow attribute init data to come from several curve tables instead of just one
- Remove reimport bindings from attribute metadata and global curve table, as neither was in use
Change 2969279 on 2016/05/06 by John.Abercrombie
Behavior tree auxilary nodes, parallel tasks, active tasks, and aborting tasks shouldn't be ticked while the behavior tree is paused
Change 2966311 on 2016/05/04 by Rob.Cannaday
Fix PS4 Orion players being able to whisper chat with non-Orion players
#jira OR-20626
#tests chat with launcher, fortnite
(From //Orion/Dev-General CL 2963555)
Change 2966255 on 2016/05/04 by Bob.Tellez
#UE4 Added an ensure to track down the cause of FORT-23604 and to gracefully recover from what would have been a crash.
#JIRA FORT-23604
Change 2966083 on 2016/05/04 by Bob.Tellez
#UE4 Adjusted material quality level for "Medium" settings to medium quality. High quality is still used in High and Epic scalability levels.
Change 2965669 on 2016/05/04 by Nicholas.Davies
Change the restricted platform ID to PSN to prevent Fortnite > PS4 paragon whisper chat
#OPP-5268 Integrate PS4 Chat block Social and OSS code to Fortnite, UT, and Launcher
#RB Antony.Carter
Change 2965316 on 2016/05/03 by Ben.Zeigler
#jira FORT-23600 Fix issue where stalled mcp queries never finished. This causes the query to properly fail
Manual merge of CL #2907874:
When MCP cancels a request due to its required auth failing, the http retry system would never kick off the complete delegates.
This was due to the system only adding a request to its list once ProcessRequest was called, which does not happen in the above case.
The fix is to add the request to the list when it is cancelled if we did not find it.
Change 2965164 on 2016/05/03 by Bob.Tellez
#UE4 Fix for Crash in WmfMedia for when the player is destroyed while loading media. Thanks MaxP!
Change 2963754 on 2016/05/02 by Billy.Bramer
- Switch ability system from binding to OnPostWorldCreation to PreLoadMap for its cleanup functions, as OnPostWorldCreation is called repeatedly with sublevels and can cause data loss
- This is a bit of a stopgap, as where and when this happens should probably be configured per game (example: a long session game like an MMO would want to trigger these on something other than a map transition possibly)
Change 2962922 on 2016/05/02 by Lukasz.Furman
fixed gameplay debugger in "simulate in editor" mode
Change 2959860 on 2016/04/28 by David.Nikdel
#OGF #McpProfile
- Add Profile Write Lock support to client API
NOTE: Still need to finish backend support so haven't been able to test yet but this is enough for API hookup
NOTE2: You may see a log message about "write lock unexpectedly released" when you do your first command after locking. This is expected because the backend isn't sending down the write lock timeout yet.
#CodeReview: Ben.Zeigler
Change 2959810 on 2016/04/28 by Jonathan.Lindquist
A few more saftey measures to warn the user of incorrect settings and faulty meshes. (In response a licensee's question)
Change 2959336 on 2016/04/28 by Bob.Tellez
#UE4 Some improvements to asset save time: Added an early-out in PackageBackup to avoid inspecting files in cases where we don't care about the resutls. Also now using GetObjectsWithOuter when passing in a package list to GetObjectsInPackages (which probably should be renamed to GetAssetsInPackage)
Change 2958942 on 2016/04/28 by Jonathan.Lindquist
Wrote a new portion of pivot painter 2 that unifies edge normals across multiple static meshes
Change 2958644 on 2016/04/27 by Jonathan.Lindquist
lowering default recursive steps
Change 2956612 on 2016/04/26 by Jonathan.Lindquist
A few new saftey measures
Change 2956197 on 2016/04/26 by Fred.Kimberley
Fix a bug where a delegate won't be fired if the base value of an attribute has been changed and the attribute is the new type and doesn't have an aggregator.
Fix a bug in gameplay effect tag matching where the deprecated tag is being checked but not the current one.
Change 2955386 on 2016/04/25 by Jonathan.Lindquist
Fixed a ui bug related to the first time path geo generator is run
Pivot painter 2 has a new feature. It duplicates each model in a hierarchy, combines them and then welds their verts.
Change 2955230 on 2016/04/25 by Billy.Bramer
- Add a debug gameplay tag to string blueprint function, should only be used for debugging purposes
Change 2954899 on 2016/04/25 by Fred.Kimberley
Added a new backing data type for gameplay attributes. The new type holds both the current and base values. Currently, this new type can coexist with numeric types for gameplay attributes.
Change 2953511 on 2016/04/22 by Bob.Tellez
#UE4 Bumping up texture streaming pool allowance for min spec and redistributing mid an high to match. Also reduced mip bias at min spec.
Change 2953496 on 2016/04/22 by Chris.Gagnon
When the console closes it now properly restores the viewports input state (both focus and capture).
Change 2952930 on 2016/04/22 by Lukasz.Furman
fixed behavior tree getting stuck on instantly finished gameplay tasks
#jira FORT-23041
Change 2951765 on 2016/04/21 by John.Abercrombie
Removed unused code when initializing attribute sets
Change 2951617 on 2016/04/21 by Jonathan.Lindquist
new elements to the grass shader to include wind influence
also adding a test model
and the latest version of canopy creator
Change 2950861 on 2016/04/21 by Jonathan.Lindquist
Submitting a new material for grass so that it may react to the wind
New wind test maps
Functions to support global wind
a new "fuzzy" mat functions
Adding wind to the rift portals
Change 2950725 on 2016/04/20 by Bob.Tellez
Fixups for non NewEC in GetLastSucceededCL
Change 2950695 on 2016/04/20 by Bob.Tellez
Adding a small helper function to get the last succeeded CL of a given node.
Change 2950616 on 2016/04/20 by Maury.Mountain
hook up the pivot (+ (0,-1,0)) section of material function that was causing offset motion from pivots
Change 2950207 on 2016/04/20 by Bob.Tellez
#UE4 NoTimeouts is now respected even in the initial connection timeout. This fixes a bug where a large stall when starting pie causes you to transition to the entry map.
Change 2950162 on 2016/04/20 by Lukasz.Furman
fixed processing of repath requests, added infinite loop protection
#jira FORT-23090
Change 2949974 on 2016/04/20 by Lukasz.Furman
another batch of fixes for hotspot tasks getting out of sync:
abort move is now ignored if instigated by new task at goal, clearing hotspot data on dying while gameplay tasks are still accessible, ignoring move resume when controller is being destroyed
Change 2949923 on 2016/04/20 by Rob.Cannaday
FOnlineIdentityMcp: Cancel ClientAuthRequests and ExternalAuthRequests on shutdown
#tests PIE start game / shutdown
Change 2949210 on 2016/04/19 by Bob.Tellez
#UE4 Removing all local players from the game instance when it is shut down. This ensures that local players are properly torn down and events related to the lifespan of the player or controller are fired when exiting the game normally.
#JIRA FORT-23024
Change 2947381 on 2016/04/18 by Rob.Cannaday
Change XMPP presence, pubsub, messages, multi user chat, and chat's ref counting to be thread safe
#jira FORT-22861
#tests front end partying
Change 2945301 on 2016/04/15 by Michael.Trepka
Reset SyncStatus in FAvfMediaVideoTrack::SeekToTime to fix issues with video not updating after rewind
Change 2944422 on 2016/04/14 by Michael.Trepka
Fixed Mono compile errors in UAT
Change 2944375 on 2016/04/14 by Fred.Kimberley
Changed how we handle missing gameplay tags so we now ensure once per missing tag instead of only ensuring on the first missing gameplay tag.
Change 2944040 on 2016/04/14 by Michael.Trepka
Fixed a problem with CoreAudio AudioUnitGraph update caused by adding and deleting the same node in a single tick
Change 2943864 on 2016/04/14 by Lukasz.Furman
fixed initialization order of gameplay debugger replicators on client
#jira FORT-22885
Change 2943228 on 2016/04/13 by Bob.Tellez
#UE4 Moved the addition of the IsDataOnly tag out of the if (ParentClass) block. Tags should not be dynamically added like this or else they can not be discovered by the editor which relies on asking the CDO for the tags relevant to an asset type.
Change 2942303 on 2016/04/13 by Daniel.Broder
Added support to be able to set a CanvasRenderTarget2D NOT to clear to green whenever it's updated (so you can just draw pixels that have changed instead of always having to redraw everything.
#RB Bob.Tellez
#UE4
Change 2941919 on 2016/04/13 by Jonathan.Lindquist
Adding a new maxscript that allows artists to procedurally generate trees.
Change 2941816 on 2016/04/13 by Saul.Abreu
Demoted errors regarding widget-bound properties when first compling a new created widget blueprint - otherwise an ensure occurs.
Change 2941752 on 2016/04/12 by jonathan.lindquist
adding a new function to optimize trees and fix a few issues
Change 2941519 on 2016/04/12 by Jonathan.Lindquist
submitting a new warning regarding file unit types
Change 2940980 on 2016/04/12 by John.Abercrombie
Turned Graphs off by default in the Visual Logger
Change 2940134 on 2016/04/11 by Billy.Bramer
- Add support for new overrideable function OnPostDataImport to FTableRowBase; Can be override to perform custom parsing, fix-up, etc. per struct type whenever a data table is imported or reimported
- Change row struct combo box on the data table importer to be sorted alphabetically
Change 2938828 on 2016/04/08 by David.Hunt
#FN || Economy Rebuild
Updating several code references to items and item paths that no longer exist, with Bob's help.
This fixes FORT-22784 (hopefully for real) and several other build and item errors. It also indicates that the various redirector issues I have been experiencing were likely red herrings - they were C++ defaults that were showing up on items that had nothing set, as opposed to redirects that failed.
#CodeReview Bob.Tellez, Ben.Zeigler, William.Ewen, Carlos.Cuello
Change 2938675 on 2016/04/08 by Lukasz.Furman
fixed gameplay debugger displaying paths of killed pawns
#fortnite
Change 2938426 on 2016/04/08 by Rob.Cannaday
Implement new command line party invitation format into Fortnite
#jira FORT-22685
#tests launch with command line party invite
Integrate CLs 2908339 and 2917498 from Orion
Change 2938367 on 2016/04/08 by Billy.Bramer
- Mark the reimport data table factory with UNREALED_API for external use
- Change CSVImportFactory to respect the class of existing data being reimported upon
Change 2937319 on 2016/04/07 by Lukasz.Furman
improved gameplay task info in gameplay debugger tool
Change 2937178 on 2016/04/07 by Lukasz.Furman
fixed aborting undermine tasks when player becomes reachable
#jira FORT-22240, FORT-22077
Change 2937166 on 2016/04/07 by Saul.Abreu
Fixed redundant typename in TPair that was causing clang compilation errors.
Change 2937093 on 2016/04/07 by Saul.Abreu
#fortnite
Made ElementSetType protected again in the Map family.
Change 2937044 on 2016/04/07 by Saul.Abreu
Tweaked Set/Map family of data structures to expose the typedefs for their key, value, and pair types.
Change 2936940 on 2016/04/07 by Bob.Tellez
#UE4 Fixed a bug that prevented the log summary from being printed after a blueprint compile.
Change 2936696 on 2016/04/07 by Bob.Tellez
#UE4 Blueprint names are once again part of Blueprint compile log messages.
Change 2936572 on 2016/04/07 by Lukasz.Furman
added more debug logs for tracking rare NaN error in player movement
#jira FORT-19426
Change 2934892 on 2016/04/06 by Lukasz.Furman
fixed updating hotspot information after all tasks instigated by it are finished
#jira FORT-22515
Change 2933664 on 2016/04/05 by Michael.Trepka
Fixed a rare crash in USoundNodeLooping::NotifyWaveInstanceFinished
Change 2933554 on 2016/04/05 by Lukasz.Furman
fixed taker's portal move (priorities of gameplay tasks spawned by path following)
#jira FORT-22482
Change 2933343 on 2016/04/05 by John.Abercrombie
Changed FGameplayAbilityActorInfo's AnimInstance property to a SkeletalMeshComponent in case AnimInstances are ever changed on a SkeletalMeshComponent
- AnimInstance can be used through an accessor
Change 2933300 on 2016/04/05 by Lukasz.Furman
fixed number of spawned AI in FTests using PreSpawnDelay
#fortnite
Change 2933171 on 2016/04/05 by Lukasz.Furman
added PreSpawnDelay param to function test spawn sets
#fortnite
Change 2931072 on 2016/04/01 by Lukasz.Furman
changed pawn actions to gameplay tasks
#jira FORT-21314
Change 2930987 on 2016/04/01 by Billy.Bramer
- Add method to data table to get all rows as a type
- Add metadata tag for data table rows to report columns as DataTableImportOptional, at which point they will not be warned against if missing during import (this allows games to do custom post-import fix-up or synthesis of data w/o expecting it to be imported)
- Use new method for getting all tags to fix FORT-20563 "Gameplay tag table import checks by numerical row name for no reason"
Change 2929651 on 2016/03/31 by Nick.Cooper
#Fortnite - Fixed Actor AttachmentReplication not being cleared on detachment, which would cause issues with the actor's location for clients joining in progress
#jira FORT-21330
#RB ben.zeigler
Change 2929360 on 2016/03/31 by Daniel.Broder
Fixed bug where CanvasRenderTarget2D assets would crash on load in editor due to trying to update the asset during post-load.
Thanks to Bob for what I needed to check to early-out and avoid the crash.
#RB Bob.Tellez
#UE4
Change 2928845 on 2016/03/31 by Nicholas.Davies
Add fix for chat text not clearing
#jira FORT-22049 Textbox does not clear when text is sent through chat
Change 2928574 on 2016/03/30 by Ben.Zeigler
Fix issue with redirectors not working properly for blueprint function libraries. When a blueprint got regenerated it patched the old export, but failed to clear the "load failed" flag, so it would fail to find it when later pointed to by a redirect
Change 2928572 on 2016/03/30 by Ben.Zeigler
#Jira FORT-20763
Fix issue with "Server re-loading object" warning going off for deleted actors. It now only logs, and only for things that are going to successfully load
Change 2928436 on 2016/03/30 by Bob.Tellez
#UE4 Added Canvas Render Target factory and asset type actions so you can create them in the content browser and search for them after they are created.
Change 2928372 on 2016/03/30 by Bob.Tellez
#UE4 Added verbose message about animation assets that need to be resaved due to resetting the skeleton.
Change 2926805 on 2016/03/29 by Bob.Tellez
#UE4 Made SetOverallScalabilityLevel virtual so game-specific features can be updated based on a single-value level.
Change 2926752 on 2016/03/29 by Bob.Tellez
#UE4 Using DesiredScreenHeight is now optional. Often games use ResolutionQuality as purely a way to run better on slower machines so it should be controlled entirely by scalability.
Change 2926189 on 2016/03/29 by Rob.Cannaday
Change storing HTTP requests as raw pointers to weak pointers with validity being checked via Pinning it
#jira FORT-18947
#jira OR-17695
#tests golden path
Change 2924921 on 2016/03/28 by Lukasz.Furman
removed log message showing as navmesh generation error when it skips over degenerated poly
#fortnite
Change 2924843 on 2016/03/28 by Lukasz.Furman
added more debug logs for navmesh's failed triangulate()
#jira FORT-22186
Change 2924719 on 2016/03/28 by Lukasz.Furman
fixed offmesh link connection issue causing path portal edges to have duplicated data and breaking hotspot detection traces
#jira FORT-22132
Change 2921698 on 2016/03/24 by Lukasz.Furman
fixed EQS instancing queries by debug name instead of using unique one, fixed debug name on asset duplication
#fortnite
Change 2920395 on 2016/03/23 by Bob.Tellez
#UE4 Added a call to FBaseServiceMcp::Shutdown() in FOnlineServiceAvailabilityMcp::Shutdown. The parent class doesnt do anything today, but this may fix a bug in the future.
Change 2920343 on 2016/03/23 by Ben.Zeigler
In ConvertScalarUPropertyToJsonValue, move the execution of the custom callback up above the specific property types. This is needed to allow us to override the TextProperty export, and allows overriding in general. It can have a performance implication if the custom callback is very slow
#RB josh.markiewicz
Change 2920310 on 2016/03/23 by Bob.Tellez
#UE4 FOnlineServiceAvailabilityMcp::Init was not invoking the Superclass' Init
Change 2920254 on 2016/03/23 by Aaron.McLeran
FORT-22090 Re-disabling reverb.
Will add an ini-based disabling ability but this CL quickly re-disables to resolve volume issue on FN and (hopefully) bypass crash mentioned in FORT-22037
Change 2920249 on 2016/03/23 by Rob.Cannaday
Fix for crash in FOnlinePartySystemMcp::InternalCleanUpPartyMember
Don't trigger "member left" type events if we are leaving the party
#jira FORT-20422
#jira FORT-21726
Change 2920178 on 2016/03/23 by Bob.Tellez
#UE4 Calling the platform-specific implementation of StackWalkAndDump when invoking StackWalkAndDumpEx. This fixes a bug in Windows where the first ensure does not produce a callstack.
Change 2919858 on 2016/03/23 by Bob.Tellez
#UE4 Fix for ensure about accessing a CVar in UParticleModuleLight on a non-game thread using GetValueOnGameThread. I changed this to GetValueOnAnyThread.
Change 2919775 on 2016/03/23 by Bob.Tellez
#UE4 Restoring enforced uniqueness in FUObjectAnnotationSparseSearchable and put all manipulations of InverseAnnotationMap in critical sections. This will make RemoveAnnotation fast again.
Change 2919233 on 2016/03/22 by Bob.Tellez
#UE4 Removing a warning that is pretty chatty in our cooked logs.
Change 2919125 on 2016/03/22 by Bob.Tellez
#UE4 Added ParticleLightQuality scalability setting since lower-end machines have trouble with particle lights. They are disabled on low and medium spec machines. HQ lights are only allowed on high-end machines.
Change 2918831 on 2016/03/22 by Bob.Tellez
#UE4 Fixed a bug where WinInet response headers were not properly being trimmed.
#JIRA FORT-22054
Change 2917722 on 2016/03/21 by Ben.Zeigler
Remove FortniteServer module and move those classes to FortniteGame. The engine doesn't support classes that only exist on servers but not clients, so this fixes a lot of error spam bugs, and should improve compile times
Resave assets that directly referenced FortniteServer
Change 2917588 on 2016/03/21 by Bob.Tellez
#UE4 Fixed shadow variable that I introduced
Change 2914169 on 2016/03/17 by Ben.Zeigler
Disable extra logging that was added to track down Auth issues, they look to be resolved
Change 2912626 on 2016/03/16 by Bob.Tellez
#UE4 Success messages should not be warnings.
Change 2911171 on 2016/03/15 by Bob.Tellez
#UE4 Minor fix to correctly display GetBulkDataSize in the warning in FUntypedBulkData::WaitForAsyncLoading
Change 2911170 on 2016/03/15 by Billy.Bramer
#jira [FORT-6139]
Trap models persist after destroying supporting structure in Outpost
- Root issue was caused by error within network dormancy and queued bunches: If a dormant actor's open bunch ended up queued and a close bunch came in before the bunch was processed, the actor would never be properly destroyed client side as a result of not re-establishing the channel's actor pointer
- Fix issue by changing close bunches to not be fully processed until their appropriate place in the queue. While this could cause superfluous execution (i.e. actor recreated just to be immediately destroyed), it should respect gameplay programming intent in regards to RPCs
Change 2911009 on 2016/03/15 by Bob.Tellez
#UE4 Fixed a bug in UHierarchicalInstancedStaticMeshComponent where RemoveInstances would not rebuild the ClusterTree, causing SortedInstances to contain incorect indices in GetInstancesOverlappingBox. This is the behavior of the singular RemoveInstance so this is what should also be done in the plural RemoveInstances.
#JIRA FORT-21605
Change 2910295 on 2016/03/15 by Bob.Tellez
#UE4 World thumbnails no longer cull primitives. This is because the camera is very far away and if terrain pieces are culled, the level is not visible.
Change 2909324 on 2016/03/14 by Bob.Tellez
#UE4 Since empty headers values cause GenerateHeaderBuffer to emit ERROR_HTTP_HEADER_NOT_FOUND, they are now omitted from the header buffer in WinInet.
Change 2905920 on 2016/03/11 by Lukasz.Furman
fixed crowd simulation getting stuck with invalid velocity (moonwalking husks)
#fortnite
Change 2905612 on 2016/03/11 by Bob.Tellez
#UE4 Made the minimum quadtree size configurable in ProceduralFoliageSpawner. You need to reduce the minimum size a little if you are spawning very many small foliage meshes.
[CL 3027184 by Bob Tellez in Main branch]
2016-06-24 16:58:12 -04:00
MessageLog . Warning ( * NSLOCTEXT ( " K2Node " , " OverridePinRemoval_BreakStruct " , " Override pins have been removed from @@ in @@, please verify the Blueprint works as expected! See tooltips for enabling pin visibility for more details. This warning will go away after you resave the asset! " ) . ToString ( ) , this , GetBlueprint ( ) ) ;
2016-02-19 13:49:13 -05:00
}
2014-08-05 14:16:02 -04:00
}
2014-03-14 14:13:41 -04:00
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 2973866)
#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]
2016-05-11 11:05:13 -04:00
FSlateIcon UK2Node_BreakStruct : : GetIconAndTint ( FLinearColor & OutColor ) const
{
2022-05-09 13:12:28 -04:00
static FSlateIcon Icon ( FAppStyle : : GetAppStyleSetName ( ) , " GraphEditor.BreakStruct_16x " ) ;
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 2973866)
#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]
2016-05-11 11:05:13 -04:00
return Icon ;
}
2014-03-14 14:13:41 -04:00
FLinearColor UK2Node_BreakStruct : : GetNodeTitleColor ( ) const
{
if ( const UEdGraphSchema_K2 * K2Schema = GetDefault < UEdGraphSchema_K2 > ( ) )
{
FEdGraphPinType PinType ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
PinType . PinCategory = UEdGraphSchema_K2 : : PC_Struct ;
2014-03-14 14:13:41 -04:00
PinType . PinSubCategoryObject = StructType ;
return K2Schema - > GetPinTypeColor ( PinType ) ;
}
return UK2Node : : GetNodeTitleColor ( ) ;
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3779049)
#rb none
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3627162 by Phillip.Kavan
#jira UE-49239 - Fix an invalid cast emitted to nativized codegen for converted AnimBP types.
- Regression introduced in CL# 3613358.
Change 3756887 by Ben.Zeigler
#jira UE-52380 Fix inconsistency with how FSoftObjectPtr case is managed between FLinkerSave and FArchiveSaveTagImports, which would cause a cook ensure under some circumstances
Copy of CL #3756788
Change 3756888 by Ben.Zeigler
#jira UE-45505 Fix issue where FCoreUObjectDelegates::OnAssetLoaded was being called from an inner loop inside EndLoad. Maps would register components from that callback, and if those registers started their own loads, those objects would be returned in a partially loaded state. We now defer the asset loaded callback to the very end of the loop so recursive loads work properly
Copy of CL #3753986
#thomas.sarkanen
Change 3759254 by Ben.Zeigler
Disable the duplicate PrimaryAssetId for editor only types like Maps. This can happen if content folk copy maps using the content browser, and does not actually cause a runtime problem. It still ensures for cooked types
Change 3759278 by Ben.Zeigler
Add IsTempPackage to FPackageName
Fix issue where temp/memory packages shown in a content browser/asset audit window would spam the log when it failed to find source control info for them
Change 3759613 by Phillip.Kavan
Add support for casting between mismatched soft pointer types in nativized Blueprint C++ assignment statements and function calls.
Change summary:
- Extended FEmitHelper::GenerateAutomaticCast() to consider soft pointer terms and inject C++ code to explicitly cast the RHS when needed.
#jira UE-52205
Change 3760040 by Dan.Oconnor
Add Call Stack control for viewing Blueprint call stacks when paused at a breakpoint, available from the Developer Tools menu
#jira UE-2296
Change 3760955 by Phillip.Kavan
Fix conditional (SA/CIS issue).
Change 3761356 by Ben.Zeigler
Fix DLC staging rules to handle metadata correctly and remove debug log I accidentally added. The DLC staging now iterates in a similar way to the normal staging, it just may also excluded Engine
Change 3761859 by Zak.Middleton
#ue4 - Fix crash in UStaticMesh::GetAssetRegistryTags() when FindObject is used during saving. Added Lex::ToString for physics enums ECollisionTraceFlag, EPhysicsType, and EBodyCollisionResponse.
#jira UE-52478
#tests QA game, content browser
Change 3761860 by mason.seay
Submitting test content for Async Load issue
Change 3762559 by Ben.Zeigler
#jira UE-52407 Fix it so FText can be specified in blueprint functions as default parameters. The UI showed up before but the data was lost
Change GetDefaultsAsString on Pin to always return an internal string so it can correctly be import texted, add GetDefaultsAsText for display purposes
Change 3764459 by Marc.Audy
PR #4224: Fix LoadLevelInstanceBySoftObjectPtr (Contributed by phlknght)
#jira UE-52415
Change 3764580 by Ben.Zeigler
Clean up delegates in UObjectGlobals.h, fixing several incorrect comments and moving some editor delegates into WITH_EDITOR
Change 3764602 by Ben.Zeigler
#jira UE-52487 Fix it so OnAssetLoaded gets correctly called for Assets that were async loaded while in the editor/standalone editor game.
This is necessary because they would not get registered with various editor systems for the rest of the editor session, even if opened manually
Change 3764603 by Ben.Zeigler
Related to UE-52487, now that async loading blueprints in the editor properly registers them with the blueprint actions, we need to unregister them when automated tests want them to unload. Add a ClearEditorReferences function to UBlueprint that calls the OnUnloaded editor delegate, so EngineTest doesn't need to include the editor module
Change 3764768 by Ben.Zeigler
#jira UE-52524 Fix null access crash when pasting an invalid macro instance node
Change 3766415 by Fred.Kimberley
Removing invalid assets. Most of these are out of date.
Change 3766417 by Fred.Kimberley
Add warnings when we try to export a package without a type.
Change 3766514 by Fred.Kimberley
Added a #include to fix the build.
Change 3766542 by Fred.Kimberley
Added a #include to fix the build.
Change 3766558 by Fred.Kimberley
Rename variables to avoid warnings about hiding previous variable declarations.
Change 3767619 by Marc.Audy
bActorIsBeingDestroyed must be part of transaction history
#jira UE-51796
Change 3767993 by Dan.Oconnor
Preserve graph editor controls when clicking on a hyper link, this speeds up navigation via the debugger 'step' command and Find in Blueprints control
#jira UE-52596
Change 3768146 by Marc.Audy
Fix material instance dynamic not correctly finding object in details panel customization as a result soft path changes
#jira UE-52488
Change 3769586 by Marc.Audy
Fix expose on spawn related error messages
Change 3769863 by Dan.Oconnor
Blueprint call stack now has access to frame offsets and can highlight nodes that are active on previous stack frames
#jira UE-52452
Change 3771200 by Dan.Oconnor
CIS fix - add missing DO_BLUEPRINT_GUARD
Change 3771555 by Ben.Zeigler
Add transactions for several pin class changing actions which were missing them
Change 3771589 by Ben.Zeigler
#jira UE-52665 Fix it so changing the type of a create widget or spawn actor node will correctly propagate the type change to reroute/wildcard nodes instead of disconnecting
Change 3771683 by Dan.Oconnor
Call Stack polish: background color no longer changes when undocked, prettify-ing "ExecuteUbergraph_blahblah" in to "Event Graph", resizing works correctly, added overlay message when no call stack is available
#jira UE-52567
Change 3771734 by Dan.Oconnor
Add entries for native code in the blueprint call stack view, clarifying re-entrancy
Change 3774293 by Ben.Zeigler
#jira UE-52665 Minimal fix for making sure type changes propagate through multiple rerout nodes, going to make a larger refactor in a second checkin
Change 3774328 by Ben.Zeigler
#jira UE-52665 Refactor knot nodes so there is one type propagation function that takes a direction, this fixes an issue where the second knot node in a chain would not have it's type changed when input type changed
Change 3774342 by Ben.Zeigler
#jira UE-52661 Fix crash when using blueprinted components created by a specialized subclass of UBlueprint, from PR #4249
Change 3774476 by Fred.Kimberley
Add class and function info to pin names for async nodes. This fixes a problem where redirectors for async node pins did not work.
https://udn.unrealengine.com/questions/402882/propertyredirect-fails-with-uk2node-latentgameplay.html?childToView=403808
Change 3774645 by Ben.Zeigler
#jira UE-41743 Fix it so struct split pins handle renames correctly, both for user structs and native structs
Refactor the variable rename checking in make/break struct to use the generic one I just added
Change 3775412 by Phillip.Kavan
UX improvements for Blueprint single-step debugging and breakpoints. Also added Step Out and Step Over debugging commands.
Change summary:
- Remapped the existing Step In command from F10 to F11 hotkey.
- Mapped existing Step Over command to F10 and existing Step Out command to ALT-SHIFT-F11 hotkeys.
- Added new (repurposed) icon assets for single-step debugging toolbar commands.
- Modified FPlayWorldCommands::BuildToolbar() to add new Step Over and Step Out commands to the toolbar.
- Modified FCompilerResultsLog::CalculateStableIdentifierForLatentActionManager() to remove special-case code for intermediate Tunnel Instance nodes, as these are now reverse-mapped through FullSourceBacktrackMap.
- Modified FKismetDebugUtilities::CheckBreakConditions() to more generally manage the current graph stack (i.e. not just for Blueprint Function graphs). Also fixed a bug where we had failed to reset the target graph stack depth after completing a Step Out/Over iteration.
- Modified FBlueprintDebugData::FindAllCodeLocationsFromSourceNode() to remove the additional iteration for the special Macro source node table (no longer required).
- Modified FBlueprintDebugData::RegisterNodeToCodeAssociation() to remove the Macro-specific parameters and the additional insertions into the special Macro tables (no longer required).
- Modified UK2Node_MathExpression::ValidateNodeDuringCompilation() to remove the special-case for Macro Instance source nodes, as Macro source nodes are now being mapped through the same table.
- Added FindMatchingTunnelInstanceNode() as a utility method for now in BlueprintConnectionDrawingPolicy.cpp in order to match up Macro/Composite graph source nodes with nested Tunnel Instance nodes at the current graph level. *** TODO: For 4.19 we probably should revert back to using a secondary table in the debug data to map Tunnel Instance node hierarchies to code offsets in order to result in a faster lookup time here. ***
- Modified FKismetConnectionDrawingPolicy::BuilldExecutionRoadmap() to replace the special-case for Macro Instance source nodes with a more general check for Tunnel Instance nodes that also handles Composite source nodes.
- Revised UK2Node_TunnelBoundary to strip out most of what was being used to support the profiler, while keeping its basic compiled goto behavior in order to still function as a NOP node.
- Added FKismetCompilerContext::SpawnIntermediateTunnelBoundaryNodes().
- Modified FKismetCompilerContext::ExpandTunnelsAndMacros() to no longer overwrite intermediate Macro source node mappings in the lookup table with the Macro Instance source node that triggered the Macro graph expansion. Also revised the TunnelNode case to spawn intermediate TunnelBoundary (NOP) nodes around Macro and Composite gateways; this allows breakpoints to hit on the Tunnel nodes around a source graph expansion.
- Modified FScriptBuilderBase::EmitInstrumentation() to remove special-case handling for Macro and Tunnel source nodes. These are now being mapped directly through the SourceBacktrackMap instead.
- Removed alternate breakpoint icon assets for Macro Instance and Composite nodes (no longer needed).
- Removed UK2Node::GetActiveBreakpointToolTipText() and its UK2Node_MacroInstance override (no longer required).
- Removed special case in SGraphNodeK2Base::GetOverlayBrushes() for Macro Instance and Composite nodes (no longer needed).
- Removed special-case mappings and interface methods for Tunnel nodes in FCompilerResultsLog (no longer required).
- Removed the LineNumberToMacroSourceNodeMap and LineNumberToMacroInstanceNodeMap members from the FDebuggingInfoForSingleFunction struct (no longer in use).
- Removed FBlueprintDebugData::FindMacroSourceNodeFromCodeLocation() and FindMacroInstanceNodesFromCodeLocation().
- Removed FKismetDebugUtilities::FindMacroSourceNodeForCodeLocation() (no longer in use).
- Removed special-case handling for Macro Instance nodes in FKismetDebugUtilities::OnScriptException() (no longer required). Macro source nodes are no longer being mapped to code offsets through a separate table, and we don't need to worry about saving/restoring the Active Object when debugging with a Macro Graph in the active tab.
#jira UE-2880
#jira UE-16817
Change 3776606 by mason.seay
Updated content to prevent warning from appearing
Change 3777051 by Dan.Oconnor
ComponentTemplate references in UBlueprint can no be cleared after compiling the (blueprint defined) component
#jira UE-52484
Change 3777108 by Dan.Oconnor
Look up call stack frame source name when caching a script call stack for display. This relies on debug data being generated for event stubs
#jira UE-52717, UE-52719
Change 3778277 by Marc.Audy
Fixed potential null material reference causing crash.
#jira UE-52803
Change 3778288 by Marc.Audy
PR #3957: Making FAlphaBlend BlueprintType in order to fix a bunch of broken UPROPERTY's as of 4.17 (Contributed by ill)
#jira UE-49082
Change 3778321 by Phillip.Kavan
Fix for a regression in BP script execution behavior related to misidentified latent node expansions from a macro source graph.
Change summary:
- Removed FCompilerResultsLog::FullSourceBacktrackMap (no longer in use).
- Restored FCompilerResultsLog::IntermediateTunnelNodeToTunnelInstanceMap (which was in place prior to CL# 37754112); this table was being used to map intermediate nodes resulting from a tunnel instance node expansion back to the outer tunnel instance node that triggered the expansion. Its once again being used for that reason, but I reduced the scope a bit to only include the execution path within the expansion, as that's the only mapping that we need.
- Restored FCompilerResultsLog::RegisterIntermediateTunnelNode(), but renamed it to NotifyIntermediateTunnelNode() to be consistent with the other parts of the MessageLog interface, and also removed the part of the implementation that was adding to a secondary macro expansion-to-source backtrack map (since macro expansion node lookup is now done through the main source backtrack map).
- Restored FCompilerResultsLog::GetIntermediateTunnelInstance().
- Modified FCompilerResultsLog::NotifyIntermediateObjectCreation() to remove the part of the implementation that was adding to the secondary node-only-to-source backtrack map (it was previously just a redundant copy of the main one except in the case of macro expansions).
- Modified FCompilerResultsLog::CalculateStableIdentifierForLatentActionManager() to restore the calculation of a stable UUID for nodes sourced from a macro expansion, where we had incorporated the outer intermediate tunnel instance node chain.
#jira UE-52872
Change 3778329 by Marc.Audy
PR #4241: Enforce calling superclass on ActorComponent::BeginPlay (Contributed by rlefebvre)
#jira UE-52574
Change 3778349 by Marc.Audy
Minor cleanup
Change 3759702 by Ben.Zeigler
#jira UE-52287 Prevent cook metadata like DevelopmentAssetRegistry.bin from being packed into a shipping game, by moving it into a Metadata subdirectory and updating deployment scripts to avoid that directory.
Right now it doesn't package them at all, we could change it to package them as Debug Non-UFS if desired
Change it so the asset audit UI will only load DevelopmentAssetRegistry.bin files, the cooked registry files don't have enough information any more to be useful
Remove ability for runtime game to load DevelopmentAssetRegistry.bin, this ended up not being useful
#jira UE-52158 Fix it to refresh the list of possible asset audit platforms when the refresh button is pushed
Change 3766414 by Fred.Kimberley
Data validation plugin
Change 3769923 by Ben.Zeigler
#jira UE-30347 Change ResourceSize mode enum from Inclusive to EstimatedTotal, which includes UObject serialization data as well as data for any subobjects. It now does NOT include externally referenced assets, which it did for some assets but not others
Fix Texture EstimatedTotal memory to handle LOD bias, it now reports the largest possible size in a cooked game of any platform
Fix many GetResourceSizeEx calls to match the new definition and improve accuracy
Switched several editor tools to use EstimatedTotal now that it is more useful, and removed some unused memory stats
Remove ResourceSize from UObject asset registry tags as it was misleading and inaccurate, for now it is only possible to get this for loaded objects
Remove MapFileSize from Worlds as it redundant with the generic file size. Fixed the generic file size to display using the Size format
Several UI fixes for Asset Audit and Size Map to deal with this change. Asset Audit no longer has the memory size columns, and the memory size drop down in Size Map is disabled for cooked builds
Change 3771365 by Ben.Zeigler
#jira UE-52670 Add project setting bValidateUnloadedSoftActorReferences that is true by default to match current behavior. If you set it to false it will no longer load packages to look for soft actor references when deleting/renaming actors.
[CL 3779057 by Marc Audy in Main branch]
2017-11-29 16:03:05 -05:00
UK2Node : : ERedirectType UK2Node_BreakStruct : : DoPinsMatchForReconstruction ( const UEdGraphPin * NewPin , int32 NewPinIndex , const UEdGraphPin * OldPin , int32 OldPinIndex ) const
2014-03-14 14:13:41 -04:00
{
ERedirectType Result = UK2Node : : DoPinsMatchForReconstruction ( NewPin , NewPinIndex , OldPin , OldPinIndex ) ;
2014-09-17 14:27:00 -04:00
if ( ( ERedirectType_None = = Result ) & & DoRenamedPinsMatch ( NewPin , OldPin , true ) )
{
UE-183502 - BP autoconversion adds extraneous conversion nodes (resubmit)
(Resubmit: added check for "multiple self" connections. Even though the types mismatch, we permit these connections.)
The previous attempt to add automatic conversion nodes (24029327) had a flawed design: checking pin connections during rewiring might have an incomplete view of the types of the linked pins.
For example, suppose we have two native, BlueprintCallable functions. One returns a float, and the other accepts a single float. In a Blueprint, we have the output of one linked to the input of the other.
Later, we update both functions to use ints. During rewiring of the function with the return value, it might see that its connection is a float (because that node hasn't been rewired yet). As a result, it'll insert a cast node. Subsequently, when we later rewire the function with the input, it'll see that it's connected to a float, because of the recently inserted cast node. This will add yet another cast node. Since both pin types are the same, there shouldn't be any cast nodes to begin with.
The only safe way to insert cast nodes is after node construction has finished. Instead of handling this during rewiring, we can defer the type checking to early validation. Overall, this simplifies the autoconversion since we just need to iterate over pairs of pins, check for type mismatches, and insert cast nodes where appropriate.
This change effectively reverts CLs 24174262, 24029327, 24218437, and 25444139, and moves the type checking logic to EarlyValidation.
#jira UE-183502
#rb phillip.kavan
[CL 25834276 by dave jones2 in ue5-main branch]
2023-06-06 21:17:28 -04:00
Result = ERedirectType_Name ;
2014-09-17 14:27:00 -04:00
}
2023-02-06 09:08:45 -05:00
2014-03-14 14:13:41 -04:00
return Result ;
}
FNodeHandlingFunctor * UK2Node_BreakStruct : : CreateNodeHandler ( class FKismetCompilerContext & CompilerContext ) const
{
return new FKCHandler_BreakStruct ( CompilerContext ) ;
}
2014-08-23 20:16:29 -04:00
void UK2Node_BreakStruct : : GetMenuActions ( FBlueprintActionDatabaseRegistrar & ActionRegistrar ) const
2014-07-14 12:39:28 -04:00
{
2021-05-11 10:58:41 -04:00
Super : : SetupMenuActions ( ActionRegistrar , FMakeStructSpawnerAllowedDelegate : : CreateStatic ( & UK2Node_BreakStruct : : CanBeBroken ) , EGPD_Output ) ;
2014-07-14 12:39:28 -04:00
}
FText UK2Node_BreakStruct : : GetMenuCategory ( ) const
{
return FEditorCategoryUtils : : GetCommonCategory ( FCommonEditorCategory : : Struct ) ;
}
2021-04-28 12:42:10 -04:00
void UK2Node_BreakStruct : : PreSave ( FObjectPreSaveContext SaveContext )
{
Super : : PreSave ( SaveContext ) ;
UBlueprint * Blueprint = FBlueprintEditorUtils : : FindBlueprintForNode ( this ) ;
if ( Blueprint & & ! Blueprint - > bBeingCompiled )
{
bMadeAfterOverridePinRemoval = true ;
}
}
void UK2Node_BreakStruct : : PostPlacedNewNode ( )
{
Super : : PostPlacedNewNode ( ) ;
// New nodes automatically have this set.
bMadeAfterOverridePinRemoval = true ;
}
2016-02-19 13:49:13 -05:00
void UK2Node_BreakStruct : : Serialize ( FArchive & Ar )
{
Super : : Serialize ( Ar ) ;
if ( Ar . IsLoading ( ) & & ! bMadeAfterOverridePinRemoval )
{
// Check if this node actually requires warning the user that functionality has changed.
bMadeAfterOverridePinRemoval = true ;
FOptionalPinManager PinManager ;
// Have to check if this node is even in danger.
2019-12-13 11:07:03 -05:00
for ( TFieldIterator < FProperty > It ( StructType , EFieldIteratorFlags : : IncludeSuper ) ; It ; + + It )
2016-02-19 13:49:13 -05:00
{
2019-12-13 11:07:03 -05:00
FProperty * TestProperty = * It ;
2016-02-19 13:49:13 -05:00
if ( PinManager . CanTreatPropertyAsOptional ( TestProperty ) )
{
bool bNegate = false ;
2019-12-13 11:07:03 -05:00
if ( FProperty * OverrideProperty = PropertyCustomizationHelpers : : GetEditConditionProperty ( TestProperty , bNegate ) )
2016-02-19 13:49:13 -05:00
{
// We have confirmed that there is a property that uses an override variable to enable it, so set it to true.
bMadeAfterOverridePinRemoval = false ;
break ;
}
}
}
}
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
void UK2Node_BreakStruct : : ConvertDeprecatedNode ( UEdGraph * Graph , bool bOnlySafeChanges )
{
const UEdGraphSchema_K2 * Schema = GetDefault < UEdGraphSchema_K2 > ( ) ;
// User may have since deleted the struct type
if ( StructType = = nullptr )
{
return ;
}
// Check to see if the struct has a native make/break that we should try to convert to.
if ( StructType - > HasMetaData ( FBlueprintMetadata : : MD_NativeBreakFunction ) )
{
UFunction * BreakNodeFunction = nullptr ;
// If any pins need to change their names during the conversion, add them to the map.
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
TMap < FName , FName > OldPinToNewPinMap ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
if ( StructType = = TBaseStructure < FRotator > : : Get ( ) )
{
BreakNodeFunction = UKismetMathLibrary : : StaticClass ( ) - > FindFunctionByName ( GET_FUNCTION_NAME_CHECKED ( UKismetMathLibrary , BreakRotator ) ) ;
OldPinToNewPinMap . Add ( TEXT ( " Rotator " ) , TEXT ( " InRot " ) ) ;
}
else if ( StructType = = TBaseStructure < FVector > : : Get ( ) )
{
UE-141652 - Remove BP native make/break functionality for LWC types
Previously, vector types were using the single precision variants for their make&break functions. As a result, the split vectors would be floats, which led to precision loss. Going forward, we want to ensure that we use double precision variants of these functions. The single precision functions no longer serve any use, and will be deprecated.
Additionally, FVector_NetQuantize and friends can go back to using the default FVector make&break functions. We don't need to deprecate these functions since they only existed in 5.0. However, some content has already been saved with these functions, so we need to still setup redirects in BaseEngine.ini.
Finally, AssertMacros.h was missing several variants of GET_FUNCTION_NAME_CHECKED_NParams. Without these, GET_FUNCTION_NAME_CHECKED would fail to compile since KismetMathLibrary would have overloads of MakeVector and BreakVector.
#jira UE-141652
#preflight 6216b51e647bb7debf6dbf76
#rb phillip.kavan
#lockdown julien.marchand
#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 19122243 in //UE5/Release-5.0/... via CL 19123441
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19154373 by dave jones2 in ue5-main branch]
2022-02-25 15:13:33 -05:00
BreakNodeFunction = UKismetMathLibrary : : StaticClass ( ) - > FindFunctionByName ( GET_FUNCTION_NAME_CHECKED_FourParams ( UKismetMathLibrary , BreakVector , FVector , double & , double & , double & ) ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
OldPinToNewPinMap . Add ( TEXT ( " Vector " ) , TEXT ( " InVec " ) ) ;
}
else if ( StructType = = TBaseStructure < FVector2D > : : Get ( ) )
{
UE-141652 - Remove BP native make/break functionality for LWC types
Previously, vector types were using the single precision variants for their make&break functions. As a result, the split vectors would be floats, which led to precision loss. Going forward, we want to ensure that we use double precision variants of these functions. The single precision functions no longer serve any use, and will be deprecated.
Additionally, FVector_NetQuantize and friends can go back to using the default FVector make&break functions. We don't need to deprecate these functions since they only existed in 5.0. However, some content has already been saved with these functions, so we need to still setup redirects in BaseEngine.ini.
Finally, AssertMacros.h was missing several variants of GET_FUNCTION_NAME_CHECKED_NParams. Without these, GET_FUNCTION_NAME_CHECKED would fail to compile since KismetMathLibrary would have overloads of MakeVector and BreakVector.
#jira UE-141652
#preflight 6216b51e647bb7debf6dbf76
#rb phillip.kavan
#lockdown julien.marchand
#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 19122243 in //UE5/Release-5.0/... via CL 19123441
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19154373 by dave jones2 in ue5-main branch]
2022-02-25 15:13:33 -05:00
BreakNodeFunction = UKismetMathLibrary : : StaticClass ( ) - > FindFunctionByName ( GET_FUNCTION_NAME_CHECKED_ThreeParams ( UKismetMathLibrary , BreakVector2D , FVector2D , double & , double & ) ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
OldPinToNewPinMap . Add ( TEXT ( " Vector2D " ) , TEXT ( " InVec " ) ) ;
}
else
{
const FString & MetaData = StructType - > GetMetaData ( FBlueprintMetadata : : MD_NativeBreakFunction ) ;
BreakNodeFunction = FindObject < UFunction > ( nullptr , * MetaData , true ) ;
if ( BreakNodeFunction )
{
// Look for the first parameter
2019-12-13 11:07:03 -05:00
for ( TFieldIterator < FProperty > FieldIterator ( BreakNodeFunction ) ; FieldIterator & & ( FieldIterator - > PropertyFlags & CPF_Parm ) ; + + FieldIterator )
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
{
if ( FieldIterator - > PropertyFlags & CPF_Parm & & ! ( FieldIterator - > PropertyFlags & CPF_ReturnParm ) )
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
OldPinToNewPinMap . Add ( StructType - > GetFName ( ) , FieldIterator - > GetFName ( ) ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3182037)
#rb None
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2825716 on 2016/01/12 by Marc.Audy
Fix GrabDebugSnapshot virtual function definitions in Ocean
Change 2828462 on 2016/01/14 by Marc.Audy
Back out changelist 2825716
Change 3153526 on 2016/10/06 by Zak.Middleton
#ue4 - Fix CharacterMovement hanging on to a bad/penetrating floor check result and not continuing to check for a valid floor. Only occured if bAlwaysCheckFloor was false. This could in rare situations cause the character to continue to attempt to depenetrate an object far away from it until another floor check occured. To prevent this we now force a floor check after the depenetration.
Related to OR-14528.
Change 3153580 on 2016/10/06 by Benn.Gallagher
Skeletal LOD workflow refactor. Now we track source files for LODs to save time when reimporting LODs often. It's still possible to pick new files and overwrite the current settings.
#jira UE-36588
Change 3154264 on 2016/10/06 by Aaron.McLeran
UE-37004 UE-37005 Fixing stat soundwaves
Change 3154560 on 2016/10/07 by James.Golding
UE-20739 Fix auto box in Morph Target Preview panel
Change 3154776 on 2016/10/07 by Ben.Zeigler
#Fortnite Change the ability UI to use the Tag UI data instead of the Tag Categories, as Tag Categories were redundant and are being removed in the tag refactor. I'm not sure this code is actually in use any more.
Change 3154954 on 2016/10/07 by Ben.Zeigler
Move GameplayTagsEditor to a plugin, and change GameplayTagsManager to be accessed directly without the module load overhead, as it is part of the engine module set.
Performance improvements to GameplayTags to maintain a ParentTag list when tag containers get modified. It does a quick update on add, and a slow recompute on other changes. This leads to a 10x improvement in IncludeParent queries
Replace RemoveAllTags and RemoveAllTagsKeepSlack with Reset, which already existed but didnt work correctly.
Removed the Category map from gameplay tags, games are using other systems to do translateable text.
Significant internal changes to GameplayTagsManager, moved from 3 redundant maps to 1 map and removed unused functionality
Change 3154955 on 2016/10/07 by Ben.Zeigler
Game compile fixes for changes to GameplayTags module and API. Removed redundant calls to remove tags, TagContainer uses Reset() like other container types
Change 3154995 on 2016/10/07 by Aaron.McLeran
UE-37012 fix compile issue
Change 3155009 on 2016/10/07 by Aaron.McLeran
UE-37009 Ensure failed for FXAudio2SoundBuffer::Seek() in XAudio2Buffer.cpp
- Removing ensure and using if statement instead. It looks possible for decompression state to fail to be created, that state is logged elsewhere.
Change 3155128 on 2016/10/07 by Ben.Zeigler
Add old location of GameplayTagsEditor to junk manifest
Change 3155268 on 2016/10/07 by Aaron.McLeran
UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions
Change 3155561 on 2016/10/07 by Ben.Zeigler
GameplayTag fixes made based on code review feedback:
Deprecate custom node for making a literal gameplay tag container and add proper make and break functions to the blueprint library
Remove direct access to the tag container internals as it has always been unsafe
Add many missing utility functions to the library and change things to pass FGameplayTag by value. TagContainers must still be passed by reference though as they are large
Fix case where comparing two containers with the tags in different orders would fail
Remove deprecated serialization entirely, print error when trying to load very old tags
Add RemoveAllTags and RemoveAllTagsKeepSlack back to container, but deprecate them
Change 3155842 on 2016/10/07 by dan.reynolds
AEOverview Update - Attenuation Shapes Test Map + Counting Test Assets
Change 3156779 on 2016/10/10 by Richard.Hinckley
Fixing/reordering comments for basic types.
Change 3156926 on 2016/10/10 by Ben.Zeigler
Remove deprecated gameplay ability system code involving non-BP gameplay effects and ActiveGameplayEffectQueries
Change 3156998 on 2016/10/10 by Jon.Nabozny
Include K2Node_BaseAsyncAction.h in K2Node_AsyncAction.h to fix compile issue.
Change 3158732 on 2016/10/11 by Zak.Middleton
#ue4 - Don't allow the first move in SafeMoveUpdatedComponent() to ignore penetration when slowly moving out of an object. We really want to pop out completely using the MTD as fast as possible or we can fall through the object in a longer direction.
#jira UE-28610
Change 3159208 on 2016/10/11 by dan.reynolds
Added ancillary SoundClass Passive Mix Modifier Duration Test map
Change 3159211 on 2016/10/11 by Aaron.McLeran
UE-37193 Fixing passive sound mix modifier
Change 3159278 on 2016/10/11 by dan.reynolds
AEOverviewMain integration with the SCO Passive Mix Modifier Duration Test map for additional testing purposes.
Also tweaks and clean-up of SCOverviewPassMixModDuration map and associated Platform_Blueprint
Change 3159596 on 2016/10/12 by danny.bouimad
Updates to TM-Meshbake
Change 3159629 on 2016/10/12 by James.Golding
Add ModifyCurve anim node
Make GetPinAssociatedProperty const correct
Change 3159705 on 2016/10/12 by James.Golding
Add 'ApplyMode' and 'Alpha' options to ModifyCurve node
Change 3159959 on 2016/10/12 by John.Abercrombie
Integrate CL 3159892 from //Fortnite/Main/...
Fixed the Blackboard component pausing but never being unpaused if we ended up restarting the Behavior Tree instead of continuing
#ue4
Change 3160014 on 2016/10/12 by Lukasz.Furman
pass on gameplay debugger in Simulate in Editor mode
#jira UE-36123
Change 3160027 on 2016/10/12 by Lukasz.Furman
fixed behavior tree task restart conditions
copy of CL 3159145
#ue4
Change 3160129 on 2016/10/12 by Lukasz.Furman
gameplay debugger refactor: removed deprecated code
#ue4
Change 3160389 on 2016/10/12 by Lukasz.Furman
added missing include path to gameplay debugger module
#ue4
Change 3160408 on 2016/10/12 by Lukasz.Furman
refactored sanity checks in gameplay debugger EdMode to keep static analysis happy
#ue4
Change 3161143 on 2016/10/13 by James.Golding
UE-37208 UE-37207 Fix AnimNode_ModifyCruve CIS error
Change 3161227 on 2016/10/13 by danny.bouimad
More changes to meshmergemap
Change 3161777 on 2016/10/13 by Ben.Zeigler
API changes for GameplayTag and Container, and fix Redirect loading
Remove Match type and empty count as match bool from common API
In C++ use MatchTag/MatchAny/HasTag/HasAny/HasAll with *Exact variants for exact matching. Old C++ API is still there but I will deprecate and remove soon
In Blueprint use MatchTag/MatchAny/HasTag/HasAny/HasAll with bool parameter for as the bool is more clear. I was able to convert old functions to new ones as no one was overriding the options I removed
Undeprecate the old make literal node and temporarily set GameplayTags in container to be editable. We're not allowed to deprecate things until our internal games fix their usage.
Change 3162095 on 2016/10/13 by Jon.Nabozny
Fix bad default screen resolution in Platformer Game.
#jira UE-34901
Change 3163351 on 2016/10/14 by Marc.Audy
Avoid duplicate accessor calls
Change 3163364 on 2016/10/14 by Marc.Audy
Eliminate auto
Use ForEachObjectWithOuter
Change 3163367 on 2016/10/14 by Marc.Audy
Use ForEachObjectWithOuter instead of GetObjectsWithOuter
Change 3163500 on 2016/10/14 by Marc.Audy
When using SetCullDistance property for static meshes correctly update the cached value
#jira UE-36891
Change 3163674 on 2016/10/14 by Jon.Nabozny
#rn Fix popping in OnRep_ReplicatedAnimMontage.
#jira UE-37056
Change 3164818 on 2016/10/17 by Ori.Cohen
Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.
Change 3164903 on 2016/10/17 by Lukasz.Furman
fixed bug in merging behavior tree searches
#ue4
Change 3165236 on 2016/10/17 by dan.reynolds
Fixes and tweaks based on feedback:
- Made most objects Stationary to assist in dynamic lighting changes as sub-levels have unknown orientation until load
- Fixed Blueprint Control map to stop test when the player leaves the zone
- Fixed Blueprint Contorl map typos
Change 3165323 on 2016/10/17 by Aaron.McLeran
PS4 Audio Streaming
- Refactored Opus audio streaming code to have the code which interfaces with audio streaming manager in format-agnostic code (so I can use for AT9 streaming)
- Wrote an AT9 real-time decoder module (will be used in audio mixer)
- Enabled streaming on PS4 platform
- Refactored much of Ngs2 to be more in parity with our other platforms for real-time decoding (Significant changes to Ngs2Buffer)
- Added support for Ngs2 buffer callbacks for when audio needs to be fed to sources rather than pushing data from game thread
- Fixed A3D implementation: creating both a normal sampler rack and an A3D-specific sampler rack
- Fixed up error handling code in Ngs2 so it actually reports real errors
Change 3165997 on 2016/10/18 by Richard.Hinckley
Improving consistency of "New C++ Class" templates and fixing some shadow-variable issues.
Change 3166220 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
- Changing include of appropriate file to not be in #if WITH_ENGINE block
Change 3166262 on 2016/10/18 by Aaron.McLeran
UE-37441 Compile Ocean IOS, Compile FortniteClient Mac, Compile UE4Editor Mac complete with 11 errors
Fixing up the original wave format parsing code in Audio.cpp to avoid redefinitions. This code needs to be removed eventually in favor of the new wave format parser class.
Change 3166562 on 2016/10/18 by Aaron.McLeran
UE-37441 Fixing compile on Mac
- Renamed FFormatChunk to FRiffFormatChunk
Change 3166653 on 2016/10/18 by Aaron.McLeran
UE-37442 Build Tools Win64 completes with 28 errors
Change 3166917 on 2016/10/18 by Aaron.McLeran
UE-37502 Initializing missed data members in FNgs2SoundSource constructor
Change 3167329 on 2016/10/19 by Benn.Gallagher
Made wind properties editable on wind components, had to make the properties unsettable by blueprints and add setter functions so we can trigger render data updates from property updates.
#jira UE-37500
Change 3167575 on 2016/10/19 by Jon.Nabozny
#rn Fix UCharacterMovementComponent::OnTeleported improperly changing movement mode.
#jira UE-37082
Change 3168079 on 2016/10/19 by Ori.Cohen
Fix timing issue that causes snapshotpose to t-pose.
#JIRA UE-37476
Change 3168392 on 2016/10/19 by dan.reynolds
Updated AEOverviewMain with custom Attenuation FBXs to alleviate visual noise when observing complex attenuation shape falloff distances.
Change 3169121 on 2016/10/20 by danny.bouimad
Updates to Merge actor assets
Change 3169128 on 2016/10/20 by Danny.Bouimad
files
Change 3169230 on 2016/10/20 by Lina.Halper
#improved log message
Change 3169243 on 2016/10/20 by Ben.Zeigler
#jira UE-37515 Add UK2Node::ConvertDeprecatedNode which handles node-specific deprecation fixup.
Add code to automatically convert from make/break struct nodes to native call function if there is a native override.
This was hard coded for vector, etc but now works for any type that declares HasNativeMake/HasNativeBreak.
Add serialize override to K2Node that serializes struct defaults when gathering references while saving. References declared in literal struct pins were being skipped
Add specific fixups for GameplayTag make/break functions
Change 3169422 on 2016/10/20 by Aaron.McLeran
UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features
Change 3169620 on 2016/10/20 by Ben.Zeigler
Switch GameplayTagTests to use the new Custom test macro and better failure reporting.
Add TestTrueExpr macro that runs TestTrue with the expression as the display string, like how ensure works.
Change 3169622 on 2016/10/20 by Ben.Zeigler
Fix swapped HasAny logic and bad comments
Change 3169645 on 2016/10/20 by Aaron.McLeran
Re-adding call to Stop source
Change 3169664 on 2016/10/20 by dan.reynolds
AEOverviewMain Update - Fixed Menu bug where clicking the menu item after map reset resulted in requiring two attempts to actually reset the menu item properly. Menu Hit interaction is now much more responsive.
Change 3169997 on 2016/10/20 by Ben.Zeigler
Change from alloca to normal malloc, as static analysis doesn't like alloca in loops due to stack overflow danger
Change 3170796 on 2016/10/21 by Marc.Audy
PR #2878: Prevent 'XXX has natively added scene component' warning in commandlets (Contributed by slonopotamus)
#jira UE-37632
Change 3170802 on 2016/10/21 by Lina.Halper
#ANIM: curve can link to joints
- this allows to filter certain curves per LOD - when the joint is discarded
-> refactored editor object tracker to allow multiple per class
-> refactored so that bone reference supports both skeleton or mesh but make sure you don't access invalid function when using skeleton indices
- layer bone support
#jira: UEFW-207
Change 3170857 on 2016/10/21 by Aaron.McLeran
Disabling checking for device change
Change 3171101 on 2016/10/21 by Ben.Zeigler
Deprecate old gameplay tag functions in favor of new API that doesn't use the enums or module header
Add IsEmpty, Filter, FilterExact, and AddLeafTag to FGameplayTagContainer
Add RequestGameplayTag, MatchesTagDepth and GetGameplayTagParents to FGameplayTag
Remove MatchesEmpty parameter from tag asset interface. This defaulted to true but should now be explicitly checked with IsEmpty()
Engine fixups for those changes
Change 3171102 on 2016/10/21 by Ben.Zeigler
Internal game fixups for tag deprecation
Moved some fortnite tags into the global tag list and fixed fortnite cases. Confident in these changes
Fixed several weird tag uses in Orion. Dave and I should code review these changes as I was unsure on some of them
Some minor changes for Ocean
Change 3171186 on 2016/10/21 by Ben.Zeigler
File got missed in checkin
Change 3171239 on 2016/10/21 by Wes.Hunt
TPSAudit updates.
* Added /Verbose option that will print out the name of each file examined. Useful for debugging if a file was even checked.
* Don't skip Content folders
* Don't skip Engine\Documentation\HTML
* Skip any Content\Localization folders instead of only Engine\Content\Localization
* Skip any Content\Internationalization folders
* Skip .raw, .exr, .r16, .abc, .webm, .collection, .aac files.
* if a file has no extension (like configure files) then treat the filename as the extension
* configure files are treated like shell files
Change 3171245 on 2016/10/21 by Ben.Zeigler
Fix crash when saving nodes that reference properties from struct defaults. Switch FindImportedObject to be safe while saving, it will find existing objects but not load new ones.
I am not sure why StaticFindObject is unsafe during save.
Change 3171248 on 2016/10/21 by Wes.Hunt
TPSAudit: added /veryverbose which lists every file and directory excluded and the reason (file or dir exclusion). This makes the startup MUCH MUCH slower, so only use for debugging.
Change 3171256 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171258 on 2016/10/21 by Wes.Hunt
ModuleManager shutdown fixes.
* ShutdownModule is now called in reverse order to when StartupModule is FINISHED.
* This allows modules to reference dependencies in their StartupModule to ensure they are loaded, and be sure they will still be around in ShutdownModule.
* HTTPModule now shuts down in ShutdownModule and not PreUnloadCallback.
* Added comments to Module headers to indicate this new change in behavior.
* Removed manual startup of HTTP module in LaunchEngineLoop as it's no longer needed. Should save the module from being around if not really used by engine.
Change 3171946 on 2016/10/24 by Lina.Halper
Fix so that it checks all the joints before removing
Change 3172126 on 2016/10/24 by Lukasz.Furman
added navlink component
#ue4
Change 3172152 on 2016/10/24 by Jon.Nabozny
Remove UWorld::ComponentOverlapMulti indirection in UPrimitiveComponent::UpdateOverlaps.
UWorldComponentOverlapMulti is just a wrapper that verifies the component is valid, then calls UPrimitiveComponent::ComponentOverlapMulti.
#jira UE-36472
Change 3172364 on 2016/10/24 by Ben.Zeigler
Codereview fixes for tag changes.
Make Tag->Container constructor explicit to avoid bugs
Fix some cases that were using exact to allow parents instead
Change 3173442 on 2016/10/25 by Jon.Nabozny
Fixed crash when opening Anim asset after retargetting.
Change 3174123 on 2016/10/25 by Ben.Zeigler
Add some ini tag data to QAGame, it's now setup to import some from DataTable, and some from ini. This enables the full management UI.
Change 3174394 on 2016/10/25 by dan.reynolds
AEOverview update - added a Streaming Audio test which tests two streaming audio loops (one short, one long).
Change 3175197 on 2016/10/26 by Wes.Hunt
Fix OSS module startup to directly reference HTTP and XMPP as a dependency in StartupModule. This should make MCP startup/shutdown more robust.
#codereivew: sam.zamani,dmitry.rekman,josh.markiewicz
Change 3175236 on 2016/10/26 by Jon.Nabozny
Change FMath::SegmentDistToSegmentSafe to handle the case where either (or both) of the input segments create points.
Either segment may be considered a point if it's two points have a distance that's nearly 0.
#jira UE-19251
Change 3175256 on 2016/10/26 by Jon.Nabozny
Fix CIS for SegmentDistToSegmentSafe change.
Change 3175379 on 2016/10/26 by Jon.Nabozny
Change UCharacterMovementComponent::ApplyImpactPhysicsForces to use IsSimulatingPhysics(BoneName) instead of IsAnySimulatingPhysics on the hit component.
#jira UE-37582
Change 3175408 on 2016/10/26 by Marc.Audy
AudioThreading improvements:
Fix PS4 core 6 issue
Add timeout spam
Radical simplification
Fix suspension CVar
#authors Gil.Gribb/Marc.Audy
#jira OR-30447
Change 3175535 on 2016/10/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3175266
Change 3175539 on 2016/10/26 by Marc.Audy
Restore affinity for AudioThread and allow it on to 7th (rather than pinning it)
Change 3175631 on 2016/10/26 by Marc.Audy
Fix silly compile error
Change 3175639 on 2016/10/26 by Aaron.McLeran
Fixing audio device removal code
- Flipping active sources to virtual mode
- Handling initializing sources that have become virtual
- Not stopping sounds when device is unplugged
Change 3175665 on 2016/10/26 by dan.reynolds
AEOverview update - Added a Streaming Overview sub test (Streaming Spam)
Change 3175934 on 2016/10/26 by dan.reynolds
AEOverview Streaming Map Fix - fixed AEOverviewStreaming to avoid orphaning sounds when crossing the platforms
Change 3175941 on 2016/10/26 by Marc.Audy
Fix compiler error after merge from Main
Change 3176378 on 2016/10/27 by Jon.Nabozny
Add RotatorToAxisAndAngle function to KismetMath. We already expose RotatorFromAxisAndAngle, this is just the inverse operation.
Change 3176441 on 2016/10/27 by Jon.Nabozny
Fix another CIS issue with SegmentDistToSegmentSafe change.
Change 3176487 on 2016/10/27 by Jon.Nabozny
Hide DemoRecorder from the scoreboard in ShooterGame.
#jira UE-37492
Change 3176616 on 2016/10/27 by Lukasz.Furman
optimized behavior tree debugger update in subtrees
#jira UE-29029
Change 3176717 on 2016/10/27 by james.cobbett
Test asset for UE-37270
Change 3176731 on 2016/10/27 by dan.reynolds
AEOverview Streaming Spam map tweak--fixed STRMOverviewStreamSpam map so it now ensures reproduction on a specific edge case
Change 3176887 on 2016/10/27 by Aaron.McLeran
UE-37899 Failed Assertion when spamming PS4 Streaming Start/Stop
- Fix is to add critical sections to avoid stopping a Ngs2 source voice while it's in an OnBufferEnd callback
#tests Use Dan.Reynold's AEOverviewMain, load STRMOverviewStreamSpam map. will crash in half a second pre-fix, never crashes post-fix.
Change 3177053 on 2016/10/27 by Marc.Audy
Actually reattach previously attached actors when creating a child actor
#jira UE-37675
Change 3177113 on 2016/10/27 by Aaron.McLeran
UE-37906 Fixing stat sounds when the audio thread is enabled.
Change 3177536 on 2016/10/27 by Aaron.McLeran
Updating QASoundWaveProcedural to support stereo procedural sound wave generation.
Change 3177551 on 2016/10/27 by dan.reynolds
AEOverview update
- Tweaked AEOverviewSWP to support testing mono and stereo SoundWave Procedurals
- Added STRMOverviewStreamPriority to test Streaming Voice Priority
Change 3177819 on 2016/10/28 by Thomas.Sarkanen
Consolidated LOD screen size calculations
Static, skeletal and HLOD now use the same method of specifying LOD level at runtime.Namely "Screen Size". When the bounds of the objects sphere occupy half the max screen dimension, the screen size is 0.5 & all of the screen, 1.0.
HLOD still uses a distance based metric at runtime to choose when to switch clusters, so will still not switch LODs on FOV changes.
Conversion functions have been implemented to convert each of the legacy LOD specifications into the new unified version.
Conversion uses an assumption that the average case uses 1080p @ 90 degree FOV. This is necessary as previous screen sizes/areas were based around that resolution and we want the least perf regressions when at that resolution.
Auto LOD now uses the same functionality to determine what LOD thresholds to use.
#tests Verified that LODs switch at equivalent distances/sizes before and after this change for various assets.
#tests Verified that HLOD distance->screen size and inverse functions map correctly
#tests Ran Michael N's triangle count test before and after the changes with Paragon to verify rendered triangle counts do not vary with the new method
Change 3177996 on 2016/10/28 by Marc.Audy
Support play button on SoundCues as well as SoundWaves
Change 3178013 on 2016/10/28 by Marc.Audy
Allow previewing of force feedback effects from content browser
#jira UE-36388
Change 3178020 on 2016/10/28 by Lukasz.Furman
fixed navmesh wall segment calculations for crowds
#jira UE-37893
Change 3178096 on 2016/10/28 by Marc.Audy
Make ALevelSequenceActor::Tick call Super
#jira UE-37932
Change 3178247 on 2016/10/28 by Zak.Middleton
#ue4 - Crash fix when player is destroyed and server checks to see if it needs to force a network update. No repro steps in the bug but guarding against the crash is pretty straightforward.
UE-37902
Change 3178256 on 2016/10/28 by Zak.Middleton
#ue4 - Avoid crash when calling ACharacter::SetReplicateMovement when not on the server.
Change 3178263 on 2016/10/28 by Ben.Zeigler
Add support for a SearchableNameMap to the Linker and the Asset Registry. Call MarkSearchableName(TypeObject,Name) from a serialize function to register that an FName should be considered Searchable.
This change bumps the object version. Also fix it so the StringAssetReferencesMap does not get written out in editor builds
Clean up FLinker::Serialize, as it is no longer called except to get memory size
Add code to mark searchable names for GameplayTags, DataTableHandles, and CurveTableHandles.
Add FAssetIdentifier to the AssetRegistry that allows searching for Package.Object::Name. If Object/Name aren't specified PackageName will be used as it was before
UI Improvements to the reference viewer to support name references. Collapse the reference/dependency checkboxes, and add new checkboxes for SearchableNames and NativePackages, disabled by default
Remove bResolveIniStringReferences option from GetDepdendencies and handle that when parsing in the string asset reference table
Change 3178265 on 2016/10/28 by Ben.Zeigler
Move all ini settings for GameplayTags over to GameplayTagsSettings.h/GameplayTags.ini, instead of being in 3 different places.
Add metadata for the source of a gameplay tag and it's comment to the node, but only in editor builds
Change it so the default list and developer tags list are saved the same way as a list of structs. This will allow UI for selecting what tag list to save it into
The first time someone in the project modifies the GameplayTags project settings it will migrate these settings from the old locations. This will cause defaultEngine.ini to resave, which may wipe out comments
Migrate QAGame's tag config as a test
Change 3178266 on 2016/10/28 by Lina.Halper
Fix issue with anim editor sound play notify doesn't work with follow option
#jira: UE-37946
Change 3178441 on 2016/10/28 by Ben.Zeigler
Fix use of IsValid on names inside asset identifier to properly be a None check and add accessor to make use more clear
Change 3178443 on 2016/10/28 by Ben.Zeigler
Half migrated gameplay tag settings for internal games, will need full migration via the editor on their branches
Change 3178533 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178655 on 2016/10/28 by Ben.Zeigler
Build fix
Change 3178672 on 2016/10/28 by Lina.Halper
Unshelved from changelist '3164228':
PR #2867: Fixed for UE-15388 : Bones of uniformly scaled SkeletalMesh rotate incorrectly in Persona (Contributed by rarihoma)
#jira: UE-37372
Change 3178675 on 2016/10/28 by Ben.Zeigler
Crash fix if you have no defaultengine.ini redirects section
Change 3178698 on 2016/10/28 by Ben.Zeigler
#jira UE-37774 Fix issue with loading save games referencing UObjects not in memory, this broke in 4.13
Change 3178743 on 2016/10/28 by Lina.Halper
Fixed so that if no key, it clamps to 0.
#jira: UE-36790
Change 3179121 on 2016/10/28 by dan.reynolds
AEOverview tweaks
- updated Concurrency map to tighten up the audio playback (as in James C's feedback)
- tweaked some timers to be closer to real-time
Change 3179912 on 2016/10/31 by Mieszko.Zielinski
Removed unused piece of functionality from UEdGraphSchema_BehaviorTreeDecorator #UE4
Change 3179933 on 2016/10/31 by Lukasz.Furman
fixed missing update timers in avoidance manager
#ue4
Change 3180028 on 2016/10/31 by Ben.Zeigler
#jira UE-373993 Fix crash with bad default value for objects
Change 3180503 on 2016/10/31 by mason.seay
Test map for character spawning bug
Change 3180744 on 2016/10/31 by Ben.Zeigler
#jira UE-38025 Fix APlayerController:DisplayDebug to not make a bad copy of the debug display manager
Change 3180914 on 2016/10/31 by Ben.Zeigler
#jira UE-37773 Add hooks for deleting and renaming tags, untested pending UI support
Add handler for editing a gameplaytag asset from asset browser
Change 3181879 on 2016/11/01 by Marc.Audy
Rollback CL# 3169645 to resolve fortnite audio hitching when stopping sounds
#jira UE-38055
[CL 3182044 by Marc Audy in Main branch]
2016-11-01 15:50:29 -04:00
break ;
}
}
// If map is empty, didn't find parameter
if ( OldPinToNewPinMap . Num ( ) = = 0 )
{
const UBlueprint * Blueprint = GetBlueprint ( ) ;
UE_LOG ( LogBlueprint , Warning , TEXT ( " BackwardCompatibilityNodeConversion Error 'cannot find input pin for break node function %s in blueprint: %s " ) ,
* BreakNodeFunction - > GetName ( ) ,
Blueprint ? * Blueprint - > GetName ( ) : TEXT ( " Unknown " ) ) ;
BreakNodeFunction = nullptr ;
}
}
}
if ( BreakNodeFunction )
{
Schema - > ConvertDeprecatedNodeToFunctionCall ( this , BreakNodeFunction , OldPinToNewPinMap , Graph ) ;
}
}
}
2014-03-14 14:13:41 -04:00
# undef LOCTEXT_NAMESPACE