Commit Graph

156 Commits (4aeea98d4545befd157d07900f81691a9c671cb1)

Author SHA1 Message Date
noah metz e39a454c5f Made 2 transfer buffers per-frame so that the in-use buffer is not modified 2024-10-29 13:48:06 -06:00
noah metz e2ffed91e2 Testing 2024-10-29 13:21:57 -06:00
noah metz edf2e4b3c9 Changed animation 2024-10-29 13:11:15 -06:00
noah metz 4aa18d4aae Moved compute out of transfer if 2024-10-29 12:47:04 -06:00
noah metz ae9e6ca687 Renaming 2024-10-29 00:34:21 -06:00
noah metz f09b09aff9 More draw cleanup 2024-10-29 00:31:22 -06:00
noah metz c2d46d328b Cleanup 2024-10-29 00:27:38 -06:00
noah metz 2c5c2dcb22 More synchronization attempts 2024-10-28 23:24:00 -06:00
noah metz 2ec837442f Shader debugging 2024-10-28 22:57:25 -06:00
noah metz 173b57859f Added debug print to shader 2024-10-28 22:49:57 -06:00
noah metz 030d4f4278 Moved dispatch commands to a different command buffer, still observing issue with no validation errors 2024-10-28 22:36:43 -06:00
noah metz 07689420af Try buffer barrier 2024-10-28 22:15:26 -06:00
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 22369f6385 Enable address sanitizer for macos 2024-10-28 13:47:54 -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 e4649bc5f1 Fixed vertex shader test 2024-10-24 20:50:27 -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 b19240899a Fixed Makefile for linux 2024-10-21 15:52:16 -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 294fd0beb2 Reordered ui layer input struct 2024-10-21 14:49:40 -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 dee33d19b6 Flattened fargment shader inputs 2024-10-20 22:39:54 -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 22d3b62b12 Fixed struct alignment to align vec3s to 16 bytes 2024-10-18 10:02:39 -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 a6e44fcd0e Moved export to Darwin if 2024-10-16 15:29:20 -06:00
noah metz edf8718cca Removed homebrew paths from makefile 2024-10-16 15:28:42 -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 1895aefe22 Supress vma compile warnings 2024-10-15 10:55:16 -06:00
noah metz 77c83b21a1 Made makefile compile on macos/linux 2024-10-15 10:37:56 -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 eab26cf72c test 2024-10-14 21:32:21 -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