Vai al contenuto
rIO

Filtro Seppia

Recommended Posts

rIO    0

Un Render Effect per simulare un effetto seppia, devo aggiungere ancora un po' di cosette, ma come potete vedere dalla versione si tratta di una beta scritta in 5 minuti tanto per innaugurare il forum :D

Voglio aggiungere i peli tipici della pellicola invecchiata.

Copiate e incollate nello script editor di max...

Che ne dite di "marchiare" tutti i nostri script come ho fatto io col link verso il sito ???

plugin RenderEffect SepiaFilter 

name:"SepiaFilter" 

classID:#(0x92b1afc2, 0x2f7d8f68)

( 


rollout about_rollout "About..." 

( 

	label abt_label "Sepia Filter v0.000001 beta by rIO.sK" align:#center

	hyperlink hpr_treddi "www.Treddi.com" address:"http://www.treddi.com" align:#center

) 


rollout params_rollout "Parameters..."

(

	checkbox chk_sepia "Enable Sepia Filter" 

	spinner spn_noise "Noise Amount (0-50):" range:[0,50,1] type:#integer align:#left

)


on apply r_image progressCB: do 

( 

	progressCB.setTitle "SepiaFilter Effect" 

	local oldEscapeEnable = escapeEnable 

	local noise_amt = params_rollout.spn_noise.value

	escapeEnable = false 

	bmp_w = r_image.width 

	bmp_h = r_image.height 

	for y = 0 to bmp_h-1 do 

	( 

	if progressCB.progress y (bmp_h-1) then exit 

	pixel_line = getPixels r_image [0,y] bmp_w 

	for x = 1 to bmp_w do 

	( 

	p_v = pixel_line[x].value 

	--aggiunge il rumore

	p_v = p_v + ((random 0 (noise_amt * 2)) - noise_amt)

	if p_v > 255 then p_v = 255

	if p_v < 0 then p_v = 0

	p_red = p_v

	--incrementa il rosso se necessario

	if params_rollout.chk_sepia.checked then p_red = p_red + 20

	--clippa i valori

	if p_red > 255 then p_red = 255

	if p_red < 0 then p_red = 0

	--crea il nuovo colore per questo pixel

	pixel_line[x] = color p_red p_v p_v pixel_line[x].alpha 

	)--fine loop x

	setPixels r_image [0,y] pixel_line 

	)--fine loop righe

	escapeEnable = oldEscapeEnable 

)


)

E' una versionissima beta basata su uno degli esempi di max... se avete idee fatmelo sapere che lo modifico...


Modificato da rIO

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
rIO    0

Selezionate tutto lo script, copia e incolla nel notepad, poi salvatelo nella cartella scripts di Max con il nome di script_idiota_di_rio.ms

Lanciate max e dal menu' Script -> Run Script e selezionate il file appena salvato.

ora avrete nella lsita degli effetti di rendering un nuovo effetto chiamato SepiaFilter

:D


Modificato da rIO

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Selezionate tutto lo script, copia e incolla nel notepad, poi salvatelo nella cartella scripts di Max con il nome di script_idiota_di_rio.ms

Lanciate max e dal menu' Script -> Run Script

ora avrete nella lsita degli effetti di rendering un nuovo effetto chiamato SepiaFilter

uin altro modo per metterli su Treddi è zipparli! ;)

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Grazie per lo script rIo .... viso che è beta ti propogo di ridurre il noise, secondo me un po' troppo accentuato ... se riesci a sostituirlo con delle sgranature da pellicola veccia renderebbe sicuramente di più ;)

Non è una critica cmq ... solo un consiglio per migliorare il tuo script! Io non saprei nemmeno da che parte cominciare :(

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
rIO    0

Si si, la quantita' di noise la puoi ridurre con lo spinner, per la qualita' invece bisognerebbe farlo gaussiano invece che casuale :(

Ci lavoro su ! :D

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora

  • Navigazione recente   0 utenti

    Non ci sono utenti registrati da visualizzare in questa pagina.

×