https://jms55.github.io/posts/2024-06-09-virtual-geometry-be...
https://jms55.github.io/posts/2024-11-14-virtual-geometry-be...
https://jms55.github.io/posts/2024-06-09-virtual-geometry-be...
https://jms55.github.io/posts/2024-11-14-virtual-geometry-be...
"The only issue I ran into is that the tangent.w always came out with the wrong sign compared to the existing mikktspace-tangents I had as a reference. I double checked my math and coordinate space handiness a couple of times, but could never figure out what was wrong. I ended up just inverting the sign after calculating the tangent. If anyone knows what I did wrong, please open an issue!"
Keep it up!
Wish you had setup a video recording with metrics to compare over time and then you could just concat them together to show how its been improving over time visually.
I think if I had to spend time recording and putting together videos, I would never get any programming done haha. Putting together the blog posts are pretty taxing as it is.
You can download Bevy https://github.com/bevyengine/bevy, and run `cargo run --release --examples meshlet --features meshlet`. After it compiles you'll get prompted to download a bunny.meshlet_mesh file. Click the link to download and create and place it in the appropriate folder, and then run the example again.
There's also this video from the Bevy 0.14 release notes demonstrating it, but performance/quality has improved a _lot_ since then: https://bevyengine.org/news/bevy-0-14/many_bunnies.mp4
The WASM distribution channel is a huge potential selling point for Bevy. You don't get that with Unreal, and AFAIK, with Godot either. And because it's Rust, you get a way better type system and story around deploying to consumer devices than Three.js.
Please show this stuff off in the browser!
For virtual geometry specifically, it makes use of 64-bit integers and atomics, which are not supported on WebGPU at the moment, only the native Vulkan/DirectX/Metal backends. So unfortunately I can't do a web demo yet.
Hopefully the WebGPU spec will add support for it eventually, I've given my feedback to the spec writers about this :)
----
> The WASM distribution channel is a huge potential selling point for Bevy. You don't get that with Unreal, and AFAIK, with Godot either.
To clarify: if by "WASM distribution channel" you mean "exporting for the Web"--Godot has supported exporting & running projects in a web browser for around a decade[0].
(WASM has been supported since Godot 3.0[a] & is still supported in the current Godot 4.3[b][c]. Even prior to WASM, Godot 2.1 supported export for web via `asm.js`[d].)
Godot even has an editor[e]... :) which also runs in a browser via WASM[f].
That said, yes, you're correct that WASM support in both Bevy & Godot is a selling point--particularly because people often use Game Jams as an opportunity to try out new game engines and as "everybody knows" no-one[i] downloads executables from game jams so you'll get way more people trying your game[j] if they can play it in a web browser.
----
[0] The oldest `platform:web`-related issues tracked date back to 2015.
[a] https://docs.godotengine.org/en/3.0/getting_started/workflow...
[b] https://docs.godotengine.org/en/4.3/tutorials/export/exporti...
[c] The move to the new rendering architecture (OpenGL vs Vulkan vs WebGL) in Godot 4.0 has had an impact on which exact features are supported for web exports over time.
[d] https://docs.godotengine.org/en/2.1/learning/workflow/export...
[e] A light-hearted tongue-in-cheek jab played for cheap laughs with my only defense being that I've used both Godot[g] (since 2018) & Bevy[h] (since 2022) for 2D/3D game jam entries of varying degrees of incompleteness; participated in both communities; and am supportive of both endeavours. :)
[f] https://editor.godotengine.org/releases/4.3.stable/godot.edi...
[g] https://rancidbacon.itch.io/sheet-em-up
[h] https://rancidbacon.itch.io/darkrun
[i] (Rounding down.)
[j] My own most complete & played game jam entry was (unexpectedly) this Incremental/"Clicker Jam" entry inspired by a childhood spent dismantling electronics: https://rancidbacon.itch.io/screwing-around