Commit Graph

191 Commits

Author SHA1 Message Date
Marc Audy
0c5bc8be6d Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2720406 on 2015/10/07 by Aaron.McLeran

	Audio optimization

	Don't search for nearest listener if there's only 1 listener.

Change 2720411 on 2015/10/07 by Aaron.McLeran

	Fixing HRTF spatialization code with recent changes to stereo spatialization.

	HRTF emitter posiition doesn't need to be converted to XAudio2 coordinates.

Change 2723829 on 2015/10/09 by Mieszko.Zielinski

	Fixed NavigationSystem trying to set label of newly spawned navigation data #UE4

	UE-21880

Change 2723873 on 2015/10/09 by Mieszko.Zielinski

	Fixed a bug in FNavAgentProperties::IsEquivalent resulting in failing the test for FNavAgentProperties instances having default AgentStepHeight value (-1) #UE4

	UE-21977

Change 2724834 on 2015/10/12 by Ori.Cohen

	PR #1634: Add PxVehicleDriveNW support to PhysXVehicleManager.cpp (Contributed by zeduk)

Change 2724850 on 2015/10/12 by Marc.Audy

	Fix sound not restarting in matinee preview when jumping back along timeline after reaching end
	#codereview Nick.Darnell

Change 2726499 on 2015/10/13 by Ori.Cohen

	Fix edge case where sphyl length and radius are 0 and they are not properly clamped to 0.1

Change 2726689 on 2015/10/13 by Marc.Audy

	Make UPackage::PackageFlags private
	Add debugging for UE-21181 to try and track down when EditorWorld's PackageFlags are getting flagged as PlayInEditor
	#codereview Mike.Fricker

Change 2726862 on 2015/10/13 by Lukasz.Furman

	removed unused code from DetourNavMeshQuery
	#ue4 UE-21988

Change 2726888 on 2015/10/13 by Lukasz.Furman

	fixed observer abort: both mode in behavior tree's cone check decorator
	#ue4 UE-19375

Change 2726913 on 2015/10/13 by Lukasz.Furman

	navmesh raycast will use nearest poly containing ray origin instead of just closest one
	#ue4 UE-19334

Change 2726920 on 2015/10/13 by Marc.Audy

	Re-unify ULevelStreaming::GetWorldAssetPackageName and GetWorldAssetPackageFName
	#codereview Dmitriy.Dyomin, Bob.Tellez

Change 2726931 on 2015/10/13 by Lukasz.Furman

	fixed missing Tick event in aborting behavior tree tasks from abandoned subtree
	#ue4 UE-21777

Change 2728093 on 2015/10/14 by Ori.Cohen

	Fix edge case of sphyl scale take two. The previous approach did double scaling

Change 2728577 on 2015/10/14 by Mieszko.Zielinski

	Improved navmesh labeling condition #UE4

	Change suggested by github user

	#rb Lukasz.Furman

Change 2728587 on 2015/10/14 by Lukasz.Furman

	fixed crowd simulation for auto possessed pawns placed on level
	#ue4
	#rb Mieszko.Zielinski

Change 2728629 on 2015/10/14 by Lukasz.Furman

	fixed influence of navmesh edges on crowd simulation near end of path
	#ue4 UE-21380
	#rb Mieszko.Zielinski

Change 2728678 on 2015/10/14 by Lukasz.Furman

	added Z check to detour's crowd avoidance segment gathering
	#ue4 UE-20889
	#rb Mieszko.Zielinski

Change 2728745 on 2015/10/14 by Lukasz.Furman

	fixed copy&paste operation in behavior tree's composite decorators subgraphs
	#ue4 UE-18740

Change 2729276 on 2015/10/14 by Stan.Melax

	ensure all actors get recreated with new collision shape specification.

	this wasn't being done for a couple of editing methods.

	todo:  this should be merged into 4.10

	#UE-20961
	#rb ori.cohen

Change 2730709 on 2015/10/15 by Marc.Audy

	Prevent memory corruption when an invalid controller ID is passed in to the forcefeedback channel functions
	#rb Lina.Halper

Change 2733590 on 2015/10/19 by Benn.Gallagher

	Fixed various crashes when using undo and redo while manipulating state machines UE 22088

Change 2735143 on 2015/10/20 by Lukasz.Furman

	clearing behavior tree debugger's state when displayed subtree becomes inactive
	#ue4
	#rb Mieszko.Zielinski

Change 2735144 on 2015/10/20 by Lukasz.Furman

	rebuilding behavior tree graph node order when node is being moved
	#ue4
	#rb Mieszko.Zielinski

Change 2735403 on 2015/10/20 by sebastian.kowalczyk

	Integrated fix for issue UE-18594 "Gameplay Debugger is hijacking the Canvas" issue from 4.10 (2735391). Extended previous fix to care about OSX users - it's possible to configure shortcuts in engine config file now (little different ones for osx platform).

