Forums Développement Multimédia

Aller au contenu

[Résolu]effet de neige télévision réaliste

PAO Flash

33 réponses à ce sujet

#1 swannbox-internet

    Ceinture Blanche

  • Members
  • Pip
  • 2 messages

Posté 23 October 2006 - 20:23 PM

Bonjour,

Je cherche des infos ou des visuelles pour reproduire un effet de neige de télévision réaliste...
J'ai bien vu qu'il parait que ce sujet a déjà était abordé en nov 2003, mais malgrès mes recherches je n'ai rien trouvé!!

Merci de votre aide si vous avez des infos là dessus

Modifié par then, 23 October 2006 - 20:25 PM.


#2 thebestprog

  • Members
  • PipPipPipPipPipPipPipPip
  • 525 messages

Posté 23 October 2006 - 22:52 PM

Salut , voilà un petit exemple rapidos icon_wink.gif :

Fichier(s) joint(s)



#3 telov

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 158 messages

Posté 23 October 2006 - 22:56 PM

salut !
CITATION

un effet de neige de télévision réaliste...


Dis thebestprog, t'as la télé chez toi ?
icon_smile.gif

Modifié par on_drag_on, 23 October 2006 - 23:00 PM.


#4 swannbox-internet

    Ceinture Blanche

  • Members
  • Pip
  • 2 messages

Posté 23 October 2006 - 22:59 PM

OK merci pour ta réactivité mais ce n'est pas exactement ce type de neige que je cherche.

Ce que je souhaite faire c'est reproduire un écran de télévision remplit de neige parasite, de plus j'aimerai que ce soit assé réaliste!

Je ne peux pas utiliser de vidéo car ensuite je vais devoir agir sur cette neige "électronique", mais pour l'instant je veux déjà réaliser ce rendu de neige TV et ça n'a pas l'air d'être si courant car je ne trouve aucune info nul part!!

Merci quand même

#5 tidamz

  • Members
  • PipPipPipPipPipPipPipPip
  • 2568 messages

Posté 23 October 2006 - 23:16 PM

terrible the bestprog !!! terrible ! icon_mrgreen.gif

#6 dada

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 8510 messages

Posté 24 October 2006 - 00:34 AM

Salut smile.gif

thebestprog, la "neige sur un écran de télé" est une sorte d'expression qui désigne ce qu'on voit sur un téléviseur dont le tuner n'est pas réglé, lorsque çà fourmille de points noirs et blancs. wink.gif smile.gif Enfin on voyait surtout çà sur les anciennes télés, vu que maintenant çà commute souvent sur un écran bleu. ^^

#7 telov

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 158 messages

Posté 24 October 2006 - 01:12 AM

@ then :
http://jeanphiblog.media-box.net/dotclear/...ffet-vieux-film
t'as pas bien cherché icon_wink.gif, c'était pas loin pourtant ``.

#8 dada

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 8510 messages

Posté 24 October 2006 - 01:45 AM

Un ptit exemple de neige avec Flash8 smile.gif :
Actionscript
import flash.display.BitmapData;
import flash.filters.ConvolutionFilter;
 
Stage.scaleMode = "noScale";
 
var myBitmapData:BitmapData = new BitmapData(300, 300, true, 0);
 
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
 
var matrixX:Number = 3;
var matrixY:Number = 3;
var matrix:Array = [2, 2, 2, 2, 4, 2, 2, 2, 2];
var divisor:Number = 16;

var filter:ConvolutionFilter = new ConvolutionFilter(matrixX, matrixY, matrix, divisor);
 
var increment:Number = 0;
setInterval (neige, 30);
function neige()
{
myBitmapData.noise(increment++, 0, 255, 1, true);
myBitmapData.applyFilter(myBitmapData, myBitmapData.rectangle, new Point(0, 0), filter);
}

