Ivan Avdeev
2c0e7033ed
vk: fix crashing on maps with skybox
...
We were using a negative value for `SURF_SKY` surfaces, which hit an
assert on uploading kusochki.
2023-11-07 13:30:46 -05:00
Ivan Avdeev
c6c58a9842
vk: allow rotating matrices in patches
...
Adds `_xvk_tex_rotate` field for surface patches. Angle is specified in
degrees.
Note that it rotates the texture around origin, which might be very far
away. So offset patching might be needed to re-align.
2023-11-07 12:03:40 -05:00
Ivan Avdeev
266f57e8a5
vk: make `vk_debug_log` a command, not a cvar
...
This makes it easily switchable at any point in time.
Still not sure how to properly manage log verbosity cvars:
- cvars are loaded after initialization and map load, so we can't really
depend on saved cvar values.
- reloading cvars each frame cancels `-vkverboselogs` arg that is
supposed to work around the above limitation
2023-11-07 11:59:12 -05:00
Ivan Avdeev
9eff6fa907
vk: list supported arguments for `rt_debug_display_only`
2023-11-07 10:32:35 -05:00
Ivan Avdeev
a18ed8ddc6
Merge pull request #642 from w23/E325
...
Things done during stream E325
- [x] fix #638
- [x] fix #640
- [x] fix #641
2023-11-06 10:32:21 -08:00
Ivan Avdeev
a25bf841ac
vk: fix bright artifacts coming from unpatched chrome materials
...
Fixes a typo that rewrote roughness value with garbage.
Also adds a few more debug channel displays for lighting phases. And
prints out available debug displays.
Fixes #641
2023-11-06 12:47:21 -05:00
Ivan Avdeev
4509e2075d
vk: fix changing textures on buttons, etc
...
Detect changes in alternate_anims sequences.
Fixes #640
2023-11-06 11:42:07 -05:00
Ivan Avdeev
f8c0baf78d
vk: fixup -vkverboselogs, make it actually work
2023-11-06 11:07:58 -05:00
Ivan Avdeev
dfcfd786a9
vk: fix material basecolor_map handling
...
- Do not replace inherited base color texture
- Do not acquire default base color texture
Fixes #638
2023-11-06 10:31:55 -05:00
Ivan Avdeev
d5ee8ba750
Merge pull request #637 from 0x4E69676874466F78/vulkan
...
Update patches
2023-11-06 07:13:38 -08:00
NightFox
fd356e6124
update c1a0c.patch
2023-11-06 00:00:17 +03:00
NightFox
6963c158a4
update c1a0c.patch
2023-11-05 23:43:12 +03:00
NightFox
42dfd56f87
update c1a1c.patch
2023-11-05 20:45:28 +03:00
NightFox
0927e25ce2
update patches
...
Improvement geometry smoothing (normals)
2023-11-04 19:23:21 +03:00
Ivan Avdeev
365fffacca
Merge pull request #636 (stream E324)
...
- [x] debug: display individual channels #631
- [x] debug: implement `r_lightmap` #634
- [x] debug: display surfaces #635
- [x] name cvars and commands consistently #632
- [x] allow enabling verbose logs at init
2023-11-03 10:37:25 -07:00
Ivan Avdeev
6e56c8c78d
vk: add -vkverboselogs argument to enable super verbose logs at init
2023-11-03 13:23:10 -04:00
Ivan Avdeev
a42e5051b7
vk: cleanup cvar prefixes
...
Now:
- Not necessarily vulkan-specific cvars are prefixed with `r_`
- Vulkan-specific but not RT-specific things are `vk_`
- RT-specific are `rt_`
Fixes #632
2023-11-03 13:15:11 -04:00
Ivan Avdeev
3a7d047f09
vk: add `surfhash` argument to `rt_debug_display_only`
...
Allows highlighting all the surfaces with random colors to easily see
the surfaces structure and boundaries.
Fixes #635
2023-11-03 12:05:36 -04:00
Ivan Avdeev
28eec97cbf
vk: implement r_lightmap for both traditional and RT renderers
...
Display lightmap plus lighting for traditional.
Display all collected lights (including bounces and simple transparency)
for RT.
Fixes #634
2023-11-03 11:26:57 -04:00
Ivan Avdeev
0ba85e3f08
vk: add `rt_debug_display_only` cvar
...
Displays only the specified channel.
Fixes #631
2023-11-03 10:58:13 -04:00
Ivan Avdeev
2a3f48fd50
vk: fix occasional inverted normal maps
...
When texture coordinates are inverted, it makes tangent look into
oppsite direction, which inverts TBN and therefore normal map.
Make sure the tangent points to a consistent direction.
Fixes #627
2023-11-02 10:58:11 -07:00
Ivan Avdeev
dfa240a4db
vk: fix weird lines on suit studio model
...
It was using old pre-transform values for prev_verts, and that was
confusing temporal denoiser.
We should bone-transform vertices first, and only then store them as
prev_verts.
Fixes #585
2023-11-02 10:13:56 -07:00
Ivan Avdeev
1a5edc8271
Merge pull request #626 from w23/vulkan-upstream-merge-20231102
...
Merge from upstream
2023-11-02 09:08:20 -07:00
Ivan Avdeev
c869223690
vk: fix compilation after upstream merge
2023-11-02 11:46:30 -04:00
Ivan Avdeev
1f9b489bdc
Merge remote-tracking branch 'upstream/master' into vulkan-upstream-merge-20231102
2023-11-02 11:31:59 -04:00
Alibek Omarov
a464c3dd66
scripts: waifulib: compiler_optimizations: rename release build type to humanrights with kept compatibility
2023-11-02 14:33:00 +03:00
Alibek Omarov
bd969f3594
wscript: fix system opus detection, it didn't compile due to nonnull argument
2023-11-01 01:35:39 +03:00
Alibek Omarov
fb87d7c0b3
readme: wording, add icon, add donate.md link [skip ci]
2023-10-31 21:54:23 +03:00
Alibek Omarov
a69fc87940
Documentation: donate: add sponsorship information
2023-10-31 21:54:23 +03:00
Alibek Omarov
e481e1d73e
ref: gl: enable GL waves with r_ripple
2023-10-31 21:52:00 +03:00
Alibek Omarov
6c0eed1b2b
ref: gl: allow viewing water textures in their full glory with enabled r_ripple 2
2023-10-31 21:52:00 +03:00
Alibek Omarov
a6c67fdf9f
ref: gl: upload only part of texture we're using, i.e. 64x64 for 64x64, 128x128 for 128x128
2023-10-31 21:52:00 +03:00
Alibek Omarov
03f838e37e
mainui: update
2023-10-31 21:52:00 +03:00
Alibek Omarov
e21fa4a910
engine: add cvar r_refdll_loaded to indicate currently loaded renderer (for menu options and etc)
2023-10-31 21:52:00 +03:00
Alibek Omarov
46889ed453
ref: gl: libc rand() does better job at randomizing
2023-10-31 21:52:00 +03:00
Alibek Omarov
882fcc152c
ref: gl: always scale down texture to 64x64, like sw.dll does
2023-10-31 21:52:00 +03:00
Alibek Omarov
a41902bd46
engine: mod_bmodel: detect water textures by texture name like LoadSurfaces does
2023-10-31 21:52:00 +03:00
Alibek Omarov
a6af32dafd
ref: gl: connect ripply water to others parts of renderer (init, reset, animation and rendering)
2023-10-31 21:52:00 +03:00
Alibek Omarov
d6dfb83be7
ref: gl: ripply water implementation (bugfixed version from my Quake-2 patches)
2023-10-31 21:52:00 +03:00
Alibek Omarov
597429cf41
engine, filesystem: unify GetNativeObject between all the APIs. Allow getting filesystem APIs through GetNativeObject
2023-10-31 21:25:11 +03:00
Alibek Omarov
5ea074a1fd
engine: fix build issues pointed by @Velaron
2023-10-31 21:01:42 +03:00
Ivan Avdeev
6fda8bd977
vk: add a mechanism for exclusion of single surfaces from smoothing
...
Uses `_xvk_smoothing_excluded` field.
Surfaces can still be smoothed with a limited list of neightbours explicitly
by being included in a smoothing group.
Fixes #619
2023-10-31 09:55:06 -07:00
Ivan 'provod' Avdeev
5698746f42
vk: do not crash on corrupted scopes stack
...
This is not a valid reason to assert/crash, even though it is clearly a programming mistake.
If the stack is corrupted, just print its contents as an S_ERROR and continue.
Also:
- Fix the ultimate reason for stack being unbalanced for #604
- Do not analyze scopes when not needed, i.e. when `r_speeds` is zero.
Fixes #604
2023-10-31 09:13:47 -07:00
Ivan Avdeev
f1c8b3ef2f
Merge pull request #612 from w23/texture-storage
...
Improve texture storage and lookup
- [x] Fix #594
- [x] Free engine textures
- [x] Fixup descriptor sets
- [x] Fix PBR leaks
- [x] texture refcounts
- [x] acquire/release textures in materials
- [x] Done #210 to separate refcount-aware material loading from refcount-unaware ref_interface_t
- [x] Done #602
- [x] #601
- [x] Fixes #617
- [x] кто украл скайбокс?! -- повар украл скайбокс
- [x] Convert blue noise to 3D texture
- [x] fixes #613
2023-10-31 08:49:18 -07:00
Ivan Avdeev
a9df5cd86f
Merge branch 'vulkan' into texture-storage
2023-10-31 08:19:40 -07:00
Ivan Avdeev
737d1324e8
vk: assign translucent material mode to transparent studio models
...
fixes #613
2023-10-31 11:15:15 -04:00
Ivan Avdeev
effbf3ea3d
vk: fixup material lookup by texture name
2023-10-31 11:03:08 -04:00
Ivan Avdeev
36c06a514e
vk: massage texture module a bit more
2023-10-31 10:48:14 -04:00
Ivan Avdeev
5962290b9d
vk: simplify texture uploading failure cleanup
2023-10-31 10:43:12 -04:00
Ivan Avdeev
67f336b3c8
vk: load blue noise 3d texture from an array of png files
2023-10-31 09:44:06 -04:00