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
Nick Darnell
f44fdf1984
UMG - Rolling back the change to restrict access to the image property on FSlateBrush. The change is breaking too much old code with no easy way to upgrade people.
...
#jira UE-19415
[CL 2639173 by Nick Darnell in Main branch]
2015-07-30 15:04:40 -04:00
Nick Darnell
d24730dbf9
Slate - Whenever the game viewport is torn down, we now immediately flush the accessed resource cache so that any dynamically created materials have an opportunity to be GCed when the game is being torn down to prevent a crash when the end play code does a check against non-collected objects still referencing the dying world.
...
#jira UE-19382
[CL 2638945 by Nick Darnell in Main branch]
2015-07-30 12:51:53 -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
Matt Kuhlenschmidt
f039bc5c9b
Remove Slate Stats out of core and add a verbose stat for high frequency Slate stats.
...
[CL 2622423 by Matt Kuhlenschmidt in Main branch]
2015-07-15 16:55:37 -04:00
Nick Darnell
228da2c049
UMG - Now defaulting to sRGB space in the color picker for most colors on widgets and slate brushes.
...
[CL 2622377 by Nick Darnell in Main branch]
2015-07-15 16:40:46 -04:00
Nick Darnell
5e40aff87f
Slate - Fixing several issues involving multitouch. Data stored invloving widgets under cursor are now bucketed based on user and cursor index so that multiple pointer devices, as well as index can independently hold seperate widget under cursor data.
...
[CL 2622199 by Nick Darnell in Main branch]
2015-07-15 15:06:13 -04:00
Michael Noland
c8662fa435
Editor: Added responsive crushing of the XYZ labels and margin in property editor vector/rotator rows, allowing them to be editable at much lower widths
...
[CL 2620995 by Michael Noland in Main branch]
2015-07-14 17:48:50 -04:00
Matt Kuhlenschmidt
15154d1468
Added missing files
...
[CL 2620860 by Matt Kuhlenschmidt in Main branch]
2015-07-14 16:33:27 -04:00
Matt Kuhlenschmidt
5d44808402
Added a safe way to delete a dynamic slate brush that may be in use. Fixed up use cases of unsafe deletion
...
Fixes https://jira.ol.epicgames.net/browse/UE-18531
[CL 2620698 by Matt Kuhlenschmidt in Main branch]
2015-07-14 15:36:51 -04:00
Nick Darnell
ebb2a6e41a
Slate - Custom Draw elements no longer are attempted to be early clipped using the known scissor rect before going through the element batcher, since their clip rect info isn't valid we just ignore doing this step for those elements.
...
#codereview nick.atamas
[CL 2620457 by Nick Darnell in Main branch]
2015-07-14 13:43:48 -04:00
Steve Robb
72dec33d8f
ensureOnce is now ensure.
...
ensure is now ensureAlways.
Redundant ensureMsg removed and replaced with ensureMsgf.
'debug ensureAlways' command added.
#codereview robert.manuszewski
#platformnotify josh.adams
[CL 2616422 by Steve Robb in Main branch]
2015-07-10 05:31:32 -04:00
Nick Darnell
3a0214070f
Slate/UMG - Continuing to work on the Invalidation Panel, correctly offsetting volatile widgets to render from the true last hit testable index that their potentinally cached parent used. Also introducing a way to cache transforms relative to the parent so that widgets that fly around the screen but otherwise don't change shape...etc can be cached.
...
[CL 2615587 by Nick Darnell in Main branch]
2015-07-09 15:28:24 -04:00
Matthew Griffin
d9dacaa8b6
Fixed non-unity build error
...
[CL 2613458 by Matthew Griffin in Main branch]
2015-07-08 09:42:33 -04:00
Nick Darnell
35045ac11f
UMG - Continuing to work on the invalidation panel, there's now a caching mechanism it uses to allow aspects of the hit testing to be recreated every frame. Additionally, started working on a test suite for it in the Slate Viewer. A simple proof of concept of invalidating a hit testable control can be seen on button.
...
#codereview nick.atamas, matt.Kuhlenschmidt, justin.Sargent
[CL 2612788 by Nick Darnell in Main branch]
2015-07-07 15:50:03 -04:00
Andrew Brown
77cba25d7e
[INTEGRATE] merge ue4<-ue4-launcherDev cl 2612250
...
[CL 2612251 by Andrew Brown in Main branch]
2015-07-07 09:30:28 -04:00
Nick Darnell
5d1f0e28f3
UMG/Slate - Initial version of SInvalidationPanel! Has several limitations, but permits UMG and Slate to effectively "Freeze" UI, caching a great deal of the processing, computation...etc required every time slate paints. Cached widgets do not get prepass, tick, or paint until their parent SInvalidationPanel is invalidated. Widgets that change often, can be marked as Volatile and get treated special when used in conjunction with the SInvalidationPanel, they get stored seperately and get prepass/tick/paint like normal, but using the cached geometry of their container they origionally were computed to have. Changes to their desired size will not change the invalidation of the rest of the panel, a manual invocation would be required for that.
...
When used effectively the SInvalidationPanel can shave milliseconds off your Slate time on a complicated hierarchy of widgets. Provided those widgets don't need hit testing or input, this can be a very useful widget to use. Scenarios like a HUD are the primary target of this panel, future advances will hopefully make it possible to be used in conjunction with a UI that needs input.
#codereview matt.kuhlenschmidt, nick.atamas
[CL 2609569 by Nick Darnell in Main branch]
2015-07-02 15:32:02 -04:00
Keli Hlodversson
8d353a5b02
[INTEGRATE] Merging CL#2604183 using UE4-To-UE4-LauncherDev:
...
Allow using the native mouse cursor handle from CEF.
JIRA: OPP-3734
rb: Justin.Sargent
#platformnotify Josh.Adams
[CL 2605865 by Keli Hlodversson in Main branch]
2015-06-30 11:54:52 -04:00
Nick Darnell
d0a3b00ee1
Slate - Fixing the standalone slate renderers, that still need the vertex colors to come down in linear space.
...
[CL 2603271 by Nick Darnell in Main branch]
2015-06-27 11:33:06 -04:00
Nick Darnell
cffa1f3715
Slate - Fixing a problem with Slate quantizing the lower range of black colors. When we send linear colors down to the GPU we were first converting to byte linear space, in byte linear space several sRGB values all become quantized under a single number. To avoid this problem, without increasing our vertex buffer size, we're now converting the Tint to sRGB Byte Space, then in the vertex shader convert the Tint back into Linear Space. This adds a little more computation to both the GPU and CPU.
...
[CL 2600938 by Nick Darnell in Main branch]
2015-06-25 14:07:45 -04:00
Dmitriy Dyomin
c0bf9f06dd
Custom UV region for FSlateBrush. When valid - slate will use brush UV instead of UV specified in resource proxy.
...
Slate resource manager accepts UTexture2Dynamic as a resource.
#codereview matt.kuhlenschmidt
[CL 2599980 by Dmitriy Dyomin in Main branch]
2015-06-24 22:23:06 -04:00
Keith Judge
2299c554b5
Fixed signed/unsigned mismatch warning.
...
[CL 2598648 by Keith Judge in Main branch]
2015-06-24 05:41:32 -04:00
Nick Darnell
7a536c6ac9
UMG/Slate - The STooltipPresenter now calculates a post transformed, rounded layout position to ensure that tooltips do not start on a half pixel. This reduces a lot of the inner jittering of a tooltip as you move your mouse across the surface of a widget.
...
[CL 2598073 by Nick Darnell in Main branch]
2015-06-23 18:27:19 -04:00