Change 2736406 on 2015/10/21 by sebastian.kowalczyk

	Added new GameplayDebugger as a plugin. Old gameplay debugger is still here to keep backward compatibility but it's deprecated now. Current projects should be moved to use new plugin soon.

Change 2736436 on 2015/10/21 by sebastian.kowalczyk

	Fixed crash in gameplay debugger with  player set as debug target.

Change 2736437 on 2015/10/21 by sebastian.kowalczyk

	Added visual indicator around selected pawn to fix FORT-10273 issue. (FN is not using new gd plugin yet).

Change 2736489 on 2015/10/21 by sebastian.kowalczyk

	Hide internal and debug hud classes from drop down lists.

Change 2736504 on 2015/10/21 by sebastian.kowalczyk

	Fix for UE-18548 "EnableGDT does not work correctly in PIE".

Change 2736529 on 2015/10/21 by sebastian.kowalczyk

	Fixed UE-18548 "EnableGDT does not work correctly in PIE"

Change 2736588 on 2015/10/21 by sebastian.kowalczyk

	Removed old log visualizer classes.

Change 2736700 on 2015/10/21 by sebastian.kowalczyk

	Fixed UE-19256 "Perception debug data doesn't get replicated by Gameplay Debuger" for old gameplay debugger module.

Change 2737180 on 2015/10/21 by Zak.Middleton

	#ue4 - Fix UPrimitiveComponent::GetCollisionShape not correctly enforcing bounds limits.

	#rb Aaron.Mcleran

	#jira UE-22436

Change 2738084 on 2015/10/22 by sebastian.kowalczyk

	Better indication of selected pawn for Gameplay Debugger.

Change 2738413 on 2015/10/22 by Marc.Audy

	Disable duplication of worlds/maps via the content browser
	#jira UE-22200
	#rb James.Golding

Change 2739743 on 2015/10/23 by bruce.nesbit

	UE-18707 - Issue with drawing material triangle on canvas #1387

	Added DrawTriangleUsingVertexColor

Change 2739751 on 2015/10/23 by bruce.nesbit

	Revised bShowDebugForReticleTarget should not be static #1539

Change 2739788 on 2015/10/23 by bruce.nesbit

	Revised the 2 functions that used FTriangleRenderer::DrawTriangle to use FTriangleRenderer::DrawTriangleUsingVertexColor
	Fixed compile error

Change 2739870 on 2015/10/23 by Marc.Audy

	Avoid issues while detaching child components if OnAttachmentChange were to remove a sibling component itself.
	#jira UE-22362
	#rb Zak.Middleton

Change 2739882 on 2015/10/23 by sebastian.kowalczyk

	Fix for UE-20901 "VisualLog redirections are broken after PIE finishes" issue.

Change 2740140 on 2015/10/23 by Marc.Audy

	Ensure that components reregister tick functions after seamless travel
	#jira UE-20892
	#rb Zak.Middleton

Change 2740614 on 2015/10/23 by Ori.Cohen

	Fix linker issues for people wanting to use physics lock lambdas

Change 2740674 on 2015/10/23 by Aaron.McLeran

	Sound Focus Feature

	Added new parameters to SoundAttenuation settings to allow audio to change behavior based on its angle to the listener

	- Define the min/max azimuth angle to establish in-focus and non-focus regions
	- Can scale the priority of a sound based on focus angle
	- Can attenuate the volume of a sound based on focus angle
	- Can scale the listener-emitter distance based on focus angle
	- Distance scale is applied when determining max audible distance for USoundBase
	- Can opt-out of focus effects for a sound at the USoundBase level

	#rb Ryan.Vance

Change 2741542 on 2015/10/26 by Lukasz.Furman

	lowered min value clamping in navigation filter properties
	#ue4
	#rb Mieszko.Zielinski

Change 2743227 on 2015/10/27 by Marc.Audy

	Make ASceneCaptureCube subclassable outside of Engine module
	#jira UE-22609
	Make USceneCaptureComponentCube::UpdateContent callable outside of Engine module
	#jira UE-22610

	#rb Jeff.Farris

Change 2743255 on 2015/10/27 by Marc.Audy

	Wrap FActorSpawnParameters class with deprecation warning disable pragma instead of hand implementing copy constructor
	#rb Jeff.Farris

Change 2743729 on 2015/10/27 by Ori.Cohen

	Fix case where we spawn and adjust location which gives us implicit velocity.

	#codereview Stan.Melax

Change 2746135 on 2015/10/29 by sebastian.kowalczyk

	Fixed UE-21668 "Saving log filters selected in LogVisualizer causes insane ini file sizes! And doesn't really work."

