three按住左键降速动画效果代码

代码语言:html

所属分类:动画

代码描述:three按住左键降速动画效果代码

代码标签: 降速 动画 效果

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<html lang="en">
<head>

   
<meta charset="UTF-8">



   
<style>
@import url(https://fonts.googleapis.com/css?family=Open+Sans:800);

       
#instructions {
           
position: absolute;
           
width: 100%;
           
top: 50%;
           
margin: auto;
           
margin-top: 100px;
           
font-family: 'Open Sans', sans-serif;
           
color: #fff;
           
font-size: 1.2em;
           
text-transform: uppercase;
           
text-align: center;
       
}

       
#world {
           
background-color: #8cdfd4;
       
}

        body
{
           
background-color: #fff;
           
overflow: hidden;
       
}
       
#credits {
           
position: absolute;
           
width: 100%;
           
margin: auto;
           
bottom: 0;
           
margin-bottom: 20px;
           
font-family: 'Open Sans', sans-serif;
           
color: #56ac9f;
           
font-size: 0.7em;
           
text-transform: uppercase;
           
text-align: center;
       
}
       
#credits a {
           
color: #56ac9f;
       
}
   
</style>



</head>

<body>
   
<div id="world">

       
<div id="instructions">
            Press and hold
<br>to slow down
       
</div>


       
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/three.72.js"></script>
       
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/Stats-16.js"></script>
       
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/TweenMax.min.js"></script>
       
<script>
            var scene, camera, shadowLight, light, backLight, renderer;
            var container,
            HEIGHT,
            WIDTH,
            fieldOfView,
            aspectRatio,
            nearPlane,
            farPlane,
            stats,
            mouseX = 0,
            mouseY = 0,
            windowHalfX,
            windowHalfY,
            distortionAngle = 0,
            shakeAngle = 0,
            shakeAngle2 = 0,
            meteorite, metCore,
            wasteArray = [],
            frequency = 1,
            freqCount = 0,
            metShakeSpeed = .1,
            metRotateSpeed = .1,
            slowMoFactor = 1,
            shakeAmp = 3,
            colorsBright = ['#a3b509', '#79b68a', '#f4da7e', '#ff8f4e', '#9d797d', '#b91b2a', '#b4885c', '#dd6316', '#d9c4b4'],
            colorsDark = ['#000000', '#190502', '#1c1005', '#23190d', '#380008', '#131913', '#28120a', '#551705', '#471b01'],
            geometryMeteorite;



            initDocument();
            initTHREE();
            //createStats();
            createCam();
            createLight();
            createMeteorite();
            animate();
            switchFast();

            function initDocument() {
                HEIGHT = window.innerHeight;
                WIDTH = window.innerWidth;
                windowHalfX = WIDTH / 2;
                windowHalfY = HEIGHT / 2;
                container = document.getElementById('world');
                window.addEventListener('resize', onWindowResize, false);
                window.addEventListener('mousedown', switchSlow, false);
                window.addEventListener('mouseup', switchFast, false);

            }

            function initTHREE() {
                scene = new THREE.Scene();
                renderer = new THREE.WebGLRenderer({
                    alpha: true,
                    antialias: true
                });

                renderer.setPixelRatio(window.devicePixelRatio);
                renderer.setSize(WIDTH, HEIGHT);
                container.appendChild(renderer.domElement);
            }

            function createStats() {
                stats = new Stats();
                stats.domElement.style.position = 'absolute';
                stats.domElement.style.top = '0px';
                stats.domElement.style.right = '0px';
                container.appendChild(stats.domElement);
            }

            function createCam() {
                fieldOfView = 75;
                aspectRatio = WIDTH / HEIGHT;
                nearPlane = 1;
                farPlane = 3000;
                cameraZ = 800;
                camera = new THREE.PerspectiveCamera(
                    fieldOfView,
                    aspectRatio,
                    nearPlane,
                    farPlane);
                camera.position.z = cameraZ;
            }

            function createLight() {
                shadowLight = new THREE.DirectionalLight(0xffffff, 2);
                shadowLight.position.set(20, 0, 10);
                shadowLight.castShadow = true;
                shadowLight.shadowDarkness = 0.01;
                scene.add(shadowLight);

                light = new THREE.DirectionalLight(0xffffff, .5);
.........完整代码请登录后点击上方下载按钮下载查看

网友评论0