日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

html全屏飘雪花特效,html5 3D飘落雪花动画特效

發布時間:2024/3/26 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 html全屏飘雪花特效,html5 3D飘落雪花动画特效 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

特效描述:html5 3D飄落雪花動畫。雪花動畫

代碼結構

1. 引入JS

2. HTML代碼

雪花飄落場景特效

body { margin: 0; padding: 0; position: relative; background-image: url(images/xh.jpg); background-position: center; /*background-repeat: no-repeat;*/ width: 100%; height: 100%; background-size: 100% 100%; }

var SCREEN_WIDTH = window.innerWidth;//

var SCREEN_HEIGHT = window.innerHeight;

var container;

var particle;//粒子

var camera;

var scene;

var renderer;

var starSnow = 1;

var particles = [];

var particleImage = new Image();

//THREE.ImageUtils.loadTexture( "img/ParticleSmoke.png" );

particleImage.src = 'images/ParticleSmoke.png';

function init() {

//alert("message3");

container = document.createElement('div');//container:畫布實例;

document.body.appendChild(container);

camera = new THREE.PerspectiveCamera( 60, SCREEN_WIDTH / SCREEN_HEIGHT, 1, 10000 );

camera.position.z = 1000;

//camera.position.y = 50;

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) } );

//alert("message2");

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

//alert("message");

particle = new Particle3D( material);

particle.position.x = Math.random() * 2000-1000;

particle.position.z = Math.random() * 2000-1000;

particle.position.y = Math.random() * 2000-1000;

//particle.position.y = Math.random() * (1600-particle.position.z)-1000;

particle.scale.x = particle.scale.y = 1;

scene.add( particle );

particles.push(particle);

}

container.appendChild( renderer.domElement );

//document.addEventListener( 'mousemove', onDocumentMouseMove, false );

document.addEventListener( 'touchstart', onDocumentTouchStart, false );

document.addEventListener( 'touchmove', onDocumentTouchMove, false );

document.addEventListener( 'touchend', onDocumentTouchEnd, false );

setInterval( loop, 1000 / 60 );

}

var touchStartX;

var touchFlag = 0;//儲存當前是否滑動的狀態;

var touchSensitive = 80;//檢測滑動的靈敏度;

//var touchStartY;

//var touchEndX;

//var touchEndY;

function onDocumentTouchStart( event ) {

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

event.preventDefault();//取消默認關聯動作;

touchStartX = 0;

touchStartX = event.touches[ 0 ].pageX ;

//touchStartY = event.touches[ 0 ].pageY ;

}

}

function onDocumentTouchMove( event ) {

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

event.preventDefault();

var direction = event.touches[ 0 ].pageX - touchStartX;

if (Math.abs(direction) > touchSensitive) {

if (direction>0) {touchFlag = 1;}

else if (direction<0) {touchFlag = -1;};

//changeAndBack(touchFlag);

}

}

}

function onDocumentTouchEnd (event) {

// if ( event.touches.length == 0 ) {

// event.preventDefault();

// touchEndX = event.touches[ 0 ].pageX ;

// touchEndY = event.touches[ 0 ].pageY ;

// }這里存在問題

var direction = event.changedTouches[ 0 ].pageX - touchStartX;

changeAndBack(touchFlag);

}

function changeAndBack (touchFlag) {

var speedX = 25*touchFlag;

touchFlag = 0;

for (var i = 0; i < particles.length; i++) {

particles[i].velocity=new THREE.Vector3(speedX,-10,0);

}

var timeOut = setTimeout(";", 800);

clearTimeout(timeOut);

var clearI = setInterval(function () {

if (touchFlag) {

clearInterval(clearI);

return;

};

speedX*=0.8;

if (Math.abs(speedX)<=1.5) {

speedX=0;

clearInterval(clearI);

};

for (var i = 0; i < particles.length; i++) {

particles[i].velocity=new THREE.Vector3(speedX,-10,0);

}

},100);

}

function loop() {

for(var i = 0; i

var particle = particles[i];

particle.updatePhysics();

with(particle.position)

{

if((y

if(x>1000) x-=2000;

else if(x

if(z>1000) z-=2000;

else if(z

}

}

camera.lookAt(scene.position);

renderer.render( scene, camera );

}

總結

以上是生活随笔為你收集整理的html全屏飘雪花特效,html5 3D飘落雪花动画特效的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品77| 青青在线免费观看 | 91av国产在线 | 后宫秀女调教(高h,np) | 国产欧美一区二区三区在线看蜜臀 | 精品一性一色一乱农村 | 欧美精品自拍偷拍 | 91社区福利 | 亚洲在线一区二区三区 | 中国女人内96xxxxx | 国产网址在线 | 日韩啊v | 色呦| www一区二区| 午夜精品久久久久久久久久 | 亚洲无人区码一码二码三码的含义 | 免费日韩一区二区 | 97超在线| 在线观看wwww | 都市激情男人天堂 | 国产精品无码乱伦 | 国产亚洲成人精品 | 日本免费在线播放 | 欧美午夜精品久久久久久人妖 | 亚洲一区二区天堂 | 久操视频免费在线观看 | 老妇女av | 中文字幕国产专区 | 九七av | av无码一区二区三区 | 黄色羞羞网站 | 丝袜一区二区三区 | 亚洲人视频在线 | 成人av高清在线观看 | 男人的天堂在线观看av | 欧美日韩亚洲在线 | 午夜影视体验区 | 欧美a一级| av成人免费在线 | 黑人巨大xxxxx性猛交 | 亚洲天堂av在线免费观看 | 性欧美video另类hd尤物 | 欧美 亚洲 另类 激情 另类 | 欧美国产在线视频 | 国产亲伦免费视频播放 | 日本不卡一区在线观看 | 久草视频精品在线 | 在线v| 男女无遮挡免费视频 | aaaa视频| 成人福利一区二区 | aav在线| 三年电影在线观看 | 欧美视频一二三区 | 精品自拍偷拍视频 | 午夜av网站| 国产精品电影一区二区三区 | 人妻精品一区二区三区 | 亚洲欧美动漫 | www超碰| xxxxx亚洲 | 骚虎视频最新网址 | 性的免费视频 | 黄色三级在线 | 超碰偷拍 | 成人免费视频a | 国产精品天天操 | 欧美一区二区三区 | 国产在线视频导航 | 久久久久久久女国产乱让韩 | 国产免费无码一区二区 | 美女福利网站 | av自拍偷拍 | 亚洲最新色图 | 中文字幕人妻丝袜乱一区三区 | 欧美一级大黄 | 999精品| 人妻无码一区二区三区久久99 | 国产精品久久久久久久久久久不卡 | 国产一级二级三级在线 | 亚洲无码一区二区三区 | 国产精品人人爽 | 久久久国产精品视频 | 国产永久免费观看 | 乱岳 | 手机在线看永久av片免费 | 日韩字幕 | 日本va视频 | 日韩三级免费观看 | 亚洲精品成人无码熟妇在线 | 日本a在线天堂 | 亚洲理论电影在线观看 | 成年人免费小视频 | 日韩成人免费在线 | 美女天天操 | 久久久久久免费视频 | 免费看的黄色小视频 | 黄色片hd | 永久免费av无码网站性色av |