Releases: processing/p5.js
v2.2.1-rc.0
What's Changed
The upcoming patch focuses on bugfixes and documentation, particularly on WebGPU and strands. This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel!
To test this patch, you can load both p5.js and WebGPU mode by adding these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.1-rc.0/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.1-rc.0/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Read more about how it works and where we plan on taking it here!
What's Changed 🎊
- Fix rotation transformations outside of push/pop applying to main canvas in WebGPU by @davepagurek in #8423
- Make sure getTexture works in vertex shaders by @davepagurek in #8424
- Performance improvements for colors by @davepagurek in #8355
- fix textToModel regression for space characters by @skyash-dev in #8429
- add unit tests for HSB color space by @Piyushrathoree in #8376
- Experiment: flatter strands API by @davepagurek in #8314
- Auto return shader hooks by @vietnguyen2358 in #8384
- Fix
noiseDetail()in p5.js 2.x so that thefalloffparameter defaults to0.5when omitted. by @shuklaaryan367-byte in #8417 - Normalize strands noise output range to match JS noise() by @rakesh2OO5 in #8430
- fix createColorPicker ignores initial colour arg on chrome by @Piyushrathoree in #8363
- Add WebGL visual regression tests for transform functions by @aashu2006 in #8465
- Fix gifs in WebGL mode by @davepagurek in #8472
- feat(webgl): add global property support for p5.strands by @avinxshKD in #8211
- Webgpu perf updates by @davepagurek in #8480
New Contributors
- @vietnguyen2358 made their first contribution in #8384
- @shuklaaryan367-byte made their first contribution in #8417
- @rakesh2OO5 made their first contribution in #8430
- @aashu2006 made their first contribution in #8465
- @avinxshKD made their first contribution in #8211
Full Changelog: v2.2.0...v2.2.1-rc.0
v2.2.0
2.2: WebGPU and bugfixes
The 2.2 minor release contains work on WebGPU rendering that has been going on over the past year! WebGPU mode is included in a core add-on now. This release also contains a number of improvements in documentation and p5.strands bugfixes.
To load both p5.js and WebGPU mode, add these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Read more about how it works and where we plan on taking it here!
You're also welcome to come by the Discord #webgpu channel 🌱
What's Changed 🎊
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332 - Add WebGPU built files to npm releases by @davepagurek in #8338
- Make sure bytes are aligned in p5.Geometry by @davepagurek in #8340
- Fix WebGPU buffer memory leaks by @davepagurek in #8342
- Fix JSDoc return type for p5.Vector.cross (2.0) by @Geethegreat in #8346
- Add support for instanceID() in WebGPU mode by @davepagurek in #8348
- Fix WebGPU filters in CDN builds using duck typing for nodes (closes … by @Piyushrathoree in #8349
- Fix Camera.slerp for ortho by cloning projMatrix into uPMatrix when active by @nakednous in #8351
- fixed the issue with alpha blending - fixing blur remaining by @Piyushrathoree in #8354
- Support background(image) in WEBGL Renderer3D by @reshma045 in #8352
- Fix LogicalExpression (&&, ||) handling in p5.strands by @Aayushdev18 in #8359
- Fix p5.strands filters not working on minified code by @davepagurek in #8367
- More fixes for minified filters by @davepagurek in #8372
- Fix transforms in clip() by using shape system for primitives using manual method by @VANSH3104 in #8236
- Make sure text binds an index buffer by @davepagurek in #8393
- Fix font measurement with font families containing special characters by @davepagurek in #8391
- Fix for strands branching by @davepagurek in #8394
- Fix assignments to properties of
inputsin branches in p5.strands by @davepagurek in #8397 - Fix set() to support p5.Graphics objects by @VANSH3104 in #8326
- Fix type for shuffle() and add type test. by @nbogie in #8410
- Fix p5.strands parsing of named function callbacks by @davepagurek in #8414
New Contributors
- @tychedelia made their first contribution in #8023
- @Piyushrathoree made their first contribution in #8349
- @Aayushdev18 made their first contribution in #8359
Full Changelog: v2.1.2...v2.2.0
v2.2.0-rc.6
Help test the release candidate
The 2.2 proposed minor release contains the ongoing work on WebGPU rendering! This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel! This RC also contains bugfixes in p5.js, including in p5.strands.
Testing WebGPU mode
WebGPU mode is included in a core add-on now. To load both p5.js and WebGPU mode, add these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.6/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.6/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Or, feel free to duplicate this project on the p5.js web editor: https://editor.p5js.org/ksen0/sketches/Ger2euN_J
Read more about how it works and where we plan on taking it here: https://github.com/processing/p5.js/blob/dev-2.0/contributor_docs/webgpu.md
What's Changed
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332 - Add WebGPU built files to npm releases by @davepagurek in #8338
- Make sure bytes are aligned in p5.Geometry by @davepagurek in #8340
- Fix WebGPU buffer memory leaks by @davepagurek in #8342
- Fix JSDoc return type for p5.Vector.cross (2.0) by @Geethegreat in #8346
- Add support for instanceID() in WebGPU mode by @davepagurek in #8348
- Fix WebGPU filters in CDN builds using duck typing for nodes (closes … by @Piyushrathoree in #8349
- Fix Camera.slerp for ortho by cloning projMatrix into uPMatrix when active by @nakednous in #8351
- fixed the issue with alpha blending - fixing blur remaining by @Piyushrathoree in #8354
- Support background(image) in WEBGL Renderer3D by @reshma045 in #8352
- Fix LogicalExpression (&&, ||) handling in p5.strands by @Aayushdev18 in #8359
- Fix p5.strands filters not working on minified code by @davepagurek in #8367
- More fixes for minified filters by @davepagurek in #8372
- Fix transforms in clip() by using shape system for primitives using manual method by @VANSH3104 in #8236
- Make sure text binds an index buffer by @davepagurek in #8393
- Fix font measurement with font families containing special characters by @davepagurek in #8391
- Fix for strands branching by @davepagurek in #8394
- Fix assignments to properties of
inputsin branches in p5.strands by @davepagurek in #8397 - Fix set() to support p5.Graphics objects by @VANSH3104 in #8326
- Fix type for shuffle() and add type test. by @nbogie in #8410
- Fix p5.strands parsing of named function callbacks by @davepagurek in #8414
New Contributors
- @tychedelia made their first contribution in #8023
- @Piyushrathoree made their first contribution in #8349
- @Aayushdev18 made their first contribution in #8359
Full Changelog: v2.1.2...v2.2.0-rc.6
What's Changed
What's Changed 🎊
- Fix assignments to properties of
inputsin branches in p5.strands by @davepagurek in #8397 - Fix set() to support p5.Graphics objects by @VANSH3104 in #8326
- Fix type for shuffle() and add type test. by @nbogie in #8410
- Fix p5.strands parsing of named function callbacks by @davepagurek in #8414
Full Changelog: v2.2.0-rc.5...v2.2.0-rc.6
v1.11.12-rc.0
How to test
Please report any issues you find with this release candidate before it goes live as the next version of 1.x! To help test, you can use the downloads below. In the p5.js Editor, you can upload p5.min.js and use it in the index.html page.
What's Changed
Since 1.11.11, the updates have been documentation and bugfixes.
What's Changed 🎊
- Update CONTRIBUTING.md links and add Discord invitation by @RishiAhuja in #8190
- Docs: fix typos and anchors by @nivanovvv in #8216
- docs: add nivanovvv as a contributor for doc by @allcontributors[bot] in #8217
- Add
AGENTS.mdby @SableRaf in #8194 - Add title to CONTRIBUTORS.md by @davepagurek in #8233
- docs: add nbogie as a contributor for bug, and code by @allcontributors[bot] in #8234
- docs: add SoundOfScooting as a contributor for code, and doc by @allcontributors[bot] in #8242
- Improve Accessibility Guidance for
describe()Usage (#8101) by @ksen0 in #8247 - docs: add VANSH3104 as a contributor for code by @allcontributors[bot] in #8258
- docs: add menacingly-coded as a contributor for doc by @allcontributors[bot] in #8292
- docs: add Homaid as a contributor for doc by @allcontributors[bot] in #8298
- Fix zh-Hans reference link by @nivanovvv in #8275
- docs: add Itsrajsk as a contributor for code by @allcontributors[bot] in #8306
- Updated point() examples for visible points in main branch. by @menacingly-coded in #8305
- fix: background(image) support in WEBGL by @reshma045 in #8333
- Fix JSDoc return type for p5.Vector.cross by @Geethegreat in #8336
- docs: add Geethegreat as a contributor for code by @allcontributors[bot] in #8347
- docs: add Piyushrathoree as a contributor for code by @allcontributors[bot] in #8350
- docs: add Aayushdev18 as a contributor for code by @allcontributors[bot] in #8362
- WebGL: Apply per‑vertex stroke color to POINTS by @yugalkaushik in #8380
- Docs/fix broken links by @skyash-dev in #8399
- docs: add rakesh2OO5 as a contributor for code by @allcontributors[bot] in #8403
New Contributors
- @RishiAhuja made their first contribution in #8190
- @nivanovvv made their first contribution in #8216
- @yugalkaushik made their first contribution in #8380
- @skyash-dev made their first contribution in #8399
Full Changelog: v1.11.11...v1.11.12-rc.0
v2.2.0-rc.5
Help test the release candidate
The 2.2 proposed minor release contains the ongoing work on WebGPU rendering! This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel! This RC also contains bugfixes in p5.js, including in p5.strands.
Testing WebGPU mode
WebGPU mode is included in a core add-on now. To load both p5.js and WebGPU mode, add these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.5/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.5/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Or, feel free to duplicate this project on the p5.js web editor: https://editor.p5js.org/ksen0/sketches/Ger2euN_J
Read more about how it works and where we plan on taking it here: https://github.com/processing/p5.js/blob/dev-2.0/contributor_docs/webgpu.md
What's Changed 🎊
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332 - Add WebGPU built files to npm releases by @davepagurek in #8338
- Make sure bytes are aligned in p5.Geometry by @davepagurek in #8340
- Fix WebGPU buffer memory leaks by @davepagurek in #8342
- Fix JSDoc return type for p5.Vector.cross (2.0) by @Geethegreat in #8346
- Add support for instanceID() in WebGPU mode by @davepagurek in #8348
- Fix WebGPU filters in CDN builds using duck typing for nodes (closes … by @Piyushrathoree in #8349
- Fix Camera.slerp for ortho by cloning projMatrix into uPMatrix when active by @nakednous in #8351
- fixed the issue with alpha blending - fixing blur remaining by @Piyushrathoree in #8354
- Support background(image) in WEBGL Renderer3D by @reshma045 in #8352
- Fix LogicalExpression (&&, ||) handling in p5.strands by @Aayushdev18 in #8359
- Fix p5.strands filters not working on minified code by @davepagurek in #8367
- More fixes for minified filters by @davepagurek in #8372
- Fix transforms in clip() by using shape system for primitives using manual method by @VANSH3104 in #8236
- Make sure text binds an index buffer by @davepagurek in #8393
- Fix font measurement with font families containing special characters by @davepagurek in #8391
- Fix for strands branching by @davepagurek in #8394
New Contributors
- @tychedelia made their first contribution in #8023
- @Piyushrathoree made their first contribution in #8349
- @Aayushdev18 made their first contribution in #8359
Full Changelog: v2.1.2...v2.2.0-rc.5
v2.2.0-rc.4
Help test the release candidate
The 2.2 proposed minor release contains the ongoing work on WebGPU rendering! This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel!
Testing WebGPU mode
WebGPU mode is included in a core add-on now. To load both p5.js and WebGPU mode, add these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.4/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.4/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Or, feel free to duplicate this project on the p5.js web editor: https://editor.p5js.org/ksen0/sketches/Ger2euN_J
Read more about how it works and where we plan on taking it here: https://github.com/processing/p5.js/blob/dev-2.0/contributor_docs/webgpu.md
What's Changed 🎊
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332 - Add WebGPU built files to npm releases by @davepagurek in #8338
- Make sure bytes are aligned in p5.Geometry by @davepagurek in #8340
- Fix WebGPU buffer memory leaks by @davepagurek in #8342
- Fix JSDoc return type for p5.Vector.cross (2.0) by @Geethegreat in #8346
- Add support for instanceID() in WebGPU mode by @davepagurek in #8348
- Fix WebGPU filters in CDN builds using duck typing for nodes (closes … by @Piyushrathoree in #8349
- Fix Camera.slerp for ortho by cloning projMatrix into uPMatrix when active by @nakednous in #8351
- fixed the issue with alpha blending - fixing blur remaining by @Piyushrathoree in #8354
- Support background(image) in WEBGL Renderer3D by @reshma045 in #8352
- Fix LogicalExpression (&&, ||) handling in p5.strands by @Aayushdev18 in #8359
- Fix p5.strands filters not working on minified code by @davepagurek in #8367
- More fixes for minified filters by @davepagurek in #8372
New Contributors
- @tychedelia made their first contribution in #8023
- @Piyushrathoree made their first contribution in #8349
- @Aayushdev18 made their first contribution in #8359
Full Changelog: v2.1.2...v2.2.0-rc.4
v2.2.0-rc.3
Help test the release candidate
The 2.2 proposed minor release contains the ongoing work on WebGPU rendering! This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel!
Testing WebGPU mode
WebGPU mode is included in a core add-on now. To load both p5.js and WebGPU mode, add these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.3/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.3/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Or, feel free to duplicate this project on the p5.js web editor: https://editor.p5js.org/ksen0/sketches/Ger2euN_J
Read more about how it works and where we plan on taking it here: https://github.com/processing/p5.js/blob/dev-2.0/contributor_docs/webgpu.md
What's Changed 🎊
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332 - Add WebGPU built files to npm releases by @davepagurek in #8338
- Make sure bytes are aligned in p5.Geometry by @davepagurek in #8340
- Fix WebGPU buffer memory leaks by @davepagurek in #8342
- Fix JSDoc return type for p5.Vector.cross (2.0) by @Geethegreat in #8346
- Add support for instanceID() in WebGPU mode by @davepagurek in #8348
- Fix WebGPU filters in CDN builds using duck typing for nodes (closes … by @Piyushrathoree in #8349
- Fix Camera.slerp for ortho by cloning projMatrix into uPMatrix when active by @nakednous in #8351
- fixed the issue with alpha blending - fixing blur remaining by @Piyushrathoree in #8354
New Contributors
- @tychedelia made their first contribution in #8023
- @Piyushrathoree made their first contribution in #8349
Full Changelog: v2.1.2...v2.2.0-rc.3
v2.2.0-rc.2
Help test the release candidate
The 2.2 proposed minor release contains the ongoing work on WebGPU rendering! This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel!
Testing WebGPU mode
WebGPU mode is included in a core add-on now. To load both p5.js and WebGPU mode, add these two script tags to your sketch:
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.2/lib/p5.js"></script>
<script src="https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.2/lib/p5.webgpu.js"></script>Then load WebGPU mode in createCanvas:
async function setup() {
await createCanvas(400, 400, WEBGPU);
}Or, feel free to duplicate this project on the p5.js web editor: https://editor.p5js.org/davepagurek/sketches/bmEYKK2aw
Read more about how it works and where we plan on taking it here: https://github.com/processing/p5.js/blob/dev-2.0/contributor_docs/webgpu.md
What's Changed
What's Changed 🎊
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332 - Add WebGPU built files to npm releases by @davepagurek in #8338
New Contributors
- @tychedelia made their first contribution in #8023
Full Changelog: v2.1.2...v2.2.0-rc.2
v2.2.0-rc.1
Help test the release candidate
- Use this link to load the library: https://cdn.jsdelivr.net/npm/p5@2.2.0-rc.1/lib/p5.js
The 2.2 proposed minor release contains the ongoing work on WebGPU rendering! This is a release candidate (RC), which means it is not yet live on the p5.js Editor. Please help us to improve the stability of the newest version of p5.js by trying out this release candidate, and reporting bugs. You can also share your thoughts or get involved on Discord in the #webpgu channel!
What's Changed 🎊
- Ported the stroke shader to WebGPU renderer by @lukeplowden in #7915
- Framebuffer support on WebGPU renderer by @davepagurek in #8008
- webgpu ci test by @tychedelia in #8023
- Add WIP WebGPU mode by @davepagurek in #8179
- Update release action to omit WebGPU tests, add TS tests by @davepagurek in #8337
- FES parameter validation decoration use
.apply()for faster function invocation by @limzykenneth in #8332
New Contributors
- @tychedelia made their first contribution in #8023
Full Changelog: v2.1.2...v2.2.0-rc.1
v2.1.2
What's Changed
Use this link to load the library: https://cdn.jsdelivr.net/npm/p5@2.1.2/lib/p5.js
This patch includes documentation updates, bugfixes, and improvements on the experimental p5.strands feature.
What's Changed 🎊
- Add fallback for property tags that don't fully parse by @davepagurek in #8257
- Fix textToModel face normals for extruded text by @VANSH3104 in #8091
- Fix string quotes in font loading example by @dhowe in #8279
- Updated point() examples for visible points. by @menacingly-coded in #8291
- Add fallback for HTTP HEAD requests by @davepagurek in #8270
- Improve splineProperties() documentation by @Homaid in #8265
- Fix to#7984 by @dhowe in #8014
- Makes sure p5.strands cleans up after an error by @davepagurek in #8301
- Fix usage of int() typecast in p5.strands by @davepagurek in #8254
- Text alignment fixes by @davepagurek in #8317
- Update Spanish steward guidelines for p5.js 2.x by @marioguzzzman in #8310
- Update Spanish steward guidelines for p5.js 2.0 (remove Grunt referen… by @marioguzzzman in #8308
- Better visual centering of text by @davepagurek in #8320
- Make sure camera methods on framebuffers work with push/pop by @davepagurek in #8322
- Fixes 8323 by @dhowe in #8324
- Add noiseDetail() support for p5.strands by @hxrshxz in #8163
New Contributors
- @Homaid made their first contribution in #8265
- @marioguzzzman made their first contribution in #8310
Full Changelog: v2.1.1...v2.1.2