Commit graph

312 commits

Author SHA1 Message Date
Jaime Passos
32affb9d95 Sprite2 support! 2019-09-02 23:29:16 -03:00
James
0efeaa5d5f Merge branch 'camorbit-sev' into camerafix 2019-08-31 14:53:43 -04:00
TehRealSalt
a6ef3c12b0 Seperate MF2_DONTDRAW and MF2_SHADOW into it's own varied set of flags -- drawflags.
- Split MF2_DONTDRAW into MFD_DONTDRAWP[1-4], also replaces MFE_DRAWONLYFORP[1-4].
- Split MF2_SHADOW into MFD_FULLBRIGHT and MFD_TRANS80. I also added an entire spectrum of options for transparency & brightness overrides, since I've found myself wishing for stuff like that before.
- Tethering was updated for it's client-sided drawing to apply to splitscreens too.
- Removed cv_transparency.

The transparency overrides don't seem to work yet (obvious on things using MFD_SHADOW), just running out of time to look into it so I'm pushing what I have.
2019-07-17 23:55:39 -04:00
mazmazz
14df513db6 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla 2019-06-29 17:51:30 -04:00
toaster
e27a43f976 Improve rain/weather.
* Like Kart, remove cv_precipdensity.
* Like Kart, replace "Infinite" draw distance value with "None".
* Better thinker with more return optimisation.
* Better placement of thinking in rendering, to avoid ceiling-mounted sprite glitches.
2019-06-22 16:50:30 +01:00
Nev3r
d2a2dee033 Add Sryder's orbital camera thing as an option. 2019-06-20 13:33:31 +02:00
Jaime Passos
a37d742561 software is better 2019-06-13 21:10:01 -03:00
Jaime Passos
c85d181df9 Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is
typically used to interact with a graphics processing unit (GPU), to achieve hardware-accelerated rendering.
2019-06-12 23:01:18 -03:00
Latapostrophe
fc33255db4 Fix stuff and reimplement the kart features that went poof 2019-06-12 21:36:47 +02:00
Latapostrophe
a35cea9243 chaos conflict 2019-06-11 17:02:47 +02:00
Nev3r
c5c4744652 Remove remnants of portalcullsector. 2019-06-10 17:13:04 +02:00
Nev3r
b7e2b5612c Made Portal_Add static; move ffloors clip reset from R_RenderPlayerView to r_plane. 2019-06-09 22:48:54 +02:00
Nev3r
b8d2e017b4 Refactored a bit of code regarding visplane bound trimming for portals; reset ffloor's f_clip/c_clip so that FOFs on portals don't interfere with previously acquired bounds. 2019-06-07 13:10:12 +02:00
Nev3r
da09a07e6e viewx/viewy also need to be stored/restored. 2019-06-06 13:31:48 +02:00
Nev3r
f0b79697e5 Fix sigsegv when there is no main skybox viewpoint. 2019-06-05 18:45:36 +02:00
Nev3r
819169f378 Vissprite clipping improvements.
Vissprites are now only clipped against their respective portal's geometry obtained from their BSP run.
Additionally, if a portal is provided, they're clipped to the portal's clip boundaries.
The work on this branch should conclude after a pair of remaining glitches are fixed.
2019-06-05 18:07:08 +02:00
Nev3r
906b366e1b Masked elements are now fully grouped individually for each portal/view; fixed viewz-related glitches,.
The drawnodes are now fully grouped in separate lists, and then sorted individually. This fixes sorting problems caused by portals belonging to differently perceived scales (skyboxes for example).