Change 2746437 on 2015/10/29 by Lukasz.Furman

	pass on verifying behavior tree stack before accessing its elements
	#ue4
	#rb Mieszko.Zielinski

Change 2748028 on 2015/10/30 by sebastian.kowalczyk

	Changed GameplayDebugger's console variable from gd.EQSOnHUD to ai.gd.EQSOnHUD" after suggestion with MieszkoZ.

Change 2748184 on 2015/10/30 by Aaron.McLeran

	UE-22693 Fix for streaming bug

	- 3rd decoded buffer in initial 3 buffers was not getting submitted to xaudio2 voice resulting in garbled/skipped audio.
	- Wasn't able to repro the 'cannot read chunk' part of the bug

	#rb ryan.vance

Change 2749255 on 2015/10/31 by sebastian.kowalczyk

	Fixed ai.gd.EQSOnHUD console variable after rename from gd.EQSOnHUD.

Change 2749276 on 2015/10/31 by sebastian.kowalczyk

	Added switch to toggle highlight of selected actor to GameplayDebugger.

Change 2749318 on 2015/10/31 by sebastian.kowalczyk

	New Gameplay Debugger plugin can be used with old module simultaneously. It's best to configure different keyboard binding for plugin when using old module (it can be set in project settings, for new gameplay debugger plugin - when activated for project).

Change 2749337 on 2015/10/31 by sebastian.kowalczyk

	Fixed GameplayDebugger compilation in shipping/test builds.

Change 2749376 on 2015/10/31 by sebastian.kowalczyk

	Small clean-up in gameplay debugger class for BT.

Change 2749931 on 2015/11/02 by James.Golding

	Add stats to ProcMeshComp

Change 2749932 on 2015/11/02 by James.Golding

	Remove PhysicsThrusterComponent.h from Engine.h

Change 2749960 on 2015/11/02 by James.Golding

	- Fix PS4 compile errors in ActiveSound.cpp
	  - Constructor order of FActiveSound
	  - Shadowed AudioComponent var in CheckOcclusion
	#RB thomas.sarkanen
	#codereview aaron.mcleran

Change 2749961 on 2015/11/02 by James.Golding

	Fix PS4 compile errors in GameplayDebuggerBaseObject.cpp
	- Shadowed DefaultContext function param, now just Context, which matches declaration
	#RB thomas.sarkanen
	#codereview sebastian.kowalczyk

Change 2750026 on 2015/11/02 by Thomas.Sarkanen

	Anim Multithreading: thread-safety refactor

	Segregated access to various parts of anim update data by spitting off a new proxy class (FAnimInstanceProxy) containing all data accessed in Update() and Evaluate() passes. Gated access to the proxy data on the game thread in a number of ways:

	- Explicit access via GetValueOnGameThread() - this blocks on any existing task, completes and then allows control to return to the accessing function. This allows stuff like Blueprints to continue to operate as normal.
	- Explicit access via GetValueOnAnyThread() - this ensures that in the limited set of circumstances we need this (Blueprint pure functions mostly) that conditions are met about concurrent access.
	- Deprecating many APIs on UAnimInstance that should not be used (and in fact are not used at present, happily).

	Derived classes of UAnimInstance can override the creation of the proxy class to create their own type. We do this for UAnimSingleNodeInstance etc.

	Any API deprecation should continue to function - no functions have been removed yet. The only things that are not backwards-compatible are direct access to some public member variables for which there is no way to support (e.g. via references, for example UngroupedActivePlayerArrays).

	Some APIs have been changed to more specifically represent the dependencies involved. For example TickAssetPlayerInstance() used to take a UAnimInstance*, only to use it to simply queue notifies. This has been deprecated and replaced with a new FNotifyQueue API. FNotifyQueue also uses a thread-safe FRandomStream instead of FMath::Rand.

	Many changes are due to substituting accessor functions for direct variable access.

	Removed 'service' tick group as we no longer need to segregate the running of our parallel update.

	Anim nodes that need to do some game thread-side update should register for a pre-update callback delegate in the proxy. See FAnimNode_AnimDynamics for an example of this.

	Moved UpdateActiveVertexAnims into FAnimRuntime so I can subsume some of the code that was in USkeletalMeshComponent::EvaluateAnimation into UAnimInstance (and hence keep the proxy access private).

	#rb Martin.Wilson,Lina.Halper
	#codereview Michael.Noland

Change 2750077 on 2015/11/02 by Marc.Audy

	Expose UInputComponent::BindAction that supports WithKey delegate signature

Change 2751767 on 2015/11/03 by Thomas.Sarkanen

	Added extra support to Anim Blueprint 'fast-path'

	Added support for negated bools (value gets negated during copy).
	Added support for copying from struct members (via break struct) and split struct pins.

	Removed potentially troublesome references to BP-constructed UProperties, replacing them with the property FName. This adds some extra Initialize() overhead, but prevents various crash-on load issues (one when generating the class CRC). Added guard to prevent multiple initialization to save this more expensive work being done more often.

	#rb Martin.Wilson

