Christoph Oelckers
e7a79b0d44
- string conversion fixes
2023-09-06 00:19:36 +02:00
Christoph Oelckers
17ab6e851a
- make sure that FileWriter::Printf never writes null characters.
2023-09-03 23:48:42 +02:00
Christoph Oelckers
ef8fd472a8
- fixed bad virtual override in FSheetTexture.
2023-09-03 19:52:53 +02:00
Christoph Oelckers
351e0d7ed9
- removed obsolete CMake version requirements.
...
Most were still at 3.1 which prompts noisy warnings from up-to-date CMake versions.
Version requirements have been removed entirely from dependent subprojects, all others were upped to 3.16.
2023-09-03 09:04:17 +02:00
Christoph Oelckers
4baabf98c4
- use stb-image for JPEG decoding.
...
the statically provided library did not provide any advantage over it whatsoever and even libjpeg-turbo's better performance cannot really play out here so ease of use and getting rid of a dependency wins.
2023-09-03 08:34:58 +02:00
Ricardo Luís Vaz Silva
d0a955fef0
Allow disabling colors for NameAllKeys
2023-09-01 18:25:22 +02:00
inkoalawetrust
520b6af947
Added some null pointer checks to prevent crashes.
2023-08-31 19:51:06 +02:00
Major Cooke
44623daafe
Fixed wrong pointer being used in PlayerFinishLevel, causing wrong inventory items to be destroyed.
2023-08-28 19:33:46 +02:00
Rachael Alexanderson
5d38e4c476
- fix paths in previous commit
2023-08-25 22:46:22 -04:00
Cacodemon345
948e7cd649
Update the auto setup script to build ZMusic with vcpkg as well
2023-08-25 20:24:48 -04:00
Christoph Oelckers
ccd39d6df7
- code cleanup
2023-08-25 20:07:48 +02:00
Christoph Oelckers
afecb1ca0f
- avoid high stack usage in anmtexture.cpp
...
MSVC warned about this one.
2023-08-25 20:07:48 +02:00
Rachael Alexanderson
d93657a11d
- add auto setup script for Windows
2023-08-25 07:26:58 -04:00
alexey.lysiuk
af3afca658
- fixed game sources variable in CMake
...
CMake Error at src/CMakeLists.txt:1233 (add_executable): No SOURCES given to target: zdoom
2023-08-24 13:35:10 +03:00
Christoph Oelckers
e0b3bdaadc
- fixed directory loader.
2023-08-23 22:09:58 +02:00
Christoph Oelckers
c6e2e0add2
- fix compilation
2023-08-23 18:26:42 +02:00
Cacodemon345
7c90ea6b84
- Convert the entire image backend infrastructure to be animation-friendly
2023-08-23 18:18:45 +02:00
Christoph Oelckers
53d8a5bb2c
- Reverted JPEG XL support because the project is not really usable on vcpkg.
2023-08-23 18:18:45 +02:00
alexey.lysiuk
79be69ec4a
- implemented FS_FullPath()
function for POSIX
2023-08-23 14:57:22 +03:00
alexey.lysiuk
bfefc12427
- fixed a bunch of Linux and macOS compilation errors
2023-08-23 12:34:33 +03:00
Christoph Oelckers
e28d3b7f0b
- fix directory check in POSIX directory loader.
2023-08-22 23:15:23 +02:00
Christoph Oelckers
be2f9c8660
- added DSDA's passover/nopassover keys to the MAPINFO parser.
2023-08-22 23:15:23 +02:00
Cacodemon345
99fd354dd9
Fix copyright mistake
2023-08-22 23:11:00 +02:00
Cacodemon345
145044ea34
Check if JPEG_XL is enabled instead of just relying on library existence alone
2023-08-22 23:11:00 +02:00
Cacodemon345
44a3bd719c
JPEG XL implementation
2023-08-22 23:11:00 +02:00
Christoph Oelckers
5a1b858c0e
- added some safety checks for reading empty lumps into a std::vector.
...
These can trip the internal safety checks, even though nothing gets read in.
2023-08-22 22:59:29 +02:00
Christoph Oelckers
42283f56ab
- added a quick header check for WebP before loading the entire file for real identification.
...
This allows quick rejection of virtually everything that's not a WebP without loading the entire file first.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
1748477086
- use FileData for readinf WebP
2023-08-22 22:54:54 +02:00
Christoph Oelckers
c77ece4922
moved private definitions out of public headers.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
ebb71cebf1
- put the entire filesystem code into a namespace and created some subdirectories.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
94c9ee4593
- got rid of the remaining persistent std::strings in the file system.
...
This also uses the string pool now.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
929cae2f41
- rename File_Name back.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
8e250abe0a
- fix lump name setup.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
54dc687436
- use the string pool for storing resource file names.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
6d2047eef6
- also use the stringpool for the lump names in the filesystem.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
3d673e3f20
- use a string pool to store the filenames in FResourceLump.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
4f8305de5f
- use the lump cache directly for FileData.
...
This was the final puzzle piece to allow using memory mapped files. :)
2023-08-22 22:54:53 +02:00
Christoph Oelckers
2c2bf0265f
- refactored all places which treated FileData as zero terminated.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
79e6d068a9
- got rid of the last two TArrays in the filesystem class.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
535eb9a853
- use std::vector in GetFilesInFolder
2023-08-22 22:54:52 +02:00
Christoph Oelckers
2a6fb6da84
- use better hash function.
...
This is djb2 which is supposedly one of the best string hashing functions around.
Avoids annoying dependencies and is a lot simpler and faster than the alternatives.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
5433430767
- FString is always gone.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
3e3526f1ec
- use a local hash function in the file system.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
acd5911cd4
- StringPool class added
...
This is a specialized stripped doen FMemArena.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
4906d287cb
- use std::vector<std::string> to pass the file list to InitMultipleFiles
2023-08-22 22:54:52 +02:00
Christoph Oelckers
a0d679b84b
- FileData cleanup and uncoupling from FString.
...
Work is still needed to allow this to use the lump cache directly because some decisions in the past made this data padded by a zero byte.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
ca1d7fd539
- store longName in a std::string and use std::vector for FileInfo
...
TArray cannot handle std::string so this must both be changed together.
2023-08-22 22:48:06 +02:00
Christoph Oelckers
8a5d3c096b
- return a std::string from GetFileFullPath
2023-08-22 22:18:54 +02:00
Christoph Oelckers
25b7b18c3d
- got rid of the two copying variants of fileSystem.GetFileShortName.
2023-08-22 22:18:53 +02:00
Christoph Oelckers
c5b5b2b873
- cleanup.
2023-08-22 22:18:53 +02:00