Commit graph

1262 commits

Author SHA1 Message Date
Eidolon
0f2fe5983e hwr: Use lightlevel on transparent planes 2022-11-09 17:31:49 -06:00
Eidolon
12c2ddb115 Merge branch 'uncappedrevengeance' into next
Uncapped

See merge request STJr/SRB2!1856

# Conflicts:
#	src/dummy/i_system.c
#	src/win32/win_sys.c
2022-11-08 21:13:50 -06:00
toaster
0cd3629d00 Explicit pointer cast for R_InterpolatePrecipMobjState 2022-11-07 18:17:45 -06:00
Eidolon
5f6c56cf36 Use precip interp if gl sprite is for precip 2022-11-07 18:17:45 -06:00
Eidolon
f7bc03ad61 Use interp position in GL billboarding 2022-10-30 23:14:11 -05:00
sphere
8da4eab173 Merge branch 'udmf-fof-flags' into 'next'
Fix UDMF FOF flags

See merge request STJr/SRB2!1802
2022-09-28 21:03:44 +00:00
sphere
cfdbc8f44a Merge branch 'vissprite-color' into 'next'
Allow objects with MF2_LINKDRAW to use their own color

See merge request STJr/SRB2!1576
2022-09-17 07:32:51 +00:00
MascaraSnake
ec119eac2f Merge branch 'next' into udmf-fof-flags 2022-07-31 13:27:03 +02:00
MascaraSnake
8d4baace53 Add Lua backwards compatibility for FOF flags 2022-07-31 12:04:42 +02:00
sphere
f8d2297e07 Merge branch 'colon-parenthesis' into 'next'
Fix semibright/fulldark frame flags not working with 3D models

See merge request STJr/SRB2!1779
2022-07-29 09:33:20 +00:00
Eidolon
805941a98f Merge public next into uncappedrevengeance
This is to capture the UDMF merges and make the later code review
easier.
2022-05-03 14:45:14 -05:00
Eidolon
1259f1be40 Interpolate spritescale/offset x/y 2022-04-29 14:21:30 -05:00
Eidolon
1aebf41e82 Interp shadow scales 2022-04-28 20:14:04 -05:00
Eidolon
51553e7f75 Interpolate mobj scale 2022-04-27 21:39:47 -05:00
Eidolon
833777d773 Revert "Remove unnecessary precipmobj thinker hack"
This reverts commit 0e38208620d19ec2ab690740438ac2fc7862a49e.
2022-04-26 20:56:36 -05:00
Sally Coolatta
f34a61156c Papersprite angle interpolation
Makes the ending signpost smooth
2022-04-26 20:56:35 -05:00
Eidolon
7dd7cccd79 Use interp tracer pos for GL linkdraw 2022-04-26 20:56:34 -05:00
Sally Coolatta
f330374c1f Interpolate model interpolation (lol) 2022-04-26 20:56:34 -05:00
Sally Coolatta
2f46725984 Fix flickering plane interpolation for OpenGL in the exact same way
Funny OpenGL renderer being at least 50% copy-pasted Software code :)
2022-04-26 20:56:33 -05:00
Sally Coolatta
c186d6402b Lots of FPS stuff
- Disabled VSync, due to the numerous problems it has.
- Instead, added an FPS cap.
- Frame interpolation is now tied to fpscap != 35.
- By default, the FPS cap is set to the monitor's refresh rate.
- Rewrote the FPS counter.

(This also consolidates several more commits ahead of this
fixing various issues. -eid)
2022-04-26 20:56:32 -05:00
James R
e6dff8eedc Closer OpenGL underwater/heatwave effect to Software 2022-04-26 20:56:31 -05:00
James R
56c0c1f415 Do not speed up underwater/heatwave effect in OpenGL 2022-04-26 20:56:31 -05:00
Eidolon
ca8698d13e Interpolate HWR_DrawModel 2022-04-26 20:56:31 -05:00
Eidolon
ac2510f284 Homogenize mobj interpolations 2022-04-26 20:56:27 -05:00
Eidolon
4ee6027180 Remove unnecessary precipmobj thinker hack 2022-04-26 20:31:39 -05:00
Eidolon
7c9e133eb4 Fix misc dropshadow issues 2022-04-26 20:31:38 -05:00
Eidolon
61efef2fa9 Add smooth level platter under interpolation, renderdeltatics
`renderdeltatics` can be used as a standard delta time in any place,
allowing for smooth menus. It will always be equal to `realtics`
when frame interpolation is turned off, producing consistent
framerate behavior everywhere it is used.
2022-04-26 20:31:38 -05:00
Eidolon
b625076c87 Implement interpolation at the renderer level
Instead of interpolating thinkers, we interpolate mobjs inside the
renderer. Further interpolation is TBI.
2022-04-26 20:31:37 -05:00
MascaraSnake
5fbe5189ce Merge branch 'udmf-sector-fields' into udmf-full 2022-04-20 21:01:52 +02:00
MascaraSnake
5660d896e6 Merge branch 'udmf-thing-types' into udmf-more-linedef-types 2022-04-20 21:00:44 +02:00
MascaraSnake
2e56c3de35 Merge branch 'udmf-polyobjects' into udmf-lighting 2022-04-19 22:18:30 +02:00
MascaraSnake
0b4bbacec0 Merge branch 'next' into udmf-fofs-mkii 2022-04-19 21:59:31 +02:00
spherallic
5bdfb7ffc1 Fix semibright/fulldark frame flags for models 2022-04-09 16:42:54 +02:00
Jaime Ita Passos
3581d06012 Fix frame blend flags not working with 3D models 2022-04-08 16:01:41 -03:00
sphere
7ec7b2699f Merge branch 'floorsprite-and-shadow-fake-planes-fix' into 'next'
Drop shadow fake floor/ceiling fix

