Aller au contenu | Aller au menu | Aller à la recherche

Thursday 29 May 2008

Je sais

Je sais est la nouvelle campagne pour voyage-sncf. On finira bien par comprendre que le site ne vend pas que des billets de train mais aussi des billets d'avions et des formules de voyage.
Sans doute un atout au début - voyage-sncf est le site de référence pour se réserver des billets en ligne (je ne connais personne qui n'achète pas ses billets chez eux, alors qu'ils ne sont pas les seuls) - il semblerait qu'ils veulent désormais communiquer sur leurs autres services.
En dehors de ces considérations marketing qui ne m'intéressent pas vraiment, l'agence DDB a conçu un site mêlant papervision et export d'image en flash. Projet conduit par Didier Brun (grand guru flash), j'ai pu saisir l'occasion de développer mon premier moteur papervision pour un projet professionnel. Le site est vraiment bien, simple, pas du tout dans un démonstration ni surenchère de 3D comme peuvent l'être beaucoup de projets flash en papervision. C'est sympa de se faire plaisir en finesse.


Voir le site : http://www.je-sais.net/

Monday 26 May 2008

VectorVision, perlincarpet

Mark Barcinski & Adrien Jeanjean viennent de sortir VectorVision, le chaînon manquant entre les 2 moteur 3D, Papervision et FIVe3D , l'un à base de bitmap et l'autre vectoriel. Cette extension permet d'intégrer dans un environnement Papervision les objets de FIVe3D. Pour le plus grand bonheur des graphistes, VectorVision permet donc de faire de la 3D papervision avec de la typo vectorisée antialiasée - grande spécialité de FIVe3D.

En guise d'illustration, voici une variation de l'animation perlin carpet utilisant notre nouveau moteur.


Cliquez sur l'image pour lancer le flash ou ici
Les sources.
Pour compiler le tout, il vous faudra la bibliothèque de classe de PV3D et de VectorVision.

Friday 9 May 2008

Flint, générateur de particules

Flint est un projet open source de générateur de particules en AS3. Le principe est de manipuler un flot de particules auxquelles s'appliquent de nombreuses propriétés et méthodes. La documentation est bien complète, l'utilisation simple. Loin de la mode 3d, je pense qu'il y a matière à faire des animations créatives avec Flint.
Un exemple :


Cliquez sur l'image pour lancer le flash ou ici, puis déplacer la souris pour repousser les particules
Le site de Flint.

Le code

package {
	import flash.display.Sprite;
	import flash.geom.Point;
	import flash.filters.BlurFilter;
	import flash.geom.Rectangle;
	
	import org.flintparticles.actions.*;
	import org.flintparticles.counters.*;
	import org.flintparticles.displayObjects.*;
	import org.flintparticles.emitters.Emitter;
	import org.flintparticles.initializers.*;
	import org.flintparticles.renderers.*;
	import org.flintparticles.zones.*;	
	import org.flintparticles.activities.*;

	public class Fountain extends Sprite {
		public function Fountain() {
			var emitter:Emitter = new Emitter();

			emitter.counter = new Steady( 30 );
			
			emitter.addInitializer( new ImageClass( Dot, 5 ) );
			emitter.addInitializer( new ColorInit( 0xFFFF33FF, 0xFFFFFF33 ) );
			emitter.addInitializer( new Position( new PointZone( new Point( 0, 0 ) ) ) );
			emitter.addInitializer( new Velocity( new DiscSectorZone( new Point( 0, 0 ), 260, 360, -3 * Math.PI/5, -2 * Math.PI / 5 ) ) );
			emitter.addInitializer( new RotateVelocity( -4, 4 ) );
			emitter.addInitializer( new Lifetime( 6 ) );
			
			emitter.addAction( new MouseAntiGravity(200, 10) );
			
			emitter.addAction( new Move() );
			emitter.addAction( new Rotate() );
			emitter.addAction( new Accelerate( 150, 150 ) );
			emitter.addAction( new Age() );
			emitter.addAction( new Scale( 0.1, 10 ) );
			emitter.addAction( new DeathZone( new RectangleZone( -10, -10, 510, 510 ), true ) );
			
			var renderer:BitmapRenderer = new BitmapRenderer( new Rectangle( 0, 0, 500, 500 ) );
			renderer.addFilter( new BlurFilter( 2, 2, 10 ) );
			emitter.renderer = renderer;
			addChild( renderer );
			
			emitter.x = 50;
			emitter.y = 510;
			emitter.start( );
		}
	}
}