Peter Knepley
a761df772b
Fix slate styles not working with SlateBrushAssets
...
Merging 2686963
//depot/UE4-UT/...
to //depot/UE4/...
#codereview Nick.Atamas
[CL 2686975 by Peter Knepley in Main branch]
2015-09-10 16:22:56 -04:00
Matt Kuhlenschmidt
65e46bcce8
Merging CL 2684004 using UE4_to_UE4-Orion
...
Implemented a basic slate resource handle for fast access without doing map lookups from Brush -> Rendering resource. Not hooked up to anything yet
[CL 2686668 by Matt Kuhlenschmidt in Main branch]
2015-09-10 13:50:53 -04:00
Gil Gribb
5baba952a3
UE4 - Fixed malloc churn problem with FHittestGrid::FCachedWidget
...
[CL 2683195 by Gil Gribb in Main branch]
2015-09-08 12:24:26 -04:00
umerov1999
5eebab6b1e
PR #1525 : Update SlateDynamicImageBrush.cpp (Contributed by umerov1999)
...
[CL 2683115 by Matt Kuhlenschmidt in Main branch]
2015-09-08 11:31:52 -04:00
Gil Gribb
baa94463d2
UE4 - Fixed slate vertex and index recycling to not grow each batch to be the size of the largest one.
...
[CL 2682976 by Gil Gribb in Main branch]
2015-09-08 09:52:18 -04:00
Marc Audy
d25958e352
Use SizeSquared comparisons instead of Size where trivially replaceable
...
[CL 2681970 by Marc Audy in Main branch]
2015-09-06 12:42:18 -04:00
Matt Kuhlenschmidt
190b803d56
Merged CL 2672323 from Orion
...
Fix multithreaded rendering crashes due to race conditions in the Slate renderer
[CL 2672334 by Matt Kuhlenschmidt in Main branch]
2015-08-28 11:22:48 -04:00
Michael Noland
105bca4467
Slate: Changed a local reserve in HittestGrid::GetBubblePath to use an inline allocation
...
[INTEGRATE] Change 2668351 by Michael.Noland@mnoland-T2784-HDepot on 2015/08/25 16:46:43
[CL 2668704 by Michael Noland in Main branch]
2015-08-25 19:44:22 -04:00
Gil Gribb
048abc0de6
UE4 - merged fix for slate creating stats before main starts
...
[CL 2667507 by Gil Gribb in Main branch]
2015-08-25 10:25:27 -04:00
Michael Noland
37c914d1e7
Slate: Removed an unnecessary pass-by-value in FindPathToWidget
...
[INTEGRATE] Change 2667195 by Michael.Noland@mnoland-T2784-HDepot on 2015/08/25 02:10:52
[CL 2667197 by Michael Noland in Main branch]
2015-08-25 02:11:58 -04:00
Nick Atamas
312c9b7cea
Integrating CL 2655118, 2655170 from UE4-Oriont/... to UE4/...
...
Now using FPopupMethodReply instead of EPopupMethod to correctly drive throttling.
[CL 2666291 by Nick Atamas in Main branch]
2015-08-24 13:22:04 -04:00
Nick Darnell
0933d8f561
UMG/Slate - Continuing to itterate on performance and improving the invalidation panel. Enhanced the rendering pipeline to allow cached buffers to be passed along with an offset so that we could do a final matrix transform on it if need be. Fixing a rather large memory leak on the invalidation panels never being able to re-use old element lists because they were always being used by the render thread. Adding more stats. The PS4 BeginNamedEvent calls now properly respect the color being passed as an argument and will display it in Razor when in arguement coloring mode. Widgets now know what class created them, in all but shipping. Very useful for logging stat/debugging information in a non-editor build.
...
[CL 2663649 by Nick Darnell in Main branch]
2015-08-20 19:00:36 -04:00
Matt Kuhlenschmidt
4053e72790
Added a way to globally invalidate all invalidation panels.
...
This is expensive and should only be used when there is some major change to a resource that could be held onto by the invalidation panels
Merged from Orion CL 2659385
[CL 2659740 by Matt Kuhlenschmidt in Main branch]
2015-08-18 15:15:01 -04:00
Nick Darnell
6688b23a22
Slate - Updating the standalone D3D and OpenGL Slate renderers to do a similar sRGB packing in the vertex buffer color, as well as a sRGB standards compliant transform in the pixel shader instead of the pow(color, 2.2) gamma conversion it was previously performing. Since Photoshop does not display in the Mac's native gamma space of 2.2, and instead sticks to the sRGB standard, I've made it so the standalone OpenGL renderer also uses the sRGB standard. Probably going to do the same in the RHI version as it doesn't make a ton of sense to vary it across platforms for Mac when Photoshop doesn't vary.
...
#codereview justin.sargent
#pandacake
[CL 2657733 by Nick Darnell in Main branch]
2015-08-17 09:40:01 -04:00
Nick Darnell
3669cd22f7
UMG/Slate - Re-enabling border drawing.
...
[CL 2656329 by Nick Darnell in Main branch]
2015-08-14 13:33:42 -04:00
Nick Darnell
7bdd756bcb
Build fix for real this time.
...
[CL 2656179 by Nick Darnell in Main branch]
2015-08-14 11:19:09 -04:00
Nick Darnell
b42a7c327c
Build error fix.
...
[CL 2656156 by Nick Darnell in Main branch]
2015-08-14 11:01:33 -04:00
Nick Darnell
f7a425e477
UMG / Slate - Now reporting cached materials and textures to prevent garbage collection of cached resources. Additionally moving the resource proxy creation to inside of the Make* functions in order to have a better stack trace when a junk GC'ed resource is accessed.
...
[CL 2656118 by Nick Darnell in Main branch]
2015-08-14 10:40:05 -04:00
Nick Darnell
d480d098c7
UMG / Slate - Some cleanup in a few classes.
...
[CL 2656106 by Nick Darnell in Main branch]
2015-08-14 10:36:03 -04:00
Nick Darnell
8607146449
UMG/Slate - The invalidation panel can now cache a GPU Buffer for a set of drawable elements, this avoids needing to go through the element batcher which can be very expensive on large UI set. Currently only supported on the RHI Renderer. This change required we introduce a sort of logical layering system into the rendering stack for Slate, so that volatile elements that could expand to be N long, could be sorted relative to their parent in terms of layer id, but without knowing that ahead of time, it became impossible to properly sort child elements that came after the volatile set. The logical layering avoids that by allowing us to sort each logical group independently, and as we traverse the tree only sort along each branch.
...
[CL 2655144 by Nick Darnell in Main branch]
2015-08-13 16:03:06 -04:00
Nick Darnell
2b3b3b19de
UMG / Slate - There are now several low level flags on widgets to help reduce calls to virtual functions that are not implemented, bCanEverTick, bCanEverFocus, bCanHaveChildren, possibly more in the future.
...
[CL 2655142 by Nick Darnell in Main branch]
2015-08-13 16:02:46 -04:00
Bob Tellez
0960cb8b73
[AUTOMERGE]
...
#UE4 Using Reset instead of Empty to clear vert batch lists since the number of elements in the list isnt necessarily the max
#codereview Matt.Kuhlenschmidt
--------
Integrated using branch Ue4-To-UE4-Fortnite-Simple (reversed) of change#2644284 by Bob.Tellez on 2015/08/04 18:59:06.
[CL 2644285 by Bob Tellez in Main branch]
2015-08-04 18:59:24 -04:00
Justin Sargent
4b461a5d42
Exposed the ability to customize the keyboard focus brush used by default by all SWidgets.
...
Merging using UE4-To-UE4-LauncherDev
[CL 2632875 by Justin Sargent in Main branch]
2015-07-24 17:32:35 -04:00
Jamie Dale
17caf2d389
Removed SLATE_TEXT_ATTRIBUTE and SLATE_TEXT_ARGUMENT
...
They were deprecated in 4.8, and have been removed for the 4.10 release.
#codereview Matt.Kuhlenschmidt
[CL 2629139 by Jamie Dale in Main branch]
2015-07-22 13:08:01 -04:00
John Barrett
562d137362
Optimized Slate font caching code and refactored related classes.
...
- Check whether a character exists within a font set before attempting to load it, and replace with substitute character if not, to minimize FreeType API calls and excessive caching
- Added ability to customize font fallback level; normally if a character does not exist in a font, a localization fallback font set is checked, and then a last resort font set, which can potentially be expensive
- Optimized font texture atlas, to store empty/filled slots in linked lists, instead of in a single binary tree with expensive searches, and stopped tracking empty slots smaller than 2x2 pixels
- Optimized some unnecessary calls to FreeType API
[CL 2629056 by John Barrett in Main branch]
2015-07-22 12:12:02 -04:00