Heim > Web-Frontend > H5-Tutorial > HTML5-Leinwand erlangt 3D-Schneeflockentanzeffekt_html5-Tutorialfähigkeiten

HTML5-Leinwand erlangt 3D-Schneeflockentanzeffekt_html5-Tutorialfähigkeiten

WBOY
Freigeben: 2016-05-16 15:48:26
Original
1511 Leute haben es durchsucht


复制代码
代码如下:

var SCREEN_WIDTH = window.innerWidth;
var SCREEN_HEIGHT = window.innerHeight;

var-Container;

var-Partikel;

var camera;
var scene;
var renderer;

var MouseX = 0;
var MouseY = 0;

var windowHalfX = window.innerWidth / 2;
var windowHalfY = window.innerHeight / 2;

var Partikel = [];
var PartikelImage = new Image();//THREE.ImageUtils.loadTexture( "img/ParticleSmoke.png" );
PartikelImage.src = 'images/ParticleSmoke.png';



function init() {

container = document.createElement('div');
document.body.appendChild(container);

camera = new THREE.PerspectiveCamera( 75, SCREEN_WIDTH / SCREEN_HEIGHT, 1, 10000 );
camera.position.z = 1000;

scene = new THREE.Scene();
scene.add(camera);

renderer = new THREE.CanvasRenderer();
renderer.setSize(SCREEN_WIDTH, SCREEN_HEIGHT);
var material = new THREE.ParticleBasicMaterial( { map: new THREE.Texture(particleImage) } );

for (var i = 0; i < 500; i ) {

Partikel = neues Partikel3D( Material);
Partikel.position.x = Math.random() * 2000 - 1000;
Partikel.position.y = Math.random() * 2000 - 1000;
Partikel .position.z = Math.random() * 2000 - 1000;
Particle.scale.x = Particle.scale.y = 1;
Scene.add( Particle );

Particles. push(Partikel);
}

container.appendChild( renderer.domElement );


document.addEventListener( 'mousemove', onDocumentMouseMove, false );
document.addEventListener( 'touchstart', onDocumentTouchStart, false );
document.addEventListener( 'touchmove', onDocumentTouchMove, false );

setInterval( loop, 1000 / 60 );

}

function onDocumentMouseMove( event ) {

mouseX = event.clientX - windowHalfX;
mouseY = event.clientY - windowHalfY;
}

Funktion onDocumentTouchStart( event ) {

if ( event.touches.length == 1 ) {

event.preventDefault();

mouseX = event.touches[ 0 ].pageX - windowHalfX;
mouseY = event.touches[ 0 ].pageY - windowHalfY;
}
}

Funktion onDocumentTouchMove( event ) {

if ( event.touches.length == 1 ) {

event.preventDefault();

mouseX = event.touches[ 0 ].pageX - windowHalfX;
mouseY = event.touches[ 0 ].pageY - windowHalfY;
}
}

//

Funktion loop() {

for(var i = 0; i {

var Partikel = Partikel[i];
Partikel.updatePhysics();

with(particle.position)
{
if(y<-1000) y =2000;
if(x>1000) x-=2000;
else if(x<-1000) x =2000;
if(z>1000) z-=2000;
else if(z<-1000) z =2000;
}
}

camera.position.x = ( mouseX - camera.position.x ) * 0.05;
camera.position.y = ( - mouseY - camera.position.y ) * 0,05;
camera.lookAt(scene.position);

renderer.render( Szene, Kamera );


}

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage