Commit Graph

130 Commits (a4300a78b1f5cdecdcee7048ca7100d78cfe0c24)

Author SHA1 Message Date
noah metz 7fea23c6ff Trying to figure out why the transfers aren't complete before the compute shader runs, even with memory barriers 2024-10-28 22:07:13 -06:00
noah metz 152635f14f Added add_transfer function to add a transfer to the current frame context(and resize if necessary) 2024-10-28 14:48:36 -06:00
noah metz 9ef44f2fe8 Update comments 2024-10-28 13:45:17 -06:00
noah metz b003c94efd Moved copy to per-frame operation, and added members to FrameContext to support per-frame copy. Added copy logic to draw. 2024-10-28 13:44:34 -06:00
noah metz 5788f1c10a semaphores... 2024-10-26 18:25:44 -06:00
noah metz dd8ec88d3a Moved ui string compute out of per-frame, removed compute semaphore since it will be part of transfer 2024-10-26 12:53:16 -06:00
noah metz 174a8808d7 Added FrameContext struct and used VK_RESULT more 2024-10-26 12:43:07 -06:00
noah metz d1cfff1ff7 Moved test UI creation to happen in parallel with render thread 2024-10-24 21:30:36 -06:00
noah metz 14a87c8269 Removed comment 2024-10-24 20:51:08 -06:00
noah metz cc06265ca6 Pass time to shaders 2024-10-24 20:49:59 -06:00
noah metz 06196c6b20 Getting font rendering better 2024-10-22 20:24:34 -06:00
noah metz df441f6560 Fixed warnings 2024-10-22 18:33:12 -06:00
noah metz bac3d87b9e More cleanup 2024-10-22 18:31:34 -06:00
noah metz 44b78a2861 renamed function 2024-10-22 18:23:39 -06:00
noah metz c48dfce532 Renamed UI structs 2024-10-22 18:22:18 -06:00
noah metz 4cf1ed725d Added screen-corner anchoring to the UI pipeline 2024-10-22 17:48:37 -06:00
noah metz d448eb81d1 Added time to draw function and started to layout game ui. Add window resizing next and in-shader anchoring next. 2024-10-21 21:57:05 -06:00
noah metz 79e3f99d4f Made width/height a variable 2024-10-21 15:54:59 -06:00
noah metz ec7e5cbfdf Moved draw buffer recording outside draw function 2024-10-21 15:09:51 -06:00
noah metz f067b42161 Moved ui draw/compute recording to seperate functions 2024-10-21 14:54:54 -06:00
noah metz ab58c63a50 Moved font and texture storage variables to UIContext 2024-10-21 14:15:47 -06:00
noah metz 1702f8ff85 Moved containers into UIContextStorage 2024-10-21 14:05:27 -06:00
noah metz 688fccf251 Changed draw to use containers instead of layers, added draw/string/code storage to layer on host side 2024-10-21 13:52:40 -06:00
noah metz 130c6538b2 Added host mirrors of UI data for logic 2024-10-21 13:39:12 -06:00
noah metz 6d60a3394f API cleanup 2024-10-21 13:31:42 -06:00
noah metz 6fa251773a only create layer buffers if count is nonzero 2024-10-21 13:11:59 -06:00
noah metz 1dbd924b8c Pass RenderContext pointer in exposed API functions 2024-10-21 12:52:45 -06:00
noah metz d4790a8d53 Added address sanitizer, and stored font/texture names 2024-10-21 12:30:19 -06:00
noah metz 5e74250fd3 Initialize slots to 0 2024-10-21 10:31:23 -06:00
noah metz 7b23625859 Moved index to a return of load_* instead of a parameter 2024-10-21 10:27:24 -06:00
noah metz e851d64af6 Added bindless textures 2024-10-21 10:09:52 -06:00
noah metz 35f0ffb46c Fixed UI scale 2024-10-21 09:20:50 -06:00
noah metz 285a937e1b Improvements to rendering 2024-10-20 22:39:12 -06:00
noah metz 8c793d36c3 Moved glsl structures to common file, added convenience functions for UI elements 2024-10-20 21:59:28 -06:00
noah metz eca8f30175 Got text and rects rendering from same pipeline 2024-10-18 22:53:06 -06:00
noah metz 7720d696bc Got text rendering bindless 2024-10-18 18:34:31 -06:00
noah metz dc7f8ed750 Added second layer 2024-10-18 16:31:28 -06:00
noah metz 5e1720dc71 Got GPU rendering of rects working 2024-10-18 16:15:00 -06:00
noah metz 6129e9c5b9 Starting rework for GPU driven UI rendering 2024-10-18 14:26:41 -06:00
noah metz d04f7769ee Renamed FontDescriptor to Font 2024-10-18 10:16:04 -06:00
noah metz b67a2a924c Fixed shader buffer alignments 2024-10-17 17:31:13 -06:00
noah metz 04e15db065 Renamed pipeline->ui, moved square vertices to shaders 2024-10-17 15:56:35 -06:00
noah metz e9192e42fe Removed depth buffer from UI pipeline 2024-10-17 13:15:29 -06:00
noah metz 7b916b0012 Fixed wrong code offset in text compute shader, moved functions out of main.c 2024-10-17 11:06:09 -06:00
noah metz 717a072b3d Removed unecessary if 2024-10-17 09:26:16 -06:00
noah metz c59c643cd0 Added parameter to load_font to load aliased or not 2024-10-17 09:25:46 -06:00
noah metz 6858877d6b Moved 3rd party files to lib/, removed unused 'vulkan.c' 2024-10-17 09:06:57 -06:00
noah metz 2ea9818fb0 Inverted text rendering so baseline is origin 2024-10-17 09:04:35 -06:00
noah metz 2a99c7be99 Moved font loadinf from script to C 2024-10-16 20:29:19 -06:00
noah metz 934a0a30f3 Got text pipeline showing strings 2024-10-15 16:37:20 -06:00
noah metz 405cf139ef First pass of compute string to gpu characters 2024-10-15 16:14:34 -06:00
noah metz 3c059e4333 Added window scale adjustments 2024-10-15 12:11:28 -06:00
noah metz a8fe640b26 Removed second dispatch 2024-10-15 11:55:49 -06:00
noah metz b914b0c252 Added vkCmdPushConstants before vkCmdDispatch 2024-10-15 11:47:08 -06:00
noah metz 068bc2213b Create draw buffer 2024-10-15 11:44:59 -06:00
noah metz 6e778e7d22 Added call to compute shader in draw loop, fixed wrong subpass index in ui pipelines 2024-10-15 00:18:29 -06:00
noah metz 28cd4efbaf Changed multiple render passes to subpasses 2024-10-15 00:06:46 -06:00
noah metz 6988abcd86 Got characters rendering from two buffer addresses 2024-10-14 22:10:14 -06:00
noah metz 0092396715 mac fixes 2024-10-14 21:30:36 -06:00
noah metz 0060a381ad Linux fixes 2024-10-14 21:29:35 -06:00
noah metz 38b7a2f954 Some changes 2024-10-14 19:42:38 -06:00
noah metz 5260a59db5 Got glyphs rendering from a 1D font atlas 2024-10-14 14:59:49 -06:00
noah metz 5acc216bf1 Loading font metadata 2024-10-14 14:16:59 -06:00
noah metz 683c071878 Added ttf converter script, and started converting renderer to use the ttf atlas(only 1d for now) 2024-10-14 13:33:14 -06:00
noah metz a06fbe8b1c Renamed Text to Char 2024-10-14 01:09:05 -06:00
noah metz 74e1a05790 Got basic text pipeline working, want to minimize the amount of data transfered to GPU so that strings don't repeat so much data 2024-10-14 01:00:10 -06:00
noah metz ea72e53c93 Started UI text pipeline with 4x4 test font 2024-10-13 22:18:37 -06:00
noah metz dc6e44ef99 Moved some RenderContext items to new UIContext struct 2024-10-13 20:27:09 -06:00
noah metz 4e7813499f Delted commited object file. Renamed shaders. Started ui text pipeline. 2024-10-13 16:04:12 -06:00
noah metz b2a8d283f6 Cleaned up UI rects into UILayers which contain batches of rects to be drawn 2024-10-13 15:44:33 -06:00
noah metz 4c2bade162 Changed polygon pipeline to rect pipeline, need to add UVs to it now 2024-10-13 14:38:17 -06:00
noah metz 241af49a80 Moved world, ui, and ui objects to different render passes 2024-10-13 14:22:47 -06:00
noah metz 7a3d316281 Removed debug print 2024-10-13 14:11:53 -06:00
noah metz 760b7bc389 Updated ui polygon pipeline with structure to hold details(want to store all polygons in one buffer). Added screen matrix to ui polygon shader. 2024-10-13 14:11:28 -06:00
noah metz 1811321528 Cleaned up ui pipeline creation, need to make struct for ui polygons and figure out UVs 2024-10-12 14:01:23 -06:00
noah metz e9d3a71a1d Updated gitignore, got basic polygon UI pipeline rendering shapes with offsets/colors 2024-10-09 20:00:56 -06:00
noah metz 1fa7b38624 Updated gitignore, added pipeline creation code and basic render loop 2024-10-09 14:31:30 -06:00
noah metz 2accc9a952 Initial commit of C vulkan code 2024-10-09 10:54:19 -06:00
noah metz 5baf53e284 Moved client back to go 2024-10-07 21:14:29 -06:00
noah metz 5ff2ffe7b7 Reorganized, added C Client 2024-10-07 15:43:10 -06:00