minhas informações de contato
Correspondência[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
1. Atributos básicos
(1) Modifique a duração das partículas emitidas (Duração) para 1s
(2) Desmarque Loop
(3) Modifique o tempo de existência da partícula (Start Lifetime) para um valor aleatório entre 0,1 e 0,2
(4) Modifique a velocidade inicial da partícula (Velocidade Inicial) para 0
(5) Modifique o tamanho inicial da partícula (Tamanho inicial) para um valor aleatório entre 0,7 e 1
(6) Modifique o ângulo de rotação inicial da partícula (Rotação Inicial) para um valor aleatório entre 0 e 360
2. Emissão
(1) Defina a velocidade da partícula emitida (Taxa ao longo do tempo) como 0 (ou seja, não emita partículas)
(2) Adicionar burst (Burst), o tempo é 0, a contagem é 5
3. Forma do Emissor (Forma)
(1) Definir forma como círculo
(2) Defina o ângulo de rotação (Rotação) para 900 na direção do eixo x
(3) Defina o raio para (Raio) 0,12
(4) Defina o modo (Mode) para Burst Spread (explosão espalhada)
4. Cor das partículas (cor ao longo da vida)
(1) Defina a transparência para 255-0 (ou seja, cada vez mais transparente)
5. Tamanho das partículas (tamanho ao longo da vida)
(1) Defina o tamanho da partícula para 0,6-1
6. Animação de textura de partículas (animação de folha de textura)
(1) Adicionar imagens de sprites de partículas
1. Edite o script com marcadores:
(1) Criar pré-fabricados de efeitos especiais de sucesso
- public class Bullet : MonoBehaviour
- {
- // 创建命中特效预制体
- public GameObject hitEffectParticlePrefab;
- }
(2) Reescreva a interface do iterador e exclua os efeitos das partículas atingidas após um atraso de 1s.
- public class Bullet : MonoBehaviour
- {
- // 创建命中特效预制体
- public GameObject hitEffectParticlePrefab;
-
- // 在1s后删除粒子特效
- private async Task deleteEffectParticle(GameObject EffectParticle, float delay)
- {
- // 等待1s
- await Task.Delay(1000);
- // 删除粒子特效
- Destroy(EffectParticle);
- }
- }
(3) Ao atingir um inimigo, crie um efeito especial de partícula atingida na posição da bala, que será deletado após 1s.
- public class Bullet : MonoBehaviour
- {
- // 创建命中特效预制体
- public GameObject hitEffectParticlePrefab;
-
- // 击中敌人
- private void OnCollisionEnter2D(Collision2D collision)
- {
- Enemy enemy = collision.gameObject.GetComponent<Enemy>();
- if(enemy != null) {
- enemy.changeHealthPoint(-25);
- GameObject hitEffectParticle = Instantiate(hitEffectParticlePrefab, transform.position, Quaternion.identity);
- deleteHitEffectParticle(hitEffectParticle, 1);
- }
- Destroy(gameObject);
- }
-
- // 在1s后删除粒子特效
- public static async Task deleteEffectParticle(GameObject EffectParticle, float delay)
- {
- // 等待1s
- await Task.Delay(1000);
- // 删除粒子特效
- Destroy(EffectParticle);
- }
- }
2. Adicione efeitos especiais de partículas atingidas à pré-fabricada de bala
3. O efeito final é mostrado abaixo:
Fim deste capítulo. Obrigado por ler!