Christoph Oelckers
6055ff029d
the remaining GetChars additions.
...
The offending operator const char * no longer exists.
2023-10-07 23:44:01 +02:00
Christoph Oelckers
7a5a2858a2
yet even more GetChars calls added.
2023-10-07 23:29:24 +02:00
Christoph Oelckers
c94c63110e
added a third batch of GetChars call to FStrings.
2023-10-07 23:03:40 +02:00
Christoph Oelckers
89535b803a
Backend update from Raze.
2023-10-07 18:42:24 +02:00
Professor Hastig
ab8711b57a
removed several bad casts to 'long'.
...
The 'long' type should generally be avoided because its size differs on Windows and Linux/Mac so it is almost guaranteed to cause undefined behavior
2023-10-04 16:47:43 +02:00
Cacodemon345
ba9ce0e83f
Switch to miniz from zlib
2023-09-17 23:52:51 +02:00
Christoph Oelckers
ef8fd472a8
- fixed bad virtual override in FSheetTexture.
2023-09-03 19:52:53 +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
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
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
bfefc12427
- fixed a bunch of Linux and macOS compilation errors
2023-08-23 12:34:33 +03:00
Cacodemon345
99fd354dd9
Fix copyright mistake
2023-08-22 23:11:00 +02:00
Cacodemon345
44a3bd719c
JPEG XL implementation
2023-08-22 23:11:00 +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
ebb71cebf1
- put the entire filesystem code into a namespace and created some subdirectories.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
2c2bf0265f
- refactored all places which treated FileData as zero terminated.
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
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
5398045f7d
- got rid of FileSystem::GetFileData.
...
Using FMemFile is better in all these places.
2023-08-22 22:18:53 +02:00
Christoph Oelckers
21d6eb99eb
use std::vector as return value for the FileReader's buffer readers.
2023-08-22 22:18:21 +02:00
Christoph Oelckers
f0bbc32bae
- add m_swap.h to several files.
2023-08-22 21:49:55 +02:00
Christoph Oelckers
2524ea6b0e
- moved linked textures from file system to texture manager.
2023-08-22 21:49:54 +02:00
Cacodemon345
145450a044
WebP image support
2023-08-22 19:14:21 +02:00
Cacodemon345
a4573b4ad1
Fix QOI image loading
2023-08-17 08:56:50 -04:00
Christoph Oelckers
74b3d8e0a0
- optimized the QOI loader
...
* removed the intermediate pixel buffer
* instead of calling the file API for each single byte, load it into a buffer and use direct memory access. Using a file API like this can be magnitudes slower, depending on the underlying data.
* don't store the header in the image source object, it is never used again after validatipn.
2023-08-13 19:03:20 +02:00
Cacodemon345
c727e40e6c
Add support for QOI image formats
2023-08-13 06:04:15 -04:00
Cacodemon345
fe7beaaf17
Add support for HDR canvas textures
...
Vulkan only.
2023-08-12 06:46:05 -04:00
Christoph Oelckers
979f4311fa
- moved stb_image.h to third party folder.
2023-08-09 08:22:47 +02:00
l2ksolkov
245dac814e
Add missing include guards
2023-05-29 07:35:26 +02:00
Christoph Oelckers
acfe82b9a8
- Backend update from Raze.
2023-05-27 09:31:17 +02:00
Marisa the Magician
81e7d77b44
Fix diffuse-only material shaders not applying.
2023-01-12 17:01:59 +01:00
Christoph Oelckers
aceafecce6
- optimized sheet font texture generation.
...
Instead of reloading the base image over and over again, let's cache it so that less time is needed for each single character.
2023-01-07 19:12:19 +01:00
Christoph Oelckers
4c751db489
- silence some warnings.
2023-01-07 18:35:30 +01:00
Christoph Oelckers
1a0aa95ff4
- changed return value of CreatePalettedPixels.
...
The new struct will allpw return of static pixel data without reallocation and copying.
2023-01-07 17:55:55 +01:00
Christoph Oelckers
4e4642d0ed
- fixed buffer size checks for raw textures.
2023-01-07 16:15:32 +01:00
Christoph Oelckers
941c0850ba
- Backend update from Raze.
...
Mainly optimizations for the sound system and texture manager.
2022-12-18 16:19:18 +01:00
Christoph Oelckers
4103b282bb
- fixed: The raw texture caching in the texture manager did not work.
...
This erroneously checked for FrontSkyLayer.
Also including some change here that allows explicit setting of the RawTexture (not used yet.)
2022-11-25 12:29:36 +01:00
Christoph Oelckers
7e0084f56b
- Backend update from Raze.
2022-10-25 07:02:45 +02:00
Christoph Oelckers
2b805e196d
- do two-step init of CVARs to ensure that flag and mask vars always find their master CVar.
2022-10-24 19:27:04 +02:00
Christoph Oelckers
6ba4295136
- don't crash when destroying incomplete textures.
...
This can happen during TEXTURES parsing in case of an error.
2022-10-20 17:12:43 +02:00
Christoph Oelckers
2c29a93f1f
- fixed compile.
2022-10-02 20:45:00 +02:00
Christoph Oelckers
f63d4d8a12
- handle Build tiles via explicit callback to the init function.
2022-10-02 16:54:43 +02:00