Script de partículas LSL: brilhos suaves ao redor de um objeto
Script de partículas LSL grátis para Second Life: brilhos dourados e rosa para presentes, placas e itens mágicos, com cor, tamanho, quantidade e liga/desliga ao toque.
Alguns brilhos fazem uma caixa de presente, uma placa ou uma varinha mágica se destacarem. Este script de partículas solta brilhos suaves e luminosos que desaparecem aos poucos enquanto flutuam. Todos os valores importantes estão no topo, então você pode criar o seu próprio efeito sem precisar aprender o sistema de partículas inteiro.
// Sparkle Particles - free LSL script from WhatSL (https://whatsl.com/scripts/lsl-particle-script)
// Free to use, change and put in your own creations, also ones you sell.
//
// Soft sparkles around the object: good for gifts, magic items, signs and decorations.
// Touch to turn them on and off. Change the colours and sizes below to make your own effect.
vector COLOR_START = <1.0, 0.9, 0.5>; // gold
vector COLOR_END = <1.0, 0.6, 0.9>; // pink
float SIZE_START = 0.10; // metres
float SIZE_END = 0.04;
float PARTICLE_LIFE = 2.0; // seconds each sparkle lives
float BURST_RATE = 0.1; // seconds between bursts
integer BURST_COUNT = 3; // sparkles per burst
string PARTICLE_TEXTURE = ""; // "" = the standard round particle; or a texture UUID
integer START_ON = TRUE;
integer gOn = FALSE;
sparkle(integer on)
{
gOn = on;
if (!on)
{
llParticleSystem([]);
return;
}
list rules = [
PSYS_PART_FLAGS, PSYS_PART_EMISSIVE_MASK | PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_INTERP_SCALE_MASK,
PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_EXPLODE,
PSYS_PART_START_COLOR, COLOR_START,
PSYS_PART_END_COLOR, COLOR_END,
PSYS_PART_START_ALPHA, 1.0,
PSYS_PART_END_ALPHA, 0.0,
PSYS_PART_START_SCALE, <SIZE_START, SIZE_START, 0.0>,
PSYS_PART_END_SCALE, <SIZE_END, SIZE_END, 0.0>,
PSYS_PART_MAX_AGE, PARTICLE_LIFE,
PSYS_SRC_BURST_RATE, BURST_RATE,
PSYS_SRC_BURST_PART_COUNT, BURST_COUNT,
PSYS_SRC_BURST_SPEED_MIN, 0.05,
PSYS_SRC_BURST_SPEED_MAX, 0.3,
PSYS_SRC_ACCEL, <0.0, 0.0, -0.05>
];
if (PARTICLE_TEXTURE != "") rules += [PSYS_SRC_TEXTURE, PARTICLE_TEXTURE];
llParticleSystem(rules);
}
default
{
state_entry()
{
sparkle(START_ON);
}
touch_start(integer total)
{
sparkle(!gOn);
}
}
Livre para usar, alterar e colocar nas suas criações, inclusive nas que você vende.
Como configurar
- Coloque o script no objeto e salve. Os brilhos aparecem na hora.
- Toque no objeto para desligar e ligar os brilhos.
- Mude as cores, os tamanhos e as quantidades e salve de novo para ver o resultado.
Configurações
- COLOR_START e COLOR_END: cada brilho passa da primeira cor para a segunda.
- SIZE_START e SIZE_END: o tamanho de um brilho quando ele aparece e quando desaparece, em metros.
- PARTICLE_LIFE: quantos segundos cada brilho dura.
- BURST_RATE e BURST_COUNT: com que frequência os brilhos aparecem e quantos de cada vez.
- PARTICLE_TEXTURE: vazio para a partícula redonda padrão, ou o UUID da sua própria textura de partícula.
Dicas
- Menos é mais: poucos brilhos lentos ficam mais elegantes do que uma nuvem de brilhos rápidos, e pesam menos no viewer.
- As partículas são uma configuração do prim. Se você apagar o script, elas continuam. Para pará-las de vez, desligue-as com o toque primeiro e depois apague o script.
Perguntas frequentes
Por que não consigo ver nenhuma partícula?
Seu viewer pode estar com as partículas reduzidas. Verifique o número máximo de partículas nas configurações gráficas.
Como faço neve ou chuva?
Use uma cor branca ou azul, um PARTICLE_LIFE maior e uma força para baixo mais forte: mude PSYS_SRC_ACCEL para algo como <0.0, 0.0, -0.5> e coloque o emissor bem no alto.
As partículas causam lag?
As partículas são desenhadas por cada viewer, então não deixam a região mais lenta, mas um número muito grande de partículas pode deixar o viewer dos visitantes mais lento. Mantenha BURST_COUNT pequeno.