added serde(default) to Transform (#23474)

# Objective

Need serde(Default) for Transform. I think it would be very useful in
cases where someone wants to add an object to their scene but doesn't
want to have to specify rotation or scale, e.g.:

```
5: (
  components: {
    "common::types::GameObjectKind": Rifle,
    "bevy_transform::components::transform::Transform": (
      translation: (1.5, 800.0, 0.0),
    ),
  },
),
```

## Solution

Added `#[cfg_attr(feature = "serialize", serde(default))]` before the
Transform struct.

## Testing

Successfully built bevy, but haven't tested extensively. Theoretically
shouldn't break existing functionality, since Deriving Transform was
invalid before this PR.
This commit is contained in:
GHowe
2026-04-02 14:23:25 -05:00
committed by GitHub
parent 09ef09eaa5
commit 2e1acb9d88
2 changed files with 2 additions and 0 deletions
+1
View File
@@ -29,6 +29,7 @@ bevy_math = { path = "../bevy_math", version = "0.19.0-dev", default-features =
"approx",
] }
approx = "0.5.1"
ron = "0.8"
[features]
# Turning off default features leaves you with a barebones
@@ -68,6 +68,7 @@ fn assert_is_normalized(message: &str, length_squared: f32) {
/// [transform_example]: https://github.com/bevyengine/bevy/blob/latest/examples/transforms/transform.rs
#[derive(Debug, PartialEq, Clone, Copy)]
#[cfg_attr(feature = "serialize", derive(serde::Serialize, serde::Deserialize))]
#[cfg_attr(feature = "serialize", serde(default))]
#[cfg_attr(
feature = "bevy-support",
derive(Component),