Ștefan Talpalaru
b5eb8f47db
GCC-13 support, when precompiled headers are off
2024-02-05 17:40:37 +01:00
Christoph Oelckers
5b793958f9
fix uniform buffer size check
2024-02-04 23:06:02 +01:00
nashmuhandes
01a462e9d4
Fix the default controller axes on Linux. The third axis is actually the Left Trigger, which causes the player to uncontrollably look upwards. Fixed by mapping said axis to nothing.
2024-02-04 22:45:34 +01:00
Christoph Oelckers
f1db369883
moved a few things out of the common code that should be defined privately.
2024-02-04 13:54:25 +01:00
Christoph Oelckers
d0a2713820
limit uniform blocks to 64kb.
...
The GL uniform code is not capable of dealing with large blocks, so restrict it to what most drivers report as their maximum.
2024-02-04 13:36:25 +01:00
Christoph Oelckers
b37ea19f86
remove unnecessary #defines
2024-02-03 16:07:12 +01:00
nashmuhandes
f6bdc02a8a
Use a better default deadzone value for Linux. Fixes uncontrollable menus
2024-02-02 09:43:40 +01:00
Dileep V. Reddy
25f1407228
Cleaning up implementation of isometric camera with optional orthographic projection.
...
All CVars, mapinfo variables, and playerinfo/playerpawn variables are gone.
A Camera actor named 'SpectatorCamera' is defined in warsrc/static/zscript/actors/shared/camera.zs
The following new flag bits were defined in the 'DViewPosition' struct for use with actor->ViewPos in src/playsim/actor.h:
VPSF_ALLOWOUTOFBOUNDS = 1 << 3, // Allow viewpoint to go out of bounds (hardware renderer only).
VPSF_ORTHOGRAPHIC = 1 << 4, // Use orthographic projection.
VPSF_ISOMETRICSPRITES = 1 << 5, // Displace sprites towards camera and don't billboard (drawn from isometric perspective).
Basically, spawn a SpectatorCamera actor with the appropriate flags and set it to player.camera.
See example template: https://www.mediafire.com/file/fv8rytayjt9l6g1/isometric_actor_wads.zip/file
Has been tested with multiplayer death and disconnection (and respawns). Not tested with portals.
Still only works with hardware renderer (mostly). But should be compatible with older mods and libraries.
2024-02-01 08:43:34 -05:00
Ricardo Luís Vaz Silva
2002396b8b
Fix ..
to root folder in relative include
2024-01-31 07:48:59 -05:00
jekyllgrim
3e7d304de0
Fixed missing field definition for mCenterText
2024-01-30 14:09:30 -05:00
jekyllgrim
decaf07637
Add CenterText MENUDEF flag
2024-01-29 15:21:49 -05:00
inkoalawetrust
56803317f5
Added new AutomapOffsets property.
...
This Vector2 property allows you visually offset the XY position of an actors' sprites on the automap.
2024-01-28 09:48:41 -05:00
dpjudas
9ff1193dab
Update backend to use ColorBlendAttachmentBuilder
2024-01-25 22:50:20 -05:00
Dileep V. Reddy
d3405837ce
Changed all of the isometric functionality to mapinfo and playerinfo variables. Retained function of most of the CVars.
2024-01-21 12:13:42 -05:00
Dileep V. Reddy
08b03e6b19
Adding isometric camera mode with orthographic projection to current state of master branch of GZDoom.
2024-01-21 12:13:42 -05:00
Rachael Alexanderson
af08413e10
- reverting pull request #2361 - apparently pull request #2364 changed some behaviour and these two do not play nice together. One or the other unfortunately has to be rolled back to allow GZDoom to build properly again.
...
Revert "Restored r_orthographic behavior."
This reverts commit 26908f5bc5
.
Revert "Changed all of the isometric functionality to mapinfo and playerinfo variables. Retained function of most of the CVars."
This reverts commit dc897eacc0
.
Revert "Adding isometric camera mode with orthographic projection to current state of master branch of GZDoom."
This reverts commit d2c2c93cf1
.
2024-01-21 08:18:16 -05:00
Dileep V. Reddy
dc897eacc0
Changed all of the isometric functionality to mapinfo and playerinfo variables. Retained function of most of the CVars.
2024-01-21 03:34:00 -05:00
Dileep V. Reddy
d2c2c93cf1
Adding isometric camera mode with orthographic projection to current state of master branch of GZDoom.
2024-01-21 03:34:00 -05:00
Professor Hastig
cfb4e4f105
fix file names in mounted directories.
...
This used the normalized file name for access which only works on case insensitive file systems and only as long as no character gets mangled by Unicode normalization.
2024-01-18 07:05:32 +01:00
Ricardo Luís Vaz Silva
98e6330eaa
allow modeldef flags to be overriden
2024-01-16 10:27:08 -05:00
Major Cooke
d789676b26
Fixed music unpausing when alt-tabbing back.
2024-01-12 16:53:56 +01:00
Andrey Shustov
0aa140194d
Fix "unexpected end of TTF file" error
...
Changed returnv vector size to 3 by default and set size 5 for WIN32
only.
2024-01-11 16:35:38 +01:00
Rachael Alexanderson
64096658e5
- reverse allowduplicates check since it is a misnomer to what it actually did
2024-01-11 08:02:44 -05:00
Magnus Norddahl
8cc531e283
Implement mouse event propagation
2024-01-10 23:23:13 +01:00
Christoph Oelckers
c7778b9332
implemented language selection on the IWAD picker.
2024-01-09 20:52:52 +01:00
Christoph Oelckers
f7a4f00177
adapted string table so that it can be initialized without full game data being available.
...
This is for the IWAD picker which runs before many things are known.
2024-01-09 17:22:59 +01:00
Christoph Oelckers
963209e8af
removed external stuff from tarray.h
2024-01-09 16:47:24 +01:00
Christoph Oelckers
0838433d1f
make adjustments to the font substitution and load Japanese and Korean fonts from the Windows font folder.
2024-01-09 16:37:17 +01:00
Ricardo Luís Vaz Silva
8ae93fb87f
use map instead of linear search to find texture indices for animation
2024-01-09 06:38:08 -05:00
Christoph Oelckers
0e51c5832d
fix compilation
2024-01-07 10:05:03 +01:00
Christoph Oelckers
f13ae3b706
addressed a few things pointed out by static analysis
...
* marking move assignments noexcept
* using [[fallthrough]] consistently.
* getting rid of alloca.
2024-01-07 08:46:47 +01:00
Ricardo Luís Vaz Silva
35e56d3f42
Minor optimizations to VisualThinker
...
* remove duplicated fields
* make native functions use direct calls
* remove unnecessary pointer from particle_t
* create HWSprite directly in Construct
2024-01-06 20:06:57 -05:00
Christoph Oelckers
83aa9388ca
backend update from Raze
...
* moving large allocations off the stack
* use proper printf formatters for size_t and ptrdiff_t.
* adding some missing 'noexcept'.
2024-01-06 15:24:10 +01:00
Christoph Oelckers
a020b8c2f5
do not compile the first shader in the shader manager's constructor
...
This was crashing with the move of the V_Init2 call. Instead do it when we first render something so that we can open the window without immediately making the full backend operational.
This was only working on GLES because it performs lazy shader compilation.
2024-01-05 16:55:11 +01:00
Professor Hastig
c446af41ae
fixed TArray::push_back
2024-01-05 16:42:40 +01:00
Christoph Oelckers
c62ecc44e2
eliminated the small white part of the initial window content after the IWAD picker.
2024-01-04 22:21:27 +01:00
Christoph Oelckers
9ced091b19
fixed Linux include
2024-01-04 21:10:00 +01:00
Christoph Oelckers
e7ac2fe741
moved launcher window out of common.
...
This needs to be different for Raze so it cannot be in shared code.
2024-01-04 20:44:27 +01:00
Christoph Oelckers
a2a7667442
added render backend selection to the new IWAD picker.
...
Unlike VkDoom we still need this.
2024-01-04 19:25:25 +01:00
Christoph Oelckers
15e9c95419
fixed playback of external sound files over cutscenes when started from the console.
2024-01-04 18:22:24 +01:00
Magnus Norddahl
99fc43932b
Add the additional parameters edit control from the mac version
2024-01-03 16:50:57 +01:00
Magnus Norddahl
b463c8e656
Fix text word wrapping under scrollbar
2024-01-03 16:50:57 +01:00
Magnus Norddahl
e953f3a0c7
Add scrollbar to the log
2024-01-03 16:50:57 +01:00
Christoph Oelckers
e27cbe5bd9
convert more files to UTF-8.
...
It was mostly degree signs causing these issues.
2024-01-02 21:54:29 +01:00
Christoph Oelckers
243006987d
remove old GTK-based Linux picker dialog.
2024-01-02 21:30:28 +01:00
Christoph Oelckers
ec227383ed
fixed bad comment with non-UTF-8 extended character which MSVC warns about when compiling with /utf-8
2024-01-02 21:05:31 +01:00
Christoph Oelckers
b31ae22f25
fixed loading of 7z files.
2024-01-02 20:50:45 +01:00
Christoph Oelckers
f5c4964902
use a more complete font did some primitive font substitution logic.
...
NotoSans was chosen because it contains all Latin, Cyrillic and Greek characters in one file.
To test the substitution the separate font files for Armenian and Georgian were also added, even though the languages have not been translated.
2024-01-02 18:58:39 +01:00
Christoph Oelckers
4afe1686da
hide the old main window as it no longer contains the startup.
2024-01-02 17:23:05 +01:00
Christoph Oelckers
2431d214e6
adapt widget reader to new resource file API.
2024-01-02 17:05:13 +01:00
Magnus Norddahl
2863c89af7
Hook up the zwidget launcher window on Linux
2024-01-02 16:56:19 +01:00
Magnus Norddahl
426837e7d4
Implement the timer class
...
Support calling ShowNetStartPane multiple times
2024-01-02 16:55:52 +01:00
Magnus Norddahl
efde75877d
Fix the abort button
2024-01-02 16:55:52 +01:00
Magnus Norddahl
16e578a0f8
Implement NetStartWindow
...
# Conflicts:
# src/p_setup.cpp
2024-01-02 16:55:52 +01:00
Magnus Norddahl
da83b546ad
Finish the error window implementation
2024-01-02 16:55:27 +01:00
Magnus Norddahl
19c2ea171d
Implement launcher window base functionality
2024-01-02 16:55:27 +01:00
Magnus Norddahl
787eb625e5
Use a better font
...
# Conflicts:
# wadsrc/static/newmenufont.ttf
2024-01-02 16:55:26 +01:00
Magnus Norddahl
71ff4d3685
Load widget resources from lumps
...
Add banner
2024-01-02 16:55:17 +01:00
Magnus Norddahl
3f50136c8d
Create initial error and netstart windows
2024-01-02 16:55:17 +01:00
Magnus Norddahl
787d18e12b
Add launcher window
2024-01-02 16:55:17 +01:00
Magnus Norddahl
e7285cd6d9
Theme the caption bar when playing windowed mode
2024-01-02 16:54:51 +01:00
Christoph Oelckers
5b90b2d80c
account for resorted directories when accessing the local file path array in file_directory.cpp
2023-12-31 23:39:58 +01:00
Professor Hastig
16e8e71971
fixed infinite recursion in vid_preferbackend.
2023-12-28 17:11:17 +01:00
Professor Hastig
51e014c858
do MIDI device lookup by lump index as well, for the same reasons as doing it for the volume.
2023-12-28 17:10:33 +01:00
Christoph Oelckers
eb2f263803
perform music volume lookup by lump number instead of name.
...
This way any setting will work for both short and long file names of the same content.
2023-12-27 20:08:22 +01:00
Christoph Oelckers
958303556f
warnings and debug code cleanup
2023-12-26 22:16:21 +01:00
Christoph Oelckers
133b415b84
music volume.
...
* this now applies the factor to the source data instead of setting a gain factor in OpenAL to allow better control
* $musicvolume will now also accept values in dB, by postfixing the parameter with 'dB'.
* removed some useless cruft from the automatic replay gain handling.
2023-12-26 22:01:51 +01:00
Cacodemon345
a368588db6
Export FScanner parser to ZScript as ScriptScanner
2023-12-25 10:52:56 +01:00
Christoph Oelckers
fd9b762106
moved animlib to thirdparty folder.
2023-12-25 08:45:47 +01:00
Christoph Oelckers
59b0b0620a
got rid of the redundant copy of alext.h
2023-12-24 09:15:41 +01:00
Christoph Oelckers
36651fffaa
deleted unused toWide declaration from file_directory.cpp
2023-12-24 08:51:52 +01:00
Christoph Oelckers
baa9251741
simplified the directory reader a little bit
...
* we do not need to make a second allocation for the systemFilePath
* as systemFilePath is never null, there is no need to check for that case.
* moved systemFilePath into a separate array to save memory on other file types.
2023-12-24 08:35:47 +01:00
Vasilii Shirokii
f8dcc33e6d
Code style
2023-12-24 08:22:40 +01:00
Vasilii Shirokii
90d672e345
Maintain the actual on-disk path (FResourceEntry::SystemFilePath) for the directory filesystem, because the FResourceEntry::FileName can be modified by game filter-s
2023-12-24 08:22:40 +01:00
Christoph Oelckers
97c04357f1
fixed alternative parts of vectors.h
...
Not relevant for GZDoom itself but let's keep things tidy.
2023-12-21 22:11:53 +01:00
Christoph Oelckers
d2c395757c
fixed bad setup in FileData constructor.
2023-12-21 17:14:56 +01:00
Ignacio Taranto
e572bb8db3
Fix Zip file modification timestamps
...
The problem was that `time_to_dos` was putting the last modification
file date first and the time second. This was causing the date to be
interpreted as the time and vice versa when reading the Zip file.
See: https://github.com/ZDoom/gzdoom/issues/2306
2023-12-20 23:26:52 +01:00
Christoph Oelckers
a31cfa97e4
fixed typo in FZipFile::GetRawData.
...
This one caused incompletely loaded savegames.
2023-12-20 00:06:49 +01:00
Christoph Oelckers
d11bf52831
fixed crash with files from directories.
2023-12-19 19:09:35 +01:00
Christoph Oelckers
273f7c55bc
fixed some filesystem issues with directories and compression.
2023-12-17 17:15:14 +01:00
Christoph Oelckers
efef4bdfd1
addressed a few warnings in the filesystem code.
2023-12-17 13:32:44 +01:00
Christoph Oelckers
aec7feb48a
add 'noexcept' to two functions.
2023-12-16 11:48:08 +01:00
Christoph Oelckers
633c09a3bb
de-inlined two functions that were generating too much code.
2023-12-16 10:58:04 +01:00
Christoph Oelckers
08614613be
for memory backed files, let FResourceFile::Read return a reference to the backing store instead of copying the data.
2023-12-16 10:54:31 +01:00
Christoph Oelckers
d45ca8151f
added another missing include
2023-12-16 08:58:46 +01:00
Christoph Oelckers
7ce63abe6c
add missing check for embedded WADs.
2023-12-16 07:41:22 +01:00
Christoph Oelckers
cffa49d05f
add missing #includes
2023-12-16 07:23:57 +01:00
Christoph Oelckers
bae3adc89f
moved writezip.cpp out of filesystem and eliminated uses of TArray.
2023-12-15 16:59:00 +01:00
Christoph Oelckers
96961a5663
moved the hard coded exclusions for the file system to the blockedlist.
...
These exclusions are still engine specific, in case we want to use this in a more generic context they have to be disabled.
2023-12-15 16:58:26 +01:00
Christoph Oelckers
375faa649e
fix missing include.
2023-12-14 20:39:15 +01:00
Christoph Oelckers
869d7a6dcb
only try to find a common folder in Zips if there's some data to check against.
...
Without this the check for required file names will always fail so running the entire thing is pointless.
2023-12-14 17:55:46 +01:00
Christoph Oelckers
f8d839d6eb
move root folder detection out of file_zip.
...
added support for Descent Hog and Mvl files., mainly useful for playing Descent's music directly from the asset files.
2023-12-14 17:22:32 +01:00
Christoph Oelckers
799679bf6c
block off shared readers to worker threads.
...
The file system should be thread safe now.
2023-12-14 17:22:32 +01:00
Christoph Oelckers
737e3f22d7
implement the different reader types.
2023-12-14 17:22:32 +01:00
Christoph Oelckers
11d6b3e5b4
only use the new flag names
2023-12-14 17:22:32 +01:00
Christoph Oelckers
301323944f
eliminate the intermediate reader for the savegame pics.
2023-12-14 17:22:32 +01:00
Christoph Oelckers
78a71bb662
streamline the buffer readers.
2023-12-14 17:22:32 +01:00
Christoph Oelckers
235d36fe69
simplification of MemoryArrayReader interface.
2023-12-14 17:22:32 +01:00
Christoph Oelckers
9bcbdfa09c
take OpenDecompressor out of FileReader and fixed exploding decompression
2023-12-14 17:22:32 +01:00
Christoph Oelckers
6f8c3c60c4
Use FResourceFile directly for the simple container types.
...
Instead let FResourceFile provide an interface for ad-hoc construction of a new container.
2023-12-14 17:22:31 +01:00