Gleb Mazovetskiy
c884f1a354
An option to RLE-compress masked art
...
Saves about 200 KiB RAM in dungeon at a large performance cost.
Almost never a good idea, except for severely RAM-constrained devices (e.g. RG99).
4 years ago
Gleb Mazovetskiy
e2dbbb3d95
CelSprite: Unify width storage
...
Reduces the size of a CelSprite by taking advantage of the fact that
16-bit pointers are aligned, so the last bit is always 0.
4 years ago
Anders Jenbo
1409e604f5
Reduce string conversions
4 years ago
Gleb Mazovetskiy
48ff656dc0
Load monster graphics into a single buffer
...
Follow-up to a5e1fa5bbe , which loaded
the missiles into a single buffer.
4 years ago
staphen
8d5b709749
Restore default Windows audio driver (WASAPI)
4 years ago
Anders Jenbo
d11eeaa9ec
Log uninplemented plural expressions ( #4017 )
4 years ago
Gleb Mazovetskiy
a5e1fa5bbe
Load missile frames into a single buffer
...
Previously, the memory for each frame was allocated separately.
Changes it to allocate a single buffer for all the frames.
This has the following advantages:
1. Less bookkeeping overhead in the allocator.
2. Less alignment overhead (allocator results are max-aligned by default).
We can follow this up with a similar treatment for other multi-file
animations.
4 years ago
Felipe Wannmacher
8efbcf2058
Xbox One/Series support ( #3946 )
4 years ago
ephphatha
6a1091ce09
Rename Korean/Romanian translation files so they are used in fallback resolution
4 years ago
Anders Jenbo
0c109cbfb1
[touch] Update interface scaling when switching fullscreen mode
4 years ago
Anders Jenbo
6b2481a76c
Touch support on all SDL2 platforms
4 years ago
Andrew James
e1d01aad7c
Replace en_US code with en when searching for user preferred languages ( #3859 )
4 years ago
Anders Jenbo
68e5805f1b
[touch] Adjust controller position after changing resolution
...
Fixes #3791
4 years ago
Anders Jenbo
cf9b5ae79d
Split up graphics settings initializers
4 years ago
Anders Jenbo
0e2aac8cfe
Allow for software based rendering
4 years ago
Anders Jenbo
24a15d90e2
Do not recreate the render when switching scalingn quality
4 years ago
staphen
b6a4f126d7
Modify the Windows implementation of printInConsole() to call OutputDebugString()
4 years ago
Gleb Mazovetskiy
a496b9d72b
Emscripten: Fix assets/ loading
4 years ago
Anders Jenbo
7d239d9f89
Scale resolution to true values
4 years ago
ephphatha
530604c529
Prefer DX11 renderer if running on windows with vsync active
...
This works around a bug in DX9 on Win11.
4 years ago
Gleb Mazovetskiy
076b0c0c05
Overhaul tests
...
1. Adds a `libdevilution_so` target when tests are enabled.
2. Each test file is now a separate binary target linked against `libdevilutionx_so` (can now run tests in parallel).
3. Tests are now defined in a separate `test/CMakeLists.txt` file.
4. Building the tests is now controlled by the standard `BUILD_TESTING` option (defined by CTest).
5. Tests are now built by default.
6. On CI, test errors are now reported.
Also:
* `.clang-format`: Enable SortIncludes in tests
* `path_test.cpp`: Fix -Wsign-compare
4 years ago
Gleb Mazovetskiy
f5d8f513cb
AssetsPath: Default to exe dir
...
Also adds `SetAssetsPath`, for use by tests.
4 years ago
Gleb Mazovetskiy
02902e5188
language.cpp: Fix -Wwrite-strings
4 years ago
Gleb Mazovetskiy
d3a523fa0b
paths.cpp: Remove `AppPath`
...
It was redundant.
4 years ago
ephphatha
a1652bd5d6
Interleave non-regional fallback locales after last regional variation
4 years ago
ephphatha
c0ec4a845a
Restore fallback for non-regional translation
...
Also adds an explicit check for en given this the base translation for the application and will never have a .mo/.gmo file.
4 years ago
obligaron
8a4d4b6375
Add OptionEntries for Audio
4 years ago
staphen
3a802ae270
Apply clang-format to display.cpp
4 years ago
Anders Jenbo
94fa772ce6
Fix SDL < 2.0.10 builds
4 years ago
Anders Jenbo
901d9aa435
Fix SDL < 2.0.6 builds
4 years ago
JoBergeron
6af1be7b13
[ios] Fixed bluetooth mouse support
4 years ago
Gleb Mazovetskiy
a4bc8fea7d
Fix warnings: `-Wsign-compare`, `-Wnarrowing`
4 years ago
obligaron
5e2ad66e64
Add OptionEntry Resolution
4 years ago
staphen
f897f5fd92
Resize PalSurface when resizing the game window
4 years ago
Vladimir Olteanu
819271489d
SDL1: Don't destroy surface in SDL_DestroyWindow
4 years ago
JBerg
f31258400a
[ios] Expose app's data
4 years ago
Anders Jenbo
d9d72fbbc7
[ios] Enable high resolution support
4 years ago
qndel
82a5b6315c
fix typo 'prefered' ( #3677 )
4 years ago
Anders Jenbo
157570a1f2
Handle screen orientation
4 years ago
obligaron
2e5a488d5f
Add OptionEntry for graphics
4 years ago
obligaron
eb7b9d7054
Introduce ResizeWindow()
4 years ago
obligaron
b5aab383d9
Introduce ReinitializeRenderer() and GetPreferedWindowSize()
4 years ago
obligaron
945ee04f62
Add OptionEntry Language
4 years ago
obligaron
0ac065dbaa
Make LanguageInitialize() reentry capable
4 years ago
Gleb Mazovetskiy
c57644970f
Move `UiFlags` and `UiPanels` into their own files
...
The first breaks circular dependency between `DiabloUI` and `text_render`.
The latter one moves `UiPanels` to a more appropriate place.
4 years ago
Gleb Mazovetskiy
7e1fea6f76
clang-format all files in {Source,test}/
...
Also includes a few manual tweaks to comments and newlines for better results.
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
4 years ago
obligaron
21e04d3352
Add OptionEntry Grab Input
4 years ago
obligaron
af4f732ef1
Add OptionEntry Scaling Quality
4 years ago
staphen
25afdee39b
Replace libsmacker with libsmackerdec
4 years ago
Anders Jenbo
799f1763af
Performce UTF8 aware limited string copies
4 years ago