183 Commits (main)
 

Author SHA1 Message Date
Andrew O'Neil 8d1f250868 Move layout init into kea_gpu 2 days ago
Andrew O'Neil ca8b50999f Update dependencies 2 days ago
Andrew O'Neil 8d8fa76242 Add barrier to ensure light image is available for next frame 3 days ago
Andrew O'Neil 6512353525 Extract most gpu commands out of PathTracer 3 days ago
Andrew O'Neil 9744a1b35e Move pipeline creation into its own module 4 days ago
Andrew O'Neil ff8db7acc1 Update synchronization scopes
I think these are (mostly?) correct, but there are still validation sync
hazards reported - these occur even with full memory syncs so I suspect
it may be validation layers out of date with RT and sync2.
1 week ago
Andrew O'Neil 511de43ab2 ash 0.37.2 1 week ago
Andrew O'Neil f013badc22 Use vulkan synchronization2 1 week ago
Andrew O'Neil 54a846f9f1 Update to rust_gpu 0.6.0 1 week ago
Andrew O'Neil 78f9b1db6d Reduce log spam 4 months ago
Andrew O'Neil f2f267e8e1 Update dependencies 4 months ago
Andrew O'Neil 7f0ffcb3e9 Avoid doubles - now runs on intel, but there are no intersections 4 months ago
Andrew O'Neil 4085fed72d Add readme 5 months ago
Andrew O'Neil aacf046fca Add license 5 months ago
Andrew O'Neil 9f7b5b5df8 Terminate path when it no longer contributes a meaningful amount of light 5 months ago
Andrew O'Neil 9d9966beb3 Refactor the path tracer to be a bit more understandable 5 months ago
Andrew O'Neil fbd7e9fcad Update dependencies 5 months ago
Andrew O'Neil a57e23c6c2 Use a more manageable default window size 5 months ago
Andrew O'Neil 1cfc7bbf3e Working path tracing! 8 months ago
Andrew O'Neil 0cdb6d7215 Ensure triangle normals are in the ray direction 8 months ago
Andrew O'Neil d24b8adb1c Reinhard tone mapping
No automatic white point yet.
https://64.github.io/tonemapping/
8 months ago
Andrew O'Neil c4db165e84 Add rotation to boxes 8 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.
8 months ago
Andrew O'Neil 7ad45c7c85 Define materials from host side 9 months ago
Andrew O'Neil f8add67504 Add basic cornell box scene 9 months ago
Andrew O'Neil 4e5e8d8ecb Use bevy_ecs as a basic scene graph 9 months ago
Andrew O'Neil e249286c79 Move bindings into the scene 9 months ago
Andrew O'Neil e15d8aa390 Use the slot layout to provide more safety around descriptor sets 9 months ago
Andrew O'Neil d43b7c16dc Move scene creation into its own module 9 months ago
Andrew O'Neil 54f928c1e8 Basic box shape
Box must be AABB, and normals are broken at non-uniform scales
9 months ago
Andrew O'Neil f47c1c68bd Check for visibility of the light source to give shadows 9 months ago
Andrew O'Neil 0159c89fb0 Add specular highlights 9 months ago
Andrew O'Neil 8db095fe04 Add diffuse lighting 9 months ago
Andrew O'Neil 818e711225 Better explain sphere math, and fix behind-camera intersections 9 months ago
Andrew O'Neil 72f602c451 Shade based on normal 9 months ago
Andrew O'Neil 768b413bfc Implement positional camera
Largely taken from https://raytracing.github.io/books/RayTracingInOneWeekend.html#positionablecamera
9 months ago
Andrew O'Neil ea85738c4d Add field of view to camera 9 months ago
Andrew O'Neil c956d99416 Refactor camera into it's own module 9 months ago
Andrew O'Neil 633963927c Visualise depth :D 9 months ago
Andrew O'Neil 5b71c86d92 Move sphere math to sphere mod 9 months ago
Andrew O'Neil 66a32b178f Report hit, but let the raygen shader control shading 9 months ago
Andrew O'Neil 8ad2ac0798 Reorganise shader crate 9 months ago
Andrew O'Neil 1817c366f4 Fullscreen 4k
This matches my current test setup (laptop on the couch, host PC connected to TV).
9 months ago
Andrew O'Neil 28f68f1e0c Use RHS with Y pointing up 9 months ago
Andrew O'Neil 359929261a Wrap swapchain present 9 months ago
Andrew O'Neil 39c8ef3e30 Wrap queue submissions 9 months ago
Andrew O'Neil d7a282f39a Reuse commands across frames 9 months ago
Andrew O'Neil 67901021ea Don't call build() on ash builders until necessary
This helps ash's lifetimes keep us safer
9 months ago
Andrew O'Neil 3e9f6d1c01 Don't need all this debug info for now 9 months ago
Andrew O'Neil 521378e3f8 Clean up warnings 9 months ago