playform
playform copied to clipboard
Voxel sandbox project in Rust
The octree is a fixed size. Make it expand to fit whatever's inserted.
Think harder about the [vertex placement code](https://github.com/bfops/playform/blob/9d15d6019e8395ad638916e43823fd6e083dcfbc/server/terrain/generate.rs#L80-120). A sphere should look relatively regular.
We'll "lose" smaller details as we load lower LOD voxels, as described in [Procworld's lean trees post](procworld.blogspot.com/2013/08/lean-trees.html). Think about how to keep those details until they're no longer relevant.
We need to be able to generate lower-LOD voxels from higher-LOD ones. It doesn't matter when we're generating the voxels from a field, but it **does** matter once users can...
The server needs to send terrain updates to clients (e.g. for https://github.com/bfops/playform/issues/124 and https://github.com/bfops/playform/issues/67), so each terrain block should have a record of which clients hold it. We also need...
`Aabb3`s with zero as any of their dimensions don't collide with other objects in the octree, since we use strict bounds checking to avoid the case where two adjacent but...
This is being done on the [server branch](https://github.com/bfops/playform/tree/server). - [x] Client and server separation - [x] Client/server threads (452d77d2b3fe91a9081dde6dcc3bea1d7f81b7d5, c09d0091db3592898c78e64106a00dda380fc7dd) - [x] Client/server/common crates (01263feecb43048146b0747b38c048c5d663c892) - [x] Client/server executables (adb2d5ef3d6b3b1a4d8112e885d19d973190f6e4)...