P5.js vs three.js!

Hi, I have recently been looking into Javascript libraries for creating 3D graphics and came across these two. three.js is of course the more well-known of the two but I’m still interested in learning their specific differences, quirks, etc. Unfortunately though, I haven’t been able to find anything about this even after some googling of “p5 vs three”. So could anyone here enlighten me on this?

They’re not comparable, they’re apples and oranges, which is why you can’t find a comparison.

ThreeJS is a wrapper around the browser’s native WebGL API. It’s the de facto standard 3D library — there are others, like BabylonJS, but Three is just miles more popular. The native browser APIs are…painful to work with, you can think of ThreeJS kinda like a jQuery for in-browser 3D graphics. Doesn’t give you anything that’s not already there, it just wraps it all into a user-friendly API

P5 is not a 3d graphics library, it’s an API for doing creative coding: things like procedural generation, natural simulations etc. It has some 3D features because it wraps the native WebGL API, but that’s not it’s core purpose. It is a artistic and teaching tool — it is occasionally used in production outside of artistic audio/visual stuff, but not often. It’s basically the JS version of Processing. Similar things are OpenFrameworks and Cinder

1 Like

This was a copy-pasted question created to add a spam link. The user has been suspended.

1 Like

Noooo, after being really careful for the last few weeks, I’ve been had!

anyway, thank you for your answer! Very useful for me.