Commit Graph

3389 Commits

Author SHA1 Message Date
Ivan Avdeev 149dc7cade
Merge pull request #446 from LifeKILLED/reprojection-fix
vk rt: fix reprojection
Right way to put previous model matrix
Fix bad index of previous frame
Fallback to current frame if previous frames are outdated
2023-02-28 12:08:19 -08:00
LifeKILLED 2f050a6618 Merge branch 'reprojection-fix' of https://github.com/lifekilled/xash3d-fwgs into reprojection-fix 2023-02-28 23:07:08 +04:00
LifeKILLED f4b0f5016b vk rt: fix reprojection 2023-02-28 23:06:09 +04:00
LifeKILLED 5fbee4a97a vk rt: fix linux build 2 2023-02-28 22:58:54 +04:00
LifeKILLED 70c52622e7 vk rt: try to fix linux build 2023-02-28 22:48:20 +04:00
LifeKILLED ed69eeb5af vk rt: fix reprojection 2023-02-28 22:30:54 +04:00
Ivan Avdeev da447d9e5b
Merge pull request #445 from FWGS/master
Merge from upstream
2023-02-27 17:11:04 -08:00
NightFox 429fb82f52 Update README.md 2023-02-27 16:55:59 -08:00
Ivan Avdeev 19603722ed
vk: add more beam types, tracers, triapi
- [x] fixes #293 
- [x] fixes #162 
- [x] add tracers, fix #263 
- [x] add basic triapi
2023-02-27 11:17:28 -08:00
Ivan 'provod' Avdeev c8e4ce0619 vk: fix tracers colors 2023-02-27 11:00:34 -08:00
Ivan 'provod' Avdeev d87690876f vk: fix TRI_QUADS and primitive_mode tracking 2023-02-27 10:51:11 -08:00
Ivan Avdeev 421c0ea733 vk: add tracers (not tested) 2023-02-27 10:37:03 -08:00
Ivan 'provod' Avdeev 30334db159 vk: draw the rest of the beams 2023-02-27 09:49:56 -08:00
Ivan 'provod' Avdeev 2daa130453 vk: set beam/triapi texture and render mode explicitly 2023-02-27 09:20:13 -08:00
Ivan 'provod' Avdeev cf5d3d9d47 vk: increase limits for triapi
c4a1 was using too many indices
2023-02-27 08:46:12 -08:00
Ivan 'provod' Avdeev a118e12e01 vk: stub just enough triapi to render more beam types
it is still drawn incorrectly, but at least something is visible, and we can iterate from here
2023-02-26 20:45:29 -08:00
Ivan 'provod' Avdeev ee4def1141 rt: modulate additive kusochki by vertex color attribute 2023-02-25 18:41:01 -08:00
Ivan 'provod' Avdeev 1fadbce860 vk: remove flag attribute in vertex
make color computation more uniform and not mode-specific
2023-02-25 18:38:22 -08:00
Ivan 'provod' Avdeev e4ad18f220 vk: do not modulate beam color twice
color is already applied at model/ubo level
2023-02-25 16:58:59 -08:00
Ivan 'provod' Avdeev f2182bb255 vk: fix beams per-vertex blending 2023-02-25 16:47:23 -08:00
Ivan Avdeev 26ad10483f
Merge pull request #432 from w23/sprite-improvements
- [x] fixes #297 
- [x] fixes #256 
- [x] Sprite rendering differs from GL, especially with glow(3) and solid/transalpha(4)
2023-02-25 14:27:20 -08:00
Ivan 'provod' Avdeev 1d17e55101 rt: hack all blending as additive
this is not correct, but at  least we get to see something
need to figure out how should blending work in rt:
- translucent materials that absorb light
- reflective+refractive
- etc
2023-02-25 13:22:56 -08:00
Ivan 'provod' Avdeev 3e2689b7f8 rt: improve sprite blending even moar
fixes most glaring sprite blending issues for ray tracing
2023-02-25 12:46:46 -08:00
Ivan 'provod' Avdeev 9f72a804e0 vk: improve traditional blending universally
it is now almost on par with the gl renderer
2023-02-25 12:09:20 -08:00
Ivan 'provod' Avdeev ce27bdb1b1 vk: fix studio models being modulated by ent color 2023-02-24 23:57:49 -08:00
Ivan 'provod' Avdeev cd524c20cf vk: make transparent brushes closer to gl
some of render modes are not affected by light, disable lightmaps for them
2023-02-24 23:54:41 -08:00
Ivan 'provod' Avdeev 03efb6ce83 fixup linux compiler warnings 2023-02-24 23:52:09 -08:00
Ivan 'provod' Avdeev 487c94662a rt: HACK flickering lerping sprites
Lerping between sprite frames means drawing two coplanar quads blended the right way. This is not something ray tracing can accommodate easily for all blending modes.
Disable lerping for now
2023-02-24 22:52:38 -08:00
Ivan 'provod' Avdeev 005b7c84eb vk: pass model color explicitly
Instead of passing model color around as an implicit global state, pass it per-model.
This makes it (a) easier to track, (b) easy to fix blending issues. E.g. this fixes incorrect coloring of brush and studio models, which is also different.
2023-02-24 22:48:26 -08:00
Ivan 'provod' Avdeev 92b1e78d85 vk: make trad sprites more like gl ones
still not fully there:
- glow is slightly off
- TransAlpha has wrong blending mode

