Grappling Hooks, Marching Cubes, and alphas
2024-11-04
Bevy's 0.15 release candidate process is well under way, which means fewer major features making it in as the release candidates stabilize and the official release gets closer.
In the meantime we've got grappling hooks, marching cubes implementations, and game jam games to cover.
We also see the alpha period start for Untold Dawn, a roleplay required text-based multiplayer game.
Showcase
Bevy work from the #showcase channel in Discord and around the internet. Use hashtag #bevyengine.
WASABI-16
showcase
WASABI-16 now runs on the web and includes a debug view that visualizes "draw calls" in real time.
Do you like cats?
showcase
An implementation asking questions of the user using bevy_asky. In this case, whether the user likes cats.
Noumenal
showcase
This is Noumenal, a 3D solid modeling app, running on an iPhone using Facet (CSG), Impulse Drive (physics), and others in a reusable set of plugins. It is using vanilla Bevy 0.14.
bevy_copperfield uv-unwrapping
showcase
bevy_copperfield is a Bevy plugin for procedural modeling and now supports automatic uv-unwrapping.
The paper Least Squares Conformal Maps for Automatic Texture Atlas Generation was used in the implementation.
GTR
showcase
GTR is this developer's first game. It includes implementations for player control, enemy interactions, and score tracking.
Molecular Explorer
showcase
A live on-the-web version of the molecular explorer we've featured in previous issues.
The source is also available in a GitHub repo.
visibility graph pathfinding
showcase
An implementation of visibility graph pathfinding using an algorithm called a "supercover".
Dungeon Generator MVP
showcase
An MVP dungeon generator using Eller's algorithm. The algorithm will be expanded to carve out rooms and Prim's algorithm might be an alternative in the future.
Crates
New releases to crates.io and substantial updates to existing projects
tiny_bail v0.4
crate_release
tiny_bail is a set of convenience macros for logging or discarding errors (instead of returning them with ? or panicking with unwrap).
Voxy v0.2.0-alpha.1
crate_release
A voxel engine for Bevy now with support for named scene models from MagicaVoxel
cargo-sweep v2
crate_release
cargo-sweep is used in Github Actions to prevent cached target directories from snowballing in size and while not directly bevy-related, is used by the ecosystem including in Leafwing-Studios/cargo-cache.
Devlogs
vlog style updates from long-term projects
Untold Dawn
devlog
Untold Dawn, a roleplay required text-based multiplayer game written with Bevy's ECS, is going to open its door for alpha on November 5th. A two-week pre-alpha period just ended. The game has seen a couple of hundreds accounts created, with a few persistent connected players, and has seen very low CPU usage
Educational
Tutorials, deep dives, and other information on developing Bevy applications, games, and plugins
Bevy 0.14 to 0.15 cheatsheet
educational
A cheatsheet built from the author's experience migrating their own applications from Bevy 0.14 to Bevy 0.15's new release candidates.
Undeprecate is_playing_animation authored by mgi388
Move `ContentSize` requirements from `Node` to the widget defining components authored by ickshonpe
Layout rounding debug example authored by ickshonpe
Move `UiImage` from `ui_node` to the `widget::image` module authored by ickshonpe
Adding alpha_threshold to OrderIndependentTransparencySettings for user-level optimization authored by hexroll
Cosmetic tweaks to `query_gltf_primitives` authored by rparrett
Emit picking event streams authored by NthTensor
Mesh picking fixes authored by aevyrie
More `#[doc(fake_variadic)]` goodness authored by bash
`ReflectBundle::remove` improvement authored by BenjaminBrienen
Update notify-debouncer-full requirement from 0.3.1 to 0.4.0 authored by mnmaita
Require `ContentSize` on `UiImage` again authored by ickshonpe
Remove custom rounding authored by ickshonpe
Fix linux nvidia + xwayland freeze at startup authored by eero-lehtinen
Fix AsBindGroupError display for InvalidSamplerType authored by Henauxg
fix: removed WinitPlugin from headless_renderer example authored by cxreiff
Reduce compile time of bevy_ptr::OwnedPtr::make function authored by clarfonthey
Rename `ComputedNode::calculated_size` to `size` authored by ickshonpe
Make some associated functions of `Color` const authored by mamekoro
Constify `ComputedNode` authored by ickshonpe
Fix pointer constructor order authored by NthTensor
Remove the `Globals` binding from the box shadow shader authored by ickshonpe
Improve `SubApp` documentation example authored by BenjaminBrienen
Add `button_just_down` and `button_just_up` methods to `PointerInput` authored by NthTensor
Picking example touchups authored by aevyrie
Fix and improve MSAA documentation authored by Jondolf
Fix typo in bevy_ecs authored by JusSchw
Mesh::merge: count_vertices instead of initializing positions authored by stepancheg
Indices::extend authored by stepancheg
Support prefers_home_indicator_hidden authored by Soulghost
Remove the invalid system ordering in the animation example. authored by chendaohan
Derive same attributes as MainEntity for RenderEntity authored by Vrixyz
simplify example, replace get_single to Single Query authored by foxzool
Correctly feature gate `custom_cursor` authored by Friz64
Want to contribute to Bevy?
Here you can find two types of potential contribution: Pull Requests that might need review and Issues that might need to be worked on.
Pull Requests Opened this week
Fix resizing window in example crashes authored by BenjaminBrienen
Entity cloning authored by eugineerd
Add argument to ci for test threads and build jobs authored by BenjaminBrienen
`OnMutate` Observers/`on_mutate` Hooks authored by grace125
Make `BinnedRenderPhase` fields for accessing batchable and unbatchable entities public authored by BenjaminBrienen
Lifetime code style consistency in `impl`s and other easy grabs authored by BenjaminBrienen
Expanded `ui` example authored by ickshonpe
Fix blending for CameraOutputMode::Skip authored by chronicl
Move `all_tuples` to a new crate authored by BenjaminBrienen
Add tests and remove sources of panics in mesh picking authored by tbillington
Make doc CI use nightly authored by BenjaminBrienen
Don't reëxport `bevy_image` from `bevy_render` authored by BenjaminBrienen
Fixed comments in async_compute example to reflect #10400 changes authored by gramsey
enable_state_scoped_entities() as a derive attribute authored by mockersf
UI anti-aliasing fix authored by ickshonpe
move mesh uniform construction out of Core3d authored by robtfm
mutate observer authored by pyhinox
Use `stack_z_offsets` in all the cases we create a `TransparentUi` authored by doup
bevy_image: PCX image support (off by default) authored by lupine
Adding `ScheduleGraph::contains_set` authored by urben1680
Suggestions refactoring authored by sharma-shray
Share implementation of sort methods. authored by chescock
Fix WGSL formatting inconsistency on mesh_view_binding authored by jatimix
Disable lint that interferes with rust beta CI compatibility authored by BenjaminBrienen
BRP System Ordering authored by mnmaita
Add EntityMut::get_mut_by_id_unchecked authored by Soulghost
Implement `Measured2d` for `Arc2d`-based primitives. authored by lynn-lumen
Improved the global transform api to access rotation and scale authored by Sigma-dev
Allow components to be "explicitly required". authored by andriyDev
Issues Opened this week
Randomly sprite does not render and systems do not function authored by Frost2779
Improve Picking Query Expressiveness authored by aevyrie
`Val` variants based on the size of the root UI node authored by ickshonpe
Const all the floating point arithmetic authored by alice-i-cecile
Changing backing image of a `RenderTarget::Image` causes rendering to that image to stop authored by aecsocket
Position-only vertex buffer for shadow map / depth prepass authored by JMS55
PCSS issues authored by JMS55
Required plugins authored by simbleau
Consider removing headless plugins authored by alice-i-cecile
Use const arrays with dynamic indexes, shader code cleanup authored by BenjaminBrienen
Anisotropy example has gaps and continuity errors authored by hukasu
Document expectations of Bevy crates authored by mockersf
Add a toon shader authored by alice-i-cecile
Add a sprite outline shader authored by alice-i-cecile
Expose `SystemMeta` for system exploration and configuration authored by MiniaczQ
The words "image" and "texture" are used interchangeably in some doc comments authored by ickshonpe
Screenspace shadows (contact shadows) authored by JMS55
Rename `PointerInput::button_just_down` and `just_up` methods authored by alice-i-cecile
Resizing 2D camera's viewport drops FPS and crashes (with HDR and bloom enabled) authored by bloopyboop
Require components that can't be defaulted authored by andriyDev
Enforce formatting for yml files in CI authored by alice-i-cecile
Consistently use pressed / released terminology in `bevy_picking` authored by alice-i-cecile
Extend the information included in HitData authored by m-edlund
Shadows in 3D scene are flickering authored by lonegamedev
Allow certain components to be marked immutable authored by nakedible
Make the NULL semantics of entity clear authored by iiYese
Get Entity from scene hierarchy authored by Fidius-jko
`Camera::viewport_to_world_2d` doesn't take into account the viewport position authored by Jaso333
`observe` on `WorldEntityMut` may cause the reference to be invalidated authored by nakedible