Ir para o conteúdo
ReadySpawn

Gerador de luz piscando de terror para Unity e Godot

Escolha uma predefinição ou mova os controles e veja a lâmpada. Quando estiver bom, copie o script para Unity ou Godot e anexe a uma luz.

Predefinições

Prévia

using UnityEngine;

public class FlickerLight : MonoBehaviour
{
    public float baseIntensity = 1.2;
    public float flickerAmount = 0.25;
    public float speed = 6;
    public float dropoutsPerSecond = 0.2;
    public float dropoutSeconds = 0.1;

    Light lamp; float seed; float offUntil;

    void Awake() { lamp = GetComponent<Light>(); seed = Random.value * 100f; }

    void Update()
    {
        if (Time.time < offUntil) { lamp.intensity = 0f; return; }
        if (Random.value < dropoutsPerSecond * Time.deltaTime) offUntil = Time.time + dropoutSeconds;
        float n = Mathf.PerlinNoise(seed, Time.time * speed);
        lamp.intensity = Mathf.Max(0f, baseIntensity + (n - 0.5f) * 2f * flickerAmount);
    }
}

Como usar bem o flicker

O flicker com ruído parece orgânico, e apagões raros dão a sensação de defeito. Use poucas luzes piscando e mantenha a maioria estável, para o flicker significar algo.

Leia o guia completo: [iluminação de terror e flicker na Unity](/guides/horror-lighting-and-flicker-in-unity/).

Quando usar

  • Uma luz quebrada no corredor

    Use ruído lento com apagões raros para que o jogador só perceba a luz quando ela morrer por um segundo.

  • Avisar do perigo

    Acelere o piscar quando o monstro estiver perto; o jogador aprende a ler a luz como aviso.

  • Velas e fogo

    Pouca força e ruído rápido sem apagões dão uma chama quente e viva, e não uma falha elétrica.

Vá além

Perguntas frequentes

Mais ferramentas grátis