PixiJS
box2d-wasm
Our great sponsors
PixiJS | box2d-wasm | |
---|---|---|
116 | 7 | |
42,496 | 243 | |
1.2% | - | |
9.9 | 0.0 | |
13 days ago | almost 2 years ago | |
TypeScript | TypeScript | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
PixiJS
-
Release Radar • March 2024 Edition
If you're into video game dev, then PixiJS is something you need to know about. It's a HTML5 game engine that provides a lightweight 2D library across all devices. This latest update has a new package structure, custom builds, graphics API overhaul, and lots more. You can read about all these changes in the PixiJS Migration Guide. Also big congrats to PixiJS for being part of the open source community for ten years now! 😮.
- Ask HN: Tips to get started on my own server
-
JavaScript Libraries That You Should Know
6. Pixi.js
- JSON Canvas – An open file format for infinite canvas data
-
A Visual Interactive Guide to Bloom Filters
https://pixijs.com/ and https://gsap.com/. All of the source code for my posts can be found at https://github.com/samwho/visualisations :)
-
My thought on different engines
For full web games (yeah, I come from the web, so I try to make my family proud), I will recommend PixiJS. It has great support for TypeScript and works very well with Vite. It's lighter than other game engines, so it's better for web games. But you will need to do a lot of things by yourself.
-
Not only Unity...
PixiJS (MIT/TypeScript) https://github.com/pixijs/pixijs
-
Rebuilding Isometric World
That approach works well for what I was trying to archive but I am planning on adding more functionality into the website. Hence in this article, let me rebuild the project using Pixi.js and it’s React binding, React Pixi.
-
Ask HN: Possible to make a game engine in the browser?
https://openarena.live/
There's also a bunch of Javascript game engines: https://github.com/collections/javascript-game-engines
Of those, BabylonJS seems pretty powerful for 3D: https://www.babylonjs.com/games/
Or PixiJS for 2D: https://pixijs.com/
-
Consider web technologies for game development
https://pixijs.com/ is more of a 2D rendering framework, but powerful and very fast
box2d-wasm
-
Article reply “Godot is not the new Unity” from Juan Linietsky (BDFL of Godot)
https://github.com/Birch-san/box2d-wasm.) Godot uses box2d, too, so that would be convenient, if I switch to godot, but only if it is worth the performance improvement, which it currently does not seem to be. Maybe next year.
-
WebGPU – All of the cores, none of the canvas
Following the article, you build a simple 2D physic simulation (only for balls). Did by chance anyone expand on that to include boxes, or know of a different approach to build a physic engine in WebGPU?
I experiemented a bit with it and imolemented raycasting, but it is really not trivial getting the data in and out. (Limiting it to boxes and circles would satisfy my use case and seems doable, but getting polygons would be very hard, as then you have a dynamic size of their edges to account for and that gives me headache)
3D physic engine on the GPU would be the obvious dream goal to get maximum performance, but that is really not an easy thing to do.
Right now I am using a Box2D for wasm and it has good performance, but it could be better.
https://github.com/Birch-san/box2d-wasm
The main problem with all this is the overhead of getting data into the gpu and back. Once it is on the gpu it is amazingly fast. But the back and forth can really make your framerates drop - so to make it worth it, most of the simulation data has to remain on the gpu and you only put small chanks of data that have changed in and out. And ideally render it all on the gpu in the next step.
(The performance bottleneck of this simulation is exactly that, it gets simulated on the gpu, then retrieved and drawn with the normal canvasAPI which is slow)
-
Running JS physics in a webworker - part 1 - proof of concept
box2dwasm - an old, still maintained C++ library compiled to WASM. The documentation is lacking and developer experience seems poor.
-
Show HN: WASM and WebGL Fluid Simulation
network inspector says 2.1MB. but that's dominated by a 1.3MB image.
the main assets of the library are:
- Box2D.simd.js (422kB)
- Box2D.simd.wasm (266 kB)
a minimal demo that uses the library can be created in just a few kB:
https://github.com/Birch-san/box2d-wasm/tree/master/demo/mod...
-
[AskJS] How could I implement realistic fluids simulations (SPH?) in my video game?
A couple weeks ago I ported liquidfun to TypeScript + WebAssembly: https://github.com/Birch-san/box2d-wasm/releases/tag/v4.0.0-liquidfun.0
What are some alternatives?
Konva - Konva.js is an HTML5 Canvas JavaScript framework that extends the 2d context by enabling canvas interactivity for desktop and mobile applications.
rapier - 2D and 3D physics engines focused on performance.
Phaser - Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering. [Moved to: https://github.com/phaserjs/phaser]
box2d.ts - Full blown Box2D Ecosystem for the web, written in TypeScript
react-canvas - High performance <canvas> rendering for React components
LiquidFun - 2D physics engine for games
A-Frame - :a: Web framework for building virtual reality experiences.
Box2D - Box2D is a 2D physics engine for games
Leaflet.PixiOverlay - Bring Pixi.js power to Leaflet maps
comlink - Comlink makes WebWorkers enjoyable.
cocos2d-html5 - Cocos2d for Web Browsers. Built using JavaScript.
vite - Next generation frontend tooling. It's fast!