1. Wiki
  2. /Partículas
  3. /Componentes de emisor

Componentes de emisor

Todos los componentes de emisor de partículas de Minecraft Bedrock en un solo sitio: preparación, ritmo de aparición, duración y forma, con sus campos y ejemplos cortos.

El emisor (emitter) es el generador invisible que hay detrás de cada efecto de partículas. Sus componentes deciden cuándo funciona, cuántas partículas crea y dónde empiezan. Todos van en el bloque components de un archivo de partículas, junto a los componentes de partícula.

¿Eres nuevo con las partículas? Empieza con Tu primera partícula, que construye paso a paso un destello de rubí completo.

Lo que necesita todo emisor

Un emisor necesita un componente de duración y un componente de ritmo, o no generará nada. La forma es opcional: sin ella, las partículas empiezan en el centro del emisor. Usa solo un componente de cada uno de estos grupos.

La mayoría de los campos numéricos de esta página aceptan un número simple o un texto de Molang como "math.random(1, 3)". Las tablas indican cuándo se calcula un campo: una vez al arrancar el emisor, en cada bucle o por partícula cada vez que aparece una.

Preparación

Se ejecutan antes de que aparezca nada. Puedes usarlos junto con cualquier otro componente.

ComponenteQué haceCampos clave
minecraft:emitter_initializationEjecuta Molang en el emisor, sobre todo para dar valor a tus propias variables que luego leen otros camposcreation_expression: se ejecuta una vez al arrancar el emisor. per_update_expression: se ejecuta en cada actualización
minecraft:emitter_local_spacePara efectos unidos a una criatura: elige si las partículas se mueven con la criatura o se quedan donde nacieronposition, rotation, velocity (todos true o false, por defecto false)

Dar valor a variables

emitter_initialization es el sitio para sacar un número al azar una sola vez y compartirlo con todas las partículas:

RP/particles/ruby_sparkle.json (dentro de components)
"minecraft:emitter_initialization": {
  "creation_expression": "variable.ruby_hue = math.random(0.2, 0.4);"
}

Ahora todas las partículas de este emisor pueden leer variable.ruby_hue, por ejemplo en su tinte.

Espacio local

Por defecto, las partículas empiezan en el emisor y luego viven por su cuenta en el mundo. Si una criatura se aleja, sus partículas antiguas se quedan atrás, como un rastro.

  • position: true hace que las partículas se muevan con la criatura. Úsalo para un brillo que deba quedarse envolviéndola.
  • rotation: true además las gira con la criatura. Solo funciona junto con position: true.
  • velocity: true suma la velocidad de la criatura a cada partícula nueva, así que las chispas que lanza una criatura que corre salen volando hacia delante.
RP/particles/ruby_aura.json (dentro de components)
"minecraft:emitter_local_space": {
  "position": true,
  "rotation": true
}

Solo para efectos unidos

El espacio local no hace nada en los efectos que se reproducen con /particle o con un script en un punto del mundo. Solo importa cuando una criatura o un attachable reproduce el efecto.

Ritmo

El ritmo (rate) decide cuántas partículas aparecen y a qué velocidad. Elige uno.

ComponenteQué haceCampos clave
minecraft:emitter_rate_instantGenera un grupo de partículas todas en el mismo instante, como una explosiónnum_particles (por defecto 10, en cada bucle)
minecraft:emitter_rate_steadyGenera partículas una tras otra, a un ritmo constantespawn_rate: partículas por segundo (por defecto 1). max_particles: máximo de partículas vivas a la vez (por defecto 50)
minecraft:emitter_rate_manualNo genera nada por sí solo. El juego genera las partículas una a una cuando las necesitamax_particles (por defecto 50)

Instantáneo: una explosión

Dentro de components
"minecraft:emitter_rate_instant": {
  "num_particles": 12
}

Si el emisor se repite en bucle, vuelve a explotar al principio de cada bucle.

Constante: un chorro

Dentro de components
"minecraft:emitter_rate_steady": {
  "spawn_rate": 20,
  "max_particles": 40
}

