Commit graph

147 commits

Author SHA1 Message Date
Kurt Kartaltepe cfb10ece79 text-freetype2: Use a shader uniform instead of vertex attributes
We used to swap in a buffer with (0,0,0,1) for all vertex colors for
drop shadows and outlines. However, this vertex buffer couldn't be
uploaded separately from the vertex data in OBS, so we were reuploading
the text vertices every frame.

Instead, let's use a uniform for this uniform data and save 500us (or
more when handles are visible), a significant portion of my test scenes
render time.
2024-04-22 01:01:47 -07:00
Kurt Kartaltepe e9b42e6c58 text-freetype2: Use cached glyph advances
We had these advances laying around but didn't use them here. Loading
the glyphs from the fonts is extremely slow, so let's avoid that since
we take the time to cache these already.
2024-04-20 16:28:12 -07:00
Vainock 7ae66c72fd Update translations from Crowdin 2024-02-28 14:20:05 -05:00
Translation Updater ac484a066f Update translations from Crowdin 2024-01-29 20:47:38 +00:00
PatTheMav eae5cc1e38 plugins: Update CMake formatting with manual format choices 2023-12-19 17:59:44 -05:00
Translation Updater f674d17168 Update translations from Crowdin 2023-12-05 22:04:31 +00:00
Translation Updater 0d450a34a0 Update translations from Crowdin 2023-10-10 13:34:41 +00:00
PatTheMav 4e488e2f1a text-freetype2: Fix warning about implicit integer downcast
Use Freetype2-specific types which match the types used internally and
returned by Freetype2 functions anyway.
2023-08-31 17:52:08 -04:00
Translation Updater ecf914dd67 Update translations from Crowdin 2023-08-13 14:09:15 +00:00
Ryan Foster d00068cb6c plugins: Update CMake minimum to 3.22
Since Ubuntu 22.04 is now our minimum supported Ubuntu version, and it
has CMake 3.22, let's make CMake 3.22 the minimum CMake version.
2023-08-05 16:45:46 -07:00
Norihiro Kamae 43f7c8c928 text-freetype2: Fix not updating chat log mode property 2023-06-17 16:35:47 -07:00
PatTheMav 59904a66a3 cmake: Update Framework link definition for macOS builds 2023-06-17 12:23:33 -04:00
PatTheMav 50a4e83251 cmake: Remove Info.plist template files for macOS builds
Creation of Info.plist files through Xcode is more canonical and
future-proof, as it will automatically pick up changes/updates
introduced by Apple. Non-standard keys can still be added via a
template file, which will then be extended by Xcode with the default
keys.
2023-06-17 12:23:33 -04:00
PatTheMav f8e00d6071 clang-format: Update formatting of all ObjC and ObjC++ files 2023-06-11 14:56:45 +02:00
gxalpha 575c085f7a text-freetype2: Improve text/file properties UX 2023-06-10 23:50:57 -07:00
Norihiro Kamae 4fb2bc38de text-freetype2: Fix crash after reaching buffer size
The texbuf has a fixed size that won't expand. When a lot of multi-byte
characters has arrived, it overflow and src_glyph becomes NULL.
2023-05-27 16:28:48 -07:00
Lain 106c7aa61f Update copyrights/names 2023-05-20 01:31:18 -07:00
Translation Updater a0fbdc3c34 Update translations from Crowdin 2023-05-01 23:11:13 +00:00
Translation Updater 7c5560bf1b Update translations from Crowdin 2023-03-27 13:39:03 +00:00
PatTheMav 349372b3b3 cmake: Add changes for CMake build framework 3.0
New code path only taken if OBS_CMAKE_VERSION is set to 3.0.0 or
greater, old functionality remains unchanged.
2023-03-26 18:20:38 -04:00
Translation Updater 783bd52197 Update translations from Crowdin 2023-01-08 04:10:37 +00:00
Translation Updater cc2d0791ca Update translations from Crowdin 2022-08-30 09:00:44 +00:00
Translation Updater 81734be37c Update translations from Crowdin 2022-07-31 23:40:53 +00:00
Richard Stanway 22ef40ba17
text-freetype2: Don't read / write empty size arrays 2022-07-18 23:23:12 +02:00
jpark37 f03827eb63 text-freetype2: Suppress LNK4098
defaultlib 'MSVCRT' conflicts with use of other libs; use
/NODEFAULTLIB:library
2022-07-18 03:52:04 -07:00
jpark37 df96e68ca6 cmake: Disable LNK4099 warning
We are very unlikely to ship PDBs for deps.
2022-07-11 22:07:10 -07:00
PatTheMav aae3a6a466 cmake: Fix diverging prefix padding for OBS status outputs
Status output related to OBS configuration is prefixed with the string
"OBS" and added padding for enabled and disabled features. This padding
was not aligned between platforms.