Change 2752158 on 2015/11/03 by Jeff.Farris

	Fixed UGameplayStatics::SpawnEmitterAttached() to register the ParticleSystemComponent after it spawns.

	#rb marc.audy

Change 2752159 on 2015/11/03 by Jeff.Farris

	Improvements to camera lens effects to (EmitterCameraLensEffectBase)
	- can now specify a transform to align the emitter with the camera
	- exposed several key parameters to Blueprints
	- ENGINE_API now applies to the entire class

	#rb marc.audy

Change 2753454 on 2015/11/04 by Thomas.Sarkanen

	Fixup deprecation warnings fallout from multithreaded update changes.

	Fixed up use of AnimInstance in Vicon plugin.
	Fixed up use of AnimInstance in slope warping node.

	Un-deprecated some APIs to become warning free (these APIs are safe to call but just a 'bad idea if you want to do it right').
	Also an extra API to allow for smoother transition: Allow custom allocation/deallocation (including using a proxy member struct) by providing an override point for proxy destruction.

	#rb Martin.Wilson

Change 2754099 on 2015/11/04 by Ori.Cohen

	Fix for task threads dropping stats (from Gil)

	#rb Gil.Gribb

Change 2754449 on 2015/11/04 by Marc.Audy

	Ensure that components created from an Actor's blueprint BeginPlay implementation get BeginPlay called on them and register their component ticks
	#jira UE-20853
	Reorganize some booleans to get better bit packing
	#rb Jeff.Farris
	#codereview Mieszko.Zielinski

Change 2754573 on 2015/11/04 by Aaron.McLeran

	Fixing audio component PostLoad code to not set all LowPassFilterFrequency values to 0.0f

Change 2755345 on 2015/11/05 by Thomas.Sarkanen

	Added deprecated constructors for various animation contexts

	Allows existing code to compile if it creates its own contexts from UAnimInstance.

	#rb James.Golding

Change 2755348 on 2015/11/05 by James.Golding

	Add BP-exposed SetBoundsScale function to PrimitiveComponent
	#RB thomas.sarkanen

Change 2755437 on 2015/11/05 by Marc.Audy

	Fix compile errors
	#codereview Thomas.Sarkanen, Mieszko.Zielinski, Aaron.McLeran

Change 2755982 on 2015/11/05 by Marc.Audy

	Move HeaderParse changes for deprecation macro from Core
	Fix world settings warning

Change 2756028 on 2015/11/05 by Marc.Audy

	Fix shadow variable issue

Change 2756090 on 2015/11/05 by Ori.Cohen

	Improve budget tool so that task threads are computed automatically.

	#rb Gil.Gribb

Change 2756120 on 2015/11/05 by Mieszko.Zielinski

	Fixed AIController::MoveTo not using DefaultQueryExtent of its navigation data #UE4

	#rb Lukasz.Furman

Change 2756243 on 2015/11/05 by Mieszko.Zielinski

	Fixed AI perception sight's "auto-visibility" mechanism totally skipping distance and vision cone checks #UE4

	The old way was resulting in false positives when for example observer teleported somewhere far

	#rb Lukasz.Furman
	#codereview John.Abercrombie

Change 2756280 on 2015/11/05 by Mieszko.Zielinski

	Minor VLog code cleanup and dumb-fixing visual logger accessing timer manager off of game thread #UE4

	#rb Lukasz.Furman

Change 2756500 on 2015/11/05 by Mieszko.Zielinski

	Added sanity-checking to BlueprintNodeHelpers::HasBlueprintFunction and cleaned up its usage #UE4

	Also, refactored its parameters into references over pointers.

	#rb Lukasz.Furman

Change 2757041 on 2015/11/06 by Thomas.Sarkanen

	Removed check() in UAnimInstance::GetProxyOnAnyThread()

	The check was no longer needed as if we are on the game thread we block until tasks are completed below, and if we are on any other thread we are 'safe' anyway.

	#rb James.Golding

Change 2757207 on 2015/11/06 by Ori.Cohen

	Fix incorrect root body cache which causes a single frame "freak out" when simulating physics from an animation

	#rb Lina.Halper

Change 2757238 on 2015/11/06 by Marc.Audy

	Force compiler generated functions to be generated for FHierarchicalSimplification in WorldSettings.h so that they are generated while the deprecation warnings are disabled.
	#rb Mike.Fricker

Change 2757284 on 2015/11/06 by Stan.Melax

	tapered capsule drawing

	cloth collision happens with spheres and for the hull or tapered capsule goemetry between any specified pair of spheres.

	(this was already code reviewed before, but missed the check-in window before streamtime)

	#rb ori.cohen