Esto crea 20 partículas por segundo, pero deja de añadir nuevas mientras haya 40 vivas. max_particles es un límite de seguridad: mantenlo bajo, porque cientos de partículas pueden ralentizar los móviles menos potentes.

Manual: para eventos

emitter_rate_manual lo usan efectos integrados que el juego genera de partícula en partícula, como las salpicaduras de la lluvia. En tus propios efectos, lo usarás sobre todo para efectos pequeños que otros efectos generan con un evento de tipo particle (consulta los eventos). Para todo lo que reproduzcas tú mismo, usa instantáneo o constante.

Duración

La duración (lifetime) decide cuánto tiempo sigue funcionando el emisor. Elige una y luego añade eventos de duración si los necesitas.

ComponenteQué haceCampos clave
minecraft:emitter_lifetime_onceFunciona una vez y luego se eliminaactive_time: segundos durante los que genera (por defecto 10)
minecraft:emitter_lifetime_loopingFunciona, se detiene, vuelve a funcionar, hasta que algo lo eliminaactive_time: segundos activo (por defecto 10). sleep_time: segundos en pausa entre bucles (por defecto 0)
minecraft:emitter_lifetime_expressionSe enciende y se apaga con Molang, que se comprueba en cada fotogramaactivation_expression: genera mientras esto no sea 0 (por defecto 1). expiration_expression: elimina el emisor en cuanto esto no sea 0 (por defecto 0)
minecraft:emitter_lifetime_eventsDispara tus eventos en ciertos momentos de la vida del emisorcreation_event, expiration_event, timeline, travel_distance_events, looping_travel_distance_events

Una vez

La mejor opción para un efecto de una sola vez lanzado desde un comando o un script:

Dentro de components
"minecraft:emitter_lifetime_once": {
  "active_time": 1
}

Con emitter_rate_instant, la explosión ocurre al principio, así que active_time puede ser corto.

En bucle

Dentro de components
"minecraft:emitter_lifetime_looping": {
  "active_time": 2,
  "sleep_time": 3
}

Esto destella durante 2 segundos, descansa 3 y se repite. Usa el bucle para efectos unidos a una criatura o reproducidos desde un controlador de animación, donde el juego elimina el emisor por ti cuando la criatura o el estado desaparecen.

Expresión

Ideal para efectos que siguen a una criatura y se encienden y apagan solos:

Dentro de components
"minecraft:emitter_lifetime_expression": {
  "activation_expression": "query.ground_speed > 0.1",
  "expiration_expression": 0
}

Esto solo destella mientras la criatura camina, y nunca se elimina. Las consultas como query.ground_speed leen la criatura a la que está unido el efecto.

Eventos

emitter_lifetime_events apunta a nombres del bloque events del mismo archivo. Cada campo acepta un nombre de evento o una lista de nombres.

Dentro de components
"minecraft:emitter_lifetime_events": {
  "creation_event": "flash",
  "expiration_event": "pop",
  "timeline": {
    "0.5": "twinkle",
    "1.0": ["twinkle", "chime"]
  },
  "travel_distance_events": {
    "4.0": "dust"
  },
  "looping_travel_distance_events": [
    { "distance": 1.0, "effects": ["dust"] }
  ]
}
CampoSe dispara
creation_eventCuando arranca el emisor
expiration_eventCuando termina el emisor. No espera a que desaparezcan sus partículas
timelineEn estos momentos, en segundos. Se vuelve a ejecutar en cada bucle
travel_distance_eventsUna vez, cuando el emisor se ha movido esa cantidad de bloques en total
looping_travel_distance_eventsUna y otra vez, cada vez que se mueve esa cantidad de bloques. Perfecto para huellas o un rastro detrás de un proyectil

Forma

La forma (shape) decide dónde empieza cada partícula y hacia dónde apunta. Esa dirección es la que sigue el empujón de particle_initial_speed. Elige una.

ComponenteLas partículas empiezanCampos clave
minecraft:emitter_shape_pointTodas en un mismo puntooffset, direction
minecraft:emitter_shape_sphereDentro de una bola, o en su superficieradius (por defecto 1), offset, surface_only, direction
minecraft:emitter_shape_boxDentro de una caja, o en su superficiehalf_dimensions, offset, surface_only, direction
minecraft:emitter_shape_discEn un círculo plano, o en su borderadius (por defecto 1), plane_normal, offset, surface_only, direction
minecraft:emitter_shape_customDonde diga tu Molangoffset, direction
minecraft:emitter_shape_entity_aabbDentro de la caja que rodea a la criatura a la que está unidosurface_only, direction

