bevy_sprinkles_editor 0.2.0

GPU particle system editor for Bevy
(
    sprinkles_version: "0.2",
    name: "Rain",
    dimension: D3,
    emitters: [
        (
            name: "Rain",
            time: (
                lifetime: 1.0,
            ),
            draw_pass: (
                mesh: Quad(
                    orientation: FaceZ,
                    size: (1.0, 1.0),
                ),
                material: Standard((
                    base_color: (1.0, 1.0, 1.0, 1.0),
                    base_color_texture: Some(Preset(Trace1)),
                    emissive: (0.0, 0.0, 0.0, 0.0),
                    alpha_mode: Blend,
                    perceptual_roughness: 0.5,
                    reflectance: 0.5,
                    unlit: true,
                )),
                shadow_caster: false,
                transform_align: Some(BillboardFixedY),
            ),
            emission: (
                offset: (0.0, 10.0, 0.0),
                scale: (25.0, 1.0, 25.0),
                shape: Box(
                    extents: (1.0, 1.0, 1.0),
                ),
                particles_amount: 300,
            ),
            scale: (
                range: (
                    min: 1.0,
                    max: 1.0,
                ),
            ),
            colors: (
                initial_color: Gradient(
                    gradient: (
                        stops: [
                            (
                                color: (0.9411765, 0.9764706, 1.0, 0.2),
                                position: 0.0,
                            ),
                            (
                                color: (0.9411765, 0.9764706, 1.0, 0.6),
                                position: 1.0,
                            ),
                        ],
                    ),
                ),
                color_over_lifetime: (
                    stops: [
                        (
                            color: (1.0, 1.0, 1.0, 1.0),
                            position: 0.0,
                        ),
                        (
                            color: (1.0, 1.0, 1.0, 1.0),
                            position: 1.0,
                        ),
                    ],
                ),
            ),
            velocities: (
                initial_direction: (0.0, -1.0, 0.0),
                spread: 0.0,
                initial_velocity: (
                    min: 30.0,
                    max: 60.0,
                ),
                radial_velocity: (),
                angular_velocity: (),
            ),
            accelerations: (
                gravity: (0.0, 0.0, 0.0),
            ),
            collision: (
                mode: Some(HideOnContact),
                base_size: 1.0,
            ),
            sub_emitter: Some((
                mode: AtCollision,
                target_emitter: 1,
                frequency: 4.0,
                amount: 5,
            )),
            particle_flags: "",
        ),
        (
            name: "Droplets",
            time: (
                lifetime: 0.7,
                explosiveness: 1.0,
            ),
            draw_pass: (
                mesh: Quad(
                    orientation: FaceZ,
                    size: (1.0, 1.0),
                ),
                material: Standard((
                    base_color: (1.0, 1.0, 1.0, 1.0),
                    base_color_texture: Some(Preset(Circle5)),
                    emissive: (0.0, 0.0, 0.0, 0.0),
                    alpha_mode: Blend,
                    perceptual_roughness: 0.5,
                    reflectance: 0.5,
                    unlit: true,
                )),
                shadow_caster: false,
                transform_align: Some(Billboard),
            ),
            emission: (
                particles_amount: 1500,
            ),
            scale: (
                range: (
                    min: 0.05,
                    max: 0.1,
                ),
            ),
            colors: (
                initial_color: Gradient(
                    gradient: (
                        stops: [
                            (
                                color: (0.8784314, 0.9490196, 0.99607843, 0.5),
                                position: 0.0,
                            ),
                            (
                                color: (0.8784314, 0.9490196, 0.99607843, 1.0),
                                position: 1.0,
                            ),
                        ],
                    ),
                ),
                color_over_lifetime: (
                    stops: [
                        (
                            color: (1.0, 1.0, 1.0, 1.0),
                            position: 0.0,
                        ),
                        (
                            color: (1.0, 1.0, 1.0, 1.0),
                            position: 1.0,
                        ),
                    ],
                ),
                alpha_over_lifetime: Some((
                    name: Some("Quad out"),
                    x: (
                        points: [
                            (
                                position: 0.0,
                                value: 1.0,
                                mode: DoubleCurve,
                                tension: 0.0,
                                easing: Power,
                            ),
                            (
                                position: 1.0,
                                value: 0.0,
                                mode: SingleCurve,
                                tension: -0.5005005005,
                                easing: Power,
                            ),
                        ],
                        range: (
                            min: 0.0,
                            max: 1.0,
                        ),
                    ),
                )),
            ),
            velocities: (
                initial_direction: (0.0, 1.0, 0.0),
                spread: 45.0,
                initial_velocity: (
                    min: 1.0,
                    max: 3.0,
                ),
                radial_velocity: (
                    velocity: (
                        min: 0.0,
                        max: 1.0,
                    ),
                ),
                angular_velocity: (),
            ),
            accelerations: (
                gravity: (0.0, -9.8, 0.0),
            ),
            collision: (
                base_size: 0.01,
            ),
            particle_flags: "",
        ),
    ],
    authors: (
        inspired_by: "Brackeys",
        submitted_by: "DoceAzedo",
    ),
    colliders: [
        (
            name: "Collider",
            shape: Box(
                size: (50.0, 1.0, 50.0),
            ),
            initial_transform: (
                translation: (0.0, -2.5, 0.0),
            ),
        ),
    ],
)