By moving the padding and prefix decoration into its own function,
both elements are controlled in a single place. CMake scripts were
changed to use this new function `obs_status` instead of using CMake's
`message` function directly.
2022-03-26 09:44:23 -04:00
PatTheMav 49e9d49943
plugins: Update CMakeLists.txt for included plugins 2022-03-16 23:11:08 +01:00
Translation Updater ac8dbf67be Update translations from Crowdin 2022-02-06 02:24:08 +00:00
Richard Stanway 1af1a432e2 text-freetype2: Fix incorrect fread argument order
This fixes UTF-16 BOM files being loaded incorrectly and having their
newlines parsed incorrectly in read from end mode. Detected by PVS
Studio.
2022-01-17 23:40:48 +01:00
Translation Updater 261345f9ef Update translations from Crowdin 2021-12-12 02:38:59 +00:00
gxalpha 87fc27c254 text-freetype2: Fix unused parameter warning 2021-12-04 15:23:07 -08:00
tt2468 e85c8f32fb text-freetype2: Move default settings to .get_defaults
obs-websocket's `GetInputDefaultSettings` request uses
obs_get_source_defaults() in order to fetch a source id's default
settings. This moves the default settings to the `.get_defaults`
callback so that our request does not return an empty object.

Does not affect existing functionality
2021-11-20 20:04:53 -08:00
Vainock 11a690b038 Update translations from Crowdin 2021-09-24 09:42:08 -07:00
Norihiro Kamae ed76a3032b text-freetype2: Add alpha channel property
Use obs_properties_add_color_alpha to set alpha for text colors.
2021-07-04 12:16:09 -07:00
Translation ef2b1eb1c6 Update translations from Crowdin 2021-06-11 07:18:15 -07:00
Gol-D-Ace 90df8d44df Update translations from Crowdin 2021-05-30 20:33:35 +02:00
jpark37 128bd26a1f text-freetype2: Remove SRGB code
Not having OBS_SOURCE_SRGB is good enough now.
2021-05-03 01:19:56 -07:00
jp9000 6e05e8b325 text-freetype2: Fix empty text not updating source
Fixes a bug where if you update the source with empty text, it would
still continue to use the previous text value.
2021-04-30 18:38:31 -07:00
jpark37 1f972a066c text-freetype2: Render in nonlinear space
Colors not working properly. Don't want to alter gradients (yet).
2021-04-25 11:10:33 -07:00
Ford Smith 7fc539c3c4 text-freetype2: Updated defaults
Adds several more settings to the defaults for the text objects.
2021-03-22 15:45:00 -04:00
Jim 2eca4d80b6
Merge pull request #2233 from VodBox/missing-files-dialog
libobs + UI: Add Missing Files API & Dialog
2021-01-31 08:02:16 -08:00
jpark37 015ed39923 text-freetype2: Support linear SRGB 2021-01-21 07:42:57 -08:00
VodBox fb95e1d1e9 libobs: Add missing file API to sources 2021-01-17 10:31:58 +13:00
Gol-D-Ace 7368a2c7cc Update translations from Crowdin 2020-12-14 00:29:44 +01:00
Gol-D-Ace 7ab98ca00f Update translations from Crowdin 2020-11-25 20:11:39 +01:00
PatTheMav fb27900e94 CI: Remove explicit LANGUAGE flags for cmake 3.19+ 2020-11-21 12:00:52 -08:00
Gol-D-Ace c66ebde080 Update translations from Crowdin 2020-09-27 23:07:27 +02:00
Kasin Sparks 570bffc282 text-freetype2: Fix x,y bounds for text outline and shadow 2020-08-21 12:47:55 -04:00
Jim 4929de408d
Merge pull request #2795 from Codex-/obs_text_antialias_option
obs-text, text-freetype2: Add Enable Antialiasing option
2020-06-26 04:06:26 -07:00