See merge request STJr/SRB2!1638
2022-03-21 22:40:25 +00:00
Lactozilla
4f9ac9edb8 Drop shadow fake floor/ceiling fix 2022-03-21 22:40:24 +00:00
MascaraSnake
a78e4e553c Merge branch 'next' into udmf-fofs-mkii 2022-03-18 07:29:02 +01:00
spherallic
14295ac7de 2022 2022-03-03 20:24:46 +01:00
spherallic
15755ef992 Remove unneeded R_GetTranslucencyTable calls, add V_HUDTRANS* comments 2022-01-19 13:17:57 +01:00
MascaraSnake
7fd1c0512a Merge branch 'udmf-thing-types' into udmf-more-linedef-types
# Conflicts:
#	src/p_setup.c
2022-01-14 21:06:45 +01:00
MascaraSnake
79cf2f53e8 Merge branch 'udmf-polyobjects' into udmf-lighting 2022-01-14 20:24:51 +01:00
MascaraSnake
6bb6dc88ca Merge branch 'next' into udmf-fofs-mkii
# Conflicts:
#	src/hardware/hw_main.c
#	src/lua_maplib.c
#	src/p_spec.c
#	src/p_user.c
2022-01-14 07:24:05 +01:00
lachablock
d764d68d02 Turn dispoffset into a mobj field 2022-01-13 18:53:26 +11:00
MascaraSnake
868b2577ad Merge branch 'udmf-sector-fields' into udmf-full
# Conflicts:
#	src/hardware/hw_main.c
#	src/p_setup.c
#	src/p_spec.c
2022-01-09 13:58:27 +01:00
MascaraSnake
e7a281d994 Merge branch 'udmf-thing-types' into udmf-more-linedef-types 2022-01-09 13:52:26 +01:00
MascaraSnake
0b8204491d Merge branch 'udmf-polyobjects' into udmf-lighting 2022-01-09 13:50:14 +01:00
MascaraSnake
3104504848 Merge branch 'blentran-update' into udmf-full 2022-01-09 13:47:59 +01:00
MascaraSnake
95e909400f Fix blendmode regression in OpenGL caused by faulty fog wall support 2022-01-09 13:45:56 +01:00
MascaraSnake
659410dde1 Use Slope Skew flag instead of Upper Unpegged for FOF skewing 2022-01-05 23:47:05 +01:00
MascaraSnake
fcb69b9c2f Rename more linedef flags 2022-01-05 19:43:40 +01:00
MascaraSnake
06b7d7ceb8 Make only ML_EFFECT3 affect midtexture pegging in UDMF 2022-01-05 18:05:47 +01:00
MascaraSnake
913731b4bc Merge branch 'blentran-update' into udmf-full
# Conflicts:
#	src/lua_maplib.c
#	src/p_setup.c
#	src/p_spec.c
2022-01-02 23:19:47 +01:00
MascaraSnake
2886a277d8 Turn the fog wall linedef type into a blendmode 2021-12-31 15:00:27 +01:00
MascaraSnake
cbf32c6615 Adapt some miscellaneous linedef types to UDMF 2021-12-29 08:12:28 +01:00
MascaraSnake
f714966c83 Remove outdated linedef type check in HWR_ProcessSeg 2021-12-12 08:27:27 +01:00
sphere
7601afb6c1 blentran part 3: Wall & plane blendmodes. 2021-12-05 00:48:21 +01:00
sphere
a3be09bb3f blentran part 2: Sprite & patch blendmodes. 2021-12-05 00:48:21 +01:00
sphere
3802f601a9 blentran part 1: Flag changes & semibright support. 2021-12-05 00:48:21 +01:00
MascaraSnake
aee4996eba Merge branch 'udmf-polyobjects' into udmf-lighting 2021-12-03 19:22:37 +01:00
Hannu Hanhi
77ecfb9cdc Perfstats averaging and refactor 2021-10-29 02:18:02 +03:00
MascaraSnake
e15c160773 Implement per-sector floor/ceiling lighting 2021-09-19 08:58:21 +02:00
Tatsuru
033c661431 Merge branch 'folder' into 'next'
Implement folder loading

