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
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
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
2524ea6b0e
- moved linked textures from file system to texture manager.
2023-08-22 21:49:54 +02:00
Christoph Oelckers
acfe82b9a8
- Backend update from Raze.
2023-05-27 09:31:17 +02: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
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
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
59cddf1601
- hooked up graphical start screens with the in-game renderer.
2022-06-01 08:37:00 +02:00
Christoph Oelckers
e60e6967c0
- whitespace cleanup, updated from Raze.
2022-01-02 12:23:42 +01:00
Christoph Oelckers
1c517d19fa
- Backend update from Raze.
...
This is mainly code cleanup from setting the compiler to a stricter warning level.
2022-01-02 11:39:17 +01:00
Major Cooke
bbd91be5d5
Added NoTrim for TEXTURES.
...
- This can be applied either in or outside of a definition of a sprite.
- Simply adding "NoTrim" inside a definition will apply it.
- Syntax outside of a sprite is `NoTrim <SpriteName>`.
2021-12-14 15:22:01 +01:00
Christoph Oelckers
77d74a11d1
- removed most templates.h includes.
2021-10-30 10:49:12 +02:00
Christoph Oelckers
e453f97872
- Backend update from Raze.
2021-07-11 09:53:01 +02:00
Christoph Oelckers
917eb2b5e3
- fixed: FTextureManager::ReplaceTexture did not calculate the upscale flags.
2021-02-07 09:19:56 +01:00
Christoph Oelckers
b8281f4758
- Backend update from Raze.
2020-10-16 22:57:28 +02:00
Christoph Oelckers
528e4e46b3
- texture manager update from Raze
...
* new texture format: ANM - this reads the first frame of a Build-ANM movie as a texture.
* some preparations for indexed (paletted) rendering.
* optimization of the patch texture checker - do not read in the entire file if checking the initial header is sufficient for rejecting it.
2020-09-27 10:38:12 +02:00
Christoph Oelckers
d1cbabff66
- backend update from Raze.
...
(No, the AnimTexture isn't used yet.)
2020-06-16 00:09:19 +02:00
Christoph Oelckers
60a20af8ff
- fixed code that deternines when to upscale a texture.
...
This was very much non-functional.
2020-06-10 00:21:19 +02:00
Christoph Oelckers
a330b46d1a
- fixed: The mutipatch texture builder did not set the source lump.
2020-06-08 23:37:21 +02:00
Christoph Oelckers
db93f2969e
- fixed offsets for hires replacements of already scaled textures.
2020-06-06 19:01:11 +02:00
Christoph Oelckers
16e64a19ae
- fixed incorrect offsets for textures in the hires/ folder.
2020-06-06 13:59:39 +02:00
Christoph Oelckers
4c11b01588
- backend sync with Raze.
2020-05-31 23:37:11 +02:00
Christoph Oelckers
c892fb1ddb
- backend sync with Raze
...
Mostly code reformatting plus license and copyright adjustments
2020-05-26 22:59:50 +02:00
Christoph Oelckers
192ea40634
- fixed order of multipatch texture initialization.
...
This didn't play well with hires replacements - the texture size needs to be set as early as possible.
2020-05-04 21:24:36 +02:00
Christoph Oelckers
763e9e0f35
- fixed texture scaling setup in a few places.
2020-04-26 13:48:51 +02:00
Christoph Oelckers
cf41a0b1fb
- moved hw_cvars to 'common'.
2020-04-26 11:38:38 +02:00
Christoph Oelckers
f296660266
- set all texture IDs after finishing the initial texture manager initialization.
...
As it turned out, not all textures have a valid ID at that point so it needs to be redone.
2020-04-19 21:15:01 +02:00
Christoph Oelckers
cedc95c2a5
- split out FGameTexture into its own files.
2020-04-19 10:57:56 +02:00
Christoph Oelckers
5a2a72fc95
- store the Vulkan descriptor sets in the material - where they belong!
...
Having them in the base texture object was a major maintenance issue.
2020-04-19 10:57:56 +02:00
Christoph Oelckers
ef8e7a4944
- reworked the multipatch texture builder to reuse the FImageTexture objects.
2020-04-19 10:57:55 +02:00
Christoph Oelckers
718949f74d
- moved the texture name to FGameTexture.
2020-04-19 10:57:53 +02:00
Christoph Oelckers
7dd108c960
- removed FTexture's Scale variable.
2020-04-19 10:57:53 +02:00
Christoph Oelckers
61380fc505
- moved the offsets to FGameTexture.
...
# Conflicts:
# src/common/textures/textures.h
2020-04-19 10:57:53 +02:00
Christoph Oelckers
8843761bf8
- moved most of the texture size maintenance to the FGameTexture class.
2020-04-19 10:57:53 +02:00
Christoph Oelckers
9bc1d4f38f
- restored null texture setup.
2020-04-19 10:57:52 +02:00
Christoph Oelckers
d1da26895b
- moved the texture ID up one level.
2020-04-19 10:57:52 +02:00
Christoph Oelckers
7641da8b7b
- moved several members from FTexture to FGameTexture.
2020-04-19 10:57:52 +02:00
Christoph Oelckers
42304d9680
- store the material layers in reference counted pointers in the FGameTexture object.
...
Reference counting is used because a texture image may be shared by more than one game texture.
2020-04-19 10:57:51 +02:00
Christoph Oelckers
70ec20c137
- optimization of texture scaling checks.
...
The texture dimension checks can be performed up front when the texture is inserted into the texture manager.
2020-04-19 10:57:51 +02:00
Christoph Oelckers
0b990f0dcb
- moved the decision whether to upscale textures up one level in the function chain. Still not the perfect place, this should be decided before creating the texture, not in the middle of the process.
...
- disabled the selective texture cleaning in the precacher. The logic here turned out to be a serious blocker and needs to be rethought.
2020-04-19 10:57:50 +02:00
Christoph Oelckers
095a5e2c0a
- allocate the sprite positioning info on demand only.
...
For most textures this is never needed and it can easily be put in the memory arena being used for image sources.
2020-04-19 10:57:50 +02:00
Christoph Oelckers
c5e81c54a2
- Moved the raw texture handling into the texture manager as well.
2020-04-19 10:57:50 +02:00
Christoph Oelckers
5352682697
- moved the front layer hack for Hexen's skies to the texture manager.
2020-04-19 10:57:50 +02:00
Christoph Oelckers
da873ca8d1
- moved the handling for paletted replacements into the texture manager.
...
This is something the texture should not concern itself with.
2020-04-19 10:57:49 +02:00