![Tony Adriansen](/img/default-banner.jpg)
- Видео 7
- Просмотров 277
Tony Adriansen
Добавлен 10 ноя 2012
Sprawling Voxel World using Vulkan/Rasterization/Octree
This rough demo showcases an octree that renders massive numbers of voxels using rasterization. It's buggy and a work in progress, but it demonstrates how level of detail can significantly improve the scale of a voxel world, especially when the level of detail range is smaller than a pixel.
Current Features:
- Vulkan renderer
- Quads are packed into 5 bytes total for the entire quad using manual vertex pulling in the vertex shader (not padded to 8 bytes).
- Binary greedy meshing (source: github.com/cgerikj/binary-greedy-meshing/blob/master/src/mesher.h)
- Culling compute shader generates one indirect draw call for each of the visible faces of the chunk if visible at the chunk level (early back...
Current Features:
- Vulkan renderer
- Quads are packed into 5 bytes total for the entire quad using manual vertex pulling in the vertex shader (not padded to 8 bytes).
- Binary greedy meshing (source: github.com/cgerikj/binary-greedy-meshing/blob/master/src/mesher.h)
- Culling compute shader generates one indirect draw call for each of the visible faces of the chunk if visible at the chunk level (early back...
Просмотров: 36
Видео
Vulkan Spirv Shader Hot Reloading On File Save
Просмотров 30Месяц назад
As part of my first Vulkan renderer, I decided to improve the shader editing workflow with shader hot reloading with a file watcher. Rather than reloading all shaders with a button press or keybind, the shader file watcher on a separate thread watches for modified shaders, as well as shaders that are included by others by creating a dependency graph. This way, any shader that includes "common.h...
Vulkan Cascaded Shadow Mapping
Просмотров 13Месяц назад
This is an implementation of cascaded shadow mapping in Vulkan 1.3. vkCmdDrawIndexedIndirect is used to batch objects and reduce driver overhead, with a frustum culling compute shader that speeds both culling and draw command generation. Source Code: github.com/tonadr1022/LearnVulkan Chess Asset: github.com/KhronosGroup/glTF-Sample-Assets/tree/main
TCraft Demo #2 - Block/Terrain Editor
Просмотров 735 месяцев назад
TCraft is an in-progress mesh-based voxel engine built using OpenGL 4.6 and C . This unedited, unscripted video showcases a block and terrain editor to easily customize world generation and content, as well as GPU-based frustum culling. Blocks and models can be added during gameplay, and can be integrated into custom biomes and terrain. Source Code: github.com/tonadr1022/TCraft Previous Demo: r...
TCraft Demo #1
Просмотров 895 месяцев назад
TCraft is an in-progress mesh-based voxel engine built using OpenGL 4.6 and C . This demo showcases GPU-driven rendering, using glMultiDrawElementsIndirect, with draw commands being generated in a compute shader. Chunks are 32^3, and the demo runs at over 300 frames per second with a load distance of 56. Frustum culling in the compute shader is the immediate next step, with lighting and other f...
Voxel Engine Demo
Просмотров 257 месяцев назад
Source Code: github.com/tonadr1022/VoxelEngine3D. Voxel Engine written in C and OpenGL using GLFW for windowing, ImGui for UI, and GLM for vector math. This was my first major C project, and you can definitely see how. In the future, I'd like to rewrite this either using rasterization again or raytracing.
CubeChron Rubik's Cube Timer Demo
Просмотров 127 месяцев назад
Timer: www.cubechron.com Source code: github.com/tonadr1022/CubeChron. Build with Next.js, React.js, GraphQL