Christoph Oelckers
fe106d9bfe
merge FileData and ResourceData.
2023-12-14 17:22:29 +01:00
Christoph Oelckers
5c04185d5a
renamed things.
2023-12-10 12:06:52 +01:00
Christoph Oelckers
ebc808e2a9
did some cleanup of the FResourceFile interface.
...
* making all members protected (but adding friend overrides for the classes which still need it)
* allowing to read data without retrieving the FResourceLump object.
2023-12-10 10:24:39 +01:00
Christoph Oelckers
fc84579319
let FileReader::Read return an opaque buffer instead of std::vector.
...
This can later allow returning a pointer to a static buffer from a cache without creating copies.
2023-12-10 09:07:49 +01: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
48ba63c022
added even more explicit GetChars() calls.
2023-10-03 15:55:08 +02:00
Cacodemon345
ba9ce0e83f
Switch to miniz from zlib
2023-09-17 23:52:51 +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
eccbafc1bc
- let FileData.GetString only return a const char pointer.
...
Not exposing the implementation will allow a lot more optimization in the backend and we also want to get rid of FString here.
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
5f3d25ef44
- use ScanDirectory in all places where the findfile API was used.
...
This allows to completely hide its implementation details from the rest of the code which only gets a list of file names now.
2023-08-22 21:49:54 +02:00
Christoph Oelckers
7fee89d1f5
- uncouple the file system from the engine's Printf function.
...
This is needed to use it in non GZDoom based projects.
2023-08-17 21:36:22 +02:00
Cacodemon345
14a3cf8fc2
CMakeLists upgrade to 3.16 and cleanup
...
* Remove precompiled header hack
* Fixes for compilation on VS2022 Debug configurations
2023-08-14 19:30:50 +02:00
Christoph Oelckers
4538236a38
- cleaned i_music.h off external dependencies.
...
* take I_BuildMIDIMenuList out of it
* pass the command line state to disable music from the init call.
* don't declare internal 'nomusic' variable in the header.
2023-06-17 09:49:15 +02:00
Christoph Oelckers
47b76180d6
- fixed several warnings emitted by Clang.
2023-03-26 08:48:54 +02:00
Emanuele Disco
faaf938b18
refactor: add some logs to help understand what is happening during soundfont selection.
...
It helps understand what soundfont is currently used
refs: https://github.com/ZDoom/ZMusic/pull/44
2023-01-24 07:19:23 -05:00
Christoph Oelckers
671b8696bb
- made CVar declarations type safe again.
2022-10-22 09:29:38 +02:00
Christoph Oelckers
453688ccc6
- reworked CVARs to not use a linked list and to be initialized manually.
...
This solves two problems:
* The linked list is too slow, a map is better. A map cannot be used with statically allocated CVARs because order of initialization is undefined.
* The current CVAR system is an unordered mishmash of static variables and dynamically allocated ones and the means of identification are unsafe. With this everything is allocated on the heap so it can all be handled the same by the cleanup code.
2022-10-21 18:56:43 +02:00
Chris Robinson
c808aad595
Play the VPX "soundtrack" as a SoundStream
2022-10-10 08:33:23 +02:00
Christoph Oelckers
207913bced
- added a config getter to the interface.
...
Now the only external reference left in the backend code is the call to GameMain.
2022-10-02 18:42:08 +02:00
Christoph Oelckers
c596095fe0
- minor cleanup.
2022-10-02 14:36:49 +02:00
Christoph Oelckers
65f6e788eb
- moved gitinfo.h into the backend
2022-10-02 14:20:15 +02:00
Emanuele Disco
71dedf6c87
Fixed GUS Emulation with DMXGUS(C) lump conf.
...
- changed default value for midi_config to empty string since gus is not working with sf2 file
- fixed SetupDMXGUS not loading lump correctly, wrong use of CheckNumForFullName
- midi_config default to empty string, since lzdoom.sf2 doesn't seem supported (distorted sound)
- added absolute paths to FZipPatReader so we can add custom patches to resource files by using gus_patchdir and/or ULTRADIR variable (some custom maps has custom patches that can be added this way without putting them inside the resource file or in the same folder of the configuration file)
- set timidity_reverb_level min value to 0 in menudef.txt, set to 9 by mistake?
2022-04-09 22:45:31 +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
Christoph Oelckers
77d74a11d1
- removed most templates.h includes.
2021-10-30 10:49:12 +02:00
Christoph Oelckers
c1a8776a15
- updated common code from screenjob branch.
...
That is, all parts not related to cutscenes.
2021-08-03 12:30:44 +02:00
Christoph Oelckers
e453f97872
- Backend update from Raze.
2021-07-11 09:53:01 +02:00
Christoph Oelckers
52554dc32c
- Backend update fron Raze, mainly new script exports and extensions.
2021-05-03 14:13:03 +02:00
Christoph Oelckers
ba146ed5e5
- Backend update from Raze
2021-04-19 12:58:35 +02:00
Rachael Alexanderson
ad8ae0f146
- set libADL and libOPN bank settings (only) to game specific
2021-03-28 09:01:54 -04:00
Christoph Oelckers
a0cffca3bb
- restore accidentally deleted 'testmusicvol' CCMD.
2021-03-12 08:48:59 +01:00
Christoph Oelckers
d1023046ba
- default replay gain to 'off'.
2021-03-11 15:47:05 +01:00
Christoph Oelckers
b9dafaaa6b
- fill in the MIDI defaults for generating the lookup string for replay gain.
...
Both synth and sound font can be very relevant here for the final volume so using the same song with different settings needs to create different strings.
2021-03-11 00:20:19 +01:00
Christoph Oelckers
f11780600f
- implemented replay gain calculation and management.
...
This is done entirely on the streamed sound data, unlike the old relative volume which uses the backend's volume setting.
2021-03-10 23:06:21 +01:00
Christoph Oelckers
b8281f4758
- Backend update from Raze.
2020-10-16 22:57:28 +02:00
Wohlstand
4bfcbb4b18
libADLMIDI: Fixed a mistake with Volume Model setup
...
Don't set a bank number instead of a volume model!
2020-10-04 08:14:23 +02:00
Christoph Oelckers
2b64f8fb19
- added custom sound stream feature from Raze.
...
Currently not active yet but may be useful to implement streaming sounds in ZScript
2020-09-27 09:38:14 +02:00
Christoph Oelckers
712d80006a
- split game dependent parts out of menudef.cpp.
2020-06-14 00:27:32 +02:00
Christoph Oelckers
8480a390a1
- synced texture sampler setup fixes from Raze.
2020-06-02 11:45:34 +02:00
alexey.lysiuk
3f9b9314a0
- added #include to fix compilation with MSVC 16.6.0
...
https://forum.zdoom.org/viewtopic.php?t=68641
2020-05-21 10:06:50 +03:00
Christoph Oelckers
cd9e2d3795
- moved music code to "common".
2020-04-11 20:19:55 +02:00