Ivan Avdeev
72acf4882d
vk: orient sprites to camera
...
Somehow makes sprites correctly oriented (and winding-culled) for ray
tracing, but makes them disappear (winding-culled) for traditional
renderer. This makes zero sense.
2023-06-01 11:00:50 -07:00
Ivan Avdeev
edb151bd1b
rt: apply instanced texture overrides to rt_model; makes sprites apply correct textures
2023-06-01 10:15:30 -07:00
Ivan Avdeev
8f47115a01
rt: hide internal apis
2023-06-01 09:25:55 -07:00
Ivan Avdeev
ed4d0070f8
vk: override sprite textures for quad instances
...
Applies correct sprite textures for traditional renderer. Doesn't apply
them to RT yet.
2023-05-31 11:00:28 -07:00
Ivan 'provod' Avdeev
32cb4f73be
vk: fixup sprite size and color, also reorient it
...
Sprites are still not oriented properly though
2023-05-31 10:16:06 -07:00
Ivan 'provod' Avdeev
dd8f06ae60
rt: recreate sprite model on every map
...
This is a workaround for inconsistent memory management: some subsystems completely clear their memories and start allocating from zero. This leads to overwriting long lived sprite model with garbage.
TODO FIXME
2023-05-31 10:15:27 -07:00
Ivan 'provod' Avdeev
8b50ebb035
rt: pass and assign rt_blas debug names
2023-05-31 10:13:40 -07:00
Ivan Avdeev
e9ea962bc0
vk: begin refactoring rendermodel api, instantiate sprites, crash gpu
2023-05-31 09:39:27 -07:00
Ivan 'provod' Avdeev
c157c9acfc
rt: don't forget to add new blases to render list
2023-05-31 08:46:34 -07:00
Ivan Avdeev
0853f1c182
rt: start adding new rt_blas-based rt_model_t
...
Make brush models use it. Black screen, kekw. But not explicit error
messages. Need to investigate.
2023-05-30 12:14:44 -07:00
Ivan Avdeev
7ee16cd82f
vk: track block/geom/brush lifetimes
...
Make sure that things get created and destroyed at the right times.
Allow longer-than-map block allocations.
Fix brush model leaks -- previously they weren't destroyed on map
change/game exit properly. Also free geometry ranges accordingly.
Add a note about map loading process, and various models lifetimes.
2023-05-26 10:45:44 -07:00
Ivan Avdeev
d24961db15
vk: add block allocator draft
...
The intent is to manage long-vs-single-frame allocations better.
Previously long allocations were map-long bump allocations, and couldn't be freed
mid-map, as there was neither a reference to the allocated range, nor a
way to actully free it.
Add a two-mode block allocator (similar to previous debuffer alloc) that
allows making long and once allocations. But now long allocations are
backed by "pool" allocator and return references to the range.
This commit doesn't do the deallocation yet, so map chaning doesn't yet
work.
2023-05-25 12:12:18 -07:00
Ivan Avdeev
9200cbfc25
rt: step even closer to explicit blas+kusochki management
...
- stop tracking color/xform/mmode with vk_ray_model
- do not expose model to things that don't need to know
2023-05-22 11:02:40 -07:00
Ivan Avdeev
8724efd748
rt: massage vk_ray_model a bit
...
- explicitly group cache-related fields
- move kusochki allocation to where it's actually used
this makes a step towards better blas management from bottom up
2023-05-22 10:39:48 -07:00
Ivan Avdeev
322e7bc419
vk: recreate suboptimal swapchains with correct synchronization
2023-05-18 12:32:00 -07:00
Ivan Avdeev
b5f79f3815
rt: DRY the accel creation code
2023-05-18 12:10:21 -07:00
Ivan Avdeev
e55e411639
vk: add a couple of TODO comments
2023-05-18 12:00:58 -07:00
Ivan Avdeev
b65f84793a
rt: start refactoring blas/tlas mgmt code
...
Draft the new accel/blas apis. Consolidate everything accel-related into
vk_ray_accel.c. Start splitting into more atomic functions. Prepare for
blas-model+kusochki split. etc etc.
The new code isn't really used yet.
2023-05-18 11:59:14 -07:00
Ivan Avdeev
4af9f65cd0
vk: use better debug_break in validation errors callback
...
Allows us to continue in gdb
2023-05-18 11:58:00 -07:00
Ivan Avdeev
7060a86662
rt: propose rt_blas api
2023-05-17 11:28:09 -07:00
Ivan Avdeev
14a648d16c
rt: prepare for blas mgmt refactoring
...
1. Rename models passed to TLAS to instances.
2. Remove BLAS validation: old, doesn't make sense anymore.
3. Draft general blas mgmt approach in NOTES.md
2023-05-17 10:42:18 -07:00
Ivan Avdeev
7d6c12218f
vk: comment on why we need inverse model matrix
2023-05-15 09:47:03 -07:00
Ivan Avdeev
e54913f8af
rt: improve prev frame bone matrix tracking for studio models
...
Still has some artifacts, but is generally rather close. Will look at
this again when caching studio model BLASes, as we'd be able to look at
them without extra animations.
2023-05-15 09:47:03 -07:00
Ivan Avdeev
091c61a45f
vk: make sure studio model vertices are local space
...
TODO:
- revert not applying rotationmatrix in local vk_studio code
- make sure that prev_frame stuff hasn't changed
2023-05-15 09:47:03 -07:00
Ivan Avdeev
e49f517dc0
vk: don't apply studio model matrix to vertices
2023-05-15 09:47:03 -07:00
NightFox
c91db96008
update patches
2023-05-05 15:12:28 -07:00
NightFox
e86e16235c
add rad files for cstrike
2023-05-05 15:12:28 -07:00
NightFox
a2c6e3b444
Add cs_assault.rad
2023-05-05 15:12:28 -07:00
NightFox
596d35ddfa
update rad files
2023-05-05 15:12:28 -07:00
NightFox
b49dca536d
Rename c1a3b.bsp.patch to c1a3b-dayone.bsp.patch
2023-05-05 15:12:28 -07:00
NightFox
d2f45c53a0
Rename c1a3c.bsp.patch to c1a3c-dayone.bsp.patch
2023-05-05 15:12:28 -07:00
NightFox
48f9813edd
update patches
2023-05-05 15:12:28 -07:00
Ivan Avdeev
babfbb08ab
vk: improve mvp matrix handling a bit
2023-05-04 11:10:22 -07:00
Ivan Avdeev
4f43b316a6
rt: material: print fauly lines on unknown keys
2023-05-04 11:10:22 -07:00
Ivan Avdeev
481aa651c6
vk: refactor passing m,v,p matrices around
...
View and projection now set only once in a logical place.
Model matrix is now closely associated with its model, and not stored as
a global state.
2023-05-04 11:10:22 -07:00
Ivan Avdeev
0b6ef9fd65
vk: remove a couple unused things from vk_render draw structs
2023-05-04 11:10:22 -07:00
Ivan 'provod' Avdeev
58433a2221
rt: only load textures for potentially usable materials
...
Skip loading textures for materials which are not going to be used.
2023-05-04 11:10:22 -07:00
Ivan Avdeev
2dcc5073aa
ci: disable nswitch and psvita targets
...
We're not doing anything relevant to them in the vulkan branch, and
all they do is take extra time for CI to complete
2023-05-01 17:03:22 -07:00
Ivan Avdeev
528a715c76
ci: disable upload step as unnecessary for vulkan branch
2023-05-01 17:03:22 -07:00
Ivan Avdeev
3affb12574
ci: try re-enabling `build` dependency
...
Let's see whether that fixes constant failure in upload
2023-05-01 17:03:22 -07:00
Ivan 'provod' Avdeev
1cfb183cbd
rt: extract per-model data from kusochki
2023-05-01 17:03:22 -07:00
Ivan Avdeev
0d8a7f76f5
Merge pull request #529 from w23/E260
...
- [x] Improves #528 a bit
- [x] Fixes #523
- [x] Fix ![image](https://user-images.githubusercontent.com/321361/235242886-bbae06cf-4375-4e11-bae0-8bc4e7644d59.png )
- [ ] ~верни зеркало! ![image](https://user-images.githubusercontent.com/321361/235250971-6652e2b2-e531-4b41-b603-1c50306b7ea3.png )~
- [x] test_brush2 лесенки пропали на растеризации
2023-05-01 10:45:31 -07:00
Ivan Avdeev
54d909b715
vk: make sure blending is the same as for gl for brush models
...
Essentially just copy R_SetRenderMode() logic to vk_brush
2023-05-01 10:27:30 -07:00
Ivan Avdeev
209bf1faa2
Merge pull request #525 from a1batross/vulkan
...
Sync with upstream
♥️ @a1batross
2023-04-30 21:46:38 -07:00
Alibek Omarov
6cc3832582
ci: fix incorrectly commented out build
...
Co-authored-by: Ivan Avdeev <lists@provod.works>
2023-04-29 22:58:03 +03:00
Alibek Omarov
12dbfb467a
ref: vk: studio: port optimized R_LightLambert function
2023-04-29 22:57:02 +03:00
Ivan Avdeev
b93ef2e52c
vk: fix freeing NULL bmodel memory
2023-04-28 13:29:02 -07:00
Ivan 'provod' Avdeev
e1d250e8da
vk: split geometries into static and animated
...
Load geometries only once, and then update only those which have animated textures.
Fixes #523
2023-04-28 12:35:48 -07:00
Ivan 'provod' Avdeev
f722f38617
vk: infotool: mark ent index as dynamic
2023-04-28 11:31:41 -07:00
Ivan 'provod' Avdeev
52f99ec329
rt: only upload kusochki when needed
...
- Once at load
- When color/mode/prevxform changed
Breaks animated textures.
#523
2023-04-28 11:19:57 -07:00