Commit graph

98 commits

Author SHA1 Message Date
furo ef8a87a359 Add demo_extract_chat to .gitignore. 2023-11-22 00:54:54 +01:00
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
ChillerDragon 3dd24355d2 Ignore .gdb_history
The file is created when running gdb with ``set history save on``
2023-03-08 14:18:58 +01:00
def ce480b0a15 Ignore .spv vulkan files for in-directory builds 2022-12-25 14:34:18 +01:00
Jupeyy 19a107a098 Use CMake cache instead of extra file for shader compile, fix typos 2022-12-20 11:11:28 +01:00
Dennis Felsing 658195864d Also ignore sqlite-shm and sqlite-wal files
See https://www.sqlite.org/tempfiles.html
2022-12-14 18:08:52 +01:00
bors[bot] b21ba35225
Merge #5599
5599: Add support for Rust code in DDNet r=def- a=heinrich5991

The glue is done using the [cxx crate](https://cxx.rs/) on the Rust side.

As a proof-of-concept, only a small console command (`rust_version`) printing the currently used Rust version was added.

You can generate and open the Rust documentation using `DDNET_TEST_NO_LINK=1 cargo doc --open`.

You can run the Rust tests using `cmake --build <build dir> --target run_rust_tests`, they're automatically included in the `run_tests` target as well.

Rust tests don't work on Windows in debug mode on Windows because Rust cannot currently link with the debug version of the C stdlib on Windows: https://github.com/rust-lang/rust/issues/39016.

---

The stuff in `src/rust-bridge` is generated using
```
cxxbridge src/engine/shared/rust_version.rs --output src/rust-bridge/engine/shared/rust_version.cpp --output src/rust-bridge/engine/shared/rust_version.h
cxxbridge src/engine/console.rs --output src/rust-bridge/cpp/console.cpp --output src/rust-bridge/cpp/console.h
```

Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2022-11-06 21:40:48 +00:00
Jupeyy 9047d4d9f3 Add vscode workspace 2022-11-05 23:36:52 +01:00
IntelligentQuantum 1ecc0adad2 chore(Gitignore): add ignore all folders cmake-build-* for Clion 2022-11-02 21:24:49 +01:00
heinrich5991 dcd76fd3e1 Add support for Rust code in DDNet
The glue is done using the [cxx crate](https://cxx.rs/) on the Rust
side.

As a proof-of-concept, only a small console command (`rust_version`)
printing the currently used Rust version was added.

You can generate and open the Rust documentation using
`DDNET_TEST_NO_LINK=1 cargo doc --open`.

You can run the Rust tests using `cmake --build <build dir> --target
run_rust_tests`, they're automatically included in the `run_tests`
target as well.

Rust tests don't work on Windows in debug mode on Windows because Rust
cannot currently link with the debug version of the C stdlib on Windows:
https://github.com/rust-lang/rust/issues/39016.

---

The stuff in `src/rust-bridge` is generated using
```
cxxbridge src/engine/shared/rust_version.rs --output src/rust-bridge/engine/shared/rust_version.cpp --output src/rust-bridge/engine/shared/rust_version.h
cxxbridge src/engine/console.rs --output src/rust-bridge/cpp/console.cpp --output src/rust-bridge/cpp/console.h
```
2022-10-19 23:46:06 +02:00
“sctt” 0f14d76a69 Added map_create_pixelart tool 2022-08-23 18:12:15 +02:00
sctt d1f016536a
Update .gitignore
ignore map_find_env
2022-08-13 18:54:47 +02:00
ChillerDragon 2ab4404f2b Ignore map_replace_area 2022-06-21 20:26:25 +02:00
heinrich5991 2c89008012 Add *.csv and *.json to .gitignore
Both file types are used in conjunction with the HTTPS master.
2022-05-31 17:36:18 +02:00
Dennis Felsing e3116217de test -> integration_test 2022-05-26 01:34:18 +02:00
ChillerDrgon 05efc25f32 Add integration test script and coverage map 2022-05-26 00:37:45 +02:00
ChillerDragon 92df747875 Ignore stun tool binary 2022-05-22 10:54:01 +02:00
heinrich5991 9b0ac0d331 Add Rust's target directory to .gitignore 2022-05-13 09:04:39 +02:00
ChillerDragon 44f0c61d3f Ignore ubsan/asan logfiles 2022-03-30 21:39:53 +02:00
Jupeyy af9b1449e1 Add some files & dirs to .gitignore 2022-03-22 07:15:29 +01:00
ChillerDragon 729cbb7d09 Ignore fifo files 2022-03-13 12:42:10 +01:00
heinrich5991 1820a0e168 Add some checksum functions to the client
Let's see if it works out, if not, we can revert it.
2022-01-31 21:31:26 +01:00
heinrich5991 d8f78e23bb Add .a files to .gitignore 2021-12-20 16:45:23 +01:00
def 4137811c2b Update gitignore 2021-12-20 00:17:38 +01:00
ChillerDragon eafc43337b Ignore vscode cmake extension files 2021-11-04 12:29:19 +01:00
Jupeyy b216b6744a Add Android build scripts 2021-08-24 12:18:20 +02:00
ChillerDragon 406502b8df Ignore map_optimize 2020-12-02 14:47:24 +01:00
Vlad c1826f6307
Update .gitignore 2020-11-13 20:20:07 +03:00
def ef1e6d45be Add libsteam_api.a to gitignore 2020-09-15 07:53:12 +02:00
def c839dc96d9 Remove tools we don't need anymore
Following Jupeyys new renderer
2020-09-10 23:15:28 +02:00
def c8e9da2c9c Ignore .sqlite file 2020-09-03 18:19:10 +02:00
Edgar 05d19089ae
Add DoxyFile and document CUIRect 2020-08-18 12:50:25 +02:00
heinrich5991 3c64bed767 .gitignore shared libraries 2020-03-10 21:35:44 +01:00
ChillerDragon c122da255d Ignore map_convert_07 tool binary 2019-12-09 15:15:02 +01:00
Ryozuki 3a58918e10
Ignore some more common files 2019-07-29 14:14:06 +02:00
ChillerDragon 4762e26b54 Ignore visual studio project files 2019-06-18 20:32:28 +02:00
ChillerDragon 84409bd554 Ignore idea folder 2019-04-06 22:53:13 +02:00
ChillerDragon 238d5521f6 Ignore vscode folder 2019-04-06 17:04:34 +02:00
def faa3cc195d UTF8 nocase compare & use for chat TAB completion
- As suggested by Arseniy Zarche
- Also updated confusables to Unicode 12
2019-01-09 08:31:03 +01:00
heinrich5991 879c6ce5dc Add *.tmp to .gitignore (it is output by tests) 2018-10-08 23:05:56 +02:00
heinrich5991 15bca525b5 Ignore CMake install files for any install package 2018-08-21 22:04:10 +02:00
heinrich5991 710d0610d9 Ignore Makefiles generated by the CMake Make target 2018-03-07 19:47:45 +01:00
heinrich5991 b138f5450e Ignore another file generated in build directories 2018-03-06 19:22:56 +01:00
ChillerDragon b69b85ed54 Ignore Build and Release 2018-03-04 11:18:46 +01:00
heinrich5991 2d55136fa2 Remove the blanket rules for files without extension
This rule caused a couple of problems with Visual Studio.
2018-02-21 00:36:19 +01:00
heinrich5991 9e9b57ec62 Move generated files to the CMake build directory 2018-02-12 23:29:45 +01:00
heinrich5991 22bacc1e16 Organize .gitignore and also ignore build dir stuff
Sort the stuff alphabetically, add some comments, ignore stuff that can
appear in build directories, so we don't have to guess the build
directory's name.
2018-02-05 00:50:55 +01:00
Tim Schumacher 861f234ea7 Add /build/ to .gitignore 2018-02-04 19:05:02 +00:00
Dennis Felsing 46bb8fed65 Clean up .gitignore a bit 2018-01-29 14:37:31 +01:00
Dennis Felsing d6999bb726 Merge "Pull Request using OpenGL 3.3" 2017-10-18 12:49:27 +02:00