three实现渐变三维纸张翻页动画效果代码
代码语言:html
所属分类:动画
代码描述:three实现渐变三维纸张翻页动画效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> body { overflow: hidden; margin: 0; } </style> </head> <body > <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/es-module-shims.1.6.2.js"></script> <script type="importmap"> { "imports": { "three": "//repo.bfw.wiki/bfwrepo/js/module/three/build/155/three.module.js", "three/addons/": "//repo.bfw.wiki/bfwrepo/js/module/three/examples/155/jsm/" } } </script> <script type="module"> // https://discourse.threejs.org/t/does-maskpass-work-with-gradients/55485 import * as THREE from "three"; // general setup, boring, skip to the next comment console.clear( ); var scene = new THREE.Scene(); scene.background = new THREE.Color( 'black' ); var camera = new THREE.PerspectiveCamera( 30, innerWidth/innerHeight ); camera.position.set( 0, 0, 10 ); camera.lookAt( scene.position ); var renderer = new THREE.WebGLRenderer( {antialias: true} ); renderer.setSize( innerWidth, innerHeight ); renderer.setAnimationLoop( animationLoop ); document.body.appendChild( renderer.domElement ); window.addEventListener( "resize", (event) => { camera.aspect = innerWidth/innerHeight; camera.updateProjectionMatrix( ); renderer.setSize( innerWidth, innerHeight ); }); // next comment // lights for the color gradients var blueLight = new THREE.SpotLight( 'royalblue', 500, 10, 0.35, 1, 2 ); blueLight.position.set( 0, 0, 10 ); scene.add( blueLight ); var redTarget = new THREE.Obje.........完整代码请登录后点击上方下载按钮下载查看
网友评论0