{
  "$id": "blockception.minecraft.resource.particle.1.10.0.particle_appearance_billboard",
  "type": "object",
  "title": "Particle Appearance Billboard Component For 1.10.0",
  "additionalProperties": false,
  "properties": {
    "size": {
      "type": "array",
      "minItems": 2,
      "maxItems": 2,
      "items": { "$ref": "../../../molang/number.json", "description": "UNDOCUMENTED: size.", "title": "Size" },
      "description": "UNDOCUMENTED: size.",
      "title": "Size"
    },
    "facing_camera_mode": {
      "description": "Used to orient the billboard.",
      "type": "string",
      "enum": [
        "rotate_xyz",
        "rotate_y",
        "lookat_xyz",
        "lookat_y",
        "lookat_direction",
        "direction_x",
        "direction_y",
        "direction_z",
        "emitter_transform_xy",
        "emitter_transform_xz",
        "emitter_transform_yz"
      ],
      "title": "Facing Camera Mode"
    },
    "direction": {
      "type": "object",
      "description": "UNDOCUMENTED",
      "properties": {
        "mode": {
          "type": "string",
          "enum": ["custom", "derive_from_velocity"],
          "description": "Specified how to calculate the billboard direction of a particle."
        },
        "custom_direction": {
          "type": "array",
          "minItems": 3,
          "maxItems": 3,
          "items": { "$ref": "../../../molang/number.json", "description": "UNDOCUMENTED." },
          "description": "The facing direction of emitted particles."
        },
        "min_speed_threshold": {
          "type": "number",
          "description": "The direction is set if the speed of the particle is above the threshold.",
          "default": 0.01
        }
      }
    },
    "uv": {
      "additionalProperties": false,
      "type": "object",
      "properties": {
        "texture_width": { "type": "integer", "description": "UNDOCUMENTED: texture width.", "title": "Texture Width" },
        "texture_height": {
          "type": "integer",
          "description": "UNDOCUMENTED: texture height.",
          "title": "Texture Height"
        },
        "flipbook": {
          "additionalProperties": false,
          "type": "object",
          "required": ["max_frame"],
          "properties": {
            "base_UV": {
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                "$ref": "../../../molang/number.json",
                "description": "UNDOCUMENTED: base UV.",
                "title": "Base U V"
              },
              "description": "UNDOCUMENTED: base UV.",
              "title": "Base U V"
            },
            "size_UV": {
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                "$ref": "../../../molang/number.json",
                "description": "UNDOCUMENTED: size UV.",
                "title": "Size U V"
              },
              "description": "UNDOCUMENTED: size UV.",
              "title": "Size U V"
            },
            "step_UV": {
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                "$ref": "../../../molang/number.json",
                "description": "UNDOCUMENTED: step UV.",
                "title": "Step U V"
              },
              "description": "UNDOCUMENTED: step UV.",
              "title": "Step U V"
            },
            "frames_per_second": {
              "$ref": "../../../molang/number.json",
              "description": "UNDOCUMENTED: frames per second.",
              "title": "Frames Per Second"
            },
            "max_frame": {
              "$ref": "../../../molang/number.json",
              "description": "UNDOCUMENTED: Maximum frame.",
              "title": "Maximum Frame"
            },
            "stretch_to_lifetime": {
              "type": "boolean",
              "description": "UNDOCUMENTED: stretch to lifetime.",
              "title": "Stretch To Lifetime"
            },
            "loop": { "type": "boolean", "description": "UNDOCUMENTED: loop.", "title": "Loop" }
          },
          "description": "UNDOCUMENTED: flipbook.",
          "title": "Flipbook"
        },
        "uv": {
          "type": "array",
          "minItems": 2,
          "maxItems": 2,
          "items": { "$ref": "../../../molang/number.json", "description": "UNDOCUMENTED: uv.", "title": "Uv" },
          "description": "UNDOCUMENTED: uv.",
          "title": "Uv"
        },
        "uv_size": {
          "type": "array",
          "minItems": 2,
          "maxItems": 2,
          "items": {
            "$ref": "../../../molang/number.json",
            "description": "UNDOCUMENTED: uv size.",
            "title": "Uv Size"
          },
          "description": "UNDOCUMENTED: uv size.",
          "title": "Uv Size"
        }
      },
      "description": "UNDOCUMENTED: uv.",
      "title": "Uv"
    }
  },
  "description": "UNDOCUMENTED."
}
