three+threeasy实现夜晚高速行驶的汽车动画效果代码
代码语言:html
所属分类:动画
代码描述:three+threeasy实现夜晚高速行驶的汽车动画效果代码
代码标签: three threeasy 夜晚 高速 行驶 汽车 动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
@import url("https://fonts.googleapis.com/css?family=Merriweather:400,400i,700");
* {
margin: 0;
}
body {
font-family: Merriweather, serif;
}
.loading {
width: 100%;
min-height: 100vh;
display: grid;
place-items: center;
background: #001219;
color: #e9c46a;
position: absolute;
top: 0;
left: 0;
transition: 1.5s ease-in-out;
}
</style>
</head>
<body translate="no">
<div class="loading">
<h1>Loading</h1>
</div>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/es-module-shims.1.6.3.js"></script>
<script type="importmap">
{
"imports": {
"three": "//repo.bfw.wiki/bfwrepo/js/module/three/build/160/three.module.js",
"three/addons/": "//repo.bfw.wiki/bfwrepo/js/module/three/examples/160/jsm/",
"threeasy": "//repo.bfw.wiki/bfwrepo/js/module/threeasy.min.js"
}
}
</script>
<script type="module">
console.clear();
import * as THREE from "three";
import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";
// import { OrbitControls } from "three/addons/controls/OrbitControls";
import Threeasy from "threeasy";
// COLORS
const white = new THREE.Color(0xe9c46a);
const black = new THREE.Color(0x001219);
const red = new THREE.Color(0xe63946);
const blue = new THREE.Color(0x457b9d);
// CREATE
const createDirLight = (c = 0xffffff, s = .5) => {
const directionalLight = new THREE.DirectionalLight(c, s);
app.scene.add(directionalLight);
return directionalLight;
};
const createPointLight = (c = 0xffffff, s = .5) => {
const pointLight = new THREE.SpotLight(c, s);
return pointLight;
};
const createSpotLight = (c = 0xffffff, s = .5, w = .3) => {
const spotLight = new THREE.SpotLight(c, s);
// console.log(spotLight)
spotLight.position.set(0, 10, 0);
spotLight.castShadow = true;
spotLight.shadow.mapSize.width = 1024;
spotLight.shadow.mapSize.height = 1024;
spotLight.shadow.camera.near = 50;
spotLight.shadow.camera.far = 40;
spotLight.shadow.camera.fov = 10;
spotLight.distance = 0;
spotLight.angle = Math.PI * w;
spotLight.penumbra = 1;
spotLight.decay = 1;
return spotLight;
};
const createLightPole = () => {
const metal = new THREE.MeshPhysicalMaterial({
color: 0x4a606d,
roughness: .3,
metalness: 1 });
const geo = new THREE.CylinderGeometry(
.2, // radiusTop
.2,.........完整代码请登录后点击上方下载按钮下载查看
网友评论0