Nuit etoilée en 3d

Description

80 petites étoiles s'affichent sur l'écran en fonction de leur position théorique (x - y -z) et de la souris.

1 ) Créez un nouveau document de 700 * 500 pixels avec un fond noir

2 ) Créez un clip avec le nom de liaison "etoile" dans la bibliothèque (par exemple une petite étoile blanche)

3) Copiez ce code dans le panneau action de la scène principale.

4) Faite ctrl+enter

5) Admirez le résultat !

Source / Exemple :


// Création de 80 étoiles (théoriques)
var x:Array = new Array();
var y:Array = new Array();
var z:Array = new Array();
for (a=0; a<80; a++) {
	x[a] = Math.random()*1100-200;
	y[a] = Math.random()*900-200;
	z[a] = Math.random()*5+0.5;
}
pz = -3;
// Boucle principale
_root.onEnterFrame = function() {
	// récuperer coordonnés de la sourie
	px = _xmouse;
	py = _ymouse;
	pz += 0.01;
	// Notoyer le clip sur lequel on colle les images d'étoiles
	_root.createEmptyMovieClip("base", 1);
	// Pour chaque étoile théorique ...
	for (a=0; a<x.length; a++) {
		if (pz<z[a]) {
			// Colle l'image de l'étoile
			ref = _root.base.attachMovie("etoile", a.toString(), -Math.floor(2000*z[a]));
			// Positionner et redimentsionner l'étoile (Effet 3D)
			ref._x = 350+(x[a]-px)/(z[a]-pz);
			ref._y = 250+(y[a]-py)/(z[a]-pz);
			ref._width = 1000/((z[a]-pz)*100);
			ref._height = ref._width;
		}
	}
};

Conclusion :


A vous de faire en sorte que lorsque l'on ne vois plus aucune ètoile, on revienne au début.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.