通过three.js玩转车展项目

1.项目搭建

1.1 创建文件夹

javascript 复制代码
mkdir 文件名

1.2 初始化package.json

javascript 复制代码
npm init -y

1.3 安装打包工具并配置相关依赖

javascript 复制代码
npm i parcel -d

在package.json中打包路径和指令

1.4 安装three.js

npm i three -d

2.项目搭建

2.1 新建index.html,并再index.html引入car.js,在car.js开始初始化

2.2 在car.js中初始化场景、相机、渲染器器、以及轨道控制器,此时在运行效果如下:

具体实现:

2.3 初始化载入汽车模型和初始化灯光,在init里面调用即可

运行效果如下:

2.4 建立多个光带来回移动,并照亮汽车

运行效果如下:

2.5 监听视口变化,视口变化时,及时更新相机的宽高比和渲染器的尺寸

2.6 初始化地板

运行效果如下:

2.7 初始化四周墙壁,来使得场景更加真实

运行效果如下:

2.9 初始化车身、玻璃的基础材质,通过遍历车的模型节点,区分出什么是车身、玻璃和车门,通过GUI图形用户界面可分别实现车身颜色、玻璃颜色的替换、以及车门开关和车内外视角的转变。



运行效果如下:

2.10 聚光灯初始化,使场景更加真实

运行效果如下:

2.11 监听点击事件,判断光线穿过了什么物体,从而实现开关车门的交互

运行效果如下:

3. 项目源码地址:

点击跳转源码

相关推荐
余生H4 分钟前
深入理解HTML页面加载解析和渲染过程(一)
前端·html·渲染
吴敬悦34 分钟前
领导:按规范提交代码conventionalcommit
前端·程序员·前端工程化
ganlanA35 分钟前
uniapp+vue 前端防多次点击表单,防误触多次请求方法。
前端·vue.js·uni-app
卓大胖_36 分钟前
Next.js 新手容易犯的错误 _ 性能优化与安全实践(6)
前端·javascript·安全
m0_7482463537 分钟前
Spring Web MVC:功能端点(Functional Endpoints)
前端·spring·mvc
CodeClimb38 分钟前
【华为OD-E卷 - 猜字谜100分(python、java、c++、js、c)】
java·javascript·c++·python·华为od
SomeB1oody1 小时前
【Rust自学】6.4. 简单的控制流-if let
开发语言·前端·rust
云只上1 小时前
前端项目 node_modules依赖报错解决记录
前端·npm·node.js
程序员_三木1 小时前
在 Vue3 项目中安装和配置 Three.js
前端·javascript·vue.js·webgl·three.js
lxw18449125141 小时前
vue 基础学习
前端·vue.js·学习