Commit graph

1410 commits

Author SHA1 Message Date
Robert Müller d642abd722 Add font index, support font family variants depending on language
Add `fonts/index.json` which specifies:

- List of all font files that should be loaded (filenames).
- Default font (specified by family name or by family and style name).
- Font variants for different languages, using the name of the language file as key.
- Fallback fonts.
- Icon font.

There are characters (e.g. all in `刃直海角骨入`) that look different depending on the language of the content being Japanese, Simplified Chinese, Traditional Chinese and Hangul, because Unicode uses the same codepoint for characters regardless of the language. To render these characters correctly, the active variant font is switched depending on the selected language.

The `ITextRender` interface is changed so the current language variant can be set using `SetFontLanguageVariant` and the default and icon fonts can be toggled using `SetFontPreset`. The class `CFont` is removed entirely.

The text render is restructured: The font faces and font atlas are now managed by a separate class `CGlyphMap` like on upstream. As the text fill and outline textures always have the same size, the texture skyline only needs to be stored once and free positions in the atlas only need to be calculated once for each glyph instead of separately for the fill and outline textures.

The font files and their licenses are also updated:

- Update Source Han Sans to version 2.001.
- Update Glow Sans Japanese Compressed to version 0.93.
- Update Deja Vu Sans to version 2.37.
- Update Font Awesome icons font to March 2023 version.

Closes #6881.
2023-08-01 19:30:25 +02:00
Robert Müller 210a2a8bb9
Merge pull request #6948 from Vy0x2/pr-fix-localization-malformed
Fix malformed lines in some translation files
2023-07-29 17:49:24 +00:00
devdenn 4ea46f2df9 Fix malformed lines in some translation files 2023-07-29 19:13:24 +02:00
ChillerDragon ab9f6e02c6 Update grass_doodads_0.7.png to match upstream
Was updated 5 years ago in

593468a16d (diff-d570e380a82098e31392ddf78d5183a71925031927420f88914d08c6ae053196)

And reordered in 2018

