Commit Graph

133 Commits

Author SHA1 Message Date
Jarrod Doyle a29b4979ef
Simplify block gen code path when all corners are empty 2023-05-13 11:53:26 +01:00
Jarrod Doyle 2f99b0ea4e
Don't interpolate if all block corners are negative 2023-05-12 11:10:23 +01:00
Jarrod Doyle 2f3c214c98
Use new trilinear interpolation function for chunk block generation 2023-05-12 11:05:00 +01:00
Jarrod Doyle f3be07cbc4
Add block trilinear interpolation function 2023-05-12 11:02:28 +01:00
Jarrod Doyle dc205d24ef
Inline math functions, optimise trilerp 2023-05-09 20:09:32 +01:00
Jarrod Doyle 7e6746a8cd
Use new world generator 2023-05-09 17:33:46 +01:00
Jarrod Doyle 8a3b0ed4ea
Add simple world generator 2023-05-09 17:32:53 +01:00
Jarrod Doyle cd3fd9cd68
Add basic math module 2023-05-09 17:31:41 +01:00
Jarrod Doyle d5f6d73296
Basic FBM based terrain generation 2023-05-08 12:35:35 +01:00
Jarrod Doyle 3d8719275d
Correctly update brickgrid when brickmaps are empty 2023-05-06 12:43:40 +01:00
Jarrod Doyle 95dd469f7a
Don't skip generation of some chunks 2023-05-06 12:42:47 +01:00
Jarrod Doyle ed46752c92
Remove unnecessary reupload of entire brickmap buffers 2023-05-06 12:29:36 +01:00
Jarrod Doyle 4eaf55a61c
Remove unnecessary CPU side duplicate of the shading table 2023-05-06 12:28:22 +01:00
Jarrod Doyle eb6b530080
Fix incorrect brickmap index in HitInfo result 2023-05-06 12:27:28 +01:00
Jarrod Doyle 3896027ea9
Remove unused code/comments 2023-05-05 17:18:03 +01:00
Jarrod Doyle b1d012c05b
Remove pub from shading table bucket/allocator functions 2023-05-05 14:54:38 +01:00
Jarrod Doyle 3ab9bcb3a1
Correct GPU shading table size 2023-05-05 14:53:29 +01:00
Jarrod Doyle f3f10d5513
Use shading table allocator in brickmap 2023-05-05 14:49:07 +01:00
Jarrod Doyle e86af05a1f
Add shading table bucket allocator 2023-05-05 14:48:54 +01:00
Jarrod Doyle a4179fa307
Cull interior voxels from gpu brickmap upload 2023-05-05 10:47:08 +01:00
Jarrod Doyle 12cde87246
Adjust buffer sizes and add todo list 2023-05-04 16:27:15 +01:00
Jarrod Doyle 71d547cd62
Define device limits in App, and raise buffer size limits 2023-05-04 16:17:32 +01:00
Jarrod Doyle 6d9fc9b0b8
Use cache index to place shader table values 2023-05-04 16:16:04 +01:00
Jarrod Doyle 0625d2e264
Correctly calculate chunk index when processing the load queue 2023-05-04 16:14:54 +01:00
Jarrod Doyle 2cfea8e440
Add comments to raycast shader 2023-05-04 11:44:55 +01:00
Jarrod Doyle c09014e34e
Simplified ray stepping 2023-05-04 11:28:07 +01:00
Jarrod Doyle a01848a7f7
Store brickmap index in HitInfo to avoid recalculating it later 2023-05-04 10:59:12 +01:00
Jarrod Doyle 53ccebf4a6
Add brickmaps to the cache sequentially 2023-05-04 10:51:47 +01:00
Jarrod Doyle 5f0ea3fa03
Correctly index shading table in shader 2023-05-04 10:50:00 +01:00
Jarrod Doyle 0e1921d32d
Make max ray depth for grids and bricks more accurate 2023-05-03 15:57:31 +01:00
Jarrod Doyle 66dfffd78b
Only upload modified parts of brickmap buffers 2023-05-03 15:10:18 +01:00
Jarrod Doyle af0ab3bb66
Add basic CPU to GPU streaming system 2023-05-03 14:44:42 +01:00
Jarrod Doyle 3fb089d392
Remove unnecessary New function from Brickmap uniform struct 2023-04-29 14:51:35 +01:00
Jarrod Doyle b51f0b42e2
Revert brickmap sphere colour changes 2023-04-29 14:50:59 +01:00
Jarrod Doyle b857b5a157
Rewrite raycast shader to take larger steps when encountering empty chunks 2023-04-29 14:48:24 +01:00
Jarrod Doyle 63e1fd94bd
Simple framerate logging 2023-04-29 10:30:49 +01:00
Jarrod Doyle 2555ec55b4
Start work on brickgrids 2023-04-25 13:54:33 +01:00
Jarrod Doyle 4091686b09
More shader cleanup 2023-04-25 13:18:19 +01:00
Jarrod Doyle 2117fbb938
Remove unused shader code 2023-04-25 12:58:25 +01:00
Jarrod Doyle 1823d8b52c
Add initial multi-brickmap support 2023-04-25 12:23:55 +01:00
Jarrod Doyle 1d126eba10
Shader now considers the brickmap base shading table offset 2023-04-24 20:20:38 +01:00
Jarrod Doyle 225c76b1a8
Add a basic brickmap shading table 2023-04-24 19:34:19 +01:00
Jarrod Doyle 6be2dd8054
Begin using basic brickmap. Doesn't include shading table 2023-04-24 17:17:56 +01:00
Jarrod Doyle 5914efaea8
Remove unused code 2023-04-24 14:01:36 +01:00
Jarrod Doyle 249ab27777
Make Renderer a trait and implement it for VoxelRenderer 2023-04-24 13:52:38 +01:00
Jarrod Doyle a0df8d2bfc
Implement Debug for Texture and TextureBuilder 2023-04-24 13:50:22 +01:00
Jarrod Doyle 057d849e24
Make CameraController public 2023-04-24 13:47:59 +01:00
Jarrod Doyle 55b79f0b39
Fix voxel sphere offset 2023-04-24 09:49:07 +01:00
Jarrod Doyle 230024ac63
Move app and camera to core module 2023-04-24 09:28:33 +01:00
Jarrod Doyle a94932836f
Moved renderer to render module 2023-04-24 09:24:22 +01:00