See merge request STJr/SRB2!1568
2021-09-10 17:10:26 +00:00
Tatsuru
eec765749b Merge branch 'drawcroppedpatch-improvements' into 'next'
V_DrawCroppedPatch(...) Lua exposure and improvements

See merge request STJr/SRB2!1316
2021-09-10 16:14:38 +00:00
sphere
1d92456ad5 Merge branch 'gl-texfmt-p8-ap88-a8-ai8-fix' into 'next'
Fix #492

Closes #492

See merge request STJr/SRB2!1431
2021-08-02 13:10:32 +00:00
lachablock
2e7141b54a Use tracer's color for uncolored objects flagged with MF2_LINKDRAW 2021-07-06 18:56:45 +10:00
lachablock
7ea73bf817 Add a color field to vissprites and use that instead of referencing its mobj 2021-07-06 18:36:05 +10:00
LJ Sonic
4af3b860fd Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2.git into folder-next 2021-06-25 00:30:30 +02:00
James R
fa7a674113 Merge remote-tracking branch 'origin/master' into next 2021-06-19 19:39:15 -07:00
James R
c325306ddf Merge remote-tracking branch 'origin/master' into makefile-revision-final 2021-06-07 18:36:01 -07:00
Monster Iestyn
090e5384d5 Merge branch 'blendmode-rangecheck' into 'next'
Handle invalid blend modes

See merge request STJr/SRB2!1486
2021-06-05 09:02:31 -04:00
sphere
fb453491dd Merge branch 'models-spr2endstate' into 'next'
Fix models interpolating to frame 0 from a same-sprite2 FF_SPR2ENDSTATE state