apparently pipeline settings for brushes, models, and sprites are substantially different, need different pipelines
2023-02-24 17:43:07 -08:00
Alibek Omarov 7e9d46689c engine: client: fix multiline CenterPrint 2023-02-24 19:46:02 +03:00
Ivan 'provod' Avdeev a5b977c8a3 rt: make emissive surfaces ignore external light
this is not fully correct, but it fixes slightly off sprite colors for now
2023-02-23 20:08:02 -08:00
Ivan 'provod' Avdeev 41809b8952 vk: do not depth-test glow sprites
makes them more like gl ones

still not fully fixed though, need to work on their transparency, it should be also scaled
2023-02-23 20:07:06 -08:00
Ivan 'provod' Avdeev 4f6d51c368 vk: fix most of random sprite flickering
it was due to leaving garbage in vertex fields.

some animated spritest still flicker though
2023-02-23 20:05:58 -08:00
Ivan Avdeev d6d9011dcc
Merge pull request #431 from w23/better-extensions
change how device extensions are checked
make nv_checkpoint not depend on rt
split it logically from aftermath
don't crash when this extension is not available
2023-02-23 19:06:31 -08:00
Ivan Avdeev ad5e1b2b86 vk: fixup compilation w/o aftermath sdk 2023-02-23 18:59:14 -08:00
Ivan Avdeev 8514e2c7b8 ci: update vulkan sdk and distro versions 2023-02-23 14:18:02 -08:00
Ivan 'provod' Avdeev 1a6e967ddb vk: change how device extensions are checked
make nv_checkpoint not depend on rt
split it logically from aftermath
don't crash when this extension is not available
2023-02-23 13:48:41 -08:00
Alibek Omarov b6347d17c9 engine: client: sound: don't print sound/ twice in soundlist command 2023-02-19 12:25:03 +03:00
Alibek Omarov 8293bc91d4 engine: client: sound: fix PickDynamicChannel to correctly find channel with minimum time left 2023-02-18 03:37:20 +03:00
Alibek Omarov fb0f184d6b engine: common: lib_common: fix offset by one UB 2023-02-17 22:51:56 +03:00
Alibek Omarov 58e95c7d6f engine: client: console: elinimate unneeded Sys_DoubleTime call in Con_DrawDebug 2023-02-17 22:50:42 +03:00
Alibek Omarov 7a5381e658 engine: common: mod_studio: fix uninitialized adj array 2023-02-17 22:50:12 +03:00
Alibek Omarov 375c06400c engine: server: avoid unaligned access in pfnMessageEnd 2023-02-17 22:48:56 +03:00
Ivan Avdeev 55ff27c5d4
Merge pull request #428 from w23/merge-from-upstream-2023-02-16
Merge from upstream
2023-02-16 11:05:50 -08:00
Ivan Avdeev e61b45b8b6 disable flatpak build due to #430 2023-02-16 10:54:30 -08:00
Ivan Avdeev ac1665558f disable vulkan for nswitch 2023-02-16 10:54:08 -08:00
Ivan Avdeev 053d26e870 move ref_vk to ref/vk 2023-02-16 10:30:31 -08:00
Ivan Avdeev 604bd702d4 Merge remote-tracking branch 'upstream/master' into merge-from-upstream-2023-02-16 2023-02-16 10:19:30 -08:00
Alibek Omarov e481c86ba2 engine: client: console: fix NXPrintf newlines, small refactoring 2023-02-15 05:53:39 +03:00