David

1.7K posts

David banner
David

David

@DavidW_81

Software engineer specialized in 3D graphics, games, and voxels.

Katılım Ekim 2012
0 Takip Edilen560 Takipçiler
Sabitlenmiş Tweet
David
David@DavidW_81·
I finally put Cubiquity 2 (my experimental micro-voxel engine) on GitHub! It consists of a small number of zero-dependency C++ files released into the public domain. It's an early version and not yet ready for use, but I hope it is of interest: github.com/DavidWilliams8…
David tweet mediaDavid tweet mediaDavid tweet mediaDavid tweet media
English
6
29
111
0
David
David@DavidW_81·
@procfxgen @ephtracy There is indeed a limit of 256^3 per model, but you can place multiple models in a scene (each with their own transform). I use this to create a voxel chunking system. With this in place, I think the MagicaVoxel size limit is then 2000x2000x1000.
English
0
0
2
83
David
David@DavidW_81·
@quaternius Each object in MagicaVoxel has a size limit of 256 voxels, but next I'll be combining multiple objects to export larger scenes.
English
0
0
0
81
David
David@DavidW_81·
@miketuritzin Thanks, I do recall skim-reading that paper at some point... I might go back and have another look.
English
0
0
1
16
Mike Turitzin
Mike Turitzin@miketuritzin·
@DavidW_81 Hmm, glancing at the paper again I think it may have been the [KRB∗16] reference I was thinking of, but not 100% sure.
English
2
0
0
16
Mike Turitzin
Mike Turitzin@miketuritzin·
Enjoyed reading this paper, which is one of the few I've found that covers the topic of dynamic updates to sparse voxel octrees. (In this case, specifically sparse voxel DAGs, which are essentially deduped octrees.) github.com/Phyronnaz/Hash… 1/
Mike Turitzin tweet media
English
1
15
117
7.5K
David
David@DavidW_81·
@miketuritzin Hi Mike, which other paper does the idea come from? Section 3.1 only references "Kämpe et al. [KSA13]" (the original sparse voxel DAG paper), which doesn't cover dynamic updates. I'd assumed this section was a novel contribution but would be interested if it's covered elsewhere.
English
1
0
0
24
Mike Turitzin
Mike Turitzin@miketuritzin·
The basic idea for the dynamic updates is to create a new tree root that reuses all unchanged subtrees from the previous tree. This means nodes are never modified, only created. (As the paper notes, this idea comes from another paper.) 2/
English
2
0
1
573
David
David@DavidW_81·
The pen in this picture helps show the scale of the voxels (they are about 4mm across). That means about 10 billion voxels, compressed down to only 5Mb!
David tweet media
English
0
0
0
54
David
David@DavidW_81·
The building is mostly finished so I'm now starting to populate it with models from @thebasemesh There's about 300 meshes in the scene, each one gets voxelised to a separate volume which then get combined.
David tweet media
English
1
0
0
59
David
David@DavidW_81·
More work on the warehouse scene which I'm using as a test for the voxeliser in the Cubiquity voxel engine. #GameDev #Voxels #VoxelArt
David tweet media
English
1
0
1
101
David
David@DavidW_81·
More work on voxelisation in Cubiquity. I'm making this test scene in Blender and voxelising at 4mm per voxel. The resulting Sparse Voxel DAG takes only 500kb on disk! More information in the Reddit post here: reddit.com/r/VoxelGameDev… #gamedev #voxels
David tweet mediaDavid tweet mediaDavid tweet media
English
0
1
2
124
David
David@DavidW_81·
The algorithm is robust against cracks, etc, and gives a proper solid (filled) voxelisation. It can also handle multiple objects per scene and multiple materials (not shown). The current version is slow but I think a GPU implementation should be significantly faster.
David tweet media
English
1
0
0
28
David
David@DavidW_81·
I don't post much on Twitter these days but I'm still working on Cubiquity. I've been improving the mesh voxeliser recently. This test model is 2.5m triangles voxelised to 22 billion voxels, and takes only 20Mb of memory as an SVDAG (6Mb on disk).
David tweet media
English
1
0
1
41
Tavis Ormandy
Tavis Ormandy@taviso·
Hah, reviewing commits I notice that Jia Tan cannot spell the word "guarantee" correctly -- he misspelled it multiple times in commit messages. How can I grep every repo in github for the same spelling error? 😂
Tavis Ormandy tweet media
English
83
122
1.7K
270.7K
David
David@DavidW_81·
@PolaronEngine Hi, I'm happy to answer questions over Twitter but unfortunately that's all. I have too many other commitments so I'm not available for collaboration, etc.
English
1
0
0
5
Chilton Webb
Chilton Webb@WebbChilton·
@DavidW_81 Any chance this is available for people to use yet? :) pleeeeease?
English
1
0
0
1
David
David@DavidW_81·
Hey everyone, I've recently been very quiet regarding the next version of the #Cubiquity voxel engine. Unfortunately I don't get as much spare time as I used to, but it *is* moving forward...
English
1
3
16
0
David
David@DavidW_81·
@bjornornorn Hi Björn, thanks for this! I notice the conversion functions in this post are MIT licensed while the Oklab ones were also public domain. I assume this was a deliberate decision (which is fine, of course)? I only ask because my own work is public domain, so I can't embed MIT code.
English
0
0
0
43
𝖒𝖒𝖆𝖑𝖊𝖝
𝖒𝖒𝖆𝖑𝖊𝖝@mmalex·
i think this by @BrianKaris is my favourite talk of all time. must watch. his answer in q&a about average triangle size being higher than he thought (4 pixel edge ish) reminded me of a long forgotten sw rasteriser someone at bullfrog wrote in the 386 era! (around dungeon keeper..
High-Perf Graphics@HPG_Conf

At the #HPG2022 in-person event, @BrianKaris presented his Journey to Nanite. He talked about the process of inventing the groundbreaking geometry engine in UE5, highlighting the perseverance, confidence, and fear that comes with research. Watch it here: youtube.com/watch?v=NRnj_l…

English
8
31
306
0