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
Christoph Oelckers
16cefb7528
- some angle cleanup
...
* clean out the angle conversion helpers from basics.h.
* use degrees instead of radians in TMatrix3x3.
2023-08-12 10:10:27 +02:00
Professor Hastig
666a99f204
lightmode refactor
...
* make all legacy light modes except 'Doom' MAPINFO only. A CVAR still exists for testing but its value won't be saved to the config.
* user can only select between "performance', 'software' and 'vanilla'. 'performance' is the old 'Doom' mode which is still needed to speed things up on low end hardware.
* MAPINFO can not enforce any of the two software light modes, as low end users require the option to change this to the 'performance' setting. Selecting one will always revert to the user's light mode selection.
2023-07-17 22:50:05 +02:00
l2ksolkov
245dac814e
Add missing include guards
2023-05-29 07:35:26 +02:00
Christoph Oelckers
087050c201
- use uniform buffers for dynamic lights everywhere.
...
Branching on SSBO content does not work that well on NVidia so it is better disabled.
So far only implemented for OpenGL - Vulkan needs more work.
2023-02-18 12:22:26 +01:00
Emile Belanger
c8bd2deb1e
GLES: Fix first wipe
2023-01-29 20:03:05 +01:00
Christoph Oelckers
ec04a95929
- validate the buffer size in HWViewpointBuffer::Set2D.
...
This was causing crashes in Dragon Sector when writing past the buffer's end.
2023-01-27 18:25:13 +01:00
Christoph Oelckers
5b7826f68b
- set lightblendmode to 0 when setting up a 2D viewpoint.
...
2D never uses dynamic lights so this should always be 0 - and eliminates another place in the backend referencing game data.
2023-01-15 09:21:01 +01:00
Christoph Oelckers
bafd6be342
- removed backend dependencies on game data.
2023-01-15 08:23:26 +01:00
Ricardo Luís Vaz Silva
8e7897233e
Add Alternate Light Blending Options
2023-01-14 11:29:12 -05: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
Emile Belanger
f41f393e91
GLES: Added IQM bone support.
2022-11-13 21:19:54 +01:00
Christoph Oelckers
7e0084f56b
- Backend update from Raze.
2022-10-25 07:02:45 +02:00
Christoph Oelckers
671b8696bb
- made CVar declarations type safe again.
2022-10-22 09:29:38 +02:00
Shiny Metagross
13edabac19
Fixed crash on Intel cards with less than 64 uniform block align
...
- This should fix the crash with Intel cards. Sprite blinking appears to not occur either
2022-10-19 22:48:57 +02:00
Shiny Metagross
a8bab6a21d
Intel fix
...
- GZDoom can launch for Intel users - IQMs work for Intel too
2022-10-19 22:48:57 +02:00
Shiny Metagross
08f520f1c6
IQM Support Implemented
...
More info to come
2022-10-19 22:48:57 +02:00
Christoph Oelckers
7ad09c7a77
- fixed sky cap color handling
...
Backported from Raze
2022-08-26 18:17:02 +02:00
Christoph Oelckers
f0fbdba593
- disable implicit conversions from float to TAngle
2022-08-26 18:01:26 +02:00
Magnus Norddahl
742ae8c907
Fix viewpoint buffer not getting cleared when in the menus
2022-07-28 13:52:09 +02:00
Magnus Norddahl
753822359e
Add support for multiple 2d drawer viewpoints in the same frame
2022-07-25 18:50:16 +02:00
Magnus Norddahl
e26fb04adf
Some minor bug fixes
2022-06-22 07:55:19 +02:00
Magnus Norddahl
97073410c4
Upload acceleration structures for the level mesh
2022-06-22 07:55:19 +02:00
Magnus Norddahl
34f1b23c3f
Fix the discolored sky bug
2022-06-13 21:34:30 -04: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
e266fb1c16
- removed all vid_fps offsetting.
...
To compensate there is now also a "stat fps" which displays the FPS rate in the lower left corner. This had to go because unconditionally altering positions was causing problems with custom HUDs.
2022-06-05 12:16:56 +02:00
Christoph Oelckers
2be13e1b9f
- changed shader loader to load only one shader at a time
...
This is merely preparation - the actual loading is still in one uninterrupted piece.
2022-05-13 08:22:22 +02:00
Christoph Oelckers
4e72ea1cfa
- Backend update from Raze
2022-04-26 20:50:36 +02:00
nashmuhandes
396bac5e4f
- Initialize some variables in FModelVertex::Set
...
- Fix wrong normal vector in the FModelVertexBuffer constructor
This fixes models having strange flickering when the model animation frame changes
2022-02-14 12:16:45 -05:00
nashmuhandes
f79bbed130
Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2
2022-01-20 14:19:45 +08:00
Christoph Oelckers
e6c6471e2f
- fixed logic error with depth bias state in hardware renderer.
2022-01-17 00:32:54 +01:00
nashmuhandes
57112742fe
Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2
...
# Conflicts:
# src/common/rendering/gl/gl_shader.cpp
# src/common/rendering/hwrenderer/data/buffers.h
# src/common/rendering/v_video.h
2022-01-16 01:57:38 +08:00
Christoph Oelckers
79c9b979d2
- backend update from Raze.
2022-01-11 17:19:16 +01:00
Christoph Oelckers
e60e6967c0
- whitespace cleanup, updated from Raze.
2022-01-02 12:23:42 +01:00
Christoph Oelckers
3b879c5656
- changed the license of 3 more files free of external contributions to LGPL v2.
2022-01-02 12:08:47 +01:00
Christoph Oelckers
9d2431187d
- reverted the license of the stereo3D code to BSD.
...
None of this was ever put under the GPL by its original author, so it is now back to its original license.
2022-01-02 11:41:32 +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
nashmuhandes
879c514120
Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2
2021-11-14 22:01:03 +08:00
Christoph Oelckers
c598d9bab7
- Backend update from Raze.
...
* TArray extensions
* MSVC setup so that [[deprecated]] emits warnings.
2021-11-12 09:36:46 +01:00
nashmuhandes
1b95f2515b
Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2
2021-11-10 19:57:49 +08:00
Christoph Oelckers
eb69bbcae0
- replaced MIN/MAX in common code.
2021-10-30 10:46:17 +02:00
Magnus Norddahl
d853961a83
Fix vulkan buffers not using the stream usage for the 2d drawer
...
Add BufferUsageType enum to clarify what kind of usage is expected by the buffer allocated by SetData
2021-10-26 22:43:38 -04:00
Magnus Norddahl
6a804cd4c7
Fix lightmaps got applied to model meshes
2021-10-14 06:11:54 +02:00
nashmuhandes
2f8cff90b6
- Add lightmaps to the main shader (currently only OpenGL)
...
- Create a version of CreateIndexedSectorVertices that works with lightmap sectors
2021-09-24 16:56:15 +08:00
Christoph Oelckers
da806b354d
- cleanup of the revised y-clamping feature.
...
This integrates better with the existing features.
2021-09-21 20:31:42 +02:00
Emile Belanger
db59a4f9af
Add buffer synchronisation for GLES when using mapped buffers.
2021-09-20 18:12:20 -04:00
Christoph Oelckers
a0043ec09d
- better handling of texture clamp state.
...
Free combination of clamping with all texture modes still missing in GLES and Softpoly renderers!
2021-09-19 14:54:34 +02:00
Christoph Oelckers
67958833b7
Merge branch 'gles2_merge'
2021-09-17 21:22:41 +02:00
Christoph Oelckers
918e9e9b0d
- fixed texture clamping for elements that are partially behind a slope.
...
This is mainly mid textures on linedefs and decals.
2021-09-17 00:25:28 +02:00
Christoph Oelckers
17638426b9
- removed the redundant gl_render_precise CVAR.
...
The menu now uses gl_seamless directly without the redirection.
2021-09-14 19:49:42 +02:00