En modifiant les paramètres du ConvolutionFilter (ou en l'enlevant) tu peux ajuster l'effet. smile.gif

Fichier(s) joint(s)



#9 thebestprog

  • Members
  • PipPipPipPipPipPipPipPip
  • 525 messages

Posté 24 October 2006 - 08:55 AM

icon_redface.gif Aye…aye …aye…yaay , et moi qui croyait que j’ai bien répondu icon_rolleyes.gif … avec le truc

De clin d’œil que j’ai mis ( icon_wink.gif ) , je vais faire un truc Intelligent maintenant : je_sors.png vite d'ici icon_mrgreen.gif

Modifié par thebestprog, 24 October 2006 - 08:56 AM.


#10 nicolas_blondel

    Ceinture Blanche

  • Members
  • Pip
  • 13 messages

Posté 12 February 2007 - 12:28 PM

Le code marche nickel merci beaucoup ! gourou.gif

#11 pablopikassiette

  • Members
  • PipPipPipPipPipPipPipPip
  • 762 messages

Posté 13 February 2007 - 18:27 PM

CITATION(dada @ Oct 24 2006, 01:45 AM) Voir le message

Un ptit exemple de neige avec Flash8 smile.gif :
Actionscript
import flash.display.BitmapData;
import flash.filters.ConvolutionFilter;
 
Stage.scaleMode = "noScale";
 
var myBitmapData:BitmapData = new BitmapData(300, 300, true, 0);
 
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
 
var matrixX:Number = 3;
var matrixY:Number = 3;
var matrix:Array = [2, 2, 2, 2, 4, 2, 2, 2, 2];
var divisor:Number = 16;

var filter:ConvolutionFilter = new ConvolutionFilter(matrixX, matrixY, matrix, divisor);
 
var increment:Number = 0;
setInterval (neige, 30);
function neige()
{
myBitmapData.noise(increment++, 0, 255, 1, true);
myBitmapData.applyFilter(myBitmapData, myBitmapData.rectangle, new Point(0, 0), filter);
}

En modifiant les paramètres du ConvolutionFilter (ou en l'enlevant) tu peux ajuster l'effet. smile.gif

Sympathique comme effet, à votre avis il est possible de faire la même chose avec flash 7 mx en code?
Je pense perso que c'est mort, et qu'on est obligé de faire de l'image par image…
Vous en pensez quoi?

#12 grgrdvrt

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 3135 messages

Posté 14 February 2007 - 13:42 PM

salut

c'est quand même completement basé sur le bitmap et ses filtres, pour passer ça en flash 7 il faut revoir entierement le truc mais ce sera dur (duplication de plein de clips donc ça va ramer... icon_confused.gif )

#13 pablopikassiette

  • Members
  • PipPipPipPipPipPipPipPip
  • 762 messages

Posté 15 February 2007 - 17:56 PM

C'est bien ce que je pensais…
Le mieux est donc de faire une petite anime image par image qui tourne en boucle.

#14 matt-murdock

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 6851 messages

Posté 19 February 2007 - 21:02 PM

CITATION(Pablo PiKassiette @ Feb 15 2007, 05:56 PM) Voir le message


Le mieux est donc de faire une petite anime image par image qui tourne en boucle.

ben c est comme cela qu on faisait avant flash 8...

icon_neutral.gif

#15 pablopikassiette

  • Members
  • PipPipPipPipPipPipPipPip
  • 762 messages

Posté 20 February 2007 - 02:45 AM

Sniff, moi j'ai fait l'impasse sur la version 8, j'attend la 9 pour me mettre à jour et en profiter pour changer de machine (un petit mac pro…).

#16 DrDJo1327250234

    Ceinture Blanche

  • Members
  • Pip
  • 9 messages

Posté 06 March 2007 - 18:43 PM

Bonjour,

Très joli effet, c'est exactement ce que je cherchais ! Je n'ai jamais fais de flash, est-ce possible d'appliquer cet effet à du texte ? et que le reste soit normal ?

Cordialement.

#17 nicoptere

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 3946 messages

Posté 06 March 2007 - 19:07 PM

salut,
oui, en faisant un masque.
tu crées un clip, tu mets du texte (statique) dedans, tu glisses sur la scène et après le code de dada; tu rajoutes:
Actionscript
this.setMask( nomDeTonClip );

nota ça va masquer toute la scène, il vaut mieux en faire un clip.

#18 DrDJo1327250234

    Ceinture Blanche

  • Members
  • Pip
  • 9 messages

Posté 06 March 2007 - 19:31 PM

Hum, je sais pas si j'ai bien saisi,
1) J'ai créé un nouveau document Flash
2) Dans calque 1: Editeur ActionScript, j'ai copié collé le code de dada.
3) J'ai fais insertion > Nouveau Symbole > Clip "ClipTv"
4) Sur Ce clip j'ai ajouté le Texte "Morse".
5) J'ai rajouté à la fin du code de dada this.setMask("ClipTv");
6) J'ai essayé, mais on ne vois que la neige TV et pas le texte.

