Commit graph

70 commits

Author SHA1 Message Date
myT
9a66155d14 added r_gpuIndex and /gpulist 2024-01-21 02:27:18 +01:00
myT
ad3f942a8d added the Cinematic Rendering Pipeline 2024-01-13 22:40:13 +01:00
myT
9a6e253dc3 removed screenshot/videoframe requests from the render command list 2023-11-23 19:59:39 +01:00
myT
e3f0afc117 implemented gfxinfo 2023-11-12 01:33:01 +01:00
myT
35f58c507e removed r_showsky, r_showtris, r_shownormals 2023-11-12 01:33:01 +01:00
myT
e52f482a4b added custom font support and font licenses 2023-11-12 01:33:00 +01:00
myT
00840e10d8 implemented depth fade
improved PSO change tracking
embedded more common uber pixel shader permutations
2023-11-12 01:33:00 +01:00
myT
29939c951c removed unused fog logic and data 2023-11-12 01:33:00 +01:00
myT
ffde1f2b1b implemented dynamic lights 2023-11-12 01:32:59 +01:00
myT
ccb9827b03 added GUI for options and front-end stats
added keycatchgui
added VS2019 project files
renamed r_swapInterval
removed r_speeds
fixed r_mode 1 cursor
fixed device caps
2023-11-12 01:32:59 +01:00
myT
fd035c0f70 added r_shadingRate 2023-11-12 01:32:59 +01:00
myT
3b6a3a5019 added D3D12 rendering and removed D3D11, GL2, GL3
don't track .user files except for cnq3 and cnq3-server

disabled FPS hack

disabled FPS hack, part 2
2023-11-12 01:32:58 +01:00
myT
c8e1eb546f added r_teleporterFlash 2023-07-03 03:44:06 +02:00
myT
8ed8d26481 removed the R_SetPVSCulling extension
reverted 7e0de354c2
the mod can feed a different area mask to force drawing everything
2023-04-04 22:42:24 +02:00
myT
7e0de354c2 added the R_SetPVSCulling extension 2023-02-25 23:01:11 +01:00
myT
6b9d35df8c fixed /imageinfo and /shadermixeduse 2022-12-11 19:09:34 +01:00
myT
a7e87a065b fixed the reported selected MSAA sample counts for GL2/GL3 2022-12-04 01:02:37 +01:00
myT
cfdba32b24 added /imageinfo and /shadermixeduse 2022-11-25 03:32:41 +01:00
myT
0be40a60a7 the new demo player now has smoother animations at low time scales 2022-11-04 05:06:38 +01:00
myT
c8c9bef131 added r_depthClamp and cap_DepthClamp 2022-10-23 02:58:20 +02:00
myT
e56a11b638 added /shaderinfo 2022-05-28 16:50:42 +02:00
myT
866b93ef5e turned r_showtris and r_shownormals into bitmasks 2022-04-29 21:12:01 +02:00
myT
4670a811c1 added r_ignoreShaderSortKey as a work-around for broken maps 2022-04-24 22:44:25 +02:00
myT
8c32b986f6 added r_mapGreyscale and r_mapGreyscaleCTF 2022-04-23 23:38:06 +02:00
myT
7412c4b373 added r_alphaToCoverageMipBoost and did some other changes to A2C
- r_alphaToCoverageMipBoost scales the alpha value based on the current texture LoD
  this prevents the "fading with distance" effect
- mip 0 dimensions are tested to decide whether contrast boosting around 0.5 is enabled
  this is to deal with high r_picmip configs
- improved algorithm for excellent sharpness and minimized temporal artefacts
- GLSL 4.00 is required for the GL3 backend to use A2C (for textureQueryLod)
2020-07-07 03:49:52 +02:00
myT
d6f77a9b35 fixed crashes due to render command list overflows
also increased the buffer's size (e.g. to draw all chars in the console in 4K)

one of the crashes happens in R_SortDrawSurfs:
-> render command list is too full
-> RE_EndFrame returns early because it can't allocate RC_SWAP_BUFFERS
-> R_ClearFrame in RE_EndFrame doesn't get called
-> the next frame starts with r_firstSceneDrawSurf etc. not being reset to 0
-> r_firstSceneDrawSurf becomes really close to the maximum draw surface limit
-> the draw surface list is iterated incorrectly (no wrapping handled)
-> we fetch a draw surface we shouldn't
-> its sort key gets decoded and we get an invalid sorted shader index
-> we fetch a NULL shader at that index location
-> we attempt to read shader->sort
-> we crash reading address 76
-> 76 bytes is exactly the offset of the sort member into the shader_t struct
2020-05-08 03:38:26 +02:00
myT
1cf28d87fe r_speeds is no longer cheat-protected 2020-04-28 17:20:02 +02:00
myT
1994475982 renamed r_noiseScale to r_ditherStrength for consistency 2020-04-28 17:04:43 +02:00
myT
718b966414 depth fade fixes and improvements
- renamed r_softSprites to r_depthFade
  the term's more descriptive and it helps that UE4 uses it
