Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    effetto pioggia realistico

    ciao ragazzi , sono riuscito ad ottenere un effetto simile creandomi la mia goccia e poi duplicandola, ma vorrei sapere come ottenere un effetto cosi' realistico.. per il movimento intendo....

    qui



    -Nextart.it Graphic Solutions

  2. #2
    Immagino che tu habbia creato la discesa con un "This._y += i;" posto nel codice del tuo mc, dove "i" rappresenta un valore dato da un Math.random del tipo: "i=2+Math.random()*2"..quindi non so io proverei a racchiudere il codice all'interno di una funzione, che in seguito richiamerei con un intervallo casuale in questo modo:

    onClipEvent (load) {
    // specifico la grandezza dello stage
    movieWidth = 550;
    movieHeight = 450;
    // imposto la variabile che permette la caduta della goccia
    i = 1+Math.random()*1;
    // assegno a ciascuna goccia duplicata delle caratteristiche proprie
    this._xscale = this._yscale=50+Math.random()*100;
    this._alpha = 75+Math.random()*100;
    this._x = -10+Math.random()*movieWidth;
    this._y = -10+Math.random()*movieHeight;
    lento=1;
    }
    La funzione che fa muovere le gocce:
    onClipEvent (enterFrame) {
    function muovi() {
    // creo una condizione che mi permette di gestire la velocità in base allo stato attuale delle gocce
    if(lento==1){
    i = 2+Math.random()*5;
    lento=0;
    } else {
    i = 1+Math.random()*1;
    lento=1
    }
    }
    //imposto l'intervallo casuale, con un tetto minimo di 3 secondi. In questo modo ogni goccia avrà un'accelerazione casuale, data anche dallo stato in cui si trova (lento=0 / lento=1)
    myInterval = setInterval(this, "muovi", random(5000)+3000);
    this._y += i/2;
    //faccio in modo che le gocce ritornino su una volta attraversato lo stage
    if (this._y>=movieHeight) {
    this._y = -5;
    }
    if ((this._x>=movieWidth) || (this._x<=0)) {
    this._x = -10+Math.random()*movieWidth;
    this._y = -5;
    }
    }
    la duplicazione delle gocce avviene sul codice del frame principale con il solito ciclo "For"

    Mi pare che funzioni...ma credo si possa migliorare smanettando un pò sul codice.
    Fammi sapere!

  3. #3
    ciao, poi provero' a vedere con il tuo codice, ora sono riuscito ad arrivare a questo effetto:

    esempio

    -Nextart.it Graphic Solutions

  4. #4
    sgamella l'animazione è sempre uguale!!!
    Scherzo naturalmente...l'effetto è abbastanza carino anche così, ma dopo 15 secondi l'utente si accorge che si tratta di una seguenza ripetuta...il che non rende giustizia alla grafica molto curata con cui hai creato le gocce.
    Se ti va prova a randomizzarlo un pò sfruttando il codice che ti ho proposto...sarei curioso di vedere il risultato!

  5. #5
    ok, ora non riesco, provero' a casa e ti faro' sapere...........


    forse ho sbagliato il titolo del thread,, era meglio gocce su superficie....
    -Nextart.it Graphic Solutions

  6. #6
    questo e' applicando il tuo codice su un movie 550*400

    esempio

    ciao

    -Nextart.it Graphic Solutions

  7. #7
    hmmm...strano...ti linko la prova che ho fatto io:
    le mie gocce danno la sensazione di cera sciolta piuttosto che di acqua...ma le ho fatte al volo non farci caso..!

    prova gocce

    bisogna posizionare il mc della goccia nell'angolo in alto a sinistra dello stage, in modo tale che si setti sulle coordinate globali del filmato e le gocce nascano tutte al di sopra dell'area visibile.

  8. #8
    ok, l'ho posizionata in alto a sx..... prova a guardare ora.... :-)
    -Nextart.it Graphic Solutions

  9. #9
    Mi sembra un buon risultato...anche se proverei a farlo andare un pò più lento...questo è un acquazzone!

    In ogni caso non capisco perchè le tue gocce continuino a nascere anche all'interno dello stage...a me non succede...

    Farei un'ultima modifica al codice finale:

    if (this._y>=movieHeight) {
    this._y = -5;
    this._x = random(movieWidth);
    }
    in sostituzione a quella precedente, in modo da aumentare la casualità delle gocce, e poi verifica che la tua goccia sia posizionata bene sul proprio centro relativo...è molto strano dovrebbero rinascere solo al di sopra dello stage...bye

  10. #10
    questo è un acquazzone!

    ora il framerate e' 24, ho diminuito anche il numero di gocce duplicate , ora e' 30
    la goccia e' posizionata a coordinate (0,0)


    ho apportato la modifca al codice e ho aggiunto anche il suono,

    pioggia

    grazie di tutto
    ciao
    -Nextart.it Graphic Solutions

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.