#mesh #procedural #edge #half-edge #bevy-plugin #node #data-structures

bevy_copperfield

Procedural mesh editor, based on Half-Edge-Mesh datastructure

1 unstable release

0.1.0 Oct 17, 2024

#503 in Game dev

Download history 128/week @ 2024-10-14 9/week @ 2024-10-21

137 downloads per month

MIT license

1.5MB
1.5K SLoC

bevy_copperfield is a Bevy plugin for procedural modelling, inspired by Blender's geometry nodes. Currently at its infancy, but bevy_coperfield allows you to create and edit meshes in non-destructive manner.

Example box from Cuboid: Example extruded and chamfered Cuboid

Approach

bevy_copperfield implements a Half-Edge Mesh data-structure which allows us to quickly navigate and edit the mesh, providing methods to extrude, subdivide, and bevel parts of the mesh. The debug eample provides a nice visualization of the internal data-structure implemented, as each drawn edge is a pointer to the next one.

Simple half-edge mesh

Usage

bevy_copperfield is still is its early stages of development, but its key goals is to enable seamless use in Bevy. Upon adding bevy_copperfield to your repository, supported Bevy 3D primitives (currently just Cuboid) will allow you to spawn editable mesh with .procgen(). From there you will be able to chain series of edit nodes to turn primitives into objects you want. See examples for sample use.

Dependencies

~26MB
~485K SLoC