Campos que comparten las formas

CampoQué hace
offsetDesplaza el punto de partida respecto al emisor, como [x, y, z] en bloques. Se calcula por partícula, así que con Molang aquí puedes esparcirlas
directionHacia dónde apuntan las partículas nuevas. "outwards" (alejándose del centro, por defecto), "inwards" (hacia el centro) o tu propio [x, y, z]
surface_onlytrue solo genera en el exterior de la forma, no dentro. Por defecto false

Las formas de punto y personalizada solo aceptan una dirección [x, y, z], porque no tienen un centro del que alejarse.

Punto

Dentro de components
"minecraft:emitter_shape_point": {
  "offset": [0, 0.5, 0],
  "direction": [0, 1, 0]
}

Cada partícula empieza medio bloque por encima del emisor y apunta recto hacia arriba.

Esfera

Dentro de components
"minecraft:emitter_shape_sphere": {
  "radius": 0.5,
  "surface_only": true,
  "direction": "outwards"
}

Una bola hueca de destellos que sale volando en todas direcciones. Prueba "inwards" con una duración corta para un efecto de "acumular poder".

Caja

Dentro de components
"minecraft:emitter_shape_box": {
  "offset": [0, 0.5, 0],
  "half_dimensions": [0.5, 0.5, 0.5],
  "direction": [0, 1, 0]
}

half_dimensions se mide desde el centro, así que 0.5 en cada lado llena exactamente un bloque. Va bien para un efecto que cubre un bloque entero, como una mena brillante.

Disco

Dentro de components
"minecraft:emitter_shape_disc": {
  "radius": 1.5,
  "plane_normal": "y",
  "surface_only": true,
  "direction": "outwards"
}

plane_normal es el eje hacia el que mira el disco. "y" (por defecto) lo deja tumbado como una alfombra, y "x" y "z" lo ponen de pie como una pared. También puedes dar tu propio [x, y, z]. Este ejemplo crea un anillo en el suelo que se extiende hacia fuera: un buen efecto de aterrizaje.

Personalizada

Dentro de components
"minecraft:emitter_shape_custom": {
  "offset": [
    "math.random(-0.1, 0.1)",
    "math.random(0, 2)",
    "math.random(-0.1, 0.1)"
  ],
  "direction": [0, 1, 0]
}

Con una forma personalizada, calculas tú mismo el punto, como [x, y, z]. Esto coloca cada partícula a una altura al azar de hasta 2 bloques, pero la mantiene cerca del centro a los lados: una columna fina de destellos, como un rayo de luz. Cada valor se vuelve a calcular para cada partícula.

Caja de la entidad

Dentro de components
"minecraft:emitter_shape_entity_aabb": {
  "surface_only": false,
  "direction": [0, 0.2, 0]
}

Esta usa la propia caja de impacto de la criatura (su caja de colisión), así que el mismo efecto sirve para una gallina y para un gólem de rubí sin cambios. Si el efecto no está unido a una criatura, las partículas salen del punto del emisor.

Un emisor completo

Juntando uno de cada grupo. Esta aura se repite en bucle mientras hay una criatura y se queda pegada a ella:

RP/particles/ruby_aura.json (dentro de components)
"minecraft:emitter_local_space": {
  "position": true,
  "rotation": false
},
"minecraft:emitter_lifetime_looping": {
  "active_time": 1
},
"minecraft:emitter_rate_steady": {
  "spawn_rate": 8,
  "max_particles": 20
},
"minecraft:emitter_shape_entity_aabb": {
  "surface_only": true,
  "direction": [0, 1, 0]
}

Añade la parte de la partícula (duración, aspecto y movimiento) de Componentes de partícula y reprodúcela desde la animación de una criatura, como se muestra en Tu primera partícula.

We use cookies to improve your experience and analyse site traffic. Learn more