Change 2757743 on 2015/11/06 by Lukasz.Furman

	fixed node memory allocations for injected behavior tree decorators
	#ue4 UE-22783
	#rb Mieszko.Zielinski

Change 2757772 on 2015/11/06 by Lukasz.Furman

	added setters for crowd avoidance
	#ue4 UE-22785
	#rb Mieszko.Zielinski

Change 2758422 on 2015/11/07 by Lina.Halper

	Potential fix for invalid root bone index input

	#jira :/UE-23086
	#code review: Ori.Cohen

Change 2758429 on 2015/11/07 by Mieszko.Zielinski

	Reimplemented a fix for AI Sight's "auto seeing" mechanics in a more flexible way #UE4

	#jira UE-23089

Change 2758571 on 2015/11/08 by Mieszko.Zielinski

	Modified ensure condition in UAIPerceptionComponent::OnRegister so it doesn't go off when BP does it's magic when components are being added to a BP actor class  #UE4

	#jira UE-23080

Change 2758821 on 2015/11/09 by Thomas.Sarkanen

	Fixed animations no longer playing when using a dedicated server.

	Uses correct logic to determine whether we are running as a server or not.

	#rb Martin.Wilson

Change 2758920 on 2015/11/09 by Marc.Audy

	Don't dereference weak object pointers repeatedly in FBoneContainer::Initialize
	#rb Lina.Halper

Change 2758944 on 2015/11/09 by Ori.Cohen

	Fix crash when stats are only on one thread and budget mode is used

Change 2758967 on 2015/11/09 by Benn.Gallagher

	Fix for crash undoing notify socket changes in Persona, needed to recache the notify track data after the transaction had reserialized the sequence.

	#jira UE-22963

Change 2758973 on 2015/11/09 by Benn.Gallagher

	Added new 'Random Player' node for anim graphs allowing the user to play a selection of animations in a random order with certain randomised paramers. Also allows 'Shuffle Mode' to act more like a playlist in that it will play everything on the list before repeating.

	#rb Bruce.Nesbit

Change 2759219 on 2015/11/09 by Ori.Cohen

	Character perf test is now looking at stats directly and sending to analytics

	#RB Ben.Salem

Change 2759398 on 2015/11/09 by Lina.Halper

	Fix issue where placed montages are not playing.

	- the issue is that IsPlaying does not consider montage, but SetPlaying does. It is asymmetry, so I made it same. However, there are other functions that need to be re-looked at wr.t. montage

	#code review: Thomas.Sarkanen
	#RB: Marc.Audy

Change 2759491 on 2015/11/09 by Lina.Halper

	#Anim: Fix not getting input correctly for Copy Pose node

	#RB: Marc.Audy

Change 2759602 on 2015/11/09 by Marc.Audy

	Fix imporperly named struct

Change 2759795 on 2015/11/09 by Aaron.McLeran

	UE-23145 Adding a Priority value to USoundBase to use in concurrency evaluation and sorting wave instances for voice stealing.

	#rb zak.middleton

Change 2760081 on 2015/11/09 by Aaron.McLeran

	UE-23091 Adding more logging for NaN checks and fixing one source of NaNs for audio.

	OmniDirectional Math Explanation:

	For XAudio2, because we do our own distance-attenuation calculations, we use the X3dAudio2 API to simply compute a speaker-map for spatialization and force the listener to be at the origin and the emitter to be on the unit-circle. Thus, from XAudio2's perspective, all distances for every listener-emitter pair will be 1.0.

	So in order to use the InnerRadius blending feature, we need to trick it into doing a an inner radius blend relative to a distance of 1.0. For example, if OmniRadius and Distance are the same, then the "NormalizedOmniRadius" is 1.0 and XAudio2 will begin its "blend" of the sound to an omni-directional speaker map.

	If Emitter-listener distance is less than the OmniRadius, we'll want to do more blending to an omni-directional speaker map, but we need to set the InnerRadius to something greater than 1.0 (i.e. so that the normalized distance of 1.0 will be treated as less than the InnerRadius). To do "full" omni-directional blending, the emitter-listener distance will be 0 or close to zero, and the NormalizedOmniRadius will be very large (i.e. close to infiinity).

	The previous math just set the NormalizedOmniRadius to FLT_MAX which is fine but that number is eventually squared before making the API call. FLT_MAX squared is INF.

	Note: I do not think we need to square the OmniRadius in:
	Emitter.InnerRadius = OmniRadius*OmniRadius;
	But I am keeping it t here because of legacy content which depends on that behavior.

	#rb zak.middleton

hange 2760401 on 2015/11/10 by Thomas.Sarkanen@Thomas.Sarkanen-Dev-Framework

	Re-instated deleted protected functions in UAnimInstance.
	Fixed access of UAnimInstance in FAnimNode_StateMachine.

	#rb Martin.Wilson

