Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493

    vernice che cola - panit drip

    ciao a tutti.

    qualcuno sa come creare un effetto di vernice che cola su flash?

    mi servirebbero più getti di vari colori, non mi interessa che i colori si mischino tra loro.

    ho trovato questo actionscript che fa degli schizzi di pennello al movimento del mouse, a me serve per una intro che faccia tutto da se, che coli e se ne vada.

    questo non fa a caso mio perche si attiva al movimento del mouse ma graficamente mi piace
    http://www.manetas.com/pollock/pollock.swf

    questo è un pò bruttino e non fa al caso mio. come potrei rifarlo?

    grazie

    codice:
    import flash.display.BitmapData;
    import flash.geom.Point;/*list of colors to use*/
    var colors:Array = [0xE5E5D9, 0xF5DAAF, 0x252122, 0xFEA610];/*the current color to draw with*/
    var colorIndex:Number = 0;/*the bitmap to hold the drawing*/
    var bm:BitmapData = new BitmapData(500, 500, false, 0x000000);/*the old position of the mouse pointer*/
    var oldPoint:Point = new Point(_xmouse, _ymouse);/*draw every time the mouse moves*/
    _root.onMouseMove = function() {
    	var newPoint:Point = new Point(_xmouse, _ymouse);
    	var dist:Number = Point.distance(oldPoint, newPoint);/*only draw if the mouse pointer has moved far enough*/
    	if (dist>.1) {/*draw a larger point if the mouse has not moved very far   */
    		var radius = 18-Math.min(16, dist);/*draw splotch under mouse pointer*/
    		drawSpot(_xmouse,_ymouse,radius);/*get the velocity of the mouse */
    		var dx = new Point(_xmouse, oldPoint.y).subtract(oldPoint).x;
    		var dy = new Point(oldPoint.x, _ymouse).subtract(oldPoint).y;/*move the point away from the mouse pointer based on the velocity of the mouse*/
    		/*draw splatter*/
    		for (var i = 0; i<20; i++) {
    			drawSpot(_xmouse+(dx*4)*Math.random(),_ymouse+(dy*4)*Math.random(),radius*Math.random());
    		}
    		_root.attachBitmap(bm,1);
    		oldPoint = newPoint;
    		updateAfterEvent();
    	}
    };/*change the color when the mouse is pressed*/
    _root.onMouseDown = function() {
    	colorIndex = ++colorIndex<colors.length ? colorIndex : 0;
    };/*Draw a spot by looping through the radius in the x and y and drawing */
    /*points that fall within the radius of the circle.*/
    function drawSpot(x:Number, y:Number, radius:Number, color:Number) {
    	for (var i = -radius/2; i<radius/2; i++) {
    		for (var j = -radius/2; j<radius/2; j++) {/*check if the point is within the circle*/
    			if (Math.sqrt(i*i+j*j)<radius/2) {
    				bm.setPixel(x+i,y+j,colors[colorIndex]);
    			}
    		}
    	}
    }

  2. #2
    Potresti creare dei waypoint. (google è tuo amico)

    In pratica crei un "path" costituito da nodi
    Oppure, piu' semplicemente, crei dinamicamente un path tramite una formula.

    Nel mio sito, in firma, trovi degli esempi (non sorgenti).

    Sono stato spiegato?
    Official: www.radicadesign.com
    Blog: radicadesign.splinder.com
    Webdesigner | Flasher | Game Developer

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.