processing / processing/libprocessing

Implement `Geometry` API Object

Open
#9 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
69
Forks
14
Avg merge
15d 22h
Merged PRs (30d)
3

Description

We need to implement that basis for PShape. Let's steal the name from p5 and call this Geometry. Shape is kind of a weird term. Really, this is vertex data and we typically don't refer to 3d models as "shapes."

In Processing4, Shape contains Phong material info in its vertex layout. We definitely don't want to do this because we want to support materials as a first class API.

Steps:

  • Make it loadable as a Bevy Mesh.
  • Add lifecycle methods.
  • Build APIs for interacting with vertex layout, defining vertex attributes, etc.
  • Add support for modifying CPU side vertex data.
  • Add vertex buffer readback support. This is going to be a bit tricky as Bevy packs multiple meshes into vertex buffer slabs.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files or tests; start by reviewing the Processing PShape reference and Bevy Mesh integration mentioned in the description. The work is done when Geometry loads as a Bevy Mesh and provides lifecycle, vertex-layout, CPU-side data, and vertex-buffer readback APIs.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.