Spector.js
BabylonJS
Spector.js | BabylonJS | |
---|---|---|
5 | 63 | |
1,245 | 22,523 | |
1.2% | 1.2% | |
6.4 | 10.0 | |
13 days ago | 1 day ago | |
TypeScript | TypeScript | |
MIT License | Apache License 2.0 |
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.
Spector.js
-
Show HN: Volume rendering 3D data in Three.js and GLSL
Author of the WebGL volume rendering tutorial [0] you mentioned in the readme here, great work!
Working in WebGL/JS is nice since you can deploy it everywhere, but it can be really hard for graphics programming as you've found because there are very few tools for doing real GPU/graphics debugging for WebGL. The only one I know of is [1], and I've had limited success with it.
WebGPU is a great next step, it provides a modern GPU API (so if you want to learn Metal, DX12, Vulkan, they're more familiar), and modern GPU functionality like storage buffers and compute shaders, not to mention lower overhead and better performance. The WebGPU inspector [2] also looks to provide a GPU profiler/debugger for web that aims to be on par with native options. I just tried it out on a small project I have and it looks really useful. Another benefit of WebGPU is that it maps more clearly to Metal/DX12/Vulkan, so you can use native tools to profile it through Chrome [3].
I think it would be worth learning C++ and a native graphics API, you'll get access to the much more powerful graphics debugging & profiling features provided by native tools (PIX, RenderDoc, Nvidia Nsight, Xcode, etc.) and functionality beyond what even WebGPU exposes.
Personally, I have come "full circle": I started with C++ and OpenGL, then DX12/Vulkan/Metal, then started doing more WebGL/WebGPU and JS/TS to "run everywhere", and now I'm back writing C++ but using WebGL/WebGPU and compiling to WebAssembly to still everywhere (and native for tools).
With WebGPU, you could program in C++ (or Rust) and compile to both native (for access to debuggers and tools), and Wasm (for wide deployment on the web). This is one of the aspects of WebGPU that is most exciting to me. There's a great tutorial on developing WebGPU w/ C++ [4], and a one on using it from JS/TS [5].
[0] https://www.willusher.io/webgl/2019/01/13/volume-rendering-w...
[1] https://spector.babylonjs.com/
[2] https://github.com/brendan-duncan/webgpu_inspector
[3] https://toji.dev/webgpu-profiling/pix
[4] https://eliemichel.github.io/LearnWebGPU/
[5] https://webgpufundamentals.org/
- What's your go to platform for developing with WebGPU?
-
3D website
For debugging, spector.js helps sometimes.
-
How can we know what version of WebGL is running on our browser?
If you want to know what the browser supports, webglreport.com will tell you. If you want to know what a specific page is using, https://spector.babylonjs.com/ can probably tell you. Alternatively, you can go into dev tools, select the canvas in the inspector, and run $0.getContext('webgl2') to see if it's webgl2 or not.
-
How to Inject Javascript to a Site From Chrome Extension
I'm actually not sure. Here is the implementation. The extension can capture single frames of WebGL animations, I think it's something to do with getting the timing of that frame (finding its start and end).
BabylonJS
- Show HN: My wife and I made a maze game
-
Release Radar • March 2024 Edition
It's been around for a while, and we've featured it in the April 2019 and March 2022 Release Radars. It's also been in GitHub Game Bytes and on our latest episode of The Download. Yes, I'm talking about Babylon, the powerful web rendering engine for all kinds of graphics. The newest update includes support for basic Global Illumination, a highly requested feature. Read more about other cool new additions including Gaussian Splatting, Ragdoll physics, Procedural Geometry and all the breaking changes in the Babylon release notes.
- Not only Unity...
- Anime.js – A lightweight JavaScript animation library
-
How do I integrate Motion and Animation into my Projects?
Wow that site is super cool! So I see most of the 3D stuff is using canvas, maybe three.js or babylon.js or possibly pixi.js.
-
Which tools should I use to create my game ?
Sure; I've used [Phaser](https://phaser.io/) before for a game jam like project and I've heard of [PixiJS](https://pixijs.com/) and [Babylon.js](https://www.babylonjs.com/) as options too. I can't really give a good recommendation either way; Phaser was fun to just write TypeScript and see my game, but it felt like a toy compared to Unreal. I'm sure you could really push it to its limits though. You mentioned you know about LibGDX; I don't have experience with it, but it does seem like a viable option.
- Babylon.js: Powerful, Beautiful, Simple, Open - Web-Based 3D At Its Best
-
JavaScript framework for making games. no game engine
I’ve only messed around with it a bit, but https://www.babylonjs.com seems impressive
- Faster LZ is not the answer to 150-250 GB video game downloads
- Babylon.js 6.0
What are some alternatives?
polygonjs - node-based WebGL design tool
three.js - JavaScript 3D Library.
redcube - JS renderer based on GLTF to WebGPU or WebGL backends.
react-three-fiber - 🇨🇠A React renderer for Three.js
TimeChart - An chart library specialized for large-scale time-series data, built on WebGL.
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]
threeify - A Typescript 3D library loosely based on three.js
p5.js - p5.js is a client-side JS platform that empowers artists, designers, students, and anyone to learn to code and express themselves creatively on the web. It is based on the core principles of Processing. http://twitter.com/p5xjs —
streets-gl - 🗺 OpenStreetMap 3D renderer powered by WebGL2
model-viewer - Easily display interactive 3D models on the web and in AR!
mach-gpu-dawn - Google's Dawn WebGPU implementation, cross-compiled with Zig into a single static library
A-Frame - :a: Web framework for building virtual reality experiences.