Commit Graph

1547 Commits

Author SHA1 Message Date
viktor chlumsky
2ee761b197 Slate MSDF text rendering feature including effect support, disabled by CVar, support for mitered outlines
[REVIEW] [at]Yohann.DosSantos, [at]Vincent.Gauthier, [at]Patrick.Boutot, [at]Christian.Savoie, [at]JC.Authier, [at]Daren.Cheng

#rnx <Release Notes exclude>

[CL 28008156 by viktor chlumsky in ue5-main branch]
2023-09-19 15:28:40 -04:00
jeanmichel dignard
61feb630df Fix for SSlider not having a disabled style for Starship core style.
#rb none

[CL 27995439 by jeanmichel dignard in ue5-main branch]
2023-09-19 10:41:34 -04:00
steve robb
51f3ea53ae Removed ChooseClass.h includes.
#rb trivial

[CL 27823723 by steve robb in ue5-main branch]
2023-09-13 05:43:01 -04:00
steve robb
da9f5a828a Replaced TChooseClass with std::conditional_t.
#rb none
#jira UE-195271

[CL 27816205 by steve robb in ue5-main branch]
2023-09-12 19:55:55 -04:00
nick edwards
827f3fa5e7 StringView-ifying FSlateFontMeasure and FLRUStringCache
#rb Patrick.Boutot

[CL 27522380 by nick edwards in ue5-main branch]
2023-08-31 10:31:51 -04:00
louisphilippe seguin
36c722f3c4 Fix wrong printf parameters in checkf & ensuremsgf found in engine code
#rb Fabian.Giesen, Kirill.Zorin
#rnx

[CL 27519547 by louisphilippe seguin in ue5-main branch]
2023-08-31 08:56:30 -04:00
john huelin
8d86d43d5f Make OnBackBufferReadyToPresentDelegate ThreadSafe
[REVIEW] [at]mickael.gilabert
#rnx

[CL 27386667 by john huelin in ue5-main branch]
2023-08-25 14:43:02 -04:00
yohann dossantos
2d672169dc Fixed compilation tests issue in a new file
#rb trivial
#test compiled the code.

[CL 27305314 by yohann dossantos in ue5-main branch]
2023-08-23 10:33:18 -04:00
yohann dossantos
b886ef2278 Ascent/descent override: add a new option at the composite font level, to be able to consider or ignore the font face ascent/descent override, based on the composite font using it.
Fixed a few typo (ascend VS ascent, descend VS descent).

[FYI] pavlo.grubyi
#rb patrick.boutot
#test Using a font containing a font face with ascent/descent overridden, enabled or disabled the new option in the font: in font editor preview, UMG editor, and running PIE, the ascend/descent was taken into account or ignored.

[CL 27275774 by yohann dossantos in ue5-main branch]
2023-08-22 12:49:04 -04:00
george rolfe
8db390e191 [SlateCore] Added pseudo-monospacing to text shaping
#jira UE-191515
#rb jamie.dale

[CL 27169227 by george rolfe in ue5-main branch]
2023-08-17 07:22:50 -04:00
daren cheng
476aa53a7d Fix invalid shader material resource crash slate
#jira UE-185932
#rb Vincent.Gauthier
#lockdown jeanmichel.dignard

[CL 27122703 by daren cheng in ue5-main branch]
2023-08-15 17:52:38 -04:00
jamie dale
4880a58c30 Honor the requested kerning flags
#jira
#rb Evgenii.Babinets
#rnx

[CL 26847710 by jamie dale in ue5-main branch]
2023-08-04 11:23:23 -04:00
henrik karlsson
90e7c46aae [SlateCore]
* Removed 7 million allocations when starting game client

#rb Patrick.Boutot

[CL 26745328 by henrik karlsson in ue5-main branch]
2023-08-01 13:26:33 -04:00
yohann dossantos
e4fc92d2dc Fix regression on flow direction inheritence when using cvar GSlateFlowDirectionShouldFollowCultureByDefault (was ignored), introduced when fixing another flow issue in CL 23445460
#jira UE-191009
#test Did repro steps from the associated UDN, and from the UDN associated to the CL that introduced the regression. Both are fixed.

[CL 26571507 by yohann dossantos in ue5-main branch]
2023-07-25 09:30:03 -04:00
lightbringer
2b750c8a05 PR #10490: GetDynamicImageBrush returning null upon successful brush creation in FSlateStyleSet
#rb zahra.nikbakht

[CL 26526323 by lightbringer in ue5-main branch]
2023-07-21 17:15:53 -04:00
DomCurry
2ec997a80b PR #10567: Add OutlineSettings to FSlateBursh == operator
#rb zahra.nikbakht