aa65feaff5
2023-07-29 14:02:28 +02:00
Robert Müller 69b5c62f04
Merge pull request #6895 from By622/patch-1
Update traditional_chinese.txt
2023-07-20 11:38:09 +00:00
By 19e36b6d04
Update traditional_chinese.txt 2023-07-20 16:51:08 +08:00
By ee0f3b4033
Update simplified_chinese.txt 2023-07-20 16:11:59 +08:00
By 8c2d2247b3
Update traditional_chinese.txt 2023-07-20 15:56:35 +08:00
Dennis Felsing 92cffee24e Fix copyright for kitty_x_ninja (fixes #6830) 2023-07-11 15:01:24 +02:00
Vlad 459bf94d40
Revert Наблюдать за change 2023-07-08 12:01:46 +03:00
Rafael Fontenelle 6bafafe832
Update translation credits in brazilian_portuguese.txt 2023-07-07 12:11:37 -03:00
Rafael Fontenelle b8e8538b1f
Update brazilian_portuguese.txt 2023-07-07 12:10:15 -03:00
heinrich5991 db707f24ae Add Galician flag from gu (overdue_) from Discord 2023-07-07 12:59:44 +02:00
heinrich5991 f4e85151cd Add Galician language (thanks to TormentaDeFacha and Mercadona) 2023-07-07 12:36:05 +02:00
Vlad 48af74f538 some fixes
`Наблюдать` -> `Наблюдение за`
`*новых упоминаний` -> `*упоминаний`
2023-07-03 20:51:44 +03:00
noKetchup 1801c43892
Update spanish.txt 2023-07-01 22:52:27 -04:00
Pavukoplov 4a6d21247a Update Belarusian translation 2023-07-02 00:58:20 +03:00
lolipodass 05ef4c7e03
Update russian.txt
Add missing translation and rewrite old to match new
2023-07-01 18:51:29 +03:00
Dennis Felsing 1261cf6bb1 Update German translations 2023-06-30 10:47:58 +02:00
Dennis Felsing c8269bf6c3 Update translations for upcoming 17.1 2023-06-30 09:50:21 +02:00
Dennis Felsing 87e46dbc65 Fix Ukrainian translation 2023-06-26 19:10:13 +02:00
-StormAx 0f52058c2c
Update ukrainian.txt
Updeter ukranian using new ukr. language rules

*Fixed - Uncorrected translations
*Fixed - Grammar problems
2023-06-26 17:51:39 +03:00
-StormAx 54de7aed44
Update ukrainian.txt
Updated 'Laser' category for Ukranian language
2023-06-26 01:49:10 +03:00
Cheeser0613 e806710a99
Update traditional_chinese.txt 2023-05-25 15:03:10 +08:00
Robert Müller 60ac3b3d48 Remove settings checkbox for cl_threadsoundloading
The default value `1` should be fine for most users and this setting is not likely to be changed very often, so it doesn't need a checkbox in the settings menu.
2023-05-24 21:12:44 +02:00
Robert Müller 70b5e4b5bd Remove settings edit box for snd_rate
The default setting `48000` should be fine for the majority of the users so it's not necessary to be able to change this in the settings menu.
2023-05-24 21:12:43 +02:00
noKetchup 40357e4510
Update spanish.txt 2023-05-22 19:54:50 -04:00
bors[bot] 8298e67790
Merge #6627 #6635
6627: Fixes for Russian and Ukrainian (by StormA) r=def- a=def-

<!-- What is the motivation for the changes of this pull request? -->

<!-- Note that builds and other checks will be run for your change. Don't feel intimidated by failures in some of the checks. If you can't resolve them yourself, experienced devs can also resolve them before merging your pull request. -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test (especially base/) or added coverage to integration test
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


6635: Update french translations (by Sukya) r=def- a=def-

`@snailx3` `@Chairn` anyone want to review?

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test (especially base/) or added coverage to integration test
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2023-05-21 21:34:05 +00:00
Remake The Power ae3d07a0a3
Update simplified_chinese.txt 2023-05-21 11:10:35 +08:00
Dennis Felsing 25ccc55d89 Update french translations (by Sukya) 2023-05-20 22:29:21 +02:00
Dennis Felsing 877c900717 Fixes for Russian and Ukrainian (by StormA) 2023-05-20 00:24:07 +02:00
Dennis Felsing 98a641d3aa Improve German translation (by murpi) 2023-05-19 17:06:57 +02:00
bors[bot] d2e7d72d47
Merge #6624
6624: Update hungarian.txt r=edg-l a=RIH-Cellegen

Updated Translations for 17.0

<!-- What is the motivation for the changes of this pull request? -->

<!-- Note that builds and other checks will be run for your change. Don't feel intimidated by failures in some of the checks. If you can't resolve them yourself, experienced devs can also resolve them before merging your pull request. -->

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test (especially base/) or added coverage to integration test
- [ ] Considered possible null pointers and out of bounds array indexing
- [x] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Cellegen <67655961+RIH-Cellegen@users.noreply.github.com>
2023-05-19 14:37:28 +00:00
Cellegen 73978c10ac
Update hungarian.txt
Had complains about large texts at [Graphics Error] Section, changed accordingly.
2023-05-19 15:39:27 +02:00
Cellegen 4c43483bcb
Update hungarian.txt
Updated Translations for 17.0
2023-05-19 15:25:55 +02:00
Dennis Felsing 2291186e65 Add Russian and Ukrainian translations by StormA 2023-05-19 14:06:23 +02:00
Dennis Felsing 10b35e0c04 Update translations for upcoming 17.0 release 2023-05-19 14:06:12 +02:00
Robert Müller bcc9ab50ad Add missing attribute shield entities for front and switch layers
Copy the attribute shield entities from the DDNet image to the front and switch images for the editor. The attribute shield entities can be used in game, front and switch layers, so the respective image also has to contain the entities.

Closes #5068.
2023-05-16 20:15:24 +02:00
mindTW 78993917e0 fix transparency in grass_main 2023-04-23 16:57:22 +02:00
bors[bot] df8e9e8c59
Merge #6487 #6488
6487: Update simplified_chinese.txt r=def- a=Cheeser0613

<!-- What is the motivation for the changes of this pull request? -->

<!-- Note that builds and other checks will be run for your change. Don't feel intimidated by failures in some of the checks. If you can't resolve them yourself, experienced devs can also resolve them before merging your pull request. -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test (especially base/) or added coverage to integration test
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


6488: Update traditional_chinese.txt r=def- a=Cheeser0613

<!-- What is the motivation for the changes of this pull request? -->

<!-- Note that builds and other checks will be run for your change. Don't feel intimidated by failures in some of the checks. If you can't resolve them yourself, experienced devs can also resolve them before merging your pull request. -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test (especially base/) or added coverage to integration test
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Cheeser0613 <54943099+Cheeser0613@users.noreply.github.com>
2023-04-01 21:29:16 +00:00
Cheeser0613 68a3505a6d
Update traditional_chinese.txt 2023-04-01 23:01:04 +08:00
Cheeser0613 2c58d3a870
Update simplified_chinese.txt 2023-04-01 23:00:09 +08:00
Dennis Felsing 5fa2fefd35 Remove unused DoFilter
Thanks to cheeser0613
2023-04-01 13:39:20 +02:00
Pavukoplov 02eec901e1 Update belarusian 2023-04-01 03:38:03 +03:00
Pavukoplov 1e51cf15df update belarusian 2023-04-01 01:03:41 +03:00
noKetchup d6e2cc8d80
Update spanish.txt 2023-03-28 23:20:40 -03:00
CHaBek d0d3325604
Update Korean translations by CHaBek 2023-03-28 10:27:06 +09:00
Rafael Fontenelle f15d975a5a
Update brazilian_portuguese.txt 2023-03-26 19:12:13 -03:00
lolipodass 412a2ff5f7
Update russian.txt 2023-03-26 20:15:48 +03:00
Dennis Felsing efeafbf1fb Translations for upcoming 16.9 2023-03-26 16:23:45 +02:00