Je suis vraiment débutant, c'est mon premier document flash, alors je suis assez perdu icon_biggrin.gif

Merci beaucoup pour votre aide et votre patience.


#19 DrDJo1327250234

    Ceinture Blanche

  • Members
  • Pip
  • 9 messages

Posté 06 March 2007 - 21:06 PM

Désolé de vous embetter avec ça, surtout que je pense que cela doit être très simple à faire, quelqu'un pourrait me montrer un exemple ou les étapes (plus en détail).

Le but est d'obtenir ceci:


Avec les lettre qui sont animées avec la neige tv.

Merci d'avance pour votre aide smile.gif

Modifié par DrDJo, 06 March 2007 - 21:07 PM.


#20 dada

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 8510 messages

Posté 06 March 2007 - 23:35 PM

Salut,

vérifie quelques points :
le clip qui contient le texte doit avoir un nom d'ocurence (celui que tu utilises dans le code), doit être placé au même endroit que le clip de neige sur la scène, et doit contenir un texte statique avec une police installée sur ton ordi (Arial par exemple).

Pour le nom d'occurence, il faut sélectionner l'occurence du symbole sur la scène, et la rentrer dans le panneau de propriétés.

Si tu donnes "texte_mc" comme nom d'occ, la ligne à ajouter :
Actionscript
mc.setMask(texte_mc);


Puis çà devrait être bon wink.gif

++

#21 DrDJo1327250234

    Ceinture Blanche

  • Members
  • Pip
  • 9 messages

Posté 07 March 2007 - 01:18 AM

Après plusieurs essais, aucuns ne sont concluants, soit j'arrive à obtenir un flash blanc soit uniquement l'animation de dada ...
Je dois vraiment pas être doué, ou alors j'ai mal saisi quelque chose...
Auriez-vous un tutorial ou une source du même type que je prenne exemple ?

Merci pour votre aide.

#22 nicoptere

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 3946 messages

Posté 07 March 2007 - 07:52 AM

salut,
en grand débutant tu devrais aller voir comment créer un clip et comment nommer une occurence sur la scène.
+ comment et où mettre du code sur la scène.
déja c'est courageux de s'attaquer d'emblée à un effet aussi complexe alors couarge.

#23 DrDJo1327250234

    Ceinture Blanche

  • Members
  • Pip
  • 9 messages

Posté 07 March 2007 - 11:04 AM

Bonjour,

J'ai consulté plusieurs tutoriaux débutant, je connais désormais mieux les différents éléments que composent Flash (Scène, Scénario ...).
Je pense avoir compris comment faire, j'ai donc refait ce que vous m'aviez dit plus haut, mais l'animation ne veut pas être "Masquée" sur le texte. Elle l'écrase.

En étudiant un tutorial sur les masques, j'ai essayé une autre méthode (Clic droit sur calque avec texte puis "Masquer"). Mais j'obtiens toujours le même résultat sad.gif

Avez vous réussi à le reproduire ?


#24 paodao

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 7081 messages

Posté 07 March 2007 - 16:03 PM

salut

cela marche aussi avec les textes dynamique

a+

Fichier(s) joint(s)



