Commit Graph

250 Commits

Author SHA1 Message Date
myT 61fbcb5304 fixed RT format mismatch with r_rtColorFormat > 0 and r_smaa > 0
only the inverse tone map needed multiple pipelines
2023-11-18 15:32:39 +01:00
myT 4795cf3666 don't issue barriers in BeginTextureReadback when not needed 2023-11-18 04:02:14 +01:00
myT f37a3ee7c0 display the format in the D3D12 RHI texture list 2023-11-18 04:00:00 +01:00
myT ab8eff394a disable NVAPI by default 2023-11-18 03:56:22 +01:00
myT d160e7069b distinguish transparent DL passes from opaque ones 2023-11-18 03:54:23 +01:00
myT b918b24304 don't apply SMAA to small regions 2023-11-18 03:39:24 +01:00
myT 457ca2ab65 no longer tessellating in RB_SurfaceSizeGrid 2023-11-12 01:33:01 +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 7ad28bf32f moved some RHI constants to the header file 2023-11-12 01:33:01 +01:00
myT 13c14ee2f2 removed the RB_CHECKOVERFLOW macro and some dead declarations 2023-11-12 01:33:01 +01:00
myT b0e283b249 removed dead code in the RHI and disabled GPU validation by default 2023-11-12 01:33:01 +01:00
myT a7dc8e4721 re-enabled the r_ignoreShaderSortKey 0 debug validation code 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 e009dce47a r_rtColorFormat is now a UNORM format, fixed shader data for PIX debugging 2023-11-12 01:33:00 +01:00
myT e52133ea5d no longer drawing the scene when in hyperspace 2023-11-12 01:33:00 +01:00
myT 1258625810 GRP UI: respect image 0's texture wrap mode 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 aa51fae5a6 fixed SMAA crash on device change 2023-11-12 01:33:00 +01:00
myT 46d08be6e7 improved error reporting for adapter selection 2023-11-12 01:33:00 +01:00
myT e5e6ce1d08 fixed expression to clarify intent 2023-11-12 01:33:00 +01:00
myT 6fdf62d710 removed dead code 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 61243c3ce1 clear tessellated buffer before drawing a scene view 2023-11-12 01:32:59 +01:00
myT d1912ba929 allow device change at any time 2023-11-12 01:32:59 +01:00
myT fd035c0f70 added r_shadingRate 2023-11-12 01:32:59 +01:00
myT d841f13fb0 recreate samplers on video restart so max anisotropy takes effect 2023-11-12 01:32:59 +01:00
myT e2f6e05ebe fixed mirror portal rendering 2023-11-12 01:32:59 +01:00
myT a86504ddad fixed alpha test and depth write in transparent shaders 2023-11-12 01:32:59 +01:00
myT a60693ae65 partial depth pre-pass with some hacky heuristics 2023-11-12 01:32:59 +01:00
myT fadbea4b2c fixed incorrect swap chain size messing up r_mode 1 2023-11-12 01:32:59 +01:00
myT 2789da3a48 added live shader code editing 2023-11-12 01:32:59 +01:00
myT e13385ed05 more static memory for cpm3b_b1 2023-11-12 01:32:59 +01:00
myT f8567ecba0 added world shader tracing 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 b3480c7129 fixed crashes due to bad shader stage collapse data 2023-07-29 04:53:18 +02:00
myT c8e1eb546f added r_teleporterFlash 2023-07-03 03:44:06 +02:00
myT 5b591f270d fixed GL2 portal clip plane not being used 2023-05-30 19:51:06 +02:00
myT 815b8d0c02 fixed texel offset in the CPU mip-map generator 2023-05-30 19:49:55 +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 c75b2b27fa fixed invalid skybox texture mip/filter settings 2023-03-02 18:57:49 +01:00
myT 7e0de354c2 added the R_SetPVSCulling extension 2023-02-25 23:01:11 +01:00
myT ec95faad1b fixed the RB_CalcDiffuseColor color array offset 2023-02-24 04:43:48 +01:00
myT b36fce3234 fixed multiple instances of variable shadowing 2022-12-26 22:08:46 +01:00
myT cb38533de5 invertedpenguin: replaced the shader of the blood pool behind RA 2022-12-13 05:10:57 +01:00
myT 3c8cb0f592 simplified R_ImageList_f 2022-12-11 19:13:33 +01:00
myT 3e18b2d0e1 forcing the nopicmip flag on specific texture folders
for now: "textures/npmenv" and "textures/npmpads"
2022-12-11 19:12:40 +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 69c1bee127 simplified and improved r_vertexLight handling 2022-12-03 04:57:58 +01:00
myT 5e0739fdf9 preventing unnecessary work when g_forcedLoadImages gets larger 2022-11-25 05:45:04 +01:00
myT b8d9f7e5f1 fixed the default strategy for D3D11 buffer offsets 2022-11-25 05:39:52 +01:00
myT cfdba32b24 added /imageinfo and /shadermixeduse 2022-11-25 03:32:41 +01:00
myT 79b2457783 added printf annotations for VC++'s analyzer 2022-11-22 20:20:45 +01:00
myT ea435faf1f added a legend to clarify the output of /shaderlist 2022-11-04 23:16:33 +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 f401f742ee added a new demo player with fast seeking support
added cl_demoPlayer and cl_escapeAbortsDemo
2022-11-04 05:01:00 +01:00
myT c8c9bef131 added r_depthClamp and cap_DepthClamp 2022-10-23 02:58:20 +02:00
myT 74acd92d91 fixed the D3D projection transform not matching GL 2022-10-18 19:09:14 +02:00
myT 1b74aed8b9 removed the useless myftol macro 2022-06-17 03:38:39 +02:00
myT 9895f3b895 fixed RB_RenderLitSurfList still crashing because of an invalid stage index
the first attempt was f99c223495
this is really not a proper fix since I haven't solved how it gets to that stage
but, knowing I will be deleting this whole part of the code soon enough anyway...
2022-06-17 03:26:36 +02:00
myT 3dc34d47f3 replaced the CPU image resampling functions with something better 2022-06-17 01:59:56 +02:00
myT 0ee2a50e90 image read/write errors print warnings instead of causing drop errors 2022-06-17 01:53:32 +02:00
myT 2389b5db39 updated stb_image.h 2022-06-17 01:46:01 +02:00
myT e56a11b638 added /shaderinfo 2022-05-28 16:50:42 +02:00
myT 049793f8f9 made some expression more legible as originally intended
the code is equivalent since && has higher precedence than ||
in other words, I messed up but got it right by sheer luck
2022-05-26 23:12:02 +02:00
myT dcb3c80998 added default to a switch statement to make it clear we didn't forget any case 2022-05-26 22:25:25 +02:00
myT 866b93ef5e turned r_showtris and r_shownormals into bitmasks 2022-04-29 21:12:01 +02:00
myT a12cf70700 fixed the r_mapGreyscaleCTF shader list
removed duplicates
fixed the q3wcp14 asymmetry
2022-04-29 21:04:45 +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 f99c223495 fixed crashes when a DL affects a transparent surface with r_lightmap 1 2022-04-14 00:37:00 +02:00
myT 9e445bc284 fixed vertex lighting applying to non-lightmapped surfaces 2022-04-12 04:12:38 +02:00
myT dbfb3c5028 fixed delayed shader loads leading to incorrect rendering and crashes (dynamic lights) 2022-04-10 22:14:19 +02:00
myT 981f059b7b do not replace older surfaces with newer ones but refuse to add new ones instead
surfaces added first are part of the map itself
it's better to drop e.g. some plasma cells rather than e.g. entire walls
it's also less error-prone to work with since we don't need to fix numbers on read
but only check on write in exactly 2 spots