Change 2760407 on 2015/11/10 by Jurre.deBaare

	Construct raw meshes for spline meshes now uses the render data instead of original model data (preserves tangents/normals)

Change 2760468 on 2015/11/10 by Benn.Gallagher

	Anim Dynamics optimizations, cached iteration independant data to reduce footprint of iteration on limits.
	#rb Graeme.Thornton

Change 2760613 on 2015/11/10 by Jeff.Farris

	Fixed async collision completion delegate potentially firing repeatedly. (UE-23149)

	#cr marc.audy
	#codereview lina.halper

Change 2760795 on 2015/11/10 by Marc.Audy

	Don't compile in pointless AddReferencedObjects when with editoronly data not defined
	Minor coding standard cleanup (NULL and auto)

Change 2760848 on 2015/11/10 by Benn.Gallagher

	Fix to anim instance proxy to not rely on state machine initialization to bind native delegates as nested state machines are not guaranteed to be initialized. This was fixed in UAnimInstance originally but broken again by the proxy instance code.
	#jira UE-23164
	#rb Martin.Wilson

Change 2760866 on 2015/11/10 by Marc.Audy

	Manage transient visualization components for camera component in the same way that sprite component for other actor components are
	#rb Mike.Beach

Change 2760963 on 2015/11/10 by Marc.Audy

	Since construction script can cause actors to be spawned don't use a ranged for to iterate
	#jira UE-22639
	#rb Jeff.Farris
	#codereview Dmitriy.Dyomin

Change 2762297 on 2015/11/11 by James.Golding

	UE-23086 Don't ensure in SetRootBodyIndex when Bodies array is empty (ie no physics state created)
	#rb martin.wilson
	#codereview ori.cohen, lina.halper

Change 2763566 on 2015/11/11 by Lina.Halper

	FAnimNode_CopyPoseFromMesh::Evaluate - was accessing skeleton joint, not mesh joint.

	#RB: Laurent.Delayen

Change 2763926 on 2015/11/12 by Thomas.Sarkanen

	Fix anim notifies not firing from single anim instances

	UE-23248 - Anim Notifies are not working for Animation Sequences
	UE-23249 - Anim Notifies using Sound Cues do not work

	#rb James.Golding

Change 2764039 on 2015/11/12 by Jurre.deBaare

	Fix for issue with incorrect material indices after reducing a skeletal mesh with non LOD0 mesh as BaseLOD (OR-9243) #rb Lina.Halper

Change 2764307 on 2015/11/12 by Jurre.deBaare

	VS2015 SSF library

Change 2764314 on 2015/11/12 by Stan.Melax

	crashfix  was putting bad bodies to sleep at start

	  Fatal error!
	  Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000
	  UE4Editor-Engine.dll!USkeletalMeshComponent::InitArticulated() [...\\engine\\source\\runtime\\engine\\private\\skeletalmeshcomponentphysics.cpp:875]

	On some skeletalmeshcomponent, some bodies aren't getting created correctly.  Trying to force them to sleep was causing a crash - it expected instantiated physx bodies.  Seems that all the rest of the code is able to tolerate bad bodies.
	Added check to ensure physx body exists before trying to force it to sleep.

	not sure if bad bodies are the norm or if this fix is just more "kicking the can down the road".

	#codereview ori.cohen

Change 2764343 on 2015/11/12 by Jurre.deBaare

	- Fixed crash when building a LOD with SubActors.Num < 2
	- Force HLOD level slider is now always enabled, however won't show complete image if not all HLODs are build
	- LODActor tree view item now scrolls into view if selected in the world
	- Set bAllowCullDistanceVolume to false for LODActor's static mesh components by default
	- Added 7zip files
	- Fixed issue with WinINet complaining about http-request without 'http://' prefix
	- Changed % reduced or original triangles display string, now uses float instead of int (for < 1% reductions)
	- Override texture sizes and automatic texture bias
	- Fixed issue with incorrect material merging, not picking up it required mesh-data during baking. Added extra conditions for rendering with mesh-data.
	- Now incorporate static meshes with opague materials into HLOD merging
	- Fixed issue with incorrect normals after merging meshes who's owning components had been negatively scaled
	- Fixed issue with incorrect texture size being set from MergeActor window (was only changing .X component)
	- Fixed issue with material merging when meshes with multiple LODs are merged, right now only merges LOD0's together if we are also merging the materials (otherwise, merge each LOD)
	- Added ENUM for texture scaling/resizing type that has to be applied while merging the materials
	- Added detail customization class for FMaterialProxySettings

	#rb James.Golding

[CL 2765024 by Marc Audy in Main branch]
2015-11-12 18:11:48 -05:00
Richard Hinckley
6ceaa5aba7 Cleaning out programmer-only comments that were harvested by Doxygen.
#platformnotify Josh.Adams