- fixed the GL3 fragment shader halving the depth bias
- fixed the D3D11 pixel shader only fetching depth sample 0
  not fixed for GL3 yet, see the code comments for that
- added support for more blend states
- added the q3map_cnq3_depthFade general shader directive
2020-04-26 16:32:51 +02:00
myT
a5e28eb08f added r_transpSort and we can now sort all surface types by depth
also fixed up RE_AddPolyToScene's overflow check
2020-04-16 05:01:48 +02:00
myT
d5984db690 removed r_nobind and r_showImages, wrote help etc. for the renderer's other temp/cheat CVars 2020-04-02 05:06:00 +02:00
myT
546296e6ef fixed r_showsky and cleaned up the related GAL code 2020-04-02 04:50:12 +02:00
myT
7b01f8b8d3 fixed a bunch of variable shadowing cases and removed unused variables 2020-02-24 01:52:29 +01:00
myT
36f363b47a D3D11 tweaks, added r_d3d11_presentMode, removed r_d3d11_maxQueuedFrames
the D3D11 tweaks:
- better error message formatting
- D3DDDIERR_DEVICEREMOVED from Present is a fatal error too
- synchronized offsets is always the automatic behavior for now
  it turns out that split mode isn't always the fastest for nVidia
2020-02-24 01:48:43 +01:00
myT
ca9757082f r_colorMipLevels disables MSAA when centroid sampling would be used
this is because it would draw (parts of) geometric edges with different colors and that makes visual inspections annoying
also, final MSAA sample counts are always reported by GL3 and GL2 now
2020-02-05 03:43:19 +01:00
myT
01ce4063b5 added r_lightmapGreyscale
thanks to Jakub 'kubaxvx' Matraszek for his contribution
2020-01-12 23:03:54 +01:00
myT
e91f6e1c08 re-added r_textureMode to keep GL_NEAREST compatibility 2020-01-12 23:03:41 +01:00
myT
9cb02a32bf searching for valid sample counts for MSAA in GL2 and GL3 instead of failing 2019-12-26 16:24:22 +01:00
myT
8ee79c7b9e added r_rtColorFormat to select the color format for render targets
fixed FindBestAvailableAA not testing the depth/stencil format
2019-09-25 05:31:55 +02:00
myT
db4fb31658 added OpenGL 3.2 and Direct3D 11 renderer back-ends 2019-09-25 05:25:59 +02:00
myT
6f3908ceaa completely removed flare support 2019-09-25 05:21:01 +02:00
myT
39af360fdc removed FreeType and the R_REGISTERFONT syscalls 2019-09-25 05:14:07 +02:00
myT
08b5d6bf57 r_lodCurveError is now archived and no longer cheat-protected
the new default also looks a lot less terrible
2019-03-28 22:10:22 +01:00
myT
a26b150c59 faster map loads by limiting the rendering back-end's frame-rate 2018-12-08 22:43:58 +01:00
myT
5972f247b1 fixed a bunch of /video and /stopvideo issues
chg: /video can only be used during demo playback
fix: broken audio in the output files due to writing the wrong buffer
fix: files sequences have a "_%3d" name suffix of adding an underscore to the extension
fix: using a better supported video codec (FourCC 0x00000000) for raw BGR output
fix: broken raw video output when r_width wasn't a multiple of 4
fix: /stopvideo no longer leaves sound output broken for a while after stopping
2018-09-29 08:22:47 +02:00
myT
515ca0883e minimizing disables the rendering back-end except for videos/screenshots
when minimized, we call the rest of the logic all the same (including the VM calls)
only 1 screenshot command can be issued per frame (i.e. only first one is kept)
2018-01-07 00:03:42 +01:00
myT
3b4338db2e fixed range/default for con_notifytime and r_lodbias 2018-01-04 19:51:29 +01:00
myT
53d93b1af0 new default values
sv_pure 0 for clients - 1 is annoyingly restrictive for a client
s_volume 0.2 - it was so damn loud
com_hunkMegs 128 for clients - to cope with "big" maps
r_msaa 0 - too many players still gaming with toasters
r_gamma 1.2
2017-12-27 07:33:59 +01:00
myT
3c52752dd3 added help panel and colorized help text
added con_drawHelp and con_col*
letting the mod know we support the "cap_ExtraColorCodes" extension
con_colText overrides ^7 in the console and the help panel
extended console back scroll arrows all the way
2017-12-27 05:13:33 +01:00
myT
4a296b3361 fixed a memory overflow due to GL_PACK_ALIGNMENT not being set correctly 2017-12-12 22:08:12 +01:00