2016-01-07 08:17:16 -05:00
|
|
|
// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
|
2014-06-05 17:01:39 -04:00
|
|
|
|
|
|
|
|
#include "DesktopPlatformPrivatePCH.h"
|
2014-07-30 23:26:47 -04:00
|
|
|
#include "LinuxApplication.h"
|
|
|
|
|
#include "FeedbackContextMarkup.h"
|
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2997507)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2997066 on 2016/06/01 by Michael.Noland
Engine: Marked engine performance target cvars ECVF_Scalability so they can be adjusted via scalability buckets at runtime for games that target different framerates on different levels of hardware
#rb none
#tests Ran Paragon and changed video settings and tested t.TargetFrameTimeThreshold
Change 2996816 on 2016/06/01 by Dan.Youhon
Add FixedWorldDirection option for Root Motion Radial Forces; code/BP hook-up for allowing Price's reworked RMB to send all targets in the same (correct) direction
- FixedWorldDirection added to both root motion system and corresponding ability tasks
- Exposed AddHitResult for EffectContexts for modifying EffectContext hit results from BP
- Hooked up to Price RMB - we (somewhat dirtily) route Price's location and facing through the HitResult of the EffectContext for his displacement GE
#rb Dave.Ratti
#tests MultiPIE
#codereview Billy.Rivers
#lockdown Billy.Rivers
Change 2996526 on 2016/06/01 by Brian.Karis
Fixed tube light typo
JB made this robomerge up. Shader recompiling in our future.
#RB:none
#Tests:none
#ROBOMERGE: MAIN, 27, 26.2
Change 2996428 on 2016/06/01 by Rolando.Caloca
O - Made r.D3D.RemoveUnusedInterpolators a system setting which now also alters ddc key; fix r.Shaders.FastMath actually affecting compilation when =0
#rb Chris.Bunner
#codereview Michael.Noland, Marcus.Wassmer
#jira OR-22573
#tests Run with and without r.D3D.RemoveUnusedInterpolators=1 on DefaultEngine.ini
Change 2996090 on 2016/06/01 by Jason.Bestimt
#ORION_MAIN - Merge 26.2 @ CL 2995754
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2995816 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#CodeReview: jason.bestimt
Change 2995785 on 2016/06/01 by Robert.Manuszewski
Don't delete non-backup log files when cleaning up the logs folder.
#rb none
#tests Tested in the editor with multiple old log files
Change 2995556 on 2016/05/31 by Dmitry.Rekman
More info about timers on crash (OR-21986).
- Somewhat desperate attempt to get more clue about timer crash. Intended to be removed later.
#rb Michael.Noland
#codereview Marc.Audy, Michael.Noland
#tests Compiled the Linux server, ran it, crashed a few times.
Change 2995397 on 2016/05/31 by Michael.Noland
Rendering: Made the optimization to combine upscaling/downscaling and tonemapping optional based on the amount of upscaling that will occur
- r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
- r.Tonemapper.MergeWithUpscale.Threshold is a new setting used when r.Tonemapper.MergeWithUpscale.Mode is set to 2, which indcates to only try to merge the passes if the ratio of the area before upscale/downscale to the area afterwards is greater than the threshold
This prevents running the tonemapper on all of the target res pixels when the source res is far smaller, as that can cause it to be a loss to merge the passes
Upgrade Notes: r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
#rb marcus.wassmer
#tests Ran Paragon at various resolutions on Intel and NV cards
#rn
Change 2995118 on 2016/05/31 by David.Decker
- Fix for build failure
#rb none
#tests golden path game
Change 2994929 on 2016/05/31 by David.Decker
#Orion_Analytics
-Added PacketRecievedHistogram event that fires every minute in game the rate is configurable in DefaultGame.ini
-Moved FHistogram from PerfCountersModule to ProfilingHelpers
-Re-enabled Location event
#rb Dmitry.Rekman
#codereview Dmitry.Rekman, John.Pollard, Christopher.Wright
#tests golden path game
Change 2994920 on 2016/05/31 by Daniel.Lamb
Added some more cooking stats to save package.
#rb Wes.Hunt
#test Cook Orion.
Change 2994622 on 2016/05/31 by Zak.Middleton
#orion - Pickup and Coin filter collision optimizations.
- Added coin collision profile preset and made it ignore everything but Pawn (importantly, now ignores triggers).
- Pickups filter out collision with AI earlier. Profile already did this but this avoids more branches and cache misses in PreFilter.
- Coins now additionally filter out more efficiently Heroes that can't pick them (no overlap events generated at all).
#rb Jon.Lietz, Frank.Gigliotti
#tests PlayGo MultiPIE
Change 2994305 on 2016/05/31 by Andrew.Grant
Restoring prompt/exit on signed archive issue to help identify causes
#rb none
#tests compiled
Change 2994226 on 2016/05/31 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 27 @ CL 2993946
#RB:none
#Tests:none
[CodeReviewed]: graeme.thornton
#ROBOMERGE-SOURCE: CL 2994225 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2994204 on 2016/05/31 by bruce.nesbit
More banner changes
-Fixed an issue with InterpToComponent with very short times
-revisions to test banner
-added fade to banner/charms
-tries to set team color on decativate FX
#rb none
#tests Game+PIE
#codereview Jason.Bestimt
Change 2993973 on 2016/05/30 by Robert.Manuszewski
Updated protection handling
#rb none
#tests Compiled and applied protection
Change 2993588 on 2016/05/27 by Michael.Noland
Engine: Removed a bogus autocomplete for ShowMaterialDrawEvents, which was previously renamed r.ShowMaterialDrawEvents
#rb none
#tests Typed in ShowMat in the console and verified that no autocomplete appeared
#rn
Change 2993510 on 2016/05/27 by John.Pollard
Fix issue with root motion sources and replays, fixes TwinBlast RMB ability animation issue, and other artifacts
#rb RyanG
#tests Replays
Change 2993484 on 2016/05/27 by Uriel.Doyon
New logic for computing the skel mesh streaming scales
#rb marcus.wassmer
#tests loaded editor, played with streaming scale
Change 2993211 on 2016/05/27 by Uriel.Doyon
Workaround for lightmap streaming flags not being correctly set.
#codereview marcus.wassmer
#rb marcus.wassmer
#tests building lighting and investigating streaming
Change 2993068 on 2016/05/27 by Marcus.Wassmer
Duplicate 2989729
Fix for lightmaps and shadowmaps having low resolutions after building lightings
#rb none
#test PC at various scalability
#codereview Uriel.Doyon
Change 2993066 on 2016/05/27 by Lukasz.Furman
fixed behavior tree getting stuck on ResumeLogic call
copied from //UE4/Dev-Framework, CL# 2993058
#jira OR-22498
#rb none
#tests none
Change 2992706 on 2016/05/27 by Marcus.Wassmer
Duplicate 2991726
Fix for grey skin in simple lighting model (shadows off)
#rb none
#test lowest settings on PC
Change 2992705 on 2016/05/27 by Marcus.Wassmer
Duplicate 2991727
Fix emissive decals in simple forward renderer
#rb none
#test PC lowest settings
Change 2992658 on 2016/05/27 by David.Ratti
Remove all occurrences of Ability.PersistPastDeath from granted tags. Fix code to *only* check asset tags for this tag, instead of both.
#rb none
#test pie
Change 2992646 on 2016/05/27 by Ben.Marsh
BuildGraph: Add a BuildGraph task to run a UE4 commandlet. Syntax is <Commandlet Name="..." Project="..." Arguments="...">.
#rb none
#tests none
Change 2992252 on 2016/05/26 by Jason.Bestimt
#ORION_DG - Unclog ROBO Merge in DG
#RB:none
#Tests:none
Change 2992180 on 2016/05/26 by John.Pollard
Fix issue where external data wasn't saving out properly
#rb RyanG
#tests Replays
Change 2992159 on 2016/05/26 by Michael.Noland
CVar to disable/freeze GPU particle simulation (r.GPUParticle.Simulate)
[Replicated from Dev-Rendering checkin CL# 2989752 by Olaf]
#rb olaf.piesche
#tests Tested the command in Agora and verified that GPU particles were not being drawn
Change 2992158 on 2016/05/26 by Michael.Noland
Rendering: Added a cvar that controls unbinding of all texture resources between materials changes in the DX11 renderer (r.UnbindResourcesBetweenDrawsInDX11) to improve the readability of GPA captures
Note: This will probably be moved to be on when markers are on rather than an independent cvar, but it is currently separate for testing
#codereview marcus.wassmer
#rb none
#tests Ran with the var off and on and verified in GPA captures
Change 2991645 on 2016/05/26 by Andrew.Grant
Fix for filesize returning 0 if file not found
#rb none
#tests bugit now works
#jira OR-20488
Change 2991290 on 2016/05/26 by Mieszko.Zielinski
Added a static flag to NavigationSystem that can be used to short-circuit dynamic navigation related functions #UE4
Will save some perf on PS4 in Orion, since clients do use navigation system there.
#rb Lukasz.Furman
#test golden path
Change 2991288 on 2016/05/26 by Mieszko.Zielinski
CL#2990243 manually redone in for Orion #UE4
Original description:
> Fixed behavior tree observers not being applied correctly
#rb Lukasz.Furman
#test golden path
Change 2991271 on 2016/05/26 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2990688
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2991269 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2991185 on 2016/05/26 by Mieszko.Zielinski
Fixed UAITask_MoveTo not releasing paths properly, or clearing path observing when task is being reused #UE4
Also, fixed FNavigationPath::DoneUpdating not converting ENavPathUpdateType properly
#rb Lukasz.Furman
#test golden path
Change 2990788 on 2016/05/25 by Marcus.Wassmer
Fix deprecation warning
#rb none
#test none
Change 2990582 on 2016/05/25 by Marcus.Wassmer
Now that render commands are enqueued again on servers, we shouldn't outright crash if an allocation gets to nullrhi
#codereview Dmitry.Rekman
#rb none
#test none
Change 2990450 on 2016/05/25 by Martin.Mittring
OR-22233 GPU Sprites invisible unless solo'd
#rb:David.Hill
#jira:OR-22233
#test:PC
Change 2990199 on 2016/05/25 by Marcus.Wassmer
Remove experimental HDR support in tonemapper. Brings tonemapper cost back down into line
#rb none
#codereview Michael.Noland,Brian.Karis
Change 2989908 on 2016/05/25 by Andrew.Grant
Changed warning about DDC cache full to Display
#rb none
#tests compiled
Change 2989903 on 2016/05/25 by Mieszko.Zielinski
Made BT component ignore subtree injection request if relevant BT nodes already use indicated asset #UE4
#rb Lukasz.Furman
#test golden path
Change 2989795 on 2016/05/25 by Ryan.Gerleve
Fix for storing the correct URL on the pending net game for replay playback.
Re-implemented this fix from Dev-Networking CL 2981198, fixes deathcam after latest main integration.
#tests played a reply, enabled deathcam
#rb none
Change 2989483 on 2016/05/25 by David.Ratti
ToggleJuggernaut cheat
#rb danY
#tests pie
Change 2989384 on 2016/05/25 by Graeme.Thornton
Extra chunk decryption tests and logging to help diagnose the random failure we're seeing in the wild
- retry decrypt three times
- after the first attempt, re-decrypt original source, just incase the decrypt cache has been corrupted
#tests cooked pc client + dedicated server
#rb robert.manuszewski
Change 2989225 on 2016/05/24 by Dmitry.Rekman
Fix rare crash in Linux threading code (OR-22193).
- Sometimes, for some reason, freeing memory for an alternate thread from a thread in PostRun() can crash because the jemalloc apparently does not have an arena for this thread anymore.
- This change works around the problem by allocating the said memory statically in LinuxThread class.
#rb none
#codereview Bob.Tellez, David.Vossel
#tests Compiled Linux server, started it.
Change 2988768 on 2016/05/24 by Uriel.Doyon
Added support for SkinnedMesh in the texture streaming MeshCoordSize accuracy viewmode.
#RB marcus.wassmer
#tests loaded game and editor
Change 2988462 on 2016/05/24 by Mieszko.Zielinski
Added a piece of logging to both scenarios or movement aborting in UPathFollowingComponent::UpdatePathSegment to be able to tell them appart while reading the log #Orion
#rb Lukasz.Furman
#test golden path
Change 2988036 on 2016/05/24 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2987910
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2988035 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2987457 on 2016/05/23 by Mieszko.Zielinski
Redone changes from CL#2981193 #UE4
Original description: fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes)
#rb Lukasz.Furman
#test golden path
Change 2987388 on 2016/05/23 by Olaf.Piesche
Replicating CL 2985226; don't push mesh emitter transform to pixel shader unless used in the material graph
#rb marcus.wassmer
#tests editor game PC
Change 2986255 on 2016/05/22 by Mieszko.Zielinski
Manually resolving conflict that stoped robomerge from Main to DG #Orion
#rb none
#test compile
#codereview Jason.Bestimt
Change 2986209 on 2016/05/21 by Andrew.Grant
Removed hitchunter logging from http thread
#rb none
#tests compiled
Change 2986202 on 2016/05/21 by Andrew.Grant
Merging //UE4/Main @ 2981382 from //UE4/Orion-Staging
#rb none
#tests engine & game QA passed, built locally
Change 2985899 on 2016/05/20 by Rob.Cannaday
Move PS4 HTTP processing to HTTP thread
#tests golden path
#rb dmitry.rekman
Change 2985884 on 2016/05/20 by Bart.Bressler
Fix issue where oodle wasn't enabled in shipping correctly.
#rb john.pollard
#tests ran orion server in shipping and connecting with a client
Change 2985778 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2985753
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2985774 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985760 on 2016/05/20 by Rob.Cannaday
Second pass on HTTP threading
Move threaded objects into separate class, FHttpThread. FCurlHttpThread derives from FHttpThread and the curl multi work is performed in FCurlHttpThread
Removed code that limited number of curl easy requests that were added to the multi simultaneously / per frame as now that curl work is performed on a separate thread the performance no longer directly impacts the game thread
Remove lock from CurlHttp and instead of use FThreadSafeCounter
#rb dmitry.rekman
#tests golden path (PC & PS4)
Change 2985658 on 2016/05/20 by John.Pollard
Fixed issue with cached http replay results making time go backwards
#rb none
#tests replays
Change 2985640 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: david.ratti
Ability System: call OnRemove event for gameplay cues that are mispredicted. Previously if a looping GC was predictively added, it would only get the OnRemove event if the replicated GC was removed. In the case of a mis prediction there is no replicated version, so the OnRemove was never called and cleanup was never happening.
#rb FrankG
#tests multi pie
#ROBOMERGE-SOURCE: CL 2985638 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985631 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: david.ratti
Fast TArray serialization fixes:
1. Fix case where Array ReplicationKey has changed no items between base and current state have changed. Previously server would early out and not send an update: but this needs be sent so that the client can potentially perform an implicit delete.
This fixes the case where client TArray would have stale items hanging around until a new update was sent (which could potentially be never).
2. Fix case where an array item would be deleted by both explicit delete and implicit delete: causing other items in the array to be deleted (!).
#rb frankG, pollard
#tests golden path
[CodeReviewed] Bob.Tellez, Billy.Bramer, Ben.Zeigler
#ROBOMERGE-SOURCE: CL 2985629 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985542 on 2016/05/20 by Daniel.Lamb
Added per package stats.
Optimized cooker, moved FTextureSource::Compress from UTexture::Presave to UTexture::Serialize so we can avoid it in the cooker.
#rb Robert.Manuszewski, Andrew.Grant, Marcus.Wassmer
#test cook paragon, save packages paragon editor
Change 2985152 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2985092
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2985150 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985001 on 2016/05/20 by Chris.Wood
Move fullcrashdump location for Paragon from QA deptartment storage to Paragon project storage. Changes CrashReportClient config only.
Change 2984839 on 2016/05/20 by Robert.Manuszewski
Renaming some confusing function names and updating messages related to exception handling.
#rb none
#tests Cooked Win64 Client and Server, Tested crash reporting in cooked game
Change 2984517 on 2016/05/19 by Mike.Larson
Adjusted 'PlatformHeadroom' audio volume settings to DB-3 on both Windows and PS4
Change 2983932 on 2016/05/19 by jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2983814
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2983921 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
#CodeReview: jason.bestimt
Change 2983864 on 2016/05/19 by Wes.Hunt
Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS...
#codereview:steve.robb
#rb none
#tests compiled Orion Editor Win64
Change 2983780 on 2016/05/19 by Wes.Hunt
Modernize FAnalyticsEventAttribute usage. #jira UE-30551.
Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings.
* The Name must be convertible to a string
* The value must be convertible to a string via an AnalyticsConversion::ToString() overload.
* Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more.
Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of:
RecordEvent("EventName", MakeAnalyticsEventAttributeArray(
"Attr1", false,
"Attr2", 42.0,
"Attr3", SomeMap,
"Attr4", SomeArray);
#codereview:steve.robb,david.decker,sam.spiro
SamS - you've been asking for better attribute conversion facilities for years. Finally got it, haha.
SteveR - I only added copy/move ctors to FAnalyticsEventAttribute. Do I also need to explicitly add the copy/move assignment ops?
DavidD - This will allow you to create attributes a lot more easily and efficiently now.
#rb steve.robb,david.decker
#tests orion editor runs
Change 2983702 on 2016/05/19 by Daniel.Lamb
Renumbered cooking stats to be more correct
#rb Wes.Hunt
#test cook paragon.
Change 2983392 on 2016/05/19 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2983342
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2983391 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2982910 on 2016/05/18 by Marcus.Wassmer
Don't fail entire deployments because obsolete manifest can't find the files to delete
#rb none
#codereview Peter.Sauerbrei
#test none
Change 2982902 on 2016/05/18 by Marcus.Wassmer
Disable HTTP networkfilesystem because it constantly crashes cookonthefly servers. platform team is aware
#rb none
#test cookonthefly
Change 2982837 on 2016/05/18 by David.Ratti
Spot merge safety check in ~FAgggregator. From BobT CL 2966255.
#rb none
#tests compile
Change 2982723 on 2016/05/18 by Wes.Hunt
Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #jira UE-30559
#rb none
#tests none
Change 2982716 on 2016/05/18 by Wes.Hunt
Remove Analytics code to divert legacy code to source data collector. #jira UE-27794
#rb none
#tests run orion editor
Change 2982707 on 2016/05/18 by Wes.Hunt
AnalyticsET support for arbitrary Json events. #jira UE-30375
* AnalyticsET supports a new API, RecordEventJson.
* API supports rvalue refs to avoid unnecessary copies of the attribute array.
/**
* Sends an event where each attribute value is expected to be a string-ified Json value.
* Meaning, each attribute value can be an integer, float, bool, string,
* arbitrarily complex Json array, or arbitrarily complex Json object.
*
* The main thing to remember is that if you pass a Json string as an attribute value, it is up to you to
* quote the string, as the string you pass is expected to be able to be pasted directly into a Json value. ie:
*
* {
* "EventName": "MyStringEvent",
* "IntAttr": 42 <--- You simply pass this in as "42"
* "StringAttr": "SomeString" <--- You must pass SomeString as "\"SomeString\""
* }
*
* @param EventName The name of the event.
* @param AttributesJson array of key/value attribute pairs where each value is a Json value (pure Json strings mustbe quoted by the caller).
*/
virtual void RecordEventJson(const FString& EventName, TArray<FAnalyticsEventAttribute>&& AttributesJson) = 0;
#codereview:david.decker
#rb david.decker
#tests run orion editor
Change 2982057 on 2016/05/18 by David.Ratti
GameplayCue loading - fix issue where GCM would invoke fully loaded when there were still UGameplayCueNotify_Statics to be loaded.
#rb Ori.Cohen
#tests golden path
Change 2981943 on 2016/05/18 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2981896
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2981942 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2981812 on 2016/05/18 by Robert.Manuszewski
Suspending thread heartbeat when a message box is being displayed. Fixes false positives in hand detection.
#rb Steve.Robb
#tests Cooked and launched win64 client and server
Change 2981718 on 2016/05/18 by Robert.Manuszewski
Changed how suspending/resuming thread heartbeat works: it will no longer create a heartbeat for a thread that hasn't sent any heartbeats yet.
Reimplementing CL #2951209 from Dev-Core
#rb Steve.Robb
#tests None
Change 2981108 on 2016/05/17 by Wes.Hunt
Fix perfect forwarding constructor in CookStats stuff.
#rb none
#tests investigating assembly output of cook stats code.
#codereview:daniel.lamb
Change 2981028 on 2016/05/17 by Nick.Atamas
Fixing hittest grid with virtual cursor.
We now prefer any directly hit-test widgets with higher layer ids to those discovered through a distance search.
#rb none
#test Game menus
#codereview Cody.Haskell,Matt.Kuhlenschmidt,Sammy.James,Dan.Hertzka
Change 2980963 on 2016/05/17 by Marc.Audy
Fix shadowed variable
#rb None
#tests Compile
Change 2980917 on 2016/05/17 by Daniel.Lamb
Removed script packages from unable to find packages warning.
#rb Andrew.Grant
#test cook paragon
Change 2980838 on 2016/05/17 by Marc.Audy
Shave some time out of UPlayerInput::ProcessInputStack
#rb Michael.Noland
#tests Input works, performance improvement
Change 2980710 on 2016/05/17 by Michael.Noland
Engine: Added helpful comments to the LOD visualization colors
#rn
#rb david.ratti
#tests none
Change 2980706 on 2016/05/17 by Michael.Noland
Engine: Removed unused setting bAllowDebugViewmodesOnConsoles (replaced some time ago by r.ForceDebugViewModes)
#rn
#rb david.ratti
#tests Ran a cooked build with only r.ForceDebugViewModes=1 and confirmed that debug view modes still worked
Change 2980703 on 2016/05/17 by Michael.Noland
Blueprints: Added support for emitting the Blueprint Description as tooltip metadata for the compiled Blueprint class (displayed in class pickers, etc...)
#rb david.ratti
#tests Tested on a Blueprint in Paragon
#codereview mike.beach
#rn
Change 2980702 on 2016/05/17 by Michael.Noland
Rendering: Added ProfileGPU to the console autocomplete list
#rb david.ratti
#tests Tried typing Profile in the console and verified that the completion worked and tooltip was displayed
#rn
Change 2980697 on 2016/05/17 by Michael.Noland
Landscape: Added a 'resource' name for landscape to improve display in the mesh summary list of ProfileGPU
#codereview jack.porter
#rb david.ratti
#tests Used ProfileGPU while standing on some terrain
#rn
Change 2980692 on 2016/05/17 by Michael.Noland
Landscape: Added a scalability CVar for landscape LOD biasing (r.LandscapeLODBias)
#codereview jack.porter
#rb david.ratti
#tests Ran around in Paragon with various r.LandscapeLODBias values
#rn
Change 2980630 on 2016/05/17 by Daniel.Lamb
Added more warnings to help track down crash in paragon cook.
#rb Andrew.Grant
#test cook orion
Change 2980585 on 2016/05/17 by Jamie.Dale
Fixed an issue where the editable text caret could become invisible when using UI scaling
It's now clamped to a min draw size of 1px.
#jira OR-18524
#rb none
#tests Built and ran the game. Verified that the caret now appears where it didn't before.
Change 2979908 on 2016/05/16 by jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2979859
#RB:none
#Tests:none
#CodeReview: jaymee.stanford
Change 2979472 on 2016/05/16 by Nick.Atamas
Added support for not clearing the render target when rendering a widget.
#rb Nick.Darnell
#test PIE w/ minimap
Change 2979434 on 2016/05/16 by Dmitry.Rekman
Server: Add reporting of frame time without sleep.
- Also add NumClients to each event so it's easy to filter events that didn't have 10 clients.
#rb none
#tests Built Linux server, ran match on a compatible content.
Change 2979267 on 2016/05/16 by Dmitry.Rekman
Improvements in server hitch hunting / alerting.
- Add an analytics event for unplayable conditions.
- Send % of frames we hitched and time we spent hitching.
- Send more detail about the machine.
#rb none
#tests Built Linux server and Windows client, played a match.
Change 2979030 on 2016/05/16 by Andrew.Grant
Added quick way to reasign GUIDs (-AssignNewMapGuids) to map objects
#rb none
#tests used in editor
Change 2978914 on 2016/05/16 by David.Ratti
Fix issue causing gameplay cue parameters not properly being passed through in cases where GA adds/removes gameplay cue.
#rb DanY
#tests multi pie
#codereview Dave.Ewing
Change 2978681 on 2016/05/16 by Martin.Wilson
Performance improvements for recalc required bones, removed a lot of unneeded array iterating. Reduces cost to roughly 30% of original code.
#rb Thomas.Sarkanen
#tests PS4 games, ded server
Change 2978098 on 2016/05/15 by Andrew.Grant
Clearer error message
#rb none
#tests ran game
Change 2977597 on 2016/05/13 by Olaf.Piesche
Merging using //UE4/Dev-Rendering->//Orion/Dev-General; fixes for beam particle selection code
#rb martin.mittring
#tests PC editor game
Change 2977531 on 2016/05/13 by Daniel.Lamb
Added cooking stat for PreSave callback.
#rb Wes.Hunt
#test cook paragon
Change 2977340 on 2016/05/13 by jason.bestimt
#ORION_MAIN - Merge 26@ CL 2977290
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2977329 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
#CodeReview: jason.bestimt
Change 2977139 on 2016/05/13 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jon.lietz
OR-20830 only allow the periodic effects from a gameplay volume trigger first application triggers on BeginOverlap and Enable volume.
#RB DaveR
#test tracked when the poinson from an active card is applied and not applied
#ROBOMERGE-SOURCE: CL 2977135 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2976741 on 2016/05/13 by David.Ratti
GameplayCues that are triggered off animation notifies on the non-primary mesh will now properly attach to that non primary mesh.
#rb lietz
#test pie, golden path
Change 2976715 on 2016/05/13 by Jason.Bestimt
#ROBOMERGE-AUTHOR: andrew.grant
[NULL MERGE]
Fix for bad merge
#rb none
#tests built automation
#ROBOMERGE-SOURCE: CL 2976680 in //Orion/Release-0.26/... via CL 2976712 via CL 2976713 via CL 2976714
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2976679 on 2016/05/13 by Robert.Manuszewski
Tweaks to DLL injection detection code
#rb Steve.robb
#tests cooked Win64 client
Change 2976670 on 2016/05/13 by Robert.Manuszewski
UAT: Arxan upgrade to 3.9.1
#rb Ben.Marsh
#tests Win64 cooked client (test config)
Change 2976654 on 2016/05/13 by Graeme.Thornton
Shadowed variable warning fix
#rb none
#tests compiled win64/ps4 client
Change 2976645 on 2016/05/13 by Graeme.Thornton
Refactoring of resident mip calculations
- Cooker takes into account the same compression block thresholds that the runtime previously used
- Runtime doesn't attempt to calculate which mips to perma-load, but just looks at the ones whose bulk data is flagged as end-of-file or seperate-file
#rb nick.penwarden
#tests win64/ps4 client builds, golden path
[CL 3000872 by Andrew Grant in Main branch]
2016-06-04 01:20:53 -04:00
|
|
|
#include "HAL/ThreadHeartBeat.h"
|
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3147796)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2948319 on 2016/04/19 by Nick.Shin
update zlib to v1.2.8
part 1 of 4 - doing this in stages for tracking purposes
#jira UEPLAT-1246 - Update libWebsockets
#jira UEPLAT-1221 - update websocket library
Change 2948322 on 2016/04/19 by Nick.Shin
update libwebsockets to v1.7.4
part 4 of 4 - doing this in stages for tracking purposes
#jira UEPLAT-1246 - Update libWebsockets
#jira UEPLAT-1221 - update websocket library
#jira UEPLAT-1204 - Rebuild libwebsockets with SSL
Change 2948661 on 2016/04/19 by Nick.Shin
keep using old zlibs until they are recompiled with the newer version
Change 2948737 on 2016/04/19 by Nick.Shin
build warning fix
Change 2949334 on 2016/04/20 by Nick.Shin
fix library path
for some reason, NetworkFileSystem and HttpNetworkReplayStreaming on Mac platform needs full path - even though lib path was set...
Change 2951556 on 2016/04/21 by Nick.Shin
static libs double checked
#jira UE-29674 - Editor fails to open in Dev-Platform
Change 2951559 on 2016/04/21 by Nick.Shin
static libs double checked
forgot these files - they were in another changelist
#jira UE-29674 - Editor fails to open in Dev-Platform
Change 2952411 on 2016/04/22 by Nick.Shin
add win32 build targets for zlib openssl libcurl libwebsockets
part 1 of 2: these are the C# build scripts
Change 2970016 on 2016/05/07 by Nick.Shin
undo all of the following upgrades:
- zlib
- openssl
- libcurl
- libwebsockets
and reset webrtc
#jira UE-30298 - Fortnite and Orion crash on login
Change 3118163 on 2016/09/08 by Josh.Adams
perm test 2, not a useful file at all
Change 3121142 on 2016/09/12 by Daniel.Lamb
Attempt to fix deterministic cooking issue for particlelodlevel.
Ensure the spawn module has had postload called on it before using.
#test Paragon cook
Change 3121150 on 2016/09/12 by Daniel.Lamb
Added warning logs to help track down issue UE-33453.
Change 3121201 on 2016/09/12 by Keith.Judge
Xbox One - Replicate CL 3114357 from 4.13 branch. ESRAM clear on create fix.
Change 3121302 on 2016/09/12 by Joe.Graf
Fixed up the IMPLEMENT_MODULE macro usage to avoid the link errors
Change 3121379 on 2016/09/12 by Dmitry.Rekman
Linux: only link libraries that export needed symbols (UE-35720).
- Fixes very long startup times of modular builds.
- Includes PR #2778 by slonopotamus.
#jira UE-35720
Change 3121383 on 2016/09/12 by Dmitry.Rekman
Linux: added some missing _API declarations on symbols used externally.
- Compiling editor with -fvisibility=hidden works after this fix (although running still doesn't).
Change 3121456 on 2016/09/12 by Daniel.Lamb
Attempt to fix deterministic cooking issue for particlelodlevel.
Ensure the spawn module has had postload called on it before using.
#test Paragon cook
Change 3122939 on 2016/09/13 by Luke.Thatcher
[PLATFORM] [PS4] [!] Skip orbismemdmp files in the PS4 crash handler web service.
- Writing these files to disk causes orbis-tm.exe to take a file lock on them, which means we can't move the crash directory to the landing zone.
Change 3123040 on 2016/09/13 by Brent.Pease
+ Fix VS compile error by removing ENGINE_API from virtual method decls since ENGINE_API is defined for the entire class now.
Change 3123664 on 2016/09/13 by Nick.Shin
this was originally checked into: release 4.13.1
bringing here to dev-platform
-- original submit comments --
first, safari has a problem with firing off "window resized" events - causing an infinite loop of the window "resizing"
next, retina has "bigger" size calculations going off -- so y-delta checks greater than 2 are done to prevent resize event firing off in an infinite loop
jira UE-35363 - Huge game window when launching onto Safari 9.1.2
Change 3125282 on 2016/09/14 by Michael.Trepka
Fixed iOS and tvOS code indexing in Xcode project
Change 3126812 on 2016/09/15 by Josh.Adams
Merged Wolf support into Dev-Platform (hidden from almost all people still). Non-Wolf-specific changes:
- Added Parse function to JsonObject.cs to be able to parse a string
- Replaced some hacky post-reflection-capture functions with RHISubmitCommandsAndFlushGPU()
- Split PLATFORM_HAS_BSD_SOCKET_FEATURE_GETADDRINFO off from PLATFORM_HAS_BSD_SOCKET_FEATURE_GETHOSTNAME
- Converted the PS4MallocCrash class into a generic one (that Wolf is now also using)
- Added AddGenericToInQueueOnlineThread(), useful running a delegate on Online thread instead of game thread
- Refactored the GL shader compiler to allow Wolf to modify behavior without a lot of if WOLF checks everywhere
- Added ability in the cross compiler to convert the global uniform arrays into named uniform buffer objects
- Added ability for GL shader compiler to output original resources names ("VertColor" instead of "u_v[3]" or whatever)
- Added "FORCELODGROUP" console command that will apply a StaticMesh LODGroup to selected meshes in the editor. This can batch-Simplygonify all meshes in a level. Should maybe become an editor tool.
- Added ability for arrays of structs to specify a property to be the key. So, with LODGroups, the Name key inside the struct can be the unique key, so when you have multiple .ini files in the hierarchy overriding the same LODGroup by name, it will repalce the first with the second, instead of adding two entries with the same name. Set by @ArrayName=KeyPropertyName. Per Object Config sections need a little different handling, which uses * (see BaseDeviceProfiles.ini)
- Added ability to change DeviceProfiles at runtime. Use "dp.override <name>". If you do it again to another one, it will reset the settings to what they were originally, before applying the second new DP. This is because the second DP may not set all settings the first one did, but we want to undo the first settings that the second doesn't contain.
- Added FRHICommandListImmediate::IsStalled() - returns true while FRHICommandListImmediate::StallRHIThread is happening
- Changed runtime GetFeatureLevelMaxTextureSamplers() calls to the new GetMaxTextureSamplers() which can now be handled by the platform. Renamed GetFeatureLevelMaxTextureSamplers to GetExpectedFeatureLevelMaxTextureSamplers() (only used by the shader editor) to guess at what maybe the samplers count will be - but it's not guaranteed correct.
- Renamed a UT copy of a global function to not linker-conflict
- Changed the OOMBackupMemoryPool to allow each platform to set how much memory to allocate. See FPlatformMemory::GetBackMemoryPoolSize(). Defaults to 0, which was the previous behavior with the now removed FPlatformMemory::SupportBackupMemoryPool(), which was only true in Windows and PS4.
- Added an OOM delegate so other systems can get a callback after OOM occurs (after deleting the backup memory pool if it exists)
- Changed SetQualityLevels() (in Scalability.cpp) to no longer change the SetBy priority when setting CVars, and now keeps the SetBy the same as it was. Helps with conflicts between game settings and device profiles. See SetWithCurrentPriority()
- Added GetRenderingThreadPriority to FPlatformAffinity to allow a platform override priority. Not sure about this one, so may remove it, or maybe add more priorities for all the threads?
- Added a new file into the ini hierarchy to begin fixing the Engine/Base -> Project/Default -> Engine/Platform -> Project/Platform mess. We now have Engine/Base -> Engine/BasePlatform -> Project/Default -> Engine/Platform -> Project/Platform. However, Engine/Platform will soonm be deprecated as we move things over to Engine/BasePlatform, that are safe to move.
Change 3126842 on 2016/09/15 by Michael.Trepka
Make SAssertPicker's search box the default widget to focus on activate so that it doesn't get deactivated on Mac, where we get the window activation event in a tick after SAssertPicker creation.
Change 3126956 on 2016/09/15 by Michael.Trepka
Added support for compiling Vulkan shaders for Android on Mac
Change 3127206 on 2016/09/15 by Michael.Trepka
PR #2604: Remove some warnings. (Contributed by reapazor)
Change 3127324 on 2016/09/15 by Michael.Trepka
Allow third party dylibs on Mac to be loaded from plugin subfolders
Change 3127924 on 2016/09/16 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3128369 on 2016/09/16 by Nick.Shin
zlib 1.2.8
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128377 on 2016/09/16 by Nick.Shin
openssl 1_0_2h
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128383 on 2016/09/16 by Nick.Shin
libcurl 7_48_0
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128384 on 2016/09/16 by Nick.Shin
libwebsockets 1.7.4
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128464 on 2016/09/16 by Nick.Shin
webRTC rev.12643
NOTE: VS2015
- only Win64 is available
- Win32 versions is crashing (e.g. EpicGamesLauncher) at the moment
NOTE: VS2013
- not tested (i'm working on getting a VS2013 pro license) - so not checking in with this changelist
- also, VS2013 is no longer supported by webRTC build scripts, so it will be old anyways
FUTURE NOTE:
- will continue to try to get VS2015 Win32 functional
- and am working on trying to get VS2013 tested
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128500 on 2016/09/16 by Nick.Shin
zlib 1.2.8 - OSX
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128504 on 2016/09/16 by Nick.Shin
openssl 1_0_2h - OSX
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128506 on 2016/09/16 by Nick.Shin
libcurl 7_48_0 - OSX
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128508 on 2016/09/16 by Nick.Shin
libwebsockets 1.7.4 - OSX
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128513 on 2016/09/16 by Nick.Shin
webRTC rev.12643 - OSX
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128602 on 2016/09/16 by Nick.Shin
webRTC rev.9862 - Win64 VS2013
NOTE:
- not tested (i'm working on getting a VS2013 pro license)
- checking in for testing purposes
WARNING:
- VS2013 is no longer supported by webRTC latest
headers and lib updates
part of [ zlib openssl libcurl libwebsockets webrtc ] updates
Change 3128605 on 2016/09/16 by Nick.Shin
re-enabling updated ThirdParySoftware libs:
- zlib (v.1.2.8)
- openssl (1.0.2h)
- libcurl (7_48_0)
- libwebsocket (v.1.7.4)
- webRTC (rev.12643)
to the codereviewers, in my attempt to ensure the older libs are still used for console, mobile and linux -- please refer to this checkin if i broke the build...
Change 3128651 on 2016/09/16 by Nick.Shin
fix Win32 build error from CL: #3128605
Change 3128704 on 2016/09/16 by Nick.Shin
fix Win32 build error from CL: #3128605 - this time actually compiling it...
Change 3128825 on 2016/09/16 by Dmitry.Rekman
Linux: proper fix for too slow startup times (UE-35967).
- Pull request #2793 by slonopotamus.
- Now without stripping dependencies on libraries specified before.
- Contains a work around for ld bug <2.25.
Change 3128972 on 2016/09/16 by Nick.Shin
fix to local build error.
Change 3129283 on 2016/09/16 by Brent.Pease
+ Add Android local notification support based on existing system used for iOS
+ Initial API has been added for cancelling local notifications but the actual platform implementation will be done in the next release
Change 3129494 on 2016/09/17 by Nick.Shin
fix CIS build errors
Change 3129503 on 2016/09/17 by Dmitry.Rekman
Fix Linux build (case sensitivity issue).
Change 3129514 on 2016/09/17 by Nick.Shin
fix CIS build errors for consoles - missing zlib include path
special thanks to Dmitry.Rekman for pointing me in the right direction
Change 3129647 on 2016/09/17 by Dmitry.Rekman
Linux: fix non-unity build.
Change 3131043 on 2016/09/19 by Nick.Shin
archiving build instructions/steps when building:
- zlib (v.1.2.8)
win: #3128369
osx: #3128500
- openssl (1.0.2h)
win: #3128377
osx: #3128504
- libcurl (7_48_0)
win: #3128383
osx: #3128506
- libwebsocket (v.1.7.4)
win: #3128384
osx: #3128508
- webRTC
win: #3128464 (rev.12643 for vs2015) + 3128602 (rev:9862 for vs2013) -- NOTE: win32 is WiP
osx: #3128513
Change 3132801 on 2016/09/20 by Dmitry.Rekman
Linux: support specifying default OpenGL version via configs (UE-34777).
- The first targeted RHI is going to be used.
Change 3132905 on 2016/09/20 by Josh.Adams
- Fixed up some paths with the WolfPlat rename
Change 3133148 on 2016/09/20 by Josh.Adams
- Only show UT EULA if PLATFORM_DESKTOP
Change 3133152 on 2016/09/20 by Josh.Adams
- Beginning support for applets. Disabled unless you have a special SDK with applet support.
Change 3133169 on 2016/09/20 by Josh.Adams
- Fixed issue with Wolf access but no SDK installed
Change 3133344 on 2016/09/20 by Daniel.Lamb
Fixed issue with Iterative cooking not detecting changes to ini files which are loaded using LoadLocalFile.
Added new flag to limit number of concurrent shader compiles.
#test Cook QAGame, Cook Paragon
Change 3133345 on 2016/09/20 by Daniel.Lamb
FRedirectCollector collects string asset references all the time when running the editor.
#test Cook paragon cook QAGame.
Change 3133852 on 2016/09/21 by Luke.Thatcher
[PLATFORM] [PS4] [^] Performing merge between 3.508.201 LCUE files in CarefullyRedist and Dev-Platform to populate integration history. No files have actually changed in this CL, only Perforce metadata is updated.
Change 3133875 on 2016/09/21 by Luke.Thatcher
[PLATFORM] [PS4] [^] Performing merge between 3.508.201 LCUE files in CarefullyRedist and Dev-Platform to populate integration history. No files have actually changed in this CL, only Perforce metadata is updated. (Attempt 2)
Change 3134403 on 2016/09/21 by Jonathan.Fitzpatrick
Per PS4 documentation, app_type requires the alternate spelling of 'upgradeable', 'upgradable'.
Change 3134544 on 2016/09/21 by Josh.Adams
- Reduced UT textures for Wolf
Change 3134915 on 2016/09/21 by Jonathan.Fitzpatrick
FPS4Time::SystemTime now calculates the local machine time, instead of UTC.
#jira UE-35170
Change 3135036 on 2016/09/21 by Michael.Trepka
Quit the UE4EditorServices app when quitting the Launcher if it was the launcher that spawned the services process
Change 3135142 on 2016/09/21 by Jonathan.Fitzpatrick
GetBackMemoryPoolSize returned bool on PS4 by accident, should be uint32
Change 3135292 on 2016/09/21 by Jeff.Campeau
Change include order to favor the XDK edition specific headers where available.
Change 3136414 on 2016/09/22 by Josh.Adams
- Fixed a checkf() that had the case reversed
#jira ue-36311
Change 3137082 on 2016/09/22 by Dmitry.Rekman
Added support for Linux installed builds to 4.14
Change 3137220 on 2016/09/22 by Dmitry.Rekman
Linux: do not rebuild hlslcc on each setup.
- Now that hlslcc is set to use bundled libc++ there should be no STL binary compatibility conflicts between the engine and hlslcc binary.
Change 3137227 on 2016/09/22 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3137259 on 2016/09/22 by Dmitry.Rekman
Linux installed build: fix CIS (missed one .csproj)
Change 3137290 on 2016/09/22 by Dmitry.Rekman
Linux installed builds: fix for the resulting directory.
Change 3137291 on 2016/09/22 by Chris.Babcock
Restore texture filtering mode properly when movie played on Android
#jira UE-36342
#ue4
#android
Change 3137376 on 2016/09/22 by Dmitry.Rekman
Linux: re-enabled crash handler stack smash protection.
- Race condition in FRunnableThreadPThread has been previously fixed.
Change 3138498 on 2016/09/23 by Dmitry.Rekman
Linux: add missed package for installed builds.
- mono-devel package for resgen2.
Change 3138523 on 2016/09/23 by Dmitry.Rekman
Linux: Update hlslcc now that we're not rebuilding it each time.
Change 3138658 on 2016/09/23 by Josh.Adams
- Moved UT's Social Plugin into NotForLicensees
Change 3139042 on 2016/09/23 by Dmitry.Rekman
Linux: more robust check of installed packages.
- Also added mono-devel to the list of packages installed on 14.04.
Change 3139674 on 2016/09/26 by Dmitry.Rekman
Fix crash when editing widget blueprints (UE-35185).
- Caused by name collision due to copy/pasted code; aliased classes diverged and this resulted in all kinds of weird memory stomping.
- Renamed the class and also applied the same workaround (removing static) to prevent likely crashes on exit as happened with the original class (see UE-30795).
Change 3140203 on 2016/09/26 by Josh.Adams
- Wolf Fix for SHIPPING
Change 3140206 on 2016/09/26 by Josh.Adams
- NEX work, still in progress
Change 3140276 on 2016/09/26 by Josh.Adams
- Fixed Wolf compile error
Change 3140485 on 2016/09/26 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3140570 on 2016/09/26 by Dmitry.Rekman
SDL2: Delete obsolete files.
- We now have local changes to SDL2, so this tarball is no longer accurate and just takes unnecessary space.
Change 3140577 on 2016/09/26 by Dmitry.Rekman
Fix CudaTest monolithic build.
- Not the best fix, the better fix is to build against bundled libc++.
Change 3141184 on 2016/09/27 by Keith.Judge
Add FXboxOneApplication::GetXboxOneApplication to fix a save/load game assert.
#jira UE-35973
Change 3141623 on 2016/09/27 by Chris.Babcock
Support hiding virtual keyboard on Android
#jira UE-34201
#ue4
#android
Change 3141887 on 2016/09/27 by Joe.Graf
Added support for additional plugin directories that are specified by the .uproject file
New plugin wizard adds to the additional plugin directories if the user specifies a directory outside of Engine/Plugins or Game/Plugins
Change 3141916 on 2016/09/27 by Josh.Adams
- Worked around compile issues (at least with Wolf UT). This is well documented in a Jira (UE-29925)
Change 3141926 on 2016/09/27 by Josh.Adams
- Support for skipping Wolf user selector (-nologinui)
Change 3141938 on 2016/09/27 by Chris.Babcock
Allow Android media player to seek past 999ms (contributed by rcywongaa)
#jira UE-36453
#PR #2797
#ue4
#android
Change 3142207 on 2016/09/27 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3142219 on 2016/09/27 by Josh.Adams
- Wolf PhysX 3.4 libs and includes
Change 3142220 on 2016/09/27 by Josh.Adams
- File that had to be fixed up after main merge (missed adding it to the huge integrate CL)
Change 3142314 on 2016/09/27 by Chase.McAllister
#jira UE-35011 fixes to some assets to remove redundancies/output log spam
Change 3142510 on 2016/09/27 by Daniel.Lamb
Fixed up resave lightmaps commandlet so that world transforms don't get applied twice.
#jira UE-35942
Change 3142650 on 2016/09/27 by Chris.Babcock
Android support for Linux by yaakuro
- requires CodeWorks for Android Linux installed and OpenJDK 1.8
- need to set Android SDK paths manually in Project Settings
#jira UE-32752
#jira UE-32753
#PR #2564
#PR #2565
#ue4
#android
#linux
Change 3142802 on 2016/09/27 by Dmitry.Rekman
Upgrade to SDL 2.0.5-ish (still technically 2.0.4).
- Upstream revision 10374:dccf51aee79b.
- Merged all our changes hopefully.
Change 3143075 on 2016/09/28 by Luke.Thatcher
[RENDERING] [~] Add check to FBatchedElements::AddSprite to catch null textures. If the texture is null here, we will crash later in the RHI. At least now we'll get the callstack of the code adding the null textured sprite, since I don't have a repro.
#jira UE-33077
Change 3143219 on 2016/09/28 by Daniel.Lamb
Added new is compiling function which tells you if it's really compiling instead of lying.
If def out additional logging for debugging shader compilation issue for 4.14 release.
Change 3143428 on 2016/09/28 by Luke.Thatcher
[PLATFORM] [PS4] [+] Use PS4 SDK 4.008.061
Change 3143488 on 2016/09/28 by Daniel.Lamb
Changed defaults for skip cooking editor content to true.
Change 3143526 on 2016/09/28 by Daniel.Lamb
Increased the concurrent shader compile limit while in the cooker.
#test Cook paragon
Change 3143874 on 2016/09/28 by Chris.Babcock
Read Android environment variables from .bashrc on Linux
#jira UE-36565
#ue4
#android
#linux
Change 3143911 on 2016/09/28 by Dmitry.Rekman
Fix SDL EGL API binding (UE-18979).
- Contains PR #1398 by x414e54.
- Also fixes offscreen backend that needed to provide a global mouse state after the SDL upgrade.
Change 3143929 on 2016/09/28 by Daniel.Lamb
Removed some more temporary logging.
#test Cook paragon
Change 3143959 on 2016/09/28 by Jeff.Campeau
Media Player for Xbox One
Change 3143997 on 2016/09/28 by Dmitry.Rekman
Linux: faster linking in Debug.
- Do not apply --as-needed to Debug build since taking a hit of several tens of seconds on startup is better than linking for ~4 more minutes when iterating.
Change 3144004 on 2016/09/28 by Dmitry.Rekman
Linux: make SCW dump core on crash in debug builds.
- If the editor (not SCW itself) is built in Debug, make SCW dump cores if they ever crash. This makes it debug easier (at the risk of running of disk space).
Change 3144007 on 2016/09/28 by Dmitry.Rekman
Linux: Allow equals character in command line parameter value (UE-26406).
- PR #2019 by bozzaro.
- Allows passing parameters like -Switch=Key=Value.
Change 3144042 on 2016/09/28 by Jeff.Campeau
Add tag for DX12 support being experimental in target settings.
#jira UE-36150
Change 3144068 on 2016/09/28 by Dmitry.Rekman
Linux: enable using xgConsole in UAT (UE-28096).
- PR #2144 by bozzaro.
- Picks correct xgConsole binary.
- Allegedly fixes crash in CombineXGEItemFile on mono.
Change 3144120 on 2016/09/28 by Michael.Trepka
Copying //Tasks/UE4/Dev-HighDPI/... to //UE4/Dev-Platform/...
Change 3144172 on 2016/09/28 by Chris.Babcock
Add libpng 1.5.27 for Android
#jira UE-36573
#ue4
#android
Change 3144318 on 2016/09/28 by Chris.Babcock
Correct logic for checking .bashrc on Linux
#ue4
#android
Change 3144331 on 2016/09/28 by Dmitry.Rekman
Linux: repair ARM server builds.
- Also: print info about C++ library being used and allow the override via environment variable UE4_LINUX_USE_LIBCXX (either 0 or 1).
Change 3144354 on 2016/09/28 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
this is intermediate, not fully working
Change 3144368 on 2016/09/28 by Josh.Adams
- Moved the new Social files into NFL
Change 3144395 on 2016/09/28 by Chris.Babcock
Add missing functions for AndroidWebBrowserWindow
#ue4
#android
Change 3144417 on 2016/09/28 by Josh.Adams
- Probable fix for FWebBrowserWindow missing virtuals
Change 3144438 on 2016/09/28 by Jeff.Campeau
XDK updated to 160802
Change 3144569 on 2016/09/29 by Dmitry.Rekman
Linux: allow a selectable clock source (UE-36564).
- The engine will now select the best performing clock on start instead of hard-coding CLOCK_REALTIME. This will happen as part of global initialization before main() to prevent clock skew.
- Also fixes a problem of the engine not being able to start on Windows 10 since previously hard-coded clock id was not supported there.
#tests Compiled and ran a few targets (including non-monolithic). Tried bogus clock sources. Haven't actually tried on Win10 (don't have a machine atm).
Change 3145108 on 2016/09/29 by Joe.Graf
Fixed cases where path relative external plugin paths would generate the wrong path when running Unreal Header Tool (and probably other tools)
Change 3145245 on 2016/09/29 by Joe.Graf
#wolf
Checking in removal of plugin use on Win64 per Josh's request
Change 3145514 on 2016/09/29 by Will.Fissler
Updated Mac Info.plist files to disable high DPI on macOS 10.12
Change 3145538 on 2016/09/29 by Josh.Adams
- Worked around a physics task graph issue with using the new lock free stuff on Wolf, joining PS4 and XboxOne. Wolf was crashing on some boots.
Change 3145540 on 2016/09/29 by Josh.Adams
- Fix for checking some Wolf dev tool installation existence
- Fix for various Wolf build issues
- Fix for Wolf devices not showing up in Launch on
Change 3145542 on 2016/09/29 by Josh.Adams
- Pulled over Wolf changes from Wolf branch into Dev-Platform
Change 3145572 on 2016/09/29 by Josh.Adams
- Cleaned up Wolf SDK error logs which really messed up GenProjectFiles for some class of people.
#jira UE-36591
Change 3145769 on 2016/09/29 by Chris.Babcock
Remove duplicate platforms from deploy list in UFE
#jira UE-36636
#ue4
Change 3146061 on 2016/09/29 by Chris.Babcock
Linux: be less spammy in log when launching external procs
#jira UE-36638
#ue4
#linux
Change 3146208 on 2016/09/29 by Dmitry.Rekman
Linux: fix PhysX crash (UE-36613).
- PX_RESTRICT was unwarrantedly applied to memMove, allowing clang to replace the memmove() call to memcpy() at -O2 and above.
- This caused PxArray::remove() to duplicate the elements of its array (in POD case) and this opened doors to all kinds of fun.
#jira UE-36613
Change 3146476 on 2016/09/30 by Josh.Adams
- Moved a UBT log that could pollute QA logs with Wolf secrets to Verbose
Change 3146554 on 2016/09/30 by Josh.Adams
- Removed another wolf secret log
Change 3146626 on 2016/09/30 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3146712 on 2016/09/30 by Josh.Adams
- Fixed case for building Android on Linux
#jira #UE-36652
Change 3146844 on 2016/09/30 by Josh.Adams
- Removed ES2 shader compiling from TVOS, and force Metal compiling
#jira UE-36306
Change 3146865 on 2016/09/30 by Daniel.Lamb
Removed temp logging for materials
#test Launch on paragon
Change 3146874 on 2016/09/30 by Dmitry.Rekman
Linux: add rpath for libTextureConverter.so (UE-36620).
Change 3147030 on 2016/09/30 by Josh.Adams
- Version check workaround for IOS9.3/TVOS9.2 defining __IPHONE_10_0 which breaks our IOS10 code checks
#jira UE-36623
Change 3147151 on 2016/09/30 by Josh.Adams
- Fixed zlib.build.cs for XboxOne, which came in from another branch without an include path, yet somehow main is compiling?
Change 3147621 on 2016/09/30 by Michael.Trepka
Fix for setting up RPATHs for third party dylibs for packaged code-based games on Mac
Change 3147712 on 2016/09/30 by Josh.Adams
- Fixed metal crash StrategyGame crash. Recent code was checking IsES2Platform for HDR decoding in scene capture, and Metal hasn't been IsES2 since may. Changed to IsMobilePlatform.
#jira UE-36225
Change 3147725 on 2016/09/30 by Josh.Adams
- Fixed yet another Wolf log for people with Wolf access but no SDK
[CL 3147801 by Josh Adams in Main branch]
2016-09-30 21:21:09 -04:00
|
|
|
#include "ModuleManager.h"
|
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2997507)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2997066 on 2016/06/01 by Michael.Noland
Engine: Marked engine performance target cvars ECVF_Scalability so they can be adjusted via scalability buckets at runtime for games that target different framerates on different levels of hardware
#rb none
#tests Ran Paragon and changed video settings and tested t.TargetFrameTimeThreshold
Change 2996816 on 2016/06/01 by Dan.Youhon
Add FixedWorldDirection option for Root Motion Radial Forces; code/BP hook-up for allowing Price's reworked RMB to send all targets in the same (correct) direction
- FixedWorldDirection added to both root motion system and corresponding ability tasks
- Exposed AddHitResult for EffectContexts for modifying EffectContext hit results from BP
- Hooked up to Price RMB - we (somewhat dirtily) route Price's location and facing through the HitResult of the EffectContext for his displacement GE
#rb Dave.Ratti
#tests MultiPIE
#codereview Billy.Rivers
#lockdown Billy.Rivers
Change 2996526 on 2016/06/01 by Brian.Karis
Fixed tube light typo
JB made this robomerge up. Shader recompiling in our future.
#RB:none
#Tests:none
#ROBOMERGE: MAIN, 27, 26.2
Change 2996428 on 2016/06/01 by Rolando.Caloca
O - Made r.D3D.RemoveUnusedInterpolators a system setting which now also alters ddc key; fix r.Shaders.FastMath actually affecting compilation when =0
#rb Chris.Bunner
#codereview Michael.Noland, Marcus.Wassmer
#jira OR-22573
#tests Run with and without r.D3D.RemoveUnusedInterpolators=1 on DefaultEngine.ini
Change 2996090 on 2016/06/01 by Jason.Bestimt
#ORION_MAIN - Merge 26.2 @ CL 2995754
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2995816 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#CodeReview: jason.bestimt
Change 2995785 on 2016/06/01 by Robert.Manuszewski
Don't delete non-backup log files when cleaning up the logs folder.
#rb none
#tests Tested in the editor with multiple old log files
Change 2995556 on 2016/05/31 by Dmitry.Rekman
More info about timers on crash (OR-21986).
- Somewhat desperate attempt to get more clue about timer crash. Intended to be removed later.
#rb Michael.Noland
#codereview Marc.Audy, Michael.Noland
#tests Compiled the Linux server, ran it, crashed a few times.
Change 2995397 on 2016/05/31 by Michael.Noland
Rendering: Made the optimization to combine upscaling/downscaling and tonemapping optional based on the amount of upscaling that will occur
- r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
- r.Tonemapper.MergeWithUpscale.Threshold is a new setting used when r.Tonemapper.MergeWithUpscale.Mode is set to 2, which indcates to only try to merge the passes if the ratio of the area before upscale/downscale to the area afterwards is greater than the threshold
This prevents running the tonemapper on all of the target res pixels when the source res is far smaller, as that can cause it to be a loss to merge the passes
Upgrade Notes: r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
#rb marcus.wassmer
#tests Ran Paragon at various resolutions on Intel and NV cards
#rn
Change 2995118 on 2016/05/31 by David.Decker
- Fix for build failure
#rb none
#tests golden path game
Change 2994929 on 2016/05/31 by David.Decker
#Orion_Analytics
-Added PacketRecievedHistogram event that fires every minute in game the rate is configurable in DefaultGame.ini
-Moved FHistogram from PerfCountersModule to ProfilingHelpers
-Re-enabled Location event
#rb Dmitry.Rekman
#codereview Dmitry.Rekman, John.Pollard, Christopher.Wright
#tests golden path game
Change 2994920 on 2016/05/31 by Daniel.Lamb
Added some more cooking stats to save package.
#rb Wes.Hunt
#test Cook Orion.
Change 2994622 on 2016/05/31 by Zak.Middleton
#orion - Pickup and Coin filter collision optimizations.
- Added coin collision profile preset and made it ignore everything but Pawn (importantly, now ignores triggers).
- Pickups filter out collision with AI earlier. Profile already did this but this avoids more branches and cache misses in PreFilter.
- Coins now additionally filter out more efficiently Heroes that can't pick them (no overlap events generated at all).
#rb Jon.Lietz, Frank.Gigliotti
#tests PlayGo MultiPIE
Change 2994305 on 2016/05/31 by Andrew.Grant
Restoring prompt/exit on signed archive issue to help identify causes
#rb none
#tests compiled
Change 2994226 on 2016/05/31 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 27 @ CL 2993946
#RB:none
#Tests:none
[CodeReviewed]: graeme.thornton
#ROBOMERGE-SOURCE: CL 2994225 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2994204 on 2016/05/31 by bruce.nesbit
More banner changes
-Fixed an issue with InterpToComponent with very short times
-revisions to test banner
-added fade to banner/charms
-tries to set team color on decativate FX
#rb none
#tests Game+PIE
#codereview Jason.Bestimt
Change 2993973 on 2016/05/30 by Robert.Manuszewski
Updated protection handling
#rb none
#tests Compiled and applied protection
Change 2993588 on 2016/05/27 by Michael.Noland
Engine: Removed a bogus autocomplete for ShowMaterialDrawEvents, which was previously renamed r.ShowMaterialDrawEvents
#rb none
#tests Typed in ShowMat in the console and verified that no autocomplete appeared
#rn
Change 2993510 on 2016/05/27 by John.Pollard
Fix issue with root motion sources and replays, fixes TwinBlast RMB ability animation issue, and other artifacts
#rb RyanG
#tests Replays
Change 2993484 on 2016/05/27 by Uriel.Doyon
New logic for computing the skel mesh streaming scales
#rb marcus.wassmer
#tests loaded editor, played with streaming scale
Change 2993211 on 2016/05/27 by Uriel.Doyon
Workaround for lightmap streaming flags not being correctly set.
#codereview marcus.wassmer
#rb marcus.wassmer
#tests building lighting and investigating streaming
Change 2993068 on 2016/05/27 by Marcus.Wassmer
Duplicate 2989729
Fix for lightmaps and shadowmaps having low resolutions after building lightings
#rb none
#test PC at various scalability
#codereview Uriel.Doyon
Change 2993066 on 2016/05/27 by Lukasz.Furman
fixed behavior tree getting stuck on ResumeLogic call
copied from //UE4/Dev-Framework, CL# 2993058
#jira OR-22498
#rb none
#tests none
Change 2992706 on 2016/05/27 by Marcus.Wassmer
Duplicate 2991726
Fix for grey skin in simple lighting model (shadows off)
#rb none
#test lowest settings on PC
Change 2992705 on 2016/05/27 by Marcus.Wassmer
Duplicate 2991727
Fix emissive decals in simple forward renderer
#rb none
#test PC lowest settings
Change 2992658 on 2016/05/27 by David.Ratti
Remove all occurrences of Ability.PersistPastDeath from granted tags. Fix code to *only* check asset tags for this tag, instead of both.
#rb none
#test pie
Change 2992646 on 2016/05/27 by Ben.Marsh
BuildGraph: Add a BuildGraph task to run a UE4 commandlet. Syntax is <Commandlet Name="..." Project="..." Arguments="...">.
#rb none
#tests none
Change 2992252 on 2016/05/26 by Jason.Bestimt
#ORION_DG - Unclog ROBO Merge in DG
#RB:none
#Tests:none
Change 2992180 on 2016/05/26 by John.Pollard
Fix issue where external data wasn't saving out properly
#rb RyanG
#tests Replays
Change 2992159 on 2016/05/26 by Michael.Noland
CVar to disable/freeze GPU particle simulation (r.GPUParticle.Simulate)
[Replicated from Dev-Rendering checkin CL# 2989752 by Olaf]
#rb olaf.piesche
#tests Tested the command in Agora and verified that GPU particles were not being drawn
Change 2992158 on 2016/05/26 by Michael.Noland
Rendering: Added a cvar that controls unbinding of all texture resources between materials changes in the DX11 renderer (r.UnbindResourcesBetweenDrawsInDX11) to improve the readability of GPA captures
Note: This will probably be moved to be on when markers are on rather than an independent cvar, but it is currently separate for testing
#codereview marcus.wassmer
#rb none
#tests Ran with the var off and on and verified in GPA captures
Change 2991645 on 2016/05/26 by Andrew.Grant
Fix for filesize returning 0 if file not found
#rb none
#tests bugit now works
#jira OR-20488
Change 2991290 on 2016/05/26 by Mieszko.Zielinski
Added a static flag to NavigationSystem that can be used to short-circuit dynamic navigation related functions #UE4
Will save some perf on PS4 in Orion, since clients do use navigation system there.
#rb Lukasz.Furman
#test golden path
Change 2991288 on 2016/05/26 by Mieszko.Zielinski
CL#2990243 manually redone in for Orion #UE4
Original description:
> Fixed behavior tree observers not being applied correctly
#rb Lukasz.Furman
#test golden path
Change 2991271 on 2016/05/26 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2990688
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2991269 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2991185 on 2016/05/26 by Mieszko.Zielinski
Fixed UAITask_MoveTo not releasing paths properly, or clearing path observing when task is being reused #UE4
Also, fixed FNavigationPath::DoneUpdating not converting ENavPathUpdateType properly
#rb Lukasz.Furman
#test golden path
Change 2990788 on 2016/05/25 by Marcus.Wassmer
Fix deprecation warning
#rb none
#test none
Change 2990582 on 2016/05/25 by Marcus.Wassmer
Now that render commands are enqueued again on servers, we shouldn't outright crash if an allocation gets to nullrhi
#codereview Dmitry.Rekman
#rb none
#test none
Change 2990450 on 2016/05/25 by Martin.Mittring
OR-22233 GPU Sprites invisible unless solo'd
#rb:David.Hill
#jira:OR-22233
#test:PC
Change 2990199 on 2016/05/25 by Marcus.Wassmer
Remove experimental HDR support in tonemapper. Brings tonemapper cost back down into line
#rb none
#codereview Michael.Noland,Brian.Karis
Change 2989908 on 2016/05/25 by Andrew.Grant
Changed warning about DDC cache full to Display
#rb none
#tests compiled
Change 2989903 on 2016/05/25 by Mieszko.Zielinski
Made BT component ignore subtree injection request if relevant BT nodes already use indicated asset #UE4
#rb Lukasz.Furman
#test golden path
Change 2989795 on 2016/05/25 by Ryan.Gerleve
Fix for storing the correct URL on the pending net game for replay playback.
Re-implemented this fix from Dev-Networking CL 2981198, fixes deathcam after latest main integration.
#tests played a reply, enabled deathcam
#rb none
Change 2989483 on 2016/05/25 by David.Ratti
ToggleJuggernaut cheat
#rb danY
#tests pie
Change 2989384 on 2016/05/25 by Graeme.Thornton
Extra chunk decryption tests and logging to help diagnose the random failure we're seeing in the wild
- retry decrypt three times
- after the first attempt, re-decrypt original source, just incase the decrypt cache has been corrupted
#tests cooked pc client + dedicated server
#rb robert.manuszewski
Change 2989225 on 2016/05/24 by Dmitry.Rekman
Fix rare crash in Linux threading code (OR-22193).
- Sometimes, for some reason, freeing memory for an alternate thread from a thread in PostRun() can crash because the jemalloc apparently does not have an arena for this thread anymore.
- This change works around the problem by allocating the said memory statically in LinuxThread class.
#rb none
#codereview Bob.Tellez, David.Vossel
#tests Compiled Linux server, started it.
Change 2988768 on 2016/05/24 by Uriel.Doyon
Added support for SkinnedMesh in the texture streaming MeshCoordSize accuracy viewmode.
#RB marcus.wassmer
#tests loaded game and editor
Change 2988462 on 2016/05/24 by Mieszko.Zielinski
Added a piece of logging to both scenarios or movement aborting in UPathFollowingComponent::UpdatePathSegment to be able to tell them appart while reading the log #Orion
#rb Lukasz.Furman
#test golden path
Change 2988036 on 2016/05/24 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2987910
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2988035 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2987457 on 2016/05/23 by Mieszko.Zielinski
Redone changes from CL#2981193 #UE4
Original description: fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes)
#rb Lukasz.Furman
#test golden path
Change 2987388 on 2016/05/23 by Olaf.Piesche
Replicating CL 2985226; don't push mesh emitter transform to pixel shader unless used in the material graph
#rb marcus.wassmer
#tests editor game PC
Change 2986255 on 2016/05/22 by Mieszko.Zielinski
Manually resolving conflict that stoped robomerge from Main to DG #Orion
#rb none
#test compile
#codereview Jason.Bestimt
Change 2986209 on 2016/05/21 by Andrew.Grant
Removed hitchunter logging from http thread
#rb none
#tests compiled
Change 2986202 on 2016/05/21 by Andrew.Grant
Merging //UE4/Main @ 2981382 from //UE4/Orion-Staging
#rb none
#tests engine & game QA passed, built locally
Change 2985899 on 2016/05/20 by Rob.Cannaday
Move PS4 HTTP processing to HTTP thread
#tests golden path
#rb dmitry.rekman
Change 2985884 on 2016/05/20 by Bart.Bressler
Fix issue where oodle wasn't enabled in shipping correctly.
#rb john.pollard
#tests ran orion server in shipping and connecting with a client
Change 2985778 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2985753
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2985774 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985760 on 2016/05/20 by Rob.Cannaday
Second pass on HTTP threading
Move threaded objects into separate class, FHttpThread. FCurlHttpThread derives from FHttpThread and the curl multi work is performed in FCurlHttpThread
Removed code that limited number of curl easy requests that were added to the multi simultaneously / per frame as now that curl work is performed on a separate thread the performance no longer directly impacts the game thread
Remove lock from CurlHttp and instead of use FThreadSafeCounter
#rb dmitry.rekman
#tests golden path (PC & PS4)
Change 2985658 on 2016/05/20 by John.Pollard
Fixed issue with cached http replay results making time go backwards
#rb none
#tests replays
Change 2985640 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: david.ratti
Ability System: call OnRemove event for gameplay cues that are mispredicted. Previously if a looping GC was predictively added, it would only get the OnRemove event if the replicated GC was removed. In the case of a mis prediction there is no replicated version, so the OnRemove was never called and cleanup was never happening.
#rb FrankG
#tests multi pie
#ROBOMERGE-SOURCE: CL 2985638 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985631 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: david.ratti
Fast TArray serialization fixes:
1. Fix case where Array ReplicationKey has changed no items between base and current state have changed. Previously server would early out and not send an update: but this needs be sent so that the client can potentially perform an implicit delete.
This fixes the case where client TArray would have stale items hanging around until a new update was sent (which could potentially be never).
2. Fix case where an array item would be deleted by both explicit delete and implicit delete: causing other items in the array to be deleted (!).
#rb frankG, pollard
#tests golden path
[CodeReviewed] Bob.Tellez, Billy.Bramer, Ben.Zeigler
#ROBOMERGE-SOURCE: CL 2985629 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985542 on 2016/05/20 by Daniel.Lamb
Added per package stats.
Optimized cooker, moved FTextureSource::Compress from UTexture::Presave to UTexture::Serialize so we can avoid it in the cooker.
#rb Robert.Manuszewski, Andrew.Grant, Marcus.Wassmer
#test cook paragon, save packages paragon editor
Change 2985152 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2985092
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2985150 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985001 on 2016/05/20 by Chris.Wood
Move fullcrashdump location for Paragon from QA deptartment storage to Paragon project storage. Changes CrashReportClient config only.
Change 2984839 on 2016/05/20 by Robert.Manuszewski
Renaming some confusing function names and updating messages related to exception handling.
#rb none
#tests Cooked Win64 Client and Server, Tested crash reporting in cooked game
Change 2984517 on 2016/05/19 by Mike.Larson
Adjusted 'PlatformHeadroom' audio volume settings to DB-3 on both Windows and PS4
Change 2983932 on 2016/05/19 by jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2983814
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2983921 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
#CodeReview: jason.bestimt
Change 2983864 on 2016/05/19 by Wes.Hunt
Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS...
#codereview:steve.robb
#rb none
#tests compiled Orion Editor Win64
Change 2983780 on 2016/05/19 by Wes.Hunt
Modernize FAnalyticsEventAttribute usage. #jira UE-30551.
Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings.
* The Name must be convertible to a string
* The value must be convertible to a string via an AnalyticsConversion::ToString() overload.
* Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more.
Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of:
RecordEvent("EventName", MakeAnalyticsEventAttributeArray(
"Attr1", false,
"Attr2", 42.0,
"Attr3", SomeMap,
"Attr4", SomeArray);
#codereview:steve.robb,david.decker,sam.spiro
SamS - you've been asking for better attribute conversion facilities for years. Finally got it, haha.
SteveR - I only added copy/move ctors to FAnalyticsEventAttribute. Do I also need to explicitly add the copy/move assignment ops?
DavidD - This will allow you to create attributes a lot more easily and efficiently now.
#rb steve.robb,david.decker
#tests orion editor runs
Change 2983702 on 2016/05/19 by Daniel.Lamb
Renumbered cooking stats to be more correct
#rb Wes.Hunt
#test cook paragon.
Change 2983392 on 2016/05/19 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2983342
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2983391 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2982910 on 2016/05/18 by Marcus.Wassmer
Don't fail entire deployments because obsolete manifest can't find the files to delete
#rb none
#codereview Peter.Sauerbrei
#test none
Change 2982902 on 2016/05/18 by Marcus.Wassmer
Disable HTTP networkfilesystem because it constantly crashes cookonthefly servers. platform team is aware
#rb none
#test cookonthefly
Change 2982837 on 2016/05/18 by David.Ratti
Spot merge safety check in ~FAgggregator. From BobT CL 2966255.
#rb none
#tests compile
Change 2982723 on 2016/05/18 by Wes.Hunt
Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #jira UE-30559
#rb none
#tests none
Change 2982716 on 2016/05/18 by Wes.Hunt
Remove Analytics code to divert legacy code to source data collector. #jira UE-27794
#rb none
#tests run orion editor
Change 2982707 on 2016/05/18 by Wes.Hunt
AnalyticsET support for arbitrary Json events. #jira UE-30375
* AnalyticsET supports a new API, RecordEventJson.
* API supports rvalue refs to avoid unnecessary copies of the attribute array.
/**
* Sends an event where each attribute value is expected to be a string-ified Json value.
* Meaning, each attribute value can be an integer, float, bool, string,
* arbitrarily complex Json array, or arbitrarily complex Json object.
*
* The main thing to remember is that if you pass a Json string as an attribute value, it is up to you to
* quote the string, as the string you pass is expected to be able to be pasted directly into a Json value. ie:
*
* {
* "EventName": "MyStringEvent",
* "IntAttr": 42 <--- You simply pass this in as "42"
* "StringAttr": "SomeString" <--- You must pass SomeString as "\"SomeString\""
* }
*
* @param EventName The name of the event.
* @param AttributesJson array of key/value attribute pairs where each value is a Json value (pure Json strings mustbe quoted by the caller).
*/
virtual void RecordEventJson(const FString& EventName, TArray<FAnalyticsEventAttribute>&& AttributesJson) = 0;
#codereview:david.decker
#rb david.decker
#tests run orion editor
Change 2982057 on 2016/05/18 by David.Ratti
GameplayCue loading - fix issue where GCM would invoke fully loaded when there were still UGameplayCueNotify_Statics to be loaded.
#rb Ori.Cohen
#tests golden path
Change 2981943 on 2016/05/18 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2981896
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2981942 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2981812 on 2016/05/18 by Robert.Manuszewski
Suspending thread heartbeat when a message box is being displayed. Fixes false positives in hand detection.
#rb Steve.Robb
#tests Cooked and launched win64 client and server
Change 2981718 on 2016/05/18 by Robert.Manuszewski
Changed how suspending/resuming thread heartbeat works: it will no longer create a heartbeat for a thread that hasn't sent any heartbeats yet.
Reimplementing CL #2951209 from Dev-Core
#rb Steve.Robb
#tests None
Change 2981108 on 2016/05/17 by Wes.Hunt
Fix perfect forwarding constructor in CookStats stuff.
#rb none
#tests investigating assembly output of cook stats code.
#codereview:daniel.lamb
Change 2981028 on 2016/05/17 by Nick.Atamas
Fixing hittest grid with virtual cursor.
We now prefer any directly hit-test widgets with higher layer ids to those discovered through a distance search.
#rb none
#test Game menus
#codereview Cody.Haskell,Matt.Kuhlenschmidt,Sammy.James,Dan.Hertzka
Change 2980963 on 2016/05/17 by Marc.Audy
Fix shadowed variable
#rb None
#tests Compile
Change 2980917 on 2016/05/17 by Daniel.Lamb
Removed script packages from unable to find packages warning.
#rb Andrew.Grant
#test cook paragon
Change 2980838 on 2016/05/17 by Marc.Audy
Shave some time out of UPlayerInput::ProcessInputStack
#rb Michael.Noland
#tests Input works, performance improvement
Change 2980710 on 2016/05/17 by Michael.Noland
Engine: Added helpful comments to the LOD visualization colors
#rn
#rb david.ratti
#tests none
Change 2980706 on 2016/05/17 by Michael.Noland
Engine: Removed unused setting bAllowDebugViewmodesOnConsoles (replaced some time ago by r.ForceDebugViewModes)
#rn
#rb david.ratti
#tests Ran a cooked build with only r.ForceDebugViewModes=1 and confirmed that debug view modes still worked
Change 2980703 on 2016/05/17 by Michael.Noland
Blueprints: Added support for emitting the Blueprint Description as tooltip metadata for the compiled Blueprint class (displayed in class pickers, etc...)
#rb david.ratti
#tests Tested on a Blueprint in Paragon
#codereview mike.beach
#rn
Change 2980702 on 2016/05/17 by Michael.Noland
Rendering: Added ProfileGPU to the console autocomplete list
#rb david.ratti
#tests Tried typing Profile in the console and verified that the completion worked and tooltip was displayed
#rn
Change 2980697 on 2016/05/17 by Michael.Noland
Landscape: Added a 'resource' name for landscape to improve display in the mesh summary list of ProfileGPU
#codereview jack.porter
#rb david.ratti
#tests Used ProfileGPU while standing on some terrain
#rn
Change 2980692 on 2016/05/17 by Michael.Noland
Landscape: Added a scalability CVar for landscape LOD biasing (r.LandscapeLODBias)
#codereview jack.porter
#rb david.ratti
#tests Ran around in Paragon with various r.LandscapeLODBias values
#rn
Change 2980630 on 2016/05/17 by Daniel.Lamb
Added more warnings to help track down crash in paragon cook.
#rb Andrew.Grant
#test cook orion
Change 2980585 on 2016/05/17 by Jamie.Dale
Fixed an issue where the editable text caret could become invisible when using UI scaling
It's now clamped to a min draw size of 1px.
#jira OR-18524
#rb none
#tests Built and ran the game. Verified that the caret now appears where it didn't before.
Change 2979908 on 2016/05/16 by jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2979859
#RB:none
#Tests:none
#CodeReview: jaymee.stanford
Change 2979472 on 2016/05/16 by Nick.Atamas
Added support for not clearing the render target when rendering a widget.
#rb Nick.Darnell
#test PIE w/ minimap
Change 2979434 on 2016/05/16 by Dmitry.Rekman
Server: Add reporting of frame time without sleep.
- Also add NumClients to each event so it's easy to filter events that didn't have 10 clients.
#rb none
#tests Built Linux server, ran match on a compatible content.
Change 2979267 on 2016/05/16 by Dmitry.Rekman
Improvements in server hitch hunting / alerting.
- Add an analytics event for unplayable conditions.
- Send % of frames we hitched and time we spent hitching.
- Send more detail about the machine.
#rb none
#tests Built Linux server and Windows client, played a match.
Change 2979030 on 2016/05/16 by Andrew.Grant
Added quick way to reasign GUIDs (-AssignNewMapGuids) to map objects
#rb none
#tests used in editor
Change 2978914 on 2016/05/16 by David.Ratti
Fix issue causing gameplay cue parameters not properly being passed through in cases where GA adds/removes gameplay cue.
#rb DanY
#tests multi pie
#codereview Dave.Ewing
Change 2978681 on 2016/05/16 by Martin.Wilson
Performance improvements for recalc required bones, removed a lot of unneeded array iterating. Reduces cost to roughly 30% of original code.
#rb Thomas.Sarkanen
#tests PS4 games, ded server
Change 2978098 on 2016/05/15 by Andrew.Grant
Clearer error message
#rb none
#tests ran game
Change 2977597 on 2016/05/13 by Olaf.Piesche
Merging using //UE4/Dev-Rendering->//Orion/Dev-General; fixes for beam particle selection code
#rb martin.mittring
#tests PC editor game
Change 2977531 on 2016/05/13 by Daniel.Lamb
Added cooking stat for PreSave callback.
#rb Wes.Hunt
#test cook paragon
Change 2977340 on 2016/05/13 by jason.bestimt
#ORION_MAIN - Merge 26@ CL 2977290
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2977329 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
#CodeReview: jason.bestimt
Change 2977139 on 2016/05/13 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jon.lietz
OR-20830 only allow the periodic effects from a gameplay volume trigger first application triggers on BeginOverlap and Enable volume.
#RB DaveR
#test tracked when the poinson from an active card is applied and not applied
#ROBOMERGE-SOURCE: CL 2977135 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2976741 on 2016/05/13 by David.Ratti
GameplayCues that are triggered off animation notifies on the non-primary mesh will now properly attach to that non primary mesh.
#rb lietz
#test pie, golden path
Change 2976715 on 2016/05/13 by Jason.Bestimt
#ROBOMERGE-AUTHOR: andrew.grant
[NULL MERGE]
Fix for bad merge
#rb none
#tests built automation
#ROBOMERGE-SOURCE: CL 2976680 in //Orion/Release-0.26/... via CL 2976712 via CL 2976713 via CL 2976714
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2976679 on 2016/05/13 by Robert.Manuszewski
Tweaks to DLL injection detection code
#rb Steve.robb
#tests cooked Win64 client
Change 2976670 on 2016/05/13 by Robert.Manuszewski
UAT: Arxan upgrade to 3.9.1
#rb Ben.Marsh
#tests Win64 cooked client (test config)
Change 2976654 on 2016/05/13 by Graeme.Thornton
Shadowed variable warning fix
#rb none
#tests compiled win64/ps4 client
Change 2976645 on 2016/05/13 by Graeme.Thornton
Refactoring of resident mip calculations
- Cooker takes into account the same compression block thresholds that the runtime previously used
- Runtime doesn't attempt to calculate which mips to perma-load, but just looks at the ones whose bulk data is flagged as end-of-file or seperate-file
#rb nick.penwarden
#tests win64/ps4 client builds, golden path
[CL 3000872 by Andrew Grant in Main branch]
2016-06-04 01:20:53 -04:00
|
|
|
|
2014-07-30 23:26:47 -04:00
|
|
|
//#include "LinuxNativeFeedbackContext.h"
|
|
|
|
|
// custom dialogs
|
|
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
2015-06-15 18:14:07 -04:00
|
|
|
#include "UNativeDialogs.h"
|
|
|
|
|
#else
|
|
|
|
|
#include "SlateFileDialogs.h"
|
2014-07-30 23:26:47 -04:00
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
|
|
|
|
#include "SDL.h"
|
2014-06-05 17:01:39 -04:00
|
|
|
|
|
|
|
|
#define LOCTEXT_NAMESPACE "DesktopPlatform"
|
2014-07-30 23:26:47 -04:00
|
|
|
#define MAX_FILETYPES_STR 4096
|
|
|
|
|
#define MAX_FILENAME_STR 65536
|
2014-06-05 17:01:39 -04:00
|
|
|
|
2015-05-11 18:30:57 -04:00
|
|
|
FDesktopPlatformLinux::FDesktopPlatformLinux()
|
|
|
|
|
: FDesktopPlatformBase()
|
|
|
|
|
{
|
|
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
|
|
|
|
bool bLNDInit = ULinuxNativeDialogs_Initialize();
|
|
|
|
|
if (bLNDInit)
|
|
|
|
|
{
|
|
|
|
|
UE_LOG(LogDesktopPlatform, Log, TEXT("LinuxNativeDialogs have been successfully initialized."));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
UE_LOG(LogDesktopPlatform, Warning, TEXT("DesktopPlatformLinux could not initialize LinuxNativeDialogs - it will not work properly."));
|
|
|
|
|
}
|
|
|
|
|
#else
|
2015-06-15 18:14:07 -04:00
|
|
|
UE_LOG(LogDesktopPlatform, Log, TEXT("DesktopPlatformLinux is not using LinuxNativeDialogs."));
|
|
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
2015-05-11 18:30:57 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FDesktopPlatformLinux::~FDesktopPlatformLinux()
|
|
|
|
|
{
|
|
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
|
|
|
|
ULinuxNativeDialogs_Shutdown();
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-29 00:44:00 -04:00
|
|
|
bool FDesktopPlatformLinux::OpenFileDialog(const void* ParentWindowHandle, const FString& DialogTitle, const FString& DefaultPath, const FString& DefaultFile, const FString& FileTypes, uint32 Flags, TArray<FString>& OutFilenames, int32& OutFilterIndex)
|
|
|
|
|
{
|
2015-06-15 18:14:07 -04:00
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
2014-07-30 23:26:47 -04:00
|
|
|
return FileDialogShared(false, ParentWindowHandle, DialogTitle, DefaultPath, DefaultFile, FileTypes, Flags, OutFilenames, OutFilterIndex);
|
2015-06-15 18:14:07 -04:00
|
|
|
#else
|
|
|
|
|
if (!FModuleManager::Get().IsModuleLoaded("SlateFileDialogs"))
|
|
|
|
|
{
|
|
|
|
|
FModuleManager::Get().LoadModule("SlateFileDialogs");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ISlateFileDialogsModule *FileDialog = FModuleManager::GetModulePtr<ISlateFileDialogsModule>("SlateFileDialogs");
|
|
|
|
|
|
|
|
|
|
if (FileDialog)
|
|
|
|
|
{
|
|
|
|
|
return FileDialog->OpenFileDialog(ParentWindowHandle, DialogTitle, DefaultPath, DefaultFile, FileTypes, Flags, OutFilenames, OutFilterIndex);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
2014-07-30 23:26:47 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::OpenFileDialog(const void* ParentWindowHandle, const FString& DialogTitle, const FString& DefaultPath, const FString& DefaultFile, const FString& FileTypes, uint32 Flags, TArray<FString>& OutFilenames)
|
|
|
|
|
{
|
2015-06-15 18:14:07 -04:00
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
2014-07-30 23:26:47 -04:00
|
|
|
int32 DummyFilterIndex;
|
|
|
|
|
return FileDialogShared(false, ParentWindowHandle, DialogTitle, DefaultPath, DefaultFile, FileTypes, Flags, OutFilenames, DummyFilterIndex);
|
2015-06-15 18:14:07 -04:00
|
|
|
#else
|
|
|
|
|
if (!FModuleManager::Get().IsModuleLoaded("SlateFileDialogs"))
|
|
|
|
|
{
|
|
|
|
|
FModuleManager::Get().LoadModule("SlateFileDialogs");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ISlateFileDialogsModule *FileDialog = FModuleManager::GetModulePtr<ISlateFileDialogsModule>("SlateFileDialogs");
|
|
|
|
|
|
|
|
|
|
if (FileDialog)
|
|
|
|
|
{
|
|
|
|
|
return FileDialog->OpenFileDialog(ParentWindowHandle, DialogTitle, DefaultPath, DefaultFile, FileTypes, Flags, OutFilenames);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
2014-06-29 00:44:00 -04:00
|
|
|
}
|
|
|
|
|
|
2014-06-05 17:01:39 -04:00
|
|
|
bool FDesktopPlatformLinux::SaveFileDialog(const void* ParentWindowHandle, const FString& DialogTitle, const FString& DefaultPath, const FString& DefaultFile, const FString& FileTypes, uint32 Flags, TArray<FString>& OutFilenames)
|
|
|
|
|
{
|
2015-06-15 18:14:07 -04:00
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
2014-07-30 23:26:47 -04:00
|
|
|
int32 DummyFilterIndex = 0;
|
|
|
|
|
return FileDialogShared(true, ParentWindowHandle, DialogTitle, DefaultPath, DefaultFile, FileTypes, Flags, OutFilenames, DummyFilterIndex);
|
2015-06-15 18:14:07 -04:00
|
|
|
#else
|
|
|
|
|
if (!FModuleManager::Get().IsModuleLoaded("SlateFileDialogs"))
|
|
|
|
|
{
|
|
|
|
|
FModuleManager::Get().LoadModule("SlateFileDialogs");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ISlateFileDialogsModule *FileDialog = FModuleManager::GetModulePtr<ISlateFileDialogsModule>("SlateFileDialogs");
|
|
|
|
|
|
|
|
|
|
if (FileDialog)
|
|
|
|
|
{
|
|
|
|
|
return FileDialog->SaveFileDialog(ParentWindowHandle, DialogTitle, DefaultPath, DefaultFile, FileTypes, Flags, OutFilenames);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::OpenDirectoryDialog(const void* ParentWindowHandle, const FString& DialogTitle, const FString& DefaultPath, FString& OutFolderName)
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
|
|
|
|
bool bSuccess;
|
|
|
|
|
struct UFileDialogHints hints = DEFAULT_UFILEDIALOGHINTS;
|
|
|
|
|
|
|
|
|
|
LinuxApplication->SetCapture(NULL);
|
|
|
|
|
|
|
|
|
|
hints.Action = UFileDialogActionOpenDirectory;
|
|
|
|
|
hints.WindowTitle = TCHAR_TO_UTF8(*DialogTitle);
|
|
|
|
|
hints.InitialDirectory = TCHAR_TO_UTF8(*DefaultPath);
|
|
|
|
|
|
|
|
|
|
UFileDialog* dialog = UFileDialog_Create(&hints);
|
|
|
|
|
|
2014-09-29 19:22:37 -04:00
|
|
|
while(UFileDialog_ProcessEvents(dialog))
|
|
|
|
|
{
|
2015-05-11 18:30:57 -04:00
|
|
|
FPlatformMisc::PumpMessages(true); // pretend that we're the main loop
|
2014-07-30 23:26:47 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const UFileDialogResult* result = UFileDialog_Result(dialog);
|
|
|
|
|
|
|
|
|
|
if (result)
|
|
|
|
|
{
|
|
|
|
|
if (result->count == 1)
|
|
|
|
|
{
|
|
|
|
|
OutFolderName = UTF8_TO_TCHAR(result->selection[0]);
|
|
|
|
|
//OutFolderName = IFileManager::Get().ConvertToRelativePath(*OutFolderName); // @todo (amigo): converting to relative path ends up without ../...
|
|
|
|
|
FPaths::NormalizeFilename(OutFolderName);
|
|
|
|
|
bSuccess = true;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
bSuccess = false;
|
|
|
|
|
}
|
|
|
|
|
// Todo like in Windows, normalize files here instead of above
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
bSuccess = false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UFileDialog_Destroy(dialog);
|
|
|
|
|
|
|
|
|
|
return bSuccess;
|
|
|
|
|
#else
|
2015-06-15 18:14:07 -04:00
|
|
|
if (!FModuleManager::Get().IsModuleLoaded("SlateFileDialogs"))
|
|
|
|
|
{
|
|
|
|
|
FModuleManager::Get().LoadModule("SlateFileDialogs");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ISlateFileDialogsModule *FileDialog = FModuleManager::GetModulePtr<ISlateFileDialogsModule>("SlateFileDialogs");
|
|
|
|
|
|
|
|
|
|
if (FileDialog)
|
|
|
|
|
{
|
|
|
|
|
return FileDialog->OpenDirectoryDialog(ParentWindowHandle, DialogTitle, DefaultPath, OutFolderName);
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-05 17:01:39 -04:00
|
|
|
return false;
|
2014-07-30 23:26:47 -04:00
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
2014-08-13 12:53:47 -04:00
|
|
|
bool FDesktopPlatformLinux::OpenFontDialog(const void* ParentWindowHandle, FString& OutFontName, float& OutHeight, EFontImportFlags& OutFlags)
|
2014-06-05 17:01:39 -04:00
|
|
|
{
|
|
|
|
|
unimplemented();
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2014-08-19 09:54:22 -04:00
|
|
|
bool FDesktopPlatformLinux::CanOpenLauncher(bool Install)
|
|
|
|
|
{
|
|
|
|
|
// TODO: no launcher support at the moment
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2016-01-22 08:13:18 -05:00
|
|
|
bool FDesktopPlatformLinux::OpenLauncher(const FOpenLauncherOptions& Options)
|
2014-06-05 17:01:39 -04:00
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
// TODO: support launcher for realz
|
|
|
|
|
return true;
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
2014-07-30 23:26:47 -04:00
|
|
|
bool FDesktopPlatformLinux::FileDialogShared(bool bSave, const void* ParentWindowHandle, const FString& DialogTitle, const FString& DefaultPath, const FString& DefaultFile, const FString& FileTypes, uint32 Flags, TArray<FString>& OutFilenames, int32& OutFilterIndex)
|
2014-06-05 17:01:39 -04:00
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
#if WITH_LINUX_NATIVE_DIALOGS
|
|
|
|
|
FString Filename;
|
|
|
|
|
bool bSuccess;
|
|
|
|
|
|
|
|
|
|
LinuxApplication->SetCapture(NULL);
|
|
|
|
|
|
|
|
|
|
UE_LOG(LogDesktopPlatform, Warning, TEXT("FileDialogShared DialogTitle: %s, DefaultPath: %s, DefaultFile: %s, FileTypes: %s, Flags: %d"),
|
|
|
|
|
*DialogTitle, *DefaultPath, *DefaultFile, *FileTypes, Flags);
|
|
|
|
|
|
|
|
|
|
struct UFileDialogHints hints = DEFAULT_UFILEDIALOGHINTS;
|
|
|
|
|
|
|
|
|
|
hints.WindowTitle = TCHAR_TO_UTF8(*DialogTitle);
|
|
|
|
|
|
2015-04-30 02:01:04 -04:00
|
|
|
FString AllExtensionsSpaceDelim; // a string like "*.cpp *.h *.c"
|
2014-07-30 23:26:47 -04:00
|
|
|
|
2015-04-30 02:01:04 -04:00
|
|
|
// The strings will come in pairs, formatted as follows: Pair1String1|Pair1String2|Pair2String1|Pair2String2
|
|
|
|
|
// where the second string in the pair is the extension(s)
|
|
|
|
|
TArray<FString> Filters;
|
|
|
|
|
FileTypes.ParseIntoArray(Filters, TEXT("|"), true);
|
|
|
|
|
for( int32 ExtensionIndex = 1; ExtensionIndex < Filters.Num(); ExtensionIndex += 2)
|
2014-07-30 23:26:47 -04:00
|
|
|
{
|
2015-04-30 02:01:04 -04:00
|
|
|
const FString& Extensions = Filters[ExtensionIndex];
|
|
|
|
|
|
|
|
|
|
TArray<FString> ExtensionsArray;
|
|
|
|
|
|
|
|
|
|
// Extension can be either *.jpg or *.jpg;*.png -> in the latter case split at ';'
|
|
|
|
|
int32 UnusedIndex;
|
|
|
|
|
if (Extensions.FindChar(TEXT(';'), UnusedIndex))
|
2014-07-30 23:26:47 -04:00
|
|
|
{
|
2015-04-30 02:01:04 -04:00
|
|
|
Extensions.ParseIntoArray(ExtensionsArray, TEXT(";"), true);
|
2014-07-30 23:26:47 -04:00
|
|
|
}
|
2015-04-30 02:01:04 -04:00
|
|
|
else
|
2014-07-30 23:26:47 -04:00
|
|
|
{
|
2015-04-30 02:01:04 -04:00
|
|
|
ExtensionsArray.Add(Extensions); // just a single extension
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for (const FString& Extension : ExtensionsArray)
|
|
|
|
|
{
|
2016-04-07 12:59:50 -04:00
|
|
|
if (AllExtensionsSpaceDelim.Find(Extension, ESearchCase::IgnoreCase) == INDEX_NONE)
|
2014-07-30 23:26:47 -04:00
|
|
|
{
|
2015-04-30 02:01:04 -04:00
|
|
|
AllExtensionsSpaceDelim += Extension;
|
|
|
|
|
AllExtensionsSpaceDelim += TEXT(" ");
|
2014-07-30 23:26:47 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-04-30 02:01:04 -04:00
|
|
|
FString AllExtensionsLumpedTogether(TEXT("All applicable ("));
|
|
|
|
|
AllExtensionsLumpedTogether += AllExtensionsSpaceDelim;
|
|
|
|
|
AllExtensionsLumpedTogether += TEXT(")");
|
|
|
|
|
|
2014-09-29 19:22:37 -04:00
|
|
|
char FileTypesBuf[MAX_FILETYPES_STR * 2] = {0,};
|
2015-05-11 18:30:57 -04:00
|
|
|
FTCHARToUTF8_Convert::Convert(FileTypesBuf, sizeof(FileTypesBuf), *AllExtensionsLumpedTogether, AllExtensionsLumpedTogether.Len());
|
2014-09-29 19:22:37 -04:00
|
|
|
hints.NameFilter = FileTypesBuf;
|
2014-07-30 23:26:47 -04:00
|
|
|
|
2014-09-29 19:22:37 -04:00
|
|
|
char DefPathBuf[MAX_FILENAME_STR * 2] = {0,};
|
|
|
|
|
FTCHARToUTF8_Convert::Convert(DefPathBuf, sizeof(DefPathBuf), *DefaultPath, DefaultPath.Len());
|
|
|
|
|
hints.InitialDirectory = DefPathBuf;
|
2014-07-30 23:26:47 -04:00
|
|
|
|
2014-09-29 19:22:37 -04:00
|
|
|
char DefFileBuf[MAX_FILENAME_STR * 2] = {0,};
|
|
|
|
|
FTCHARToUTF8_Convert::Convert(DefFileBuf, sizeof(DefFileBuf), *DefaultFile, DefaultFile.Len());
|
|
|
|
|
hints.DefaultFile = DefFileBuf;
|
2014-07-30 23:26:47 -04:00
|
|
|
|
|
|
|
|
if (bSave)
|
|
|
|
|
{
|
|
|
|
|
hints.Action = UFileDialogActionSave;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
hints.Action = UFileDialogActionOpen;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UFileDialog* dialog = UFileDialog_Create(&hints);
|
|
|
|
|
|
2014-09-29 19:22:37 -04:00
|
|
|
while(UFileDialog_ProcessEvents(dialog))
|
|
|
|
|
{
|
2015-05-11 18:30:57 -04:00
|
|
|
FPlatformMisc::PumpMessages(true); // pretend that we're the main loop
|
2014-07-30 23:26:47 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const UFileDialogResult* result = UFileDialog_Result(dialog);
|
|
|
|
|
|
|
|
|
|
if (result)
|
|
|
|
|
{
|
|
|
|
|
if (result->count > 1)
|
|
|
|
|
{
|
|
|
|
|
// Todo better handling of multi-selects
|
|
|
|
|
UE_LOG(LogDesktopPlatform, Warning, TEXT("FileDialogShared Selected Files: %d"), result->count);
|
|
|
|
|
for(int i = 0;i < result->count;++i) {
|
|
|
|
|
//Filename = FUTF8ToTCHAR(result->selection[i], MAX_FILENAME_STR).Get();
|
2015-04-30 02:01:04 -04:00
|
|
|
Filename = UTF8_TO_TCHAR(result->selection[i]);
|
2014-07-30 23:26:47 -04:00
|
|
|
//new(OutFilenames) FString(Filename);
|
|
|
|
|
OutFilenames.Add(Filename);
|
|
|
|
|
Filename = IFileManager::Get().ConvertToRelativePath(*Filename);
|
|
|
|
|
FPaths::NormalizeFilename(Filename);
|
|
|
|
|
//UE_LOG(LogDesktopPlatform, Warning, TEXT("FileDialogShared File: %s"), *Filename);
|
|
|
|
|
}
|
|
|
|
|
bSuccess = true;
|
|
|
|
|
}
|
|
|
|
|
else if (result->count == 1)
|
|
|
|
|
{
|
|
|
|
|
//Filename = FUTF8ToTCHAR(result->selection[0], MAX_FILENAME_STR).Get();
|
|
|
|
|
Filename = UTF8_TO_TCHAR(result->selection[0]);
|
|
|
|
|
//new(OutFilenames) FString(Filename);
|
|
|
|
|
OutFilenames.Add(Filename);
|
|
|
|
|
Filename = IFileManager::Get().ConvertToRelativePath(*Filename);
|
|
|
|
|
FPaths::NormalizeFilename(Filename);
|
|
|
|
|
//UE_LOG(LogDesktopPlatform, Warning, TEXT("FileDialogShared File: %s"), *Filename);
|
|
|
|
|
bSuccess = true;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
bSuccess = false;
|
|
|
|
|
}
|
|
|
|
|
// Todo like in Windows, normalize files here instead of above
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
bSuccess = false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UFileDialog_Destroy(dialog);
|
|
|
|
|
|
|
|
|
|
return bSuccess;
|
|
|
|
|
#else
|
2014-06-05 17:01:39 -04:00
|
|
|
return false;
|
2014-07-30 23:26:47 -04:00
|
|
|
#endif // WITH_LINUX_NATIVE_DIALOGS
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::RegisterEngineInstallation(const FString &RootDir, FString &OutIdentifier)
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
bool bRes = false;
|
|
|
|
|
if (IsValidRootDirectory(RootDir))
|
|
|
|
|
{
|
|
|
|
|
FConfigFile ConfigFile;
|
|
|
|
|
FString ConfigPath = FString(FPlatformProcess::ApplicationSettingsDir()) / FString(TEXT("UnrealEngine")) / FString(TEXT("Install.ini"));
|
|
|
|
|
ConfigFile.Read(ConfigPath);
|
|
|
|
|
|
|
|
|
|
FConfigSection &Section = ConfigFile.FindOrAdd(TEXT("Installations"));
|
|
|
|
|
OutIdentifier = FGuid::NewGuid().ToString(EGuidFormats::DigitsWithHyphens);
|
|
|
|
|
Section.AddUnique(*OutIdentifier, RootDir);
|
|
|
|
|
|
|
|
|
|
ConfigFile.Dirty = true;
|
|
|
|
|
ConfigFile.Write(ConfigPath);
|
|
|
|
|
}
|
|
|
|
|
return bRes;
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FDesktopPlatformLinux::EnumerateEngineInstallations(TMap<FString, FString> &OutInstallations)
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
EnumerateLauncherEngineInstallations(OutInstallations);
|
|
|
|
|
|
|
|
|
|
FString UProjectPath = FString(FPlatformProcess::ApplicationSettingsDir()) / "Unreal.uproject";
|
|
|
|
|
FArchive* File = IFileManager::Get().CreateFileWriter(*UProjectPath, FILEWRITE_EvenIfReadOnly);
|
|
|
|
|
if (File)
|
|
|
|
|
{
|
|
|
|
|
File->Close();
|
|
|
|
|
delete File;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2997507)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2997066 on 2016/06/01 by Michael.Noland
Engine: Marked engine performance target cvars ECVF_Scalability so they can be adjusted via scalability buckets at runtime for games that target different framerates on different levels of hardware
#rb none
#tests Ran Paragon and changed video settings and tested t.TargetFrameTimeThreshold
Change 2996816 on 2016/06/01 by Dan.Youhon
Add FixedWorldDirection option for Root Motion Radial Forces; code/BP hook-up for allowing Price's reworked RMB to send all targets in the same (correct) direction
- FixedWorldDirection added to both root motion system and corresponding ability tasks
- Exposed AddHitResult for EffectContexts for modifying EffectContext hit results from BP
- Hooked up to Price RMB - we (somewhat dirtily) route Price's location and facing through the HitResult of the EffectContext for his displacement GE
#rb Dave.Ratti
#tests MultiPIE
#codereview Billy.Rivers
#lockdown Billy.Rivers
Change 2996526 on 2016/06/01 by Brian.Karis
Fixed tube light typo
JB made this robomerge up. Shader recompiling in our future.
#RB:none
#Tests:none
#ROBOMERGE: MAIN, 27, 26.2
Change 2996428 on 2016/06/01 by Rolando.Caloca
O - Made r.D3D.RemoveUnusedInterpolators a system setting which now also alters ddc key; fix r.Shaders.FastMath actually affecting compilation when =0
#rb Chris.Bunner
#codereview Michael.Noland, Marcus.Wassmer
#jira OR-22573
#tests Run with and without r.D3D.RemoveUnusedInterpolators=1 on DefaultEngine.ini
Change 2996090 on 2016/06/01 by Jason.Bestimt
#ORION_MAIN - Merge 26.2 @ CL 2995754
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2995816 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#CodeReview: jason.bestimt
Change 2995785 on 2016/06/01 by Robert.Manuszewski
Don't delete non-backup log files when cleaning up the logs folder.
#rb none
#tests Tested in the editor with multiple old log files
Change 2995556 on 2016/05/31 by Dmitry.Rekman
More info about timers on crash (OR-21986).
- Somewhat desperate attempt to get more clue about timer crash. Intended to be removed later.
#rb Michael.Noland
#codereview Marc.Audy, Michael.Noland
#tests Compiled the Linux server, ran it, crashed a few times.
Change 2995397 on 2016/05/31 by Michael.Noland
Rendering: Made the optimization to combine upscaling/downscaling and tonemapping optional based on the amount of upscaling that will occur
- r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
- r.Tonemapper.MergeWithUpscale.Threshold is a new setting used when r.Tonemapper.MergeWithUpscale.Mode is set to 2, which indcates to only try to merge the passes if the ratio of the area before upscale/downscale to the area afterwards is greater than the threshold
This prevents running the tonemapper on all of the target res pixels when the source res is far smaller, as that can cause it to be a loss to merge the passes
Upgrade Notes: r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
#rb marcus.wassmer
#tests Ran Paragon at various resolutions on Intel and NV cards
#rn
Change 2995118 on 2016/05/31 by David.Decker
- Fix for build failure
#rb none
#tests golden path game
Change 2994929 on 2016/05/31 by David.Decker
#Orion_Analytics
-Added PacketRecievedHistogram event that fires every minute in game the rate is configurable in DefaultGame.ini
-Moved FHistogram from PerfCountersModule to ProfilingHelpers
-Re-enabled Location event
#rb Dmitry.Rekman
#codereview Dmitry.Rekman, John.Pollard, Christopher.Wright
#tests golden path game
Change 2994920 on 2016/05/31 by Daniel.Lamb
Added some more cooking stats to save package.
#rb Wes.Hunt
#test Cook Orion.
Change 2994622 on 2016/05/31 by Zak.Middleton
#orion - Pickup and Coin filter collision optimizations.
- Added coin collision profile preset and made it ignore everything but Pawn (importantly, now ignores triggers).
- Pickups filter out collision with AI earlier. Profile already did this but this avoids more branches and cache misses in PreFilter.
- Coins now additionally filter out more efficiently Heroes that can't pick them (no overlap events generated at all).
#rb Jon.Lietz, Frank.Gigliotti
#tests PlayGo MultiPIE
Change 2994305 on 2016/05/31 by Andrew.Grant
Restoring prompt/exit on signed archive issue to help identify causes
#rb none
#tests compiled
Change 2994226 on 2016/05/31 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 27 @ CL 2993946
#RB:none
#Tests:none
[CodeReviewed]: graeme.thornton
#ROBOMERGE-SOURCE: CL 2994225 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2994204 on 2016/05/31 by bruce.nesbit
More banner changes
-Fixed an issue with InterpToComponent with very short times
-revisions to test banner
-added fade to banner/charms
-tries to set team color on decativate FX
#rb none
#tests Game+PIE
#codereview Jason.Bestimt
Change 2993973 on 2016/05/30 by Robert.Manuszewski
Updated protection handling
#rb none
#tests Compiled and applied protection
Change 2993588 on 2016/05/27 by Michael.Noland
Engine: Removed a bogus autocomplete for ShowMaterialDrawEvents, which was previously renamed r.ShowMaterialDrawEvents
#rb none
#tests Typed in ShowMat in the console and verified that no autocomplete appeared
#rn
Change 2993510 on 2016/05/27 by John.Pollard
Fix issue with root motion sources and replays, fixes TwinBlast RMB ability animation issue, and other artifacts
#rb RyanG
#tests Replays
Change 2993484 on 2016/05/27 by Uriel.Doyon
New logic for computing the skel mesh streaming scales
#rb marcus.wassmer
#tests loaded editor, played with streaming scale
Change 2993211 on 2016/05/27 by Uriel.Doyon
Workaround for lightmap streaming flags not being correctly set.
#codereview marcus.wassmer
#rb marcus.wassmer
#tests building lighting and investigating streaming
Change 2993068 on 2016/05/27 by Marcus.Wassmer
Duplicate 2989729
Fix for lightmaps and shadowmaps having low resolutions after building lightings
#rb none
#test PC at various scalability
#codereview Uriel.Doyon
Change 2993066 on 2016/05/27 by Lukasz.Furman
fixed behavior tree getting stuck on ResumeLogic call
copied from //UE4/Dev-Framework, CL# 2993058
#jira OR-22498
#rb none
#tests none
Change 2992706 on 2016/05/27 by Marcus.Wassmer
Duplicate 2991726
Fix for grey skin in simple lighting model (shadows off)
#rb none
#test lowest settings on PC
Change 2992705 on 2016/05/27 by Marcus.Wassmer
Duplicate 2991727
Fix emissive decals in simple forward renderer
#rb none
#test PC lowest settings
Change 2992658 on 2016/05/27 by David.Ratti
Remove all occurrences of Ability.PersistPastDeath from granted tags. Fix code to *only* check asset tags for this tag, instead of both.
#rb none
#test pie
Change 2992646 on 2016/05/27 by Ben.Marsh
BuildGraph: Add a BuildGraph task to run a UE4 commandlet. Syntax is <Commandlet Name="..." Project="..." Arguments="...">.
#rb none
#tests none
Change 2992252 on 2016/05/26 by Jason.Bestimt
#ORION_DG - Unclog ROBO Merge in DG
#RB:none
#Tests:none
Change 2992180 on 2016/05/26 by John.Pollard
Fix issue where external data wasn't saving out properly
#rb RyanG
#tests Replays
Change 2992159 on 2016/05/26 by Michael.Noland
CVar to disable/freeze GPU particle simulation (r.GPUParticle.Simulate)
[Replicated from Dev-Rendering checkin CL# 2989752 by Olaf]
#rb olaf.piesche
#tests Tested the command in Agora and verified that GPU particles were not being drawn
Change 2992158 on 2016/05/26 by Michael.Noland
Rendering: Added a cvar that controls unbinding of all texture resources between materials changes in the DX11 renderer (r.UnbindResourcesBetweenDrawsInDX11) to improve the readability of GPA captures
Note: This will probably be moved to be on when markers are on rather than an independent cvar, but it is currently separate for testing
#codereview marcus.wassmer
#rb none
#tests Ran with the var off and on and verified in GPA captures
Change 2991645 on 2016/05/26 by Andrew.Grant
Fix for filesize returning 0 if file not found
#rb none
#tests bugit now works
#jira OR-20488
Change 2991290 on 2016/05/26 by Mieszko.Zielinski
Added a static flag to NavigationSystem that can be used to short-circuit dynamic navigation related functions #UE4
Will save some perf on PS4 in Orion, since clients do use navigation system there.
#rb Lukasz.Furman
#test golden path
Change 2991288 on 2016/05/26 by Mieszko.Zielinski
CL#2990243 manually redone in for Orion #UE4
Original description:
> Fixed behavior tree observers not being applied correctly
#rb Lukasz.Furman
#test golden path
Change 2991271 on 2016/05/26 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2990688
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2991269 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2991185 on 2016/05/26 by Mieszko.Zielinski
Fixed UAITask_MoveTo not releasing paths properly, or clearing path observing when task is being reused #UE4
Also, fixed FNavigationPath::DoneUpdating not converting ENavPathUpdateType properly
#rb Lukasz.Furman
#test golden path
Change 2990788 on 2016/05/25 by Marcus.Wassmer
Fix deprecation warning
#rb none
#test none
Change 2990582 on 2016/05/25 by Marcus.Wassmer
Now that render commands are enqueued again on servers, we shouldn't outright crash if an allocation gets to nullrhi
#codereview Dmitry.Rekman
#rb none
#test none
Change 2990450 on 2016/05/25 by Martin.Mittring
OR-22233 GPU Sprites invisible unless solo'd
#rb:David.Hill
#jira:OR-22233
#test:PC
Change 2990199 on 2016/05/25 by Marcus.Wassmer
Remove experimental HDR support in tonemapper. Brings tonemapper cost back down into line
#rb none
#codereview Michael.Noland,Brian.Karis
Change 2989908 on 2016/05/25 by Andrew.Grant
Changed warning about DDC cache full to Display
#rb none
#tests compiled
Change 2989903 on 2016/05/25 by Mieszko.Zielinski
Made BT component ignore subtree injection request if relevant BT nodes already use indicated asset #UE4
#rb Lukasz.Furman
#test golden path
Change 2989795 on 2016/05/25 by Ryan.Gerleve
Fix for storing the correct URL on the pending net game for replay playback.
Re-implemented this fix from Dev-Networking CL 2981198, fixes deathcam after latest main integration.
#tests played a reply, enabled deathcam
#rb none
Change 2989483 on 2016/05/25 by David.Ratti
ToggleJuggernaut cheat
#rb danY
#tests pie
Change 2989384 on 2016/05/25 by Graeme.Thornton
Extra chunk decryption tests and logging to help diagnose the random failure we're seeing in the wild
- retry decrypt three times
- after the first attempt, re-decrypt original source, just incase the decrypt cache has been corrupted
#tests cooked pc client + dedicated server
#rb robert.manuszewski
Change 2989225 on 2016/05/24 by Dmitry.Rekman
Fix rare crash in Linux threading code (OR-22193).
- Sometimes, for some reason, freeing memory for an alternate thread from a thread in PostRun() can crash because the jemalloc apparently does not have an arena for this thread anymore.
- This change works around the problem by allocating the said memory statically in LinuxThread class.
#rb none
#codereview Bob.Tellez, David.Vossel
#tests Compiled Linux server, started it.
Change 2988768 on 2016/05/24 by Uriel.Doyon
Added support for SkinnedMesh in the texture streaming MeshCoordSize accuracy viewmode.
#RB marcus.wassmer
#tests loaded game and editor
Change 2988462 on 2016/05/24 by Mieszko.Zielinski
Added a piece of logging to both scenarios or movement aborting in UPathFollowingComponent::UpdatePathSegment to be able to tell them appart while reading the log #Orion
#rb Lukasz.Furman
#test golden path
Change 2988036 on 2016/05/24 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2987910
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2988035 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2987457 on 2016/05/23 by Mieszko.Zielinski
Redone changes from CL#2981193 #UE4
Original description: fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes)
#rb Lukasz.Furman
#test golden path
Change 2987388 on 2016/05/23 by Olaf.Piesche
Replicating CL 2985226; don't push mesh emitter transform to pixel shader unless used in the material graph
#rb marcus.wassmer
#tests editor game PC
Change 2986255 on 2016/05/22 by Mieszko.Zielinski
Manually resolving conflict that stoped robomerge from Main to DG #Orion
#rb none
#test compile
#codereview Jason.Bestimt
Change 2986209 on 2016/05/21 by Andrew.Grant
Removed hitchunter logging from http thread
#rb none
#tests compiled
Change 2986202 on 2016/05/21 by Andrew.Grant
Merging //UE4/Main @ 2981382 from //UE4/Orion-Staging
#rb none
#tests engine & game QA passed, built locally
Change 2985899 on 2016/05/20 by Rob.Cannaday
Move PS4 HTTP processing to HTTP thread
#tests golden path
#rb dmitry.rekman
Change 2985884 on 2016/05/20 by Bart.Bressler
Fix issue where oodle wasn't enabled in shipping correctly.
#rb john.pollard
#tests ran orion server in shipping and connecting with a client
Change 2985778 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2985753
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2985774 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985760 on 2016/05/20 by Rob.Cannaday
Second pass on HTTP threading
Move threaded objects into separate class, FHttpThread. FCurlHttpThread derives from FHttpThread and the curl multi work is performed in FCurlHttpThread
Removed code that limited number of curl easy requests that were added to the multi simultaneously / per frame as now that curl work is performed on a separate thread the performance no longer directly impacts the game thread
Remove lock from CurlHttp and instead of use FThreadSafeCounter
#rb dmitry.rekman
#tests golden path (PC & PS4)
Change 2985658 on 2016/05/20 by John.Pollard
Fixed issue with cached http replay results making time go backwards
#rb none
#tests replays
Change 2985640 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: david.ratti
Ability System: call OnRemove event for gameplay cues that are mispredicted. Previously if a looping GC was predictively added, it would only get the OnRemove event if the replicated GC was removed. In the case of a mis prediction there is no replicated version, so the OnRemove was never called and cleanup was never happening.
#rb FrankG
#tests multi pie
#ROBOMERGE-SOURCE: CL 2985638 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985631 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: david.ratti
Fast TArray serialization fixes:
1. Fix case where Array ReplicationKey has changed no items between base and current state have changed. Previously server would early out and not send an update: but this needs be sent so that the client can potentially perform an implicit delete.
This fixes the case where client TArray would have stale items hanging around until a new update was sent (which could potentially be never).
2. Fix case where an array item would be deleted by both explicit delete and implicit delete: causing other items in the array to be deleted (!).
#rb frankG, pollard
#tests golden path
[CodeReviewed] Bob.Tellez, Billy.Bramer, Ben.Zeigler
#ROBOMERGE-SOURCE: CL 2985629 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985542 on 2016/05/20 by Daniel.Lamb
Added per package stats.
Optimized cooker, moved FTextureSource::Compress from UTexture::Presave to UTexture::Serialize so we can avoid it in the cooker.
#rb Robert.Manuszewski, Andrew.Grant, Marcus.Wassmer
#test cook paragon, save packages paragon editor
Change 2985152 on 2016/05/20 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2985092
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2985150 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2985001 on 2016/05/20 by Chris.Wood
Move fullcrashdump location for Paragon from QA deptartment storage to Paragon project storage. Changes CrashReportClient config only.
Change 2984839 on 2016/05/20 by Robert.Manuszewski
Renaming some confusing function names and updating messages related to exception handling.
#rb none
#tests Cooked Win64 Client and Server, Tested crash reporting in cooked game
Change 2984517 on 2016/05/19 by Mike.Larson
Adjusted 'PlatformHeadroom' audio volume settings to DB-3 on both Windows and PS4
Change 2983932 on 2016/05/19 by jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2983814
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2983921 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
#CodeReview: jason.bestimt
Change 2983864 on 2016/05/19 by Wes.Hunt
Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS...
#codereview:steve.robb
#rb none
#tests compiled Orion Editor Win64
Change 2983780 on 2016/05/19 by Wes.Hunt
Modernize FAnalyticsEventAttribute usage. #jira UE-30551.
Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings.
* The Name must be convertible to a string
* The value must be convertible to a string via an AnalyticsConversion::ToString() overload.
* Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more.
Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of:
RecordEvent("EventName", MakeAnalyticsEventAttributeArray(
"Attr1", false,
"Attr2", 42.0,
"Attr3", SomeMap,
"Attr4", SomeArray);
#codereview:steve.robb,david.decker,sam.spiro
SamS - you've been asking for better attribute conversion facilities for years. Finally got it, haha.
SteveR - I only added copy/move ctors to FAnalyticsEventAttribute. Do I also need to explicitly add the copy/move assignment ops?
DavidD - This will allow you to create attributes a lot more easily and efficiently now.
#rb steve.robb,david.decker
#tests orion editor runs
Change 2983702 on 2016/05/19 by Daniel.Lamb
Renumbered cooking stats to be more correct
#rb Wes.Hunt
#test cook paragon.
Change 2983392 on 2016/05/19 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2983342
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2983391 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2982910 on 2016/05/18 by Marcus.Wassmer
Don't fail entire deployments because obsolete manifest can't find the files to delete
#rb none
#codereview Peter.Sauerbrei
#test none
Change 2982902 on 2016/05/18 by Marcus.Wassmer
Disable HTTP networkfilesystem because it constantly crashes cookonthefly servers. platform team is aware
#rb none
#test cookonthefly
Change 2982837 on 2016/05/18 by David.Ratti
Spot merge safety check in ~FAgggregator. From BobT CL 2966255.
#rb none
#tests compile
Change 2982723 on 2016/05/18 by Wes.Hunt
Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #jira UE-30559
#rb none
#tests none
Change 2982716 on 2016/05/18 by Wes.Hunt
Remove Analytics code to divert legacy code to source data collector. #jira UE-27794
#rb none
#tests run orion editor
Change 2982707 on 2016/05/18 by Wes.Hunt
AnalyticsET support for arbitrary Json events. #jira UE-30375
* AnalyticsET supports a new API, RecordEventJson.
* API supports rvalue refs to avoid unnecessary copies of the attribute array.
/**
* Sends an event where each attribute value is expected to be a string-ified Json value.
* Meaning, each attribute value can be an integer, float, bool, string,
* arbitrarily complex Json array, or arbitrarily complex Json object.
*
* The main thing to remember is that if you pass a Json string as an attribute value, it is up to you to
* quote the string, as the string you pass is expected to be able to be pasted directly into a Json value. ie:
*
* {
* "EventName": "MyStringEvent",
* "IntAttr": 42 <--- You simply pass this in as "42"
* "StringAttr": "SomeString" <--- You must pass SomeString as "\"SomeString\""
* }
*
* @param EventName The name of the event.
* @param AttributesJson array of key/value attribute pairs where each value is a Json value (pure Json strings mustbe quoted by the caller).
*/
virtual void RecordEventJson(const FString& EventName, TArray<FAnalyticsEventAttribute>&& AttributesJson) = 0;
#codereview:david.decker
#rb david.decker
#tests run orion editor
Change 2982057 on 2016/05/18 by David.Ratti
GameplayCue loading - fix issue where GCM would invoke fully loaded when there were still UGameplayCueNotify_Statics to be loaded.
#rb Ori.Cohen
#tests golden path
Change 2981943 on 2016/05/18 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2981896
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2981942 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2981812 on 2016/05/18 by Robert.Manuszewski
Suspending thread heartbeat when a message box is being displayed. Fixes false positives in hand detection.
#rb Steve.Robb
#tests Cooked and launched win64 client and server
Change 2981718 on 2016/05/18 by Robert.Manuszewski
Changed how suspending/resuming thread heartbeat works: it will no longer create a heartbeat for a thread that hasn't sent any heartbeats yet.
Reimplementing CL #2951209 from Dev-Core
#rb Steve.Robb
#tests None
Change 2981108 on 2016/05/17 by Wes.Hunt
Fix perfect forwarding constructor in CookStats stuff.
#rb none
#tests investigating assembly output of cook stats code.
#codereview:daniel.lamb
Change 2981028 on 2016/05/17 by Nick.Atamas
Fixing hittest grid with virtual cursor.
We now prefer any directly hit-test widgets with higher layer ids to those discovered through a distance search.
#rb none
#test Game menus
#codereview Cody.Haskell,Matt.Kuhlenschmidt,Sammy.James,Dan.Hertzka
Change 2980963 on 2016/05/17 by Marc.Audy
Fix shadowed variable
#rb None
#tests Compile
Change 2980917 on 2016/05/17 by Daniel.Lamb
Removed script packages from unable to find packages warning.
#rb Andrew.Grant
#test cook paragon
Change 2980838 on 2016/05/17 by Marc.Audy
Shave some time out of UPlayerInput::ProcessInputStack
#rb Michael.Noland
#tests Input works, performance improvement
Change 2980710 on 2016/05/17 by Michael.Noland
Engine: Added helpful comments to the LOD visualization colors
#rn
#rb david.ratti
#tests none
Change 2980706 on 2016/05/17 by Michael.Noland
Engine: Removed unused setting bAllowDebugViewmodesOnConsoles (replaced some time ago by r.ForceDebugViewModes)
#rn
#rb david.ratti
#tests Ran a cooked build with only r.ForceDebugViewModes=1 and confirmed that debug view modes still worked
Change 2980703 on 2016/05/17 by Michael.Noland
Blueprints: Added support for emitting the Blueprint Description as tooltip metadata for the compiled Blueprint class (displayed in class pickers, etc...)
#rb david.ratti
#tests Tested on a Blueprint in Paragon
#codereview mike.beach
#rn
Change 2980702 on 2016/05/17 by Michael.Noland
Rendering: Added ProfileGPU to the console autocomplete list
#rb david.ratti
#tests Tried typing Profile in the console and verified that the completion worked and tooltip was displayed
#rn
Change 2980697 on 2016/05/17 by Michael.Noland
Landscape: Added a 'resource' name for landscape to improve display in the mesh summary list of ProfileGPU
#codereview jack.porter
#rb david.ratti
#tests Used ProfileGPU while standing on some terrain
#rn
Change 2980692 on 2016/05/17 by Michael.Noland
Landscape: Added a scalability CVar for landscape LOD biasing (r.LandscapeLODBias)
#codereview jack.porter
#rb david.ratti
#tests Ran around in Paragon with various r.LandscapeLODBias values
#rn
Change 2980630 on 2016/05/17 by Daniel.Lamb
Added more warnings to help track down crash in paragon cook.
#rb Andrew.Grant
#test cook orion
Change 2980585 on 2016/05/17 by Jamie.Dale
Fixed an issue where the editable text caret could become invisible when using UI scaling
It's now clamped to a min draw size of 1px.
#jira OR-18524
#rb none
#tests Built and ran the game. Verified that the caret now appears where it didn't before.
Change 2979908 on 2016/05/16 by jason.bestimt
#ORION_MAIN - Merge 26.2 @ CL 2979859
#RB:none
#Tests:none
#CodeReview: jaymee.stanford
Change 2979472 on 2016/05/16 by Nick.Atamas
Added support for not clearing the render target when rendering a widget.
#rb Nick.Darnell
#test PIE w/ minimap
Change 2979434 on 2016/05/16 by Dmitry.Rekman
Server: Add reporting of frame time without sleep.
- Also add NumClients to each event so it's easy to filter events that didn't have 10 clients.
#rb none
#tests Built Linux server, ran match on a compatible content.
Change 2979267 on 2016/05/16 by Dmitry.Rekman
Improvements in server hitch hunting / alerting.
- Add an analytics event for unplayable conditions.
- Send % of frames we hitched and time we spent hitching.
- Send more detail about the machine.
#rb none
#tests Built Linux server and Windows client, played a match.
Change 2979030 on 2016/05/16 by Andrew.Grant
Added quick way to reasign GUIDs (-AssignNewMapGuids) to map objects
#rb none
#tests used in editor
Change 2978914 on 2016/05/16 by David.Ratti
Fix issue causing gameplay cue parameters not properly being passed through in cases where GA adds/removes gameplay cue.
#rb DanY
#tests multi pie
#codereview Dave.Ewing
Change 2978681 on 2016/05/16 by Martin.Wilson
Performance improvements for recalc required bones, removed a lot of unneeded array iterating. Reduces cost to roughly 30% of original code.
#rb Thomas.Sarkanen
#tests PS4 games, ded server
Change 2978098 on 2016/05/15 by Andrew.Grant
Clearer error message
#rb none
#tests ran game
Change 2977597 on 2016/05/13 by Olaf.Piesche
Merging using //UE4/Dev-Rendering->//Orion/Dev-General; fixes for beam particle selection code
#rb martin.mittring
#tests PC editor game
Change 2977531 on 2016/05/13 by Daniel.Lamb
Added cooking stat for PreSave callback.
#rb Wes.Hunt
#test cook paragon
Change 2977340 on 2016/05/13 by jason.bestimt
#ORION_MAIN - Merge 26@ CL 2977290
#RB:none
#Tests:none
#ROBOMERGE-SOURCE: CL 2977329 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
#CodeReview: jason.bestimt
Change 2977139 on 2016/05/13 by Jason.Bestimt
#ROBOMERGE-AUTHOR: jon.lietz
OR-20830 only allow the periodic effects from a gameplay volume trigger first application triggers on BeginOverlap and Enable volume.
#RB DaveR
#test tracked when the poinson from an active card is applied and not applied
#ROBOMERGE-SOURCE: CL 2977135 in //Orion/Main/...
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2976741 on 2016/05/13 by David.Ratti
GameplayCues that are triggered off animation notifies on the non-primary mesh will now properly attach to that non primary mesh.
#rb lietz
#test pie, golden path
Change 2976715 on 2016/05/13 by Jason.Bestimt
#ROBOMERGE-AUTHOR: andrew.grant
[NULL MERGE]
Fix for bad merge
#rb none
#tests built automation
#ROBOMERGE-SOURCE: CL 2976680 in //Orion/Release-0.26/... via CL 2976712 via CL 2976713 via CL 2976714
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
Change 2976679 on 2016/05/13 by Robert.Manuszewski
Tweaks to DLL injection detection code
#rb Steve.robb
#tests cooked Win64 client
Change 2976670 on 2016/05/13 by Robert.Manuszewski
UAT: Arxan upgrade to 3.9.1
#rb Ben.Marsh
#tests Win64 cooked client (test config)
Change 2976654 on 2016/05/13 by Graeme.Thornton
Shadowed variable warning fix
#rb none
#tests compiled win64/ps4 client
Change 2976645 on 2016/05/13 by Graeme.Thornton
Refactoring of resident mip calculations
- Cooker takes into account the same compression block thresholds that the runtime previously used
- Runtime doesn't attempt to calculate which mips to perma-load, but just looks at the ones whose bulk data is flagged as end-of-file or seperate-file
#rb nick.penwarden
#tests win64/ps4 client builds, golden path
[CL 3000872 by Andrew Grant in Main branch]
2016-06-04 01:20:53 -04:00
|
|
|
FSlowHeartBeatScope SuspendHeartBeat;
|
|
|
|
|
SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Unable to write to Settings Directory", TCHAR_TO_UTF8(*UProjectPath), NULL);
|
2014-07-30 23:26:47 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FConfigFile ConfigFile;
|
|
|
|
|
FString ConfigPath = FString(FPlatformProcess::ApplicationSettingsDir()) / FString(TEXT("UnrealEngine")) / FString(TEXT("Install.ini"));
|
|
|
|
|
ConfigFile.Read(ConfigPath);
|
|
|
|
|
|
|
|
|
|
FConfigSection &Section = ConfigFile.FindOrAdd(TEXT("Installations"));
|
|
|
|
|
|
|
|
|
|
// @todo: currently we can enumerate only this installation
|
|
|
|
|
FString EngineDir = FPaths::EngineDir();
|
|
|
|
|
|
|
|
|
|
FString EngineId;
|
|
|
|
|
const FName* Key = Section.FindKey(EngineDir);
|
|
|
|
|
if (Key)
|
|
|
|
|
{
|
|
|
|
|
EngineId = Key->ToString();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (!OutInstallations.FindKey(EngineDir))
|
|
|
|
|
{
|
|
|
|
|
EngineId = FGuid::NewGuid().ToString(EGuidFormats::DigitsWithHyphens);
|
|
|
|
|
Section.AddUnique(*EngineId, EngineDir);
|
|
|
|
|
ConfigFile.Dirty = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (!EngineId.IsEmpty() && !OutInstallations.Find(EngineId))
|
|
|
|
|
{
|
|
|
|
|
OutInstallations.Add(EngineId, EngineDir);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ConfigFile.Write(ConfigPath);
|
|
|
|
|
|
|
|
|
|
IFileManager::Get().Delete(*UProjectPath);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::IsSourceDistribution(const FString &RootDir)
|
|
|
|
|
{
|
|
|
|
|
// Check for the existence of a GenerateProjectFiles.sh file. This allows compatibility with the GitHub 4.0 release.
|
|
|
|
|
FString GenerateProjectFilesPath = RootDir / TEXT("GenerateProjectFiles.sh");
|
|
|
|
|
if (IFileManager::Get().FileSize(*GenerateProjectFilesPath) >= 0)
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Otherwise use the default test
|
|
|
|
|
return FDesktopPlatformBase::IsSourceDistribution(RootDir);
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::VerifyFileAssociations()
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
STUBBED("FDesktopPlatformLinux::VerifyFileAssociationsg");
|
|
|
|
|
return true; // for now we are associated
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::UpdateFileAssociations()
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
//unimplemented();
|
|
|
|
|
STUBBED("FDesktopPlatformLinux::UpdateFileAssociations");
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::OpenProject(const FString &ProjectFileName)
|
|
|
|
|
{
|
|
|
|
|
// Get the project filename in a native format
|
|
|
|
|
FString PlatformProjectFileName = ProjectFileName;
|
|
|
|
|
FPaths::MakePlatformFilename(PlatformProjectFileName);
|
|
|
|
|
|
|
|
|
|
STUBBED("FDesktopPlatformLinux::OpenProject");
|
2014-06-05 17:01:39 -04:00
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FDesktopPlatformLinux::RunUnrealBuildTool(const FText& Description, const FString& RootDir, const FString& Arguments, FFeedbackContext* Warn)
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
// Get the path to UBT
|
|
|
|
|
FString UnrealBuildToolPath = RootDir / TEXT("Engine/Binaries/DotNET/UnrealBuildTool.exe");
|
|
|
|
|
if(IFileManager::Get().FileSize(*UnrealBuildToolPath) < 0)
|
|
|
|
|
{
|
|
|
|
|
Warn->Logf(ELogVerbosity::Error, TEXT("Couldn't find UnrealBuildTool at '%s'"), *UnrealBuildToolPath);
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Write the output
|
|
|
|
|
Warn->Logf(TEXT("Running %s %s"), *UnrealBuildToolPath, *Arguments);
|
|
|
|
|
|
|
|
|
|
// launch UBT with Mono
|
|
|
|
|
FString CmdLineParams = FString::Printf(TEXT("\"%s\" %s"), *UnrealBuildToolPath, *Arguments);
|
|
|
|
|
|
|
|
|
|
// Spawn it
|
|
|
|
|
int32 ExitCode = 0;
|
|
|
|
|
return FFeedbackContextMarkup::PipeProcessOutput(Description, TEXT("/usr/bin/mono"), CmdLineParams, Warn, &ExitCode) && ExitCode == 0;
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
2014-09-18 15:12:13 -04:00
|
|
|
bool FDesktopPlatformLinux::IsUnrealBuildToolRunning()
|
|
|
|
|
{
|
|
|
|
|
// For now assume that if mono application is running, we're running UBT
|
|
|
|
|
// @todo: we need to get the commandline for the mono process and check if UBT.exe is in there.
|
|
|
|
|
return FPlatformProcess::IsApplicationRunning(TEXT("mono"));
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-05 17:01:39 -04:00
|
|
|
FFeedbackContext* FDesktopPlatformLinux::GetNativeFeedbackContext()
|
|
|
|
|
{
|
2014-07-30 23:26:47 -04:00
|
|
|
//unimplemented();
|
|
|
|
|
STUBBED("FDesktopPlatformLinux::GetNativeFeedbackContext");
|
|
|
|
|
return GWarn;
|
2014-06-05 17:01:39 -04:00
|
|
|
}
|
|
|
|
|
|
2015-01-16 13:29:54 -05:00
|
|
|
FString FDesktopPlatformLinux::GetUserTempPath()
|
|
|
|
|
{
|
2015-01-16 16:20:36 -05:00
|
|
|
return FString(FPlatformProcess::UserTempDir());
|
2015-01-16 13:29:54 -05:00
|
|
|
}
|
|
|
|
|
|
2014-06-05 17:01:39 -04:00
|
|
|
#undef LOCTEXT_NAMESPACE
|