Increasing access
This makes GPU instancing easier to discover and use without requiring a deep understanding of the underlying rendering pipeline. The goal is to make performant rendering techniques more approachable for artists, educators, students, and beginners.
Most appropriate sub-area of p5.js?
Feature enhancement details
Summary
This issue tracks implementation work for improving the p5.strands instancing API as part of the Microgrant project.
Instancing is a powerful GPU technique for efficiently drawing large numbers of similar objects, but the current API can be difficult for newer users to discover and understand. This project builds on the existing rendering architecture to provide a more approachable and discoverable API surface.
Proposed Direction
let repeater = instances(100);
repeater.sphere(20);
// in a shader
let i = instanceIndex();
Planned Work
Project Context
This issue serves as a tracking thread for ongoing work and related pull requests for the p5.strands instancing API.
References
Increasing access
This makes GPU instancing easier to discover and use without requiring a deep understanding of the underlying rendering pipeline. The goal is to make performant rendering techniques more approachable for artists, educators, students, and beginners.
Most appropriate sub-area of p5.js?
Feature enhancement details
Summary
This issue tracks implementation work for improving the p5.strands instancing API as part of the Microgrant project.
Instancing is a powerful GPU technique for efficiently drawing large numbers of similar objects, but the current API can be difficult for newer users to discover and understand. This project builds on the existing rendering architecture to provide a more approachable and discoverable API surface.
Proposed Direction
Planned Work
instanceIndex()as an alias forinstanceID()instances(count)returning a drawable objectProject Context
This issue serves as a tracking thread for ongoing work and related pull requests for the p5.strands instancing API.
References