#25 DrDJo1327250234

    Ceinture Blanche

  • Members
  • Pip
  • 9 messages

Posté 07 March 2007 - 23:15 PM

Merci beaucoup, effectivement, cela venait d'un problème de nommage du clip, je viens de comprendre grâce à ton .fla, merci à tous pour votre aide et bonne continuation smile.gif

#26 lordguad

    Ceinture Blanche

  • Members
  • Pip
  • 1 messages

Posté 11 August 2007 - 13:51 PM

Slt a tous

tip top ce code. J'ai une petite question .. hum... icon_redface.gif

Je souhaiterai l'utiliser mais comme tt est en script... comment placer cet écran neige à un endroit donné de ma scène???

(en fait g un joli bandeau avec une télé dessus, mais elle n'est pas en coordonnées (0;0) de la scène...

HElp please.


#27 Logic

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 2733 messages

Posté 13 August 2007 - 15:24 PM

De la neige:

http://www.cedric-jules.fr/mypapervision6/...pervision6.html

#28 kemerce

    Ceinture Blanche

  • Members
  • Pip
  • 8 messages

Posté 07 January 2008 - 18:47 PM

Salut !

Un grand merci dada !
excellent script !

icon_smile.gif

#29 koi-koi

    Ceinture Blanche

  • Members
  • Pip
  • 1 messages

Posté 13 June 2008 - 23:08 PM

Pas mieux : merci pour le SWF !! wink.gif

#30 juanpa

    Ceinture Verte

  • Members
  • PipPipPipPip
  • 73 messages

Posté 20 July 2008 - 12:11 PM

salut !

petite question ...comment stopper l'effet neige du script de Dada sur une image donnée...???

merci

#31 rockntrek

    Ceinture Noire

  • Members
  • PipPipPipPipPipPipPip
  • 404 messages

Posté 20 October 2008 - 00:28 AM

Salut !

J'ai essayer d'adapter l'effet de dada en version as3, ce qui donne :

Action Script



/* Dimensions */
var tvWidth:int = 300;
var tvHeight:int = 300;

/* Filtre */
var matrixX:Number = 2;
var matrixY:Number = 2;
var divisor:Number = 16;
var matrix:Array = [2, 2, 2, 2, 4, 2, 2, 2, 2];
var filter:ConvolutionFilter = new ConvolutionFilter(matrixX, matrixY, matrix, divisor);

/* Vitesse de l'animation */
var frameRate:int = 30;
var timer:Timer = new Timer(frameRate,0);
timer.addEventListener(TimerEvent.TIMER, neige);

/* Controle de la mémoire */
var totalMemory:Number = new Number();

/* Conteneur MovieClip */
var container:MovieClip = new MovieClip();
this.addChild(container);

/* Nombre de la valeur de départ aléatoire */
var randomSeed:Number = 0;

/* Création de l'image */
var rect:Rectangle = new Rectangle(0, 0, tvWidth, tvHeight);
var bitmapData:BitmapData = new BitmapData(tvWidth, tvHeight, true, 0);

/* Démarrage de l'animation */
timer.start();

function neige(evt:TimerEvent):void
{
randomSeed ++;
bitmapData.noise(randomSeed, 0, 255, 1, true);
bitmapData.applyFilter(bitmapData, rect, new Point(0, 0), filter);
var bmp:Bitmap = new Bitmap(bitmapData);
this.container.addChild(bmp);
if(this.container.numChildren > 1)
{
trace("Nombre total d'enfants : " + this.container.numChildren);
this.container.removeChild(this.container.getChildAt(1));
}
totalMemory = System.totalMemory / 1024 / 1024;
trace("Mémoire total occupée : " + totalMemory.toFixed(2) + "Mb");
if(totalMemory > 5.90)
{
trace("Destruction des objects inutiles");
System.gc();
}
}



Maintenant si quelqu'un connaît une autre manière sur comment optimiser les ressources je suis prenneur wink.gif

#32 moberno

    Ceinture Blanche

  • Members
  • Pip
  • 3 messages

Posté 07 January 2009 - 19:50 PM

Bonjour à tous et merci pour le script Dada.

Le problème que je rencontre est le suivant :

j'ai inclus ce script dans une fonction que j'appelle lorsque l'on clique sur un bouton (en fait c'est une télévision)