[CL 26522754 by DomCurry in ue5-main branch]
2023-07-21 15:33:37 -04:00
ben hoffman
95bcfe9680 Fix ZOrder of AddToViewport not being taken into consideration
#rb patrick.boutot

#ushell-cherrypick of 26510085 by kristof.morva1

[CL 26512056 by ben hoffman in ue5-main branch]
2023-07-21 10:57:12 -04:00
evgenii babinets
148c6b1299 Fixed SlateTextureAtlas creating free nodes in the empty slot list that have dimensions smaller than what we feasibly expect can be used by glyphs.
The code presently creates two nodes as long as one of them exceeds the minimum dimension, which in practice this has resulted in us eventually having to iterate over 94+ useless elements every time we're adding a glyph. We should only create the smaller node if it exceeds the minimum.

[CL 26415030 by evgenii babinets in ue5-main branch]
2023-07-17 15:34:03 -04:00
jamie dale
e1575ff4a2 Added a category type that can be used with FMessageDialog to control the icon used by the in-editor dialog
Note: This doesn't impact any OS specific dialogs

Breaking: FCoreDelegates::ModalErrorMessage is now called FCoreDelegates::ModalMessageDialog and takes an extra EAppMsgCategory argument

#jira
#rb Dave.Belanger

[CL 26322954 by jamie dale in ue5-main branch]
2023-06-29 14:57:59 -04:00
daren cheng
339a3a6abf Avoid Text Style copies occuring each frame, expensive due to atomics.
#rb Vincent.Gauthier

[CL 26301811 by daren cheng in ue5-main branch]
2023-06-28 18:49:08 -04:00
daren cheng
a0f73ff2a0 Avoid element stats on empty sets.
#rb trivial

[CL 26301795 by daren cheng in ue5-main branch]
2023-06-28 18:48:31 -04:00
daren cheng
2cb7360f41 Remove inline breaking nonunity on android
#rb trivial
#jira UE-186900

[CL 26199876 by daren cheng in ue5-main branch]
2023-06-22 19:52:23 -04:00
daren cheng
2205e3e974 Remove payload indirection on slate elements.
Yields better cache coherency and measured better performance

#jira UE-186900
#rb patrick.boutot

[CL 26188706 by daren cheng in ue5-main branch]
2023-06-22 14:29:09 -04:00
steve robb
9e8d5f6d2a Added move semantics to TSlotBase::operator[] declarative syntax.
Removed a reference counting workaround that was added in CL# 3718295 for an issue that was fixed in CL# 3718782.
Removed unnecessary reference count churn from TDecl, and thus every SNew call.

#rb partick.boutot

[CL 26088835 by steve robb in ue5-main branch]
2023-06-19 09:35:25 -04:00
yohann dossantos
8c0370a000 - Added a per project Font display DPI setting, in order to allow using (but not being limited to) the standard 72 DPI used by most creation software (Photoshop, Figma,...). Slate will still work at 96DPI.
- Converted the font size to float, to allow specifying more precise size, and support the sizes that would be wanted at (for instance) 72 DPI, without losing information (ie rounding to the closest 96DPI int).
- Change various font caches behavior (glyph, advance, kerning...) to match behavior of Freetype, and ensure that a given size in Freetype will be stored only once in the font caches.
- Added cvar commands:
    - Slate.DumpFontCacheStats: will display the list of all font combinations used, with the number of glyphs for each combination.
    - Slate.FlushFontCache: will clear the font caches as well as the font atlases, then will invalidate all the widgets to force the cache to be refilled.
- Fixed the combo box for font typeface selection not disabled when necessary.

#tests:
- changed the Font display settings between various values and customDPI, validatet that everything was save correctly, and that the display was reacting to the value change.
- tested all the tooltips, simple, extended (ctrl + alt), and dynamic (display of the current DPI setting next to the font size).
- validated that the font atlas/cache was containing not more than one time each glyph rendered by Freetype.
- validated that the edition of the font size was still fully functionnal (spinbox, undo/redo, support of disable state,...).
- tested default value for a new project (72DPI).
- compiled Slate/SlateCore/UMG with UnsafeTypeCastWarningLevel = WarningLevel.Warning to fix warnings related to the change.
- tested in a game with latest changes from BP team (CL 26034633), ensuring that there are no regression related to the change of type (int to float) from the Font size.
- running with it in a game and UE branch for months.

#jira UE-152161
#rb patrick.boutot

[CL 26074522 by yohann dossantos in ue5-main branch]
2023-06-16 18:35:04 -04:00