{
  "format_version": "1.21.60",
  "particle_effect": {
    "description": {
      "identifier": "minecraft:mycelium_dust_particle",
      "basic_render_parameters": {
        "material": "particles_alpha",
        "texture": "textures/particle/particles"
      }
    },
    "components": {
      "minecraft:emitter_initialization": {
        "creation_expression": "v.rise_chance = v.particle_random_4 > 0.35 ? 1.0 : -0.4; v.drift_phase = math.random(0, 6.28); v.drift_rate = math.random(0.6, 1.8);"
      },
      "minecraft:emitter_rate_manual": {
        "max_particles": 180
      },
      "minecraft:emitter_lifetime_expression": {
        "activation_expression": 1,
        "expiration_expression": 0
      },
      "minecraft:emitter_shape_point": {
        "direction": [
          "math.random(-0.5, 0.5)",
          "math.random(0.1, 1.0)",
          "math.random(-0.5, 0.5)"
        ]
      },
      "minecraft:particle_initial_speed": "math.random(0.005, 0.022)",
      "minecraft:particle_lifetime_expression": {
        "max_lifetime": "3.5 + v.particle_random_1 * 4.5"
      },
      "minecraft:particle_motion_dynamic": {
        "linear_acceleration": [
          "math.sin(v.drift_rate * v.particle_age + v.drift_phase) * 0.018",
          "0.008 * v.rise_chance * (1.0 - math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1))",
          "math.cos(v.drift_rate * v.particle_age + v.drift_phase + 1.05) * 0.014"
        ],
        "linear_drag_coefficient": 0.85
      },
      "minecraft:particle_appearance_billboard": {
        "size": [
          "math.lerp(0.10 + v.particle_random_1 * 0.08, 0.0, math.pow(math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1), 2.0)) * math.clamp(v.particle_age / 0.20, 0, 1)",
          "math.lerp(0.10 + v.particle_random_1 * 0.08, 0.0, math.pow(math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1), 2.0)) * math.clamp(v.particle_age / 0.20, 0, 1)"
        ],
        "facing_camera_mode": "lookat_xyz",
        "uv": {
          "texture_width": 128,
          "texture_height": 128,
          "uv": [ 0, 0 ],
          "uv_size": [ 8, 8 ]
        }
      },
      "minecraft:particle_appearance_tinting": {
        "color": [
          "math.lerp(0.84, 0.60, math.pow(math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1), 1.2)) + v.particle_random_3 * 0.08",
          "math.lerp(0.74, 0.52, math.pow(math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1), 1.4)) + v.particle_random_2 * 0.06",
          "math.lerp(0.92, 0.72, math.pow(math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1), 0.9)) + v.particle_random_1 * 0.05",
          "math.lerp(0.72, 0.0, math.pow(math.clamp(v.particle_age / (3.5 + v.particle_random_1 * 4.5), 0, 1), 1.8)) * math.clamp(v.particle_age / 0.20, 0, 1)"
        ]
      },
      "minecraft:particle_appearance_lighting": {}
    }
  }
}
