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
Christoph Oelckers
34f30ee70b
- remove gi.h includes in backend code.
2022-10-02 14:04:24 +02:00
Magnus Norddahl
e2778ba442
Move TexMan.GetCanvas and GetTextureCanvas to common
2022-07-25 18:50:16 +02:00
Magnus Norddahl
b8569fa29f
Fix GC shutdown crash due to canvas objects not getting GC'ed at the end
...
Fix typo in Draw2D and add support for specifying the viewport size directly
2022-07-25 18:50:16 +02:00
Magnus Norddahl
bb503950df
Add canvastexture definition to animdefs.
...
Split canvas texture rendering from camera texture rendering.
2022-07-25 18:50:16 +02:00
Magnus Norddahl
4f0b02b396
Add a 2d drawer to canvas textures
2022-07-25 18:50:16 +02:00
Christoph Oelckers
6d635ce715
- optimized storage for animation definitions.
...
Instead of allocating everything on the heap as single blocks, use a value TArray and allocate the frame arrays from the texture manager's memory arena, since lifetime of the data is identical.
Most importantly this avoids using a variable size array at the end of the struct.
2022-07-17 10:15:09 +02:00
Christoph Oelckers
c62e14d2c1
- Backend update from Raze
...
Mostly cleanup and better separation of game/backend concerns.
2022-06-06 12:09:29 +02:00
Christoph Oelckers
608b387e04
- use correct mapping for IBM437’s lower characters
...
For use on text screens these need to be mapped to the printable characters they represent on screen, not the control characters of ASCII.
2022-06-03 00:12:45 +02:00
Christoph Oelckers
7787a410ea
- Startscreen fixes.
...
* for Strife the game palette must be loaded before the start screen.
* increase update frequency of start screen to roughly 35 fps
* fixed Strife's laser sprite names.
* do not show the native progress bar if a graphical start screen is used.
2022-06-01 09:30:20 +02:00
Christoph Oelckers
59cddf1601
- hooked up graphical start screens with the in-game renderer.
2022-06-01 08:37:00 +02:00
Christoph Oelckers
21c60c931e
- warning fixes and cleanup from old startscreen branch.
2022-06-01 08:36:59 +02:00
Christoph Oelckers
1aa3a5ea16
- platform independent classes for start screen rendering.
...
These use the internal 2D drawer. Not hooked up yet.
2022-06-01 08:36:59 +02:00
Christoph Oelckers
beeb5f00aa
- added JPEG YCCK decoding.
...
Just for completeness - the formula was pieced together from stb_image's handling.
2022-05-12 12:14:14 +02:00
Christoph Oelckers
c86d9f60d0
- added handlers to load Strife’s startup screen images as textures
2022-05-03 00:04:28 +02:00
Christoph Oelckers
73abb2dfac
- added image source handlers for Hexen’s special startup image types
2022-05-02 00:28:56 +02:00
Christoph Oelckers
739b015a4d
- reinstated code that has gotten lost.
...
Fixes texture trimming.
2022-04-28 21:14:50 +02:00
Rachael Alexanderson
0fa830ddd7
Revert "- change cvars gl_custompost
and gl_customshader
to archive and save to .ini since there are uses for these shaders beyond mere debugging."
...
This reverts commit 2420371c46
.
2022-04-21 02:49:39 -04:00
Rachael Alexanderson
95c5449a75
- silence some warning spam in textures.h
2022-01-26 18:30:55 -05:00