[CL 2690143 by Richard Hinckley in Main branch]
2015-09-14 09:25:39 -04:00
Mike Fricker
65e7557229 [INTEGRATE] Compile times: Working on eliminating <Module>Classes.h header files
- This checkin eliminates use of all <Module>Classes.h files in Engine, with the exception of UnrealEdClasses.h
- Compilation speed-ups for all of the modules affected, now that they are including what they use
- No effective changes other than C++ includes

[CL 2686054 by Mike Fricker in Main branch]
2015-09-10 08:48:03 -04:00
Mieszko Zielinski
a791188fd1 Changed two checks in Blackboard Editor to error messages #UE4
UE-20216

[CL 2664483 by Mieszko Zielinski in Main branch]
2015-08-21 11:22:42 -04:00
Dan Oconnor
f44d605357 Further optimizations to blueprint context menu constrution. Avoiding copying strings, recalculation of categories.
[CL 2661618 by Dan Oconnor in Main branch]
2015-08-19 16:36:07 -04:00
Josh Markiewicz
f8d83447e1 #Integration FN->Main from CL#2642868
Engine Source changes

[CL 2645403 by Josh Markiewicz in Main branch]
2015-08-05 15:54:57 -04:00
Steve Robb
7661666dcb Error when a module is both a dependency and dynamically loaded.
Fixes for lots of existing modules by removing all dynamically loaded duplicates (this is probably not the correct solution, but is the safest).

#codereview robert.manuszewski

[CL 2610845 by Steve Robb in Main branch]
2015-07-06 05:46:20 -04:00
Michael Noland
4c3276c5b6 Graph Editing: Renamed UEdGraphNode::NodeWidget DEPRECATED_NodeWidget to indicate it should not be used in future code since the assumption that at most a single graph editor is viewing a UEdGraph is not valid
(existing uses have been updated to the new name but not refactored yet)

[CL 2606946 by Michael Noland in Main branch]
2015-06-30 22:14:13 -04:00
Mieszko Zielinski
42afe0509a Moved AI asset types into a separate AI category in content browser's asset creation menu #UE4
#codereview matt.kuhlenschmidt

[CL 2581284 by Mieszko Zielinski in Main branch]
2015-06-09 10:42:15 -04:00
Lukasz Furman
353e7b80c1 hidden deprecated blackboard key classes in editor's dropdown list
#ue4 UE-9682

[CL 2579757 by Lukasz Furman in Main branch]
2015-06-08 05:04:22 -04:00
Jamie Dale
f7b3c5cd29 Added collection information to the asset and asset editor tooltips
UETOOL-332 - Collections 2.0
UETOOL-367 - Show which collections are on an asset

[CL 2560709 by Jamie Dale in Main branch]
2015-05-21 09:23:51 -04:00
Mieszko Zielinski
432b59dd58 Added a safety check to Blackboard Editor's key selection #UE4
UE-15693

[CL 2553542 by Mieszko Zielinski in Main branch]
2015-05-15 17:02:12 -04:00
Chris Wood
5707adde06 Fixed titles on Material editor nodes to update when the pin connections change.
[UE-15352] - Math Nodes are not updating on input

#change NodeConnectionListChanged() method in UMaterialGraphNode now clears the visualization cache on the schema triggering all FText attributes on the node's widgets to update.

[CL 2549543 by Chris Wood in Main branch]
2015-05-13 16:26:28 -04:00
Jamie Dale
78a3541521 Fixed FBehaviorTreeDebugger::PausePlaySession and FBehaviorTreeDebugger::ResumePlaySession not guarding against re-entrancy
[CL 2549228 by Jamie Dale in Main branch]
2015-05-13 13:59:38 -04:00
Jamie Dale
339d6f8600 Behavior Tree debugger improvements
UETOOL-298 - The "step into"/out/over buttons in the Behavior Tree enable and disable all the time

The "Back: Over" and "Forward: Over" step options are now able to perform a step that means they move back up to a parent tree. Previously this was being disallowed as the they were incorrectly treating that as entering a sub-tree.

If you pause your PIE session, the behavior tree debugger will now make sure and open the correct graph. Previously you could pause while within a sub-tree and the view would be left on the parent graph.

[CL 2547021 by Jamie Dale in Main branch]
2015-05-12 07:18:38 -04:00
Michael Schoell
db9c8e2240 UProperty and UFunction metadata for Category can now be localized and have improved FText usage throughout the editor (Blueprints, Behavior Trees, Materials, etc).
Big conversion of FStrings and FNames to FText.

Version bump to move some MaterialFunction UProperty from a TArray<FString> to TArray<FText> (some Engine assets are older than being allowed to auto-convert the UProperty)

Auto conversion of FName to FText (and back) now supported (as well as TArrays of those types).

