Ivan Avdeev
84babdfff8
Merge pull request #719 from w23/stream-E352
...
Stuff done during streams E352-E354
- [x] tune emissive/additive blending so that it matches original, fixes #668
- [x] make additive studio and brush models single-sided, fixes #665
- [x] convert override_color (from TriApi) to linear space together with gamma
- [x] apply soft-alpha-depth universally, fixes #722
2023-12-29 09:17:36 -08:00
Ivan Avdeev
3bc293d8aa
vk: rt: compute legacy blending in sRGB-γ colorspace
...
This makes all blending look very close to the original, and fixes a
whole class of blending-looking-wrong issues.
Fixes #668
2023-12-29 12:10:54 -05:00
Ivan Avdeev
1028564eec
vk: rt: enable soft alpha depth globally
...
Fixes #722
2023-12-28 12:09:04 -05:00
Ivan Avdeev
46e95f1255
vk: rt: linearize kusochki.color/override_color
2023-12-28 11:21:32 -05:00
Ivan Avdeev
310ecff585
vk: rt: make additive brush models single-sided
...
Fixes #665
2023-12-22 15:19:24 -05:00
Ivan Avdeev
180f3ed9cb
vk: rt: allow per-model back face culling
...
Make transparent studio models, e.g. holograms, single-sided.
Related: #665
2023-12-22 15:14:27 -05:00
Ivan Avdeev
caac371681
vk: rt: tune emissive/additive blending so that it matches original
...
To match original more closely it additive geometry should be added to
final color in sRGB-γ space. You might not like that it is physically
incorrect, but this is what peak compatibility looks like.
Related to #668
2023-12-22 14:23:22 -05:00
Ivan Avdeev
59f7d264c2
Merge pull request #716 from 0x4E69676874466F78/rad&patches
...
Add new rad files
add c2a5a.rad c2a5d.rad c2a5e.rad
2023-12-21 06:35:33 -08:00
Ivan Avdeev
57fcd5aea8
Merge pull request #717 from Aty-0/bluenoise-micro-fix
...
Fix traditional render tries to load bluenoise, #710
2023-12-21 06:35:09 -08:00
Aty_0
c60d851ad8
Fix traditional render tries to load bluenoise
2023-12-20 23:43:12 +03:00
NightFox
0a6b40e0ab
Add new rad files
2023-12-20 18:15:54 +03:00
Ivan Avdeev
4b605810f3
Merge pull request #713 from 0x4E69676874466F78/rad&patches
...
Update patches
Fix texture coordinates for monitors (c1a0, c1a1f)
2023-12-20 06:41:54 -08:00
Ivan Avdeev
c3d4d0fbe9
Merge pull request #715 from w23/stream-E350
...
Stuff done during stream E350
- [x] Restore skybox reflection
- [x] Improve skybox log messages
2023-12-20 06:41:12 -08:00
Ivan Avdeev
e33185c04c
vk: update overall agenda a bit
2023-12-19 12:05:33 -05:00
Ivan Avdeev
239d7bc362
rt: try to clear temporal buffers on discontinuities once more
...
Found out that it wasn't really clearing anything.
Now it does call clear, but still there are temporal denoising
artifacts. The issue remains elusive.
Related: #661
2023-12-19 11:35:37 -05:00
Ivan Avdeev
7d7535c5c5
vk: improve logs around skybox loading
2023-12-19 10:18:57 -05:00
Ivan Avdeev
d52d44e0ce
vk: rt: restore skybox sampling for bounces
2023-12-19 10:06:28 -05:00
NightFox
fc1a553bc7
Fix texture coordinates for monitors (c1a0, c1a1f)
2023-12-19 01:48:02 +03:00
Ivan Avdeev
a0b36a4301
vk: trad: allow rendering with replaced PBR textures
...
Use `vk_use_material_textures` cvar to show new PBR material textures
for traditional rendering.
Note that they're often sampled in an incorrect colorspace, so they look
different from RT.
Fixes #711
2023-12-18 09:57:01 -08:00
Ivan Avdeev
7e0553d408
Merge pull request #708 from w23/stream-E346
...
Skybox improvements (E346-E349)
- [x] #706
- [x] Do not load skybox if map doesn't have any `SURF_DRAWSKY` surfaces.
- [x] Cache: do not reload the same skybox.
- [x] Enable loading packed KTX2 cubemaps as skyboxes in engine/imagelib
- [x] Reuse existing imagelib cubemap loading routines, remove custom skybox loading code
- [x] Allow hiding `SURF_DRAWSKY` surfaces via `"_xvk_remove_all_sky_surfaces" "1"`, #579
- [x] #677
- [x] Add skybox exposure control for HDR skyboxes
- [x] Allow reloading skyboxes when reloading patches
2023-12-18 09:56:04 -08:00
Ivan Avdeev
5659fb0b6f
imagelib: c90-ize ktx2 loader even more
2023-12-18 12:43:52 -05:00
Ivan Avdeev
6d79e84f5b
imagelib: c90-ize ktx2 loader face cursors
2023-12-18 12:39:21 -05:00
Ivan Avdeev
bec1e0f558
vk: rt: add tunable skybox exposure
...
E.g. add `desert.mat` alongside `desert.ktx2` (or
`desrt_{rt,lf,...}.png` files) with the following contents:
```
exposure 0.3
```
Skybox texture color will be multiplied by this value.
2023-12-18 12:26:01 -05:00
Ivan Avdeev
356f7bdf71
imagelib: load KTX2 cubemaps directly
2023-12-18 11:37:46 -05:00
Ivan Avdeev
2776373652
imagelib: do not overwrite the correct image size when building cubemap
...
For some very unknown reason there's a line that fixes image size to
w*h*4, which would correspond to RGBA8 pixel format w/o alignment.
This is extremely incorrect for other pixel format, e.g. compressed
ones.
Not sure why this size-fixing was there, but removing it fixes sided
KTX2 compressed skybox corruption.
2023-12-15 09:14:23 -05:00
Ivan Avdeev
b1b333f74a
vk: use imagelib cubemap/skybox loader
...
Engine imagelib already has skybox loader. It uses rgbdata_t
IMAGE_CUBEMAP flag.
1. Support IMAGE_CUBEMAP
2. Utilize imagelib skybox loader, do not try to load individual skybox
sides manually.
This will allow loading KTX2 cubemaps directly.
Known issues:
1. Compressed KTX2 sides are not rotated correctly. Engine/imagelib is
unable to rotate compressed images.
2. Some KTX2 sides are corrupted. Cause unknown.
2023-12-14 13:40:34 -05:00
Ivan Avdeev
6a11c6e64f
vk: rt: add notes regarding engine imagelib
...
Also:
- add more info to texture upload debug logs
- remove obsoleted code
- prepare for engine/imagelib-side cubemaps
2023-12-14 12:41:11 -05:00
Ivan Avdeev
6fc318143e
vk: rt: allow hiding all SURF_DRAWSKY surfaces while retaining skybox
...
Neede for getting rid of some skybox 𝘱𝘦𝘯𝘦𝘵𝘳𝘢𝘵𝘪𝘰𝘯 glitches, see #579
2023-12-14 10:54:07 -05:00
Ivan Avdeev
3cbc11a8f0
vk: rt: optimize hires skybox loading
...
- Do not load skybox at all if there are no SURF_DRAWSKY, #706 , #579
- Do not reload the same skybox, #706
Also refactor skybox loading a bit. Prepare for KTX2 skyboxes.
2023-12-14 10:33:26 -05:00
Ivan Avdeev
9a0ff43a97
Merge pull request #707 from 0x4E69676874466F78/no_ray_warn
...
Improved warning when there are no ray extensions
fix #670
2023-12-12 14:42:44 -08:00
NightFox
726572b78c
minor reorganization
2023-12-13 01:13:48 +03:00
NightFox
0d3c9ba88d
Warning after getting a candidate
2023-12-12 19:46:04 +03:00
Ivan Avdeev
f3f14ac968
Merge pull request #705 from w23/stream-E345
...
Thing done during stream E345
- [x] fix incorrect basecolor brdf multiplication, #666
- [x] Do not patch sprite textures for traditional raster, #695
2023-12-12 07:07:50 -08:00
NightFox
852b7c28ba
Slight improvement of code
2023-12-12 14:56:35 +03:00
NightFox
1a9f97bb14
Added warnings about 32bit when configure
2023-12-12 14:31:20 +03:00
NightFox
e1868c752f
Improved warning when there are no ray extensions
...
fix #670
2023-12-12 13:55:12 +03:00
Ivan Avdeev
5c42f34654
vk: rt: mark sky surfaces as non-geometry
...
SURF_SKY shouldn't receive any light, neither direct, nor indirect. Mark
it as non-geometry with ray length < 0.
2023-12-11 13:17:33 -05:00
Ivan Avdeev
4ac62076bb
vk: use original texture for sprites in rasterization mode
...
Traditional rasterization should not use any of the patched textures.
Fixes #695
2023-12-11 12:55:32 -05:00
Ivan Avdeev
c8123952a2
vk: rt: fix incorrect basecolor brdf multiplication
...
PBR model used implies the following rules:
- for metals both diffuse and specular components should be tinted by
material base color.
- for dielectrics, only diffuse should be tinted, specular should remain
as is.
Partially fixes #666
2023-12-11 11:48:44 -05:00
Ivan Avdeev
20da50ca7b
Merge pull request #701 from 0x4E69676874466F78/0x4E69676874466F78-rad-1
...
Add & update rad files
2023-12-08 07:37:52 -08:00
NightFox
e89e44d94a
Add & update rad files
...
c2a4d.rad, c2a4e.rad, c2a4f.rad
2023-12-08 18:35:44 +03:00
Ivan Avdeev
b6af3a6b56
Merge pull request #699 from 0x4E69676874466F78/0x4E69676874466F78-rad-1
...
Update c2a4a.rad
2023-12-07 07:59:16 -08:00
NightFox
b22d87ae82
Update c2a4a.rad
...
add missing +A~FIFTIES_LGT2
2023-12-07 18:54:40 +03:00
Ivan Avdeev
db4c3c50c7
Merge pull request #698 from 0x4E69676874466F78/0x4E69676874466F78-rad-1
...
Add new rad files & patch
2023-12-07 07:10:15 -08:00
NightFox
20cbe33f2f
add c2a3e.patch
2023-12-07 17:12:21 +03:00
NightFox
1bec8ad9b9
Add new rad files
2023-12-07 17:11:55 +03:00
Ivan Avdeev
80b524d643
Merge pull request #690 from w23/stream-E342
...
Stuff done during stream E342
- [x] revert back indirect specular kernel size
2023-12-05 09:59:57 -08:00
Ivan Avdeev
6cb45dda77
vk: update notes and todo
2023-12-05 12:59:30 -05:00
Ivan Avdeev
e00f758594
vk: revert back indirect specular kernel size
2023-12-05 11:14:25 -05:00
Ivan Avdeev
dc0b968028
Merge pull request #689 from 0x4E69676874466F78/0x4E69676874466F78-rad-1
...
Update rad files
2023-12-05 06:29:30 -08:00