Commit graph

81 commits

Author SHA1 Message Date
Janis 2b09a2c4f8 renderer: thread-local commandpools 2025-01-28 02:30:57 +01:00
Janis 4cbf1f053b untrack spirv shaders 2025-01-27 17:06:15 +01:00
Janis be9f00f63f font rendering test, ahash, F32 new type 2025-01-27 17:05:43 +01:00
Janis 44076fb5f0 renderer: cleanup 2025-01-19 21:29:46 +01:00
Janis 40ea757543 renderer: remove Vulkan object, move debug mod to its own file 2025-01-19 21:27:45 +01:00
Janis b06c76f1e1 reorder crate dependencies, workspace dependencies 2025-01-19 21:18:06 +01:00
Janis e03efa2803 game: store window surface in game crate, store egui here tmprly 2025-01-19 18:48:54 +01:00
Janis 40885eb9ce renderer: extract swapchain to its own file, refactor types 2025-01-19 18:48:15 +01:00
Janis b2730fecbd device: allow attributes in device_owned_handle types, fix device creation 2025-01-19 18:45:42 +01:00
Janis 0db6b7790d fix: UB in safe rust! 2025-01-19 18:43:09 +01:00
Janis 75e75ec706 util: rawmutexguard: MutexGuard for RawMutex 2025-01-19 18:42:45 +01:00
Janis 5593abc3b5 rendergraph doesn't need to know the SwapchainFrame type 2025-01-19 18:42:25 +01:00
Janis b404b50b62 renderer struct that handles engine objects like samplers, textures 2025-01-19 15:17:21 +01:00
Janis 81c6b6f4ee move all of device and instance creation to Device type 2025-01-19 00:24:04 +01:00
Janis f93513524e previous: game crate use draw_with_graph function 2025-01-19 00:21:49 +01:00
Janis c70c1591db stuff: slight refactoring 2025-01-18 14:49:25 +01:00
Janis 9802bec8b0 debug: timing things 2025-01-14 23:10:10 +01:00
Janis 7640cf053b use scale_factor for egui 2025-01-14 18:53:31 +01:00
Janis d623b8fc46 fix: check for layout transition is always necessary, layout in eguiprepass 2025-01-10 13:28:43 +01:00
Janis dbc4294c09 rendering module 2025-01-10 00:19:46 +01:00
Janis 9242d44755 tracing: debug->trace, remove present_pass
present_pass can be done by simply tagging as output with read: present()
2025-01-09 22:27:47 +01:00
Janis 2cad8adb55 optional pass record function for pure layout/transition passes 2025-01-09 22:27:47 +01:00
Janis 6274b6e5a8 rendergraph resolves faster
Access: layout is nolonger stored in option
rendergraph resolved with linear vectors instead of maps
2025-01-09 22:27:47 +01:00
Janis 3332e59453 i genuinely believe this is close to working 2025-01-09 22:27:47 +01:00
Janis 107c43ee77 it works (magic) 2025-01-09 22:27:47 +01:00
Janis efd73fce43 waiting..... 2025-01-09 22:27:47 +01:00
Janis 131887b633 quick save #2 2025-01-09 22:27:47 +01:00
Janis 146ffa654f quick save 2025-01-09 22:27:47 +01:00
Janis 3deca28391 transition imported resources at the beginning of rendergraph 2025-01-09 22:27:47 +01:00
Janis 5a1ed9340e measure rendergraph time 2025-01-09 22:27:47 +01:00
Janis 30269f7bd2 mold + debug-release profile 2025-01-09 21:52:36 +01:00
Janis 003d507573 warnings 2025-01-05 18:23:54 +01:00
Janis 0f96689079 images+commands: sync
- lock pool when allocating command buffers
- store image parent as weak arc in order to not create cycles
2025-01-05 18:22:50 +01:00
Janis 260275d694 rendergraph: barriers against write-after-read 2025-01-05 16:10:30 +01:00
Janis fdfc74c668 stuff i forgor in earlier commits (state 4.1.25) 2025-01-05 03:13:56 +01:00
Janis a5ea706744 rendergraph: works!! (i cant believe it does!) 2025-01-05 03:13:29 +01:00
Janis 5b5a7cba54 swapchain: use Image abstraction, add support to that for swapchain images 2025-01-05 03:13:02 +01:00
Janis 2fc7d3e179 commandbuffer: tracking state and fn end() 2025-01-05 03:11:44 +01:00
Janis f3cc43e49e util: WithLifetime type for tagging with a lifetime 2025-01-05 03:11:14 +01:00
Janis 5814118d3f egui renderpass 2025-01-05 01:16:54 +01:00
Janis 393cfbbb63 even more rendergraph rewriting, attempt 2 2025-01-05 01:16:30 +01:00
Janis 1d5197263b egui-render-state: Arc pipeline and pipeline-layout 2025-01-05 01:16:08 +01:00
Janis 1a1625cf33 fix: Eq for SwapchainFrame, this should be more rigorous
will be more rigorous if `index` is monotonically increasing instead of modulo
of in-flight-frames
2025-01-05 01:15:13 +01:00
Janis ac40cddfb7 command is DeviceOwnedHandle derived now
CommandList helper for submitting many commands in one submit call
2025-01-05 01:14:32 +01:00
Janis 9334e8fa9e Image: allow alias on &Arc<Self>, then clone parent or self 2025-01-05 01:13:48 +01:00
Janis 208b1569d6 rect2d: getters for size, top_left, height and width 2025-01-05 01:13:23 +01:00
Janis 66ae2603e6 deviceowned Eq trait 2025-01-05 01:13:12 +01:00
Janis 32ce6e9140 aliases stored along side views in-line 2025-01-04 02:28:51 +01:00
Janis d66071f7bb rendergraph work that is probably all for nothing 2025-01-04 02:16:43 +01:00
Janis e8d4e1af98 cmd: vkCmdCopyImages 2025-01-04 02:16:28 +01:00