Searching categories by both the localized string and the source string is now supported in Blueprints.

#jira UE-14481 - We are missing ability to translate node categories

#codereview Justin.Sargent

[CL 2542875 by Michael Schoell in Main branch]
2015-05-08 10:46:42 -04:00
Michael Schoell
2043b596a8 Various graphs that looked disabled, will now correctly display as Read Only but can be panned and nodes are selectable.
Reworked how graphs were disabled to stop all out disabling of the SGraphPanel while still maintaining the visual display of being read-only.

Removed concept of TitleBarEnabledOnly from the graph editor and merged it with the IsEditable functionality.

#jira UE-10289  - Changing Blueprint Interface layout can shift nodes out of view

[CL 2535806 by Michael Schoell in Main branch]
2015-05-04 11:08:14 -04:00
Jamie Dale
0ca520a77e Improved diffing of behavior tree graphs
UETOOL-292 - Diffing of Behavior Trees doesn't work correctly

- Added support for diffing decorators and services.
- Ensured that you could see the properties of services and decorators in the diff tool.
    - This is now using common code shared with the behavior tree editor (to avoid this getting out of sync again).
- Fixed an issue where nodes containing changes could still be drawn faded out.
    - The "DiffR_" functions in GraphDiffControl weren't marking the node as changed since the diff results couldn't hold the information.
- Fixed SNodePanel::DeferredMovementTargetObject always moving the selection into view (rather than itself).
- Added a way to move to a node without also selecting it (SNodePanel::CenterObject).
    - This is needed as decorators and services don't exist as top-level nodes in the SNodePanel, so can't be centered on. We instead have to center on their container node.
- Added a way to control what items you want to diff.
    - This helps when checking for nodes that have been removed, as you can now avoid having to re-check all the other properties on the node, and just check for their existence (or lack thereof).

[CL 2533378 by Jamie Dale in Main branch]
2015-05-01 06:38:56 -04:00
Jamie Dale
9968a0a15c Some workflow and performance improvements for behavior trees and environmental queries
UETOOL-293 - Behavior Tree Editor is sluggish

- Made the behavior tree and environmental query pins larger so they're easier to grab.
- Adjusted the node padding so that we don't add the padding for the pins when there aren't any pins.
- Added lodding so that node elements are culled out as you zoom out (to improve performance).
- Fixed connections being culled when they were still visible.

[CL 2528547 by Jamie Dale in Main branch]
2015-04-28 11:13:20 -04:00
Ben Cosh
ac6b1e60da This modifies the comment balloons behavior on reroute nodes to be more inline other node comment balloons by enabling a toggle button and displaying by default when a comment is entered in the context menu.
#UE-12866 - Have node comments and reroute node comments act the same
#Branch UE4
#Proj Engine, GraphEditor

#includes some more general comment node / comment bubble fixes

[CL 2528202 by Ben Cosh in Main branch]
2015-04-28 04:58:34 -04:00
Lukasz Furman
7189f23ffe fixed duplicated subnodes in behavior tree editor
#ue4 UE-14368

[CL 2524029 by Lukasz Furman in Main branch]
2015-04-24 04:41:17 -04:00
Jamie Dale
9d912e51dc FText::AsNumber usability and performance improvements
FNumberFormattingOptions now provides a convenient way to create a default number formatter that doesn't use grouping (FNumberFormattingOptions::DefaultNoGrouping()), as well as one that does (FNumberFormattingOptions::DefaultWithGrouping()).

This also improves the performance when using the default formatting options, by caching the formatters used by those options. This helps greatly when using Blueprint formatting (see KismetTextLibrary.cpp) as these were always creating custom formatters for every operations, which is a *very* expensive thing to do.

To improve the cases where you are frequently re-using a custom set of formatting options, we also have a LRU cache of the most recently used formatting options which we check before creating a new custom formatter.

[CL 2519071 by Jamie Dale in Main branch]
2015-04-21 08:43:22 -04:00
Mieszko Zielinski
158d72e521 Made blackboard key name editable in details tab #UE4
UE-7112

[CL 2515716 by Mieszko Zielinski in Main branch]
2015-04-17 08:29:20 -04:00
Michael Schoell
3f52b7d131 In "Region and Language" you can toggle localization of node and pins in all graph editors.
SNodeTitle no longer compares cached node titles to the title the node wants to be to determine a reconstruction, it checks if the schema wants to purge all cached node titles.

#jira UE-8371 - Change Editor language while leaving Blueprint Editor node & pin names in English

[CL 2508681 by Michael Schoell in Main branch]
2015-04-10 14:37:56 -04:00
Mikolaj Sieluzycki
a96989f147 Add includes to files to remove the need of including Engine.h.
[CL 2508000 by Mikolaj Sieluzycki in Main branch]
2015-04-10 03:30:54 -04:00