Drawsegs and vissprite/drawnode sorting require the viewz, so the viewz is stored for each portal/view, and then restored when needed; without this, the rendering process erroneously sorts the elements, and draws some at wrong positions.
2019-06-05 12:10:59 +02:00
Nev3r
96cfecc41a Created drawnode lists for each view/portal.
Each shall eventually have its specific vissprites/drawsegs; currently only drawsegs are stored in their correct list, vissprites are stored in the first list as a placeholder.
The idea is to sort each list individually, and then render their masked elements, starting from the last drawnode list.
This retains a non-recursive function calling method while still rendering things in order.
2019-06-04 20:15:42 +02:00
Nev3r
c35769e5de Moved validcount++ to where it used to be.
It seems to screw up the portal rendering in odd ways if it's in the wrong position. I apologize for not even knowing what it's meant to do nor how it works.
2019-06-03 13:04:27 +02:00
Nev3r
ae1e3630f8 Add visplane portal creation functionality and use it to replace the skybox rendering.
The skybox rendering process has been replaced with portals instead. Those are generated after the first BSP tree pass by looking for existing sky visplanes at the time, and their windows are used to define new portals.
The skybox portals are still incomplete and cause visual glitches when masked elements are involved.
2019-06-02 00:07:55 +02:00
Nev3r
7e1bb4a370 Code refactoring to turn portal struct into a more generalized shape.
Split portal-related code to its own source files.
Most of the 2-line-specific setup has been moved to the function which adds a 2-line case. The portals should render as they used to so far, anyway.
2019-06-01 13:07:23 +02:00
Jaime Passos
47ae715962 Hardware mode y-shearing matches software mode mouselook 2019-05-17 17:49:04 -03:00
Jaime Passos
33285f7007 dude how do I co-author in Git? 2019-05-17 13:18:33 -03:00
Monster Iestyn
04a8c9a283 Merge branch 'public_next' 2019-05-16 15:58:17 +01:00
TehRealSalt
dc41fe3d8d Port over only the relevant changes from the reduced-palette branch, update some of the Kart-specific stuff 2019-05-12 17:19:49 -04:00
wolfy852
9ac41cca73 Merge remote-tracking branch 'remotes/pub/next' into v1
# Conflicts:
#	src/d_netcmd.c
#	src/r_main.c
#	src/v_video.c
2019-05-12 03:40:02 -05:00
mazmazz
a542999563 Merge remote-tracking branch 'public-gl/md3-vanilla' into md3-vanilla 2019-05-08 17:59:49 -04:00
mazmazz
dc14318f02 Merge remote-tracking branch 'public-gl/master' into md3-vanilla 2019-05-08 17:56:05 -04:00
wolfy852
2222738e1c Merge remote-tracking branch 'remotes/srb2pub/public_flatsprite' into next
# Conflicts:
#	src/d_netcmd.c
#	src/doomdef.h
#	src/doomstat.h
#	src/f_finale.c
#	src/g_game.c
#	src/hu_stuff.c
#	src/m_menu.c
#	src/p_spec.c
#	src/p_user.c
#	src/r_main.c
#	src/r_things.c
#	src/s_sound.c
#	src/v_video.c
#	src/y_inter.c
2019-05-06 22:40:12 -05:00
TehRealSalt
f48a08cd53 Merge v1 2019-05-06 21:23:29 -04:00
TehRealSalt
0958617ecb Fix skybox bug 2019-05-06 21:17:32 -04:00
wolfy852
f808072937 Merge remote-tracking branch 'remotes/pub/next' into v1
# Conflicts:
#	src/hardware/hw_main.c
#	src/hardware/hw_main.h
#	src/m_menu.c
#	src/r_main.c
#	src/v_video.c
2019-05-06 14:26:09 -05:00
Sryder
64fb7f90f0 Add a cvar for sprite billboarding, off by default. 2019-05-06 16:57:32 +01:00
Steel Titanium
98c5a2c0f5 Generic model terminology 2019-05-02 22:55:45 -04:00
TehRealSalt
f1f664e9b1 Merge v1 2019-05-02 01:36:19 -04:00
Latapostrophe
dab5469b4a Terminology changes 2019-04-23 23:49:46 +02:00
Latapostrophe
60428fbc29 Add option to turn off the PLAY default md2 2019-04-22 11:29:44 +02:00
TehRealSalt
a3d2b48329 Fix up more stuff
Now in a mergable state
2019-04-18 12:20:13 -04:00
TehRealSalt
089be795a2 Huge splitscreen refactor
Did not get to finish all refactoring or even compile this, I'll continue later
2019-04-18 03:08:11 -04:00
Jaime Passos
0ff96207c7 More Softwarification 2019-04-14 19:08:59 -03:00
wolfy852
aec9e721dc Generic model terminology 2019-04-12 00:35:35 -05:00
Jaime Passos
4548b4bb13 The player should be able to toggle shaders 2019-04-07 00:09:53 -03:00
Jaime Passos
fbc3e27592 stuff 2019-04-06 23:33:34 -03:00
fickleheart
f60e92aa70 Move public demo vars to a single struct 2019-03-24 21:32:15 -05:00
wolfy852
963cbf4671 Merge branch 'next' into md3-vanilla-kart
# Conflicts:
#	src/hardware/r_opengl/r_opengl.c
2019-03-20 19:50:20 -05:00
Jaime Passos
fd5fb73671 gl4 2019-03-17 22:27:50 -03:00
fickleheart
f2d7021199 Adjust FOV change for 2p 2019-02-24 11:59:21 -06:00
fickleheart
39603af6a1 Add field-of-view support in software mode 2019-02-23 10:31:37 -06:00
fickleheart
b085355bdd Move fov cvar out of OGL-specific code 2019-02-23 10:18:20 -06:00
mazmazz
aae6eb945d Merge remote-tracking branch 'kart-public-gl/next' into md3-vanilla-kart 2019-01-10 22:08:37 -05:00