See merge request STJr/SRB2!1515
2021-06-02 06:28:51 -04:00
Nev3r
ab06ff011e Merge branch 'colorfret' into 'next'
Respect mobj->color while enemies & bosses flash (resolves #531)

Closes #531

See merge request STJr/SRB2!1513
2021-06-01 02:31:22 -04:00
sphere
fb4b3b8130 Merge branch 'ogl-fof-wall-slope-fix2' into 'next'
Take slopes into account in FOF wall cutoff in HWR_ProcessSeg

Closes #192

See merge request STJr/SRB2!1361
2021-05-30 11:32:30 -04:00
sphere
75938e2dfa Merge branch 'software-slope-plane-uv-fix-attempt' into 'next'
Fix slope plane rotation and alignment (resolves #508)

Closes #508

See merge request STJr/SRB2!1464
2021-05-27 16:56:16 -04:00
Jaime Ita Passos
a1553c4623 Update r_opengl.c 2021-05-22 20:08:11 -03:00
Jaime Ita Passos
75ebdda31b Merge remote-tracking branch 'origin' into gl-texfmt-p8-ap88-a8-ai8-fix 2021-05-22 19:44:57 -03:00
lachablock
750bdd9d60 Respect mobj->color while enemies & bosses flash, but in OpenGL 2021-05-22 23:25:36 +10:00
lachablock
99ad188263 Fix models interpolating to frame 0 from a same-sprite2 FF_SPR2ENDSTATE state 2021-05-22 18:17:48 +10:00
SteelT
695722269b Merge branch 'warnings' into 'master'
Fix some compiler warnings

See merge request STJr/SRB2!1504
2021-05-19 22:54:48 -04:00
Jaime Ita Passos
7500d12eeb Merge remote-tracking branch 'origin' into software-slope-plane-uv-fix-attempt 2021-05-16 20:56:53 -03:00
James R
35244fa736 Clang: fix -Wimplicit-const-int-float-conversion
Some of these integers exceed the precision of float. In
that case the number is rounded. The rounding shouldn't
matter too much anyway, so just shut the compiler up.
2021-05-08 16:49:23 -07:00
James R
ee72312dea Merge remote-tracking branch 'origin/master' into makefile-revision-final 2021-05-07 13:32:19 -07:00
LJ Sonic
07e69c5eb3 Add copyright date ranges for files created in 2020 2021-05-07 18:04:30 +02:00
LJ Sonic
d325c7e6d3 The year is 2021 2021-05-07 17:45:56 +02:00
James R
f9813844e7 Update CMakeLists.txt to use Sourcefiles
This establishes (near) parity of source code file lists
between the Makefile and CMakeLists.txt

To make that change I messed around CMakeLists.txt a bit.
It now uses target_sources and target_compile_definitions.
I also removed some MSVC stuff since we don't actually
care about MSVC--it made things easier.

CMake minimum version 3.0 -> 3.13 for target_sources.
2021-05-05 04:00:44 -07:00
James R
b31056c7d9 Rewrite Makefile to be modular as well as more automated
Some key points for programmers:
- Source code files are mostly listed in a 'Sourcefile'.
  So you no longer directly edit the object list. There
  can be multiple Sourcefiles and they can even live in
  subdirectories--the directory name will be prepended to
  every filename in the list. Of course, the Makefile
  still needs to be edited to read from each Sourcefile.
- Different rules are no longer required for source code
  files that live in subdirectories (such as sdl/ or
  hardware/). Subdirectories Just Work so go ham!

In addition to those points, another important change is
that the bin directory is no longer divided into platform
subdirectories (Linux64, Mingw, etc). Executables now go
directly into bin. If you use DEBUGMODE or target 64-bit,
then subdirectories for 'debug' and '64' will be made
though.

Oh by the way, I don't think make clean actually removed
files before on Windows. It should now. I also fixed as
many little inconsistencies like that as I noticed.

And now just an overview of the technical aspects that
shouldn't affect anyone who doesn't REALLY care about the
Makefile...

objs and dep directories have been moved to a make
directory. Makefile.cfg and its variants have been moved
out of their various subdirectories to src/Makefile.d
make distclean removes the bin and make directories
entirely, but make clean and cleandep still only affect
the current build target.

When I say automation, I mean that a lot of copy pasting
in the Makefile has been reduced.
2021-05-04 04:22:37 -07:00
Jaime Ita Passos
e4b8dc6584 Fix sloped plane offsets in Software, and fix rotated flat alignment in OpenGL.
+ unrelated slope plane optimizations in Software
2021-04-27 19:01:09 -03:00
Zwip-Zwap Zapony
21da6ce704 Auto-crop at splitscreen borders
V_DrawCroppedPatch will no longer go beyond splitscreen borders when V_PERPLAYER is used
2021-04-27 21:30:00 +02:00
Jaime Ita Passos
548554431b Handle invalid blend modes properly 2021-04-27 00:20:41 -03:00
LJ Sonic
02ee480abe Merge branch 'gl-colormapped-epolyflag' into 'next'
Fix uninitialized reads in PreparePolygon

See merge request STJr/SRB2!1392
2021-04-25 14:19:24 -04:00
sphere
a90642bfa9 Merge branch 'ogl-midtexture-zfighting-fix' into 'next'
Render midtextures on two-sided lines with a z-buffer offset

See merge request STJr/SRB2!1376
2021-04-25 14:02:02 -04:00
Zwip-Zwap Zapony
acff5c1ada Merge branch 'next' into drawcroppedpatch-improvements 2021-04-25 10:15:16 +02:00
sphere
d71b99a56b Merge branch 'comparepolygons-fix' into 'next'
Remove bad pointer arithmetic in polygon comparators (fixes #295)

Closes #295

See merge request STJr/SRB2!1462
2021-04-19 14:33:41 -04:00
sphere
d871612a72 Merge branch 'openglol' into 'next'
Fix HWR_DrawSprite sigsegv

See merge request STJr/SRB2!1454
2021-04-19 14:33:03 -04:00
Hannu Hanhi
ee578b68f4 Remove bad pointer arithmetic in polygon comparators, that was causing glitches 2021-04-17 03:11:29 +03:00
katsy
23759c67aa move HWR_GetMappedPatch earlier 2021-04-12 21:26:29 -05:00
sphere
bcd3245b76 Merge branch 'blendmode-revision' into 'next'
Blending changes

See merge request STJr/SRB2!1446
2021-04-11 08:18:12 -04:00
Hannu Hanhi
e9213b2b41 Fix a OpenGL backend DeleteTexture crash 2021-04-04 21:29:15 +03:00
Jaime Ita Passos
59be35e533 Rename functions, make more efficient, fix subtractive in Software 2021-03-30 22:12:31 -03:00
Jaime Ita Passos
eece82c481 Blend modes revision
This changes how blend modes render, and includes fixes.
2021-03-30 17:03:05 -03:00