J'ai remarqué qu'au fur et à mesure que j'appelle ce script, mon animation ralentit, surtout au niveau des flux vidéos. J'imagine que le lecteur doit saturer. Comment faire donc pour décharger ce script lorsque l'on en veut pas.

y a pas un removeBitmapqqch ?

j'ai tenté de supprimer le movieClip mc : removeMovieClip(mc)

mais rien y fait.

pour info, je suis sur Flash 8 et voici mes deux fonctions :

Action Script


//etat de l'ecran
var brouille:Boolean = false;


function ecranNeigeux():Void {

var myBitmapData:BitmapData = new BitmapData(460, 360, true, 0);

var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());

var matrixX:Number = 3;
var matrixY:Number = 3;
var matrix:Array = [2, 2, 2, 2, 4, 2, 2, 2, 2];
var divisor:Number = 16;

var filter:ConvolutionFilter = new ConvolutionFilter(matrixX, matrixY, matrix, divisor);

var increment:Number = 0;
setInterval (neige, 30);
function neige()
{
myBitmapData.noise(increment++, 0, 255, 1, true);
myBitmapData.applyFilter(myBitmapData, myBitmapData.rectangle, new Point(0, 0), filter);
}
mc._x = 860;
mc._y = 588;
attachMovie("ecranMaskClp", "ecranMask2", 600);
ecranMask2._x = 861,3;
ecranMask2._y = 588,2;
mc.setMask(ecranMask2)
brouille = true;
}//fin de la fonction ecranNeigeux()


//fonction pour supprimer l'écran neigeux
function EcranClair() :Void {
if (brouille == true) {
removeMovieClip(mc);
removeMovieClip(ecranMask2);
brouille = false;
}
}


D'avance merci pour votre aide

#33 moberno

    Ceinture Blanche

  • Members
  • Pip
  • 3 messages

Posté 07 January 2009 - 20:17 PM

Je me réponds à moi même puisque je viens de trouver la réponse.

C'est la fonction setInterval() qui doit être détruite par clearInterval() (Je précise que je débute et que pour moi, cela n'était pas évident icon_rolleyes.gif )

Voici donc pour ceux que cela intéresse, mes 2 fonctions :

Action Script


function ecranNeigeux():Void {

var myBitmapData:BitmapData = new BitmapData(460, 360, true, 0);

var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());

var matrixX:Number = 3;
var matrixY:Number = 3;
var matrix:Array = [2, 2, 2, 2, 4, 2, 2, 2, 2];
var divisor:Number = 16;

var filter:ConvolutionFilter = new ConvolutionFilter(matrixX, matrixY, matrix, divisor);

var increment:Number = 0;
neigeInterval = setInterval (neige, 30);
function neige()
{
myBitmapData.noise(increment++, 0, 255, 1, true);
myBitmapData.applyFilter(myBitmapData, myBitmapData.rectangle, new Point(0, 0), filter);
}
mc._x = 860;
mc._y = 588;
attachMovie("ecranMaskClp", "ecranMask2", 600);
ecranMask2._x = 861,3;
ecranMask2._y = 588,2;
mc.setMask(ecranMask2)
brouille = true;
}//fin de la fonction ecranNeigeux()

function ecranClair() :Void {
if (brouille == true) {
clearInterval(neigeInterval);
removeMovieClip(mc);
removeMovieClip(ecranMask2);
brouille = false;
}
}

En tout cas merci pour ce script

#34 espasscompositeurs

    Ceinture Orange

  • Members
  • PipPipPip
  • 44 messages

Posté 19 February 2009 - 11:53 AM

Salut, j'ai fait cet effet avec des filtres de bruits dans photoshop puis importation et animation frame par frame dans flash.
Ci joint un swf.

Fichier(s) joint(s)





1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP