EFFET LANTERNE DANS L'OBSCURITÉ

pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 - 31 mai 2005 à 18:45
nensero Messages postés 1 Date d'inscription mercredi 29 octobre 2008 Statut Membre Dernière intervention 18 novembre 2008 - 18 nov. 2008 à 18:07
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/31727-effet-lanterne-dans-l-obscurite

nensero Messages postés 1 Date d'inscription mercredi 29 octobre 2008 Statut Membre Dernière intervention 18 novembre 2008
18 nov. 2008 à 18:07
Alors,
Je pense que vous devez poster des scripts avec des applications accessibles à tous,comme flash MX. Pour ce code qui ne s'ouvre pas dépuis deux jours, je ne sais plus comment faire pour ouvrir le fameux effet lanterne de Lamor afin de lui apporter les améliorations de dernières minutes.
Bien vouloir indiquer le programme convenant!
l1solent Messages postés 29 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 3 décembre 2005
29 nov. 2005 à 12:43
Dommage que l'animation ne soit pas automatisé, et que se ne sont pas des vrais couleurs
cs_lamor Messages postés 31 Date d'inscription dimanche 26 octobre 2003 Statut Membre Dernière intervention 18 septembre 2005
19 juin 2005 à 18:16
j'ai créé la fonction "lanterne" avec
m = rayon de la lampe,
x= largeur de la scène,
y=hauteur de la scène.
cs_dawi Messages postés 4 Date d'inscription dimanche 15 mai 2005 Statut Membre Dernière intervention 19 juin 2005
19 juin 2005 à 11:46
effectivement, cela fonctionne très bien, par contre quand akhenaton dit met le rayon à 120, c'est où? parce que j'arrive pas à changer la taille de la lanterne, est-ce que vous pourriez m'éclairer (sans jeu de mots)?
cs_lamor Messages postés 31 Date d'inscription dimanche 26 octobre 2003 Statut Membre Dernière intervention 18 septembre 2005
18 juin 2005 à 20:10
dawi, le code de akhénathon est logique et fonctionne.

sinon j'utilise setInterval() plutot que onEnterFrame() sans raison particuliere, cela revient au même d'utiliser l'un ou l'autre dans ce code.
setInterval permet tout de même un taux de rafraichissement plus rapide que le taux d'image par seconde imposé dans l'anim grace à "updateAfterEvent()"
cs_dawi Messages postés 4 Date d'inscription dimanche 15 mai 2005 Statut Membre Dernière intervention 19 juin 2005
18 juin 2005 à 19:35
chez moi le code ajouté par akhénaton, ne donne rien, y aurait pas une chtite erreur? faut bien recopier ce code dans la partie "//tracé de la lumière", le update after event il ne faut pas le remettre? et comment faire pour réduire la taille de la lanterne? (je suis un newbie)
merci :)
cs_lamor Messages postés 31 Date d'inscription dimanche 26 octobre 2003 Statut Membre Dernière intervention 18 septembre 2005
7 juin 2005 à 14:19
héé akhenaton, 2.6ghz!! normal que tu ne sentes pas la difference; de mon coté je test sur mon dinosaure cadencé à 366mhz :) mais je vais prendre ta loop quand même.
cs_lamor Messages postés 31 Date d'inscription dimanche 26 octobre 2003 Statut Membre Dernière intervention 18 septembre 2005
7 juin 2005 à 14:16
mais si je dessine une fois pour toute la forme et que je la drag, ca signifie que ce qui va etre en mouvement, ca sera la lumière+ l'ombre hors je ne veux pas que l'ombre bouge, c'est pas logique dans ma tête (programmation d'ottiste que je suis =^;^= )

à moin que je ne t'ai pas compris pegase...?
y a t'il une technique avec un simple drag pour que la lumière bouge sans l'ombre? (un alpha inversé par exemple?)
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
7 juin 2005 à 13:09
oui, surtout que s'il avait simplement dessiné sa forme dans un clip et fait un simple drag sur le clip, il aurait certainement gagné plus de 50% CPU ! Faites le test chez vous .. plutôt que de redessiner les traits toutes les frames ... des fois, ils ne faut pas chercher, c'est une façon de réfléchir de programmeur ! ;)
Pourquoi faire simple ....

Peg'
Utilisateur anonyme
7 juin 2005 à 12:47
essaye tu verras, sur mon pc (celeron 2,6 GHZ : 512 Mo RAM) il n'y à aucune différence entre ton algo initial, et ton algo modifié.

Je sais parcontre que sous Mac ça peut peut-être poser des soucis vu que le player n'est pas optimisé... mais le taf demandé reste raisonable ... (j'ai chargé mes anims 10 fois plus en actions et elles ne sacadent pas)

J'ai cependant une question concernant ton code. Pk tu utilises setInterval ? Tu aurais pas pû gérer le code dans l'événement Frame Enter ?
cs_lamor Messages postés 31 Date d'inscription dimanche 26 octobre 2003 Statut Membre Dernière intervention 18 septembre 2005
7 juin 2005 à 08:06
oui le coup de dégradé est bien mais ca prends beaucoup de ressource, une loop de 100 par interval... ouch :)
Utilisateur anonyme
6 juin 2005 à 21:03
Voilà un ptit effet un peu plus sympa, l'ombre est dégradé... Met le rayon à 120 par exemple et met ce bout de code à la place du tien :

// tracé de la lumière :
for (i=0; i<100; i++) {
lineStyle(2, 0x000000, 100 - i);
m = m - 1;
moveTo(_xmouse - m, _ymouse);
curveTo(_xmouse-m, _ymouse-m,_xmouse, _ymouse-m);
curveTo(_xmouse+m, _ymouse-m,_xmouse+m, _ymouse);
curveTo(_xmouse+m, _ymouse+m,_xmouse, _ymouse+m);
curveTo(_xmouse-m, _ymouse+m,_xmouse-m, _ymouse);
endFill();
}

J'ai testé avec flash MX ton fla, impossible de l'ouvrir, il aurais mieu fallu expliquer que t'avais fait un masque sur ton calque d'image, lors de mes essais je me gallérais avec une anim trop saccadé (dslé mais je suis newbie alors j'avais pas forcement vu qu'il y avais un calque) ...

Sinon, c une bonne idée, bonne continuations, akh.
cs_lamor Messages postés 31 Date d'inscription dimanche 26 octobre 2003 Statut Membre Dernière intervention 18 septembre 2005
31 mai 2005 à 19:14
c'est updaté :)
...simple paresse de ma part, le coup du spot carré
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
31 mai 2005 à 18:45
pas mal, assez fluide, mais tu sais, la fonction "curveTo" est assez efficace pour éviter les spot Carrés ...

Peg'
Rejoignez-nous