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
myT
f484ee94a7
fixed alpha to coverage for the greater than 0 alpha test
2020-05-09 17:11:47 +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
a59875200c
fixed the D3D11 back-end sometimes colorizing mip level 0 with r_gpuMipGen 1 and r_colorMipLevels 0
...
it happened because the color channels for blendColor weren't initialized,
that memory could have at least one channel initialized as a NaN value and
throwing a NaN in the shader logic would break it
2020-04-16 05:24:11 +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
4e9d0ad709
fixed the soft sprite status console print always saying it's "ON" with GL3 and D3D11
2020-04-05 06:40:34 +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
24e6cd9277
GL3 can now print shader compile/link warnings even when successful with r_verbose 1
2020-04-02 04:40:12 +02:00
myT
e013893c1b
fixed GL3 generic program link issue due to variable type qualifier mismatches (centroid vs not)
...
this problem proved fatal on some Intel drivers
2020-04-02 04:37:03 +02:00
myT
ae30c5a311
r_mapBrightness can now be used with r_fullbright for lightmapped surfaces
2020-02-27 05:26:19 +01:00
myT
69d6cdf42b
fixed r_detailTextures 0 messing up shaders
2020-02-27 05:22:06 +01:00