90 Commits (main)

Author SHA1 Message Date
Andrew O'Neil dd78795cff Rename kea_gpu_shaderlib to kea_gpulib
Shorter name, and I want to move away from using shader terminology.
1 month ago
Andrew O'Neil 9c52878454 Simplify feature config api, and make presentation an optional feature 1 month ago
Andrew O'Neil 2f783674e8 Update to rust_gpu 0.7.0 1 month ago
Andrew O'Neil 6b8e763c0d Keep track of image layout 2 months ago
Andrew O'Neil b660fc4bae Assume raygen for now 2 months ago
Andrew O'Neil c8b25a059a Ensure we don't have unrecorded command buffers 2 months ago
Andrew O'Neil eb004a09fd Simplify command buffers 2 months ago
Andrew O'Neil d638fd3c9d Use a single queue
Multiple queues is currently unused and untested, so just use a single
queue for now.
2 months ago
Andrew O'Neil 058d16b5b4 Running compute shader (no rays traced yet) 2 months ago
Andrew O'Neil ff29ad8d74 Ensure we pick a queue that includes compute capabilities 2 months ago
Andrew O'Neil 8d1f250868 Move layout init into kea_gpu 2 months ago
Andrew O'Neil ca8b50999f Update dependencies 2 months ago
Andrew O'Neil 6512353525 Extract most gpu commands out of PathTracer 2 months ago
Andrew O'Neil 511de43ab2 ash 0.37.2 2 months ago
Andrew O'Neil f013badc22 Use vulkan synchronization2 2 months ago
Andrew O'Neil 54a846f9f1 Update to rust_gpu 0.6.0 2 months ago
Andrew O'Neil 78f9b1db6d Reduce log spam 6 months ago
Andrew O'Neil f2f267e8e1 Update dependencies 6 months ago
Andrew O'Neil 7f0ffcb3e9 Avoid doubles - now runs on intel, but there are no intersections 7 months ago
Andrew O'Neil aacf046fca Add license 7 months ago
Andrew O'Neil fbd7e9fcad Update dependencies 8 months ago
Andrew O'Neil 1cfc7bbf3e Working path tracing! 10 months ago
Andrew O'Neil 5883adab19 Render boxes with a triangle mesh
ray/box intersection is getting complicated for extending beyond AABBs,
so lets just use triangles as the primitive instead. rust_gpu doesn't
support using buffer address yet, so I'm just concatenating all vertices
and indices into single buffers for now.
11 months ago
Andrew O'Neil e249286c79 Move bindings into the scene 11 months ago
Andrew O'Neil e15d8aa390 Use the slot layout to provide more safety around descriptor sets 11 months ago
Andrew O'Neil 72f602c451 Shade based on normal 11 months ago
Andrew O'Neil 1817c366f4 Fullscreen 4k
This matches my current test setup (laptop on the couch, host PC connected to TV).
11 months ago
Andrew O'Neil 359929261a Wrap swapchain present 11 months ago
Andrew O'Neil 39c8ef3e30 Wrap queue submissions 11 months ago
Andrew O'Neil d7a282f39a Reuse commands across frames 11 months ago
Andrew O'Neil 67901021ea Don't call build() on ash builders until necessary
This helps ash's lifetimes keep us safer
11 months ago
Andrew O'Neil 521378e3f8 Clean up warnings 11 months ago
Andrew O'Neil f20963f994 Simplify buffer fill
I think the ash util alignment is for padding data like we're
doing for the shader binding table. Using it for buffer fills might
cause overflows
11 months ago
Andrew O'Neil 9e26cb49a0 Both spheres and triangles work on AMD!
The triangle is scaled incorrectly on mesa drivers, but is correct with amdgpu-pro.
Still very unreliable on GTX1080
11 months ago
Andrew O'Neil c6ea686154 Allocator has better debug messages itself 11 months ago
Andrew O'Neil 16846a35f3 push geometry changes for debugging too 11 months ago
Andrew O'Neil 673923b0ee Ask allocator for most restrictive alignment 11 months ago
Andrew O'Neil d9f2411d35 It started working!!! 11 months ago
Andrew O'Neil 7a28638628 Fix memory size calculation for shader binding table 11 months ago
Andrew O'Neil dbab841f8f Refactor shader binding table creation 11 months ago
Andrew O'Neil 5155e9c7ca Refactor pipeline creation 11 months ago
Andrew O'Neil f27aea8655 Move Semaphore and Fence 11 months ago
Andrew O'Neil 21fe2931ee Ensure shader tables are aligned 11 months ago
Andrew O'Neil 3f60876a87 Cleanup and extra debug info for swapchain and sync 11 months ago
Andrew O'Neil a922772275 AMD mesa hangs for a few seconds with host_handle, but not with device_handle 11 months ago
Andrew O'Neil dbd38013d6 Add names to command buffers for debug 11 months ago
Andrew O'Neil acb2d29d3d Use slices for data copies 11 months ago
Andrew O'Neil 2d8da8b00f First pass of specifying descriptor set types from the shader side 11 months ago
Andrew O'Neil e0e885fb8d Wrap allocations so they're freed 11 months ago
Andrew O'Neil 8ee87dedf8 Refactor Image and ImageView
These can now be shared by both the swapchain and user created images.
11 months ago