also removed tr.shiftedEntityNum because it was unnecessary...
2022-04-10 21:45:59 +02:00
myT c534ed8048 fixed the alpha channel blend factors in the D3D11 backend 2020-11-06 02:48:55 +01:00
myT c12f7e8541 removed a redundant if statement 2020-11-05 03:55:37 +01:00
myT b1df6ac8f7 added new stats to r_speeds 1 (shader changes, draw calls) 2020-11-05 03:50:58 +01:00
myT f4e8e81ab5 fixed draw surface sorting
got broken with commit 633c5bd13c
2020-11-05 03:47:55 +01:00
myT 3e0f5b2760 fixed RB_CalcTurbulentTexCoords by using the correct vertex offset
it got broken with db4fb31658
2020-10-27 00:30:13 +01:00
myT 55ed0e80af r_lightmap 1 now handles most alpha-tested surfaces 2020-10-20 01:55:53 +02:00
myT 7262b90655 no longer whining about mixed image settings with external lightmap atlases 2020-10-15 05:25:51 +02:00
myT ad2d3386a6 D3D11 now does depth clipping and the near clip plane distance is now 1 2020-10-11 18:24:35 +02:00
myT dea818a260 fixed a D3D11 resource hazard warning about depth/stencil buffer bindings
swapped the calls back so that the depth buffer is never bound as both a RT and SRV at the same time
2020-10-09 04:01:26 +02:00
myT 6f7d4892df added detailed live objects reporting for full shutdowns in D3D11 debug
the name tweaks are there because the run-time erroneously reports this warning:
"Existing private data of same name with different size found!"
2020-10-09 01:22:04 +02:00
myT 5466b65735 caching the pixel shader resource views in D3D11 2020-10-08 04:50:32 +02:00
myT 249bcb2d07 caching the current active texture slot in GL3
it reduces the total number of API calls by a good amount
2020-10-08 04:45:33 +02:00
myT 2aaf17b061 fixed the GL3 debug uniform location check
it would incorrectly trigger with r_alphaToCoverage 1 and r_msaa 0
2020-10-08 04:19:20 +02:00
myT 633c5bd13c tweaked the draw surface sort key for better performance
it minimizes depth fade <-> generic pipeline transitions
2020-10-08 04:08:38 +02:00
myT 78cf275a62 fixed depth fade with MSAA in the GL3 backend 2020-10-08 03:55:40 +02:00
myT 427172edcf fixed D3D11 device resets being sometimes treated as fatal errors
after getting DXGI_ERROR_DEVICE_REMOVED or D3DDDIERR_DEVICEREMOVED,
GetDeviceRemovedReason can return DXGI_ERROR_DEVICE_RESET
this particular case should trigger a video restart instead of a fatal error
2020-07-07 09:07:53 +02:00
myT 49028a3f36 simplified the new D3D11 partial clear code to not needlessly change primitive topology 2020-07-07 04:44:31 +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 180a0187b7 fixed the R_AddWorldSurface optimization so it won't remove the sky 2020-06-20 03:04:00 +02:00
myT 70ba2e7939 fixed and improved GL3 shader uniforms caching 2020-06-20 02:28:55 +02:00
myT 6fcabd83b7 fixed D3D11 partial render target clears
viewport/scissor settings do NOT apply to:
- ClearDepthStencilView
- ClearRenderTargetView

hence this fix
2020-06-18 04:19:34 +02:00
myT 54ee6436fe updated copyright years 2020-06-01 20:28:44 +02:00
myT 178a61b953 fixed r_mode 1 issues with the D3D11 backend (screenshots and scissor rects)
the issues were:
- screenshots were black because of mismatched dimensions in the CopyResource call
- display was showing garbage because the scissor rect was too large
2020-05-11 20:07:29 +02:00