当前位置: 首页 > news >正文

通过three.js玩转车展项目

1.项目搭建

1.1 创建文件夹

mkdir 文件名

1.2 初始化package.json

npm init -y

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

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. 项目源码地址:

点击跳转源码

相关文章:

  • 【我与java的成长记】之面向对象的初步认识
  • Adobe InDesign各版本安装指南
  • 如何进行镜像管理
  • React 调试
  • 脱壳后多dex文件合并进apk反编译
  • 如何使用Docker将.Net6项目部署到Linux服务器(二)
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • HttpURLConnection发送各种内容格式
  • mysql怎么只允许指定IP访问
  • 书生·浦语大模型实战营——两周带你玩转微调部署评测全链路
  • Jenkins的邮箱配置和插件下载
  • PHP数组定义和输出
  • 【深度学习-目标检测】03 - Faster R-CNN 论文学习与总结
  • Laravel框架使用phpstudy本地安装的composer用Laravel 安装器进行安装搭建
  • 【操作系统】探究进程奥秘:显示进程列表的解密与实战
  • Angular 响应式表单 基础例子
  • Docker容器管理
  • JavaScript-Array类型
  • Java小白进阶笔记(3)-初级面向对象
  • Linux中的硬链接与软链接
  • Netty 框架总结「ChannelHandler 及 EventLoop」
  • node-glob通配符
  • 测试如何在敏捷团队中工作?
  • 对象引论
  • 力扣(LeetCode)965
  • 配置 PM2 实现代码自动发布
  • 少走弯路,给Java 1~5 年程序员的建议
  • Linux权限管理(week1_day5)--技术流ken
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 昨天1024程序员节,我故意写了个死循环~
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (二)换源+apt-get基础配置+搜狗拼音
  • (接口封装)
  • (原)本想说脏话,奈何已放下
  • (转载)深入super,看Python如何解决钻石继承难题
  • ***监测系统的构建(chkrootkit )
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .net framework4与其client profile版本的区别
  • .NET开源项目介绍及资源推荐:数据持久层
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • .one4-V-XXXXXXXX勒索病毒数据怎么处理|数据解密恢复
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑
  • ::before和::after 常见的用法
  • [acm算法学习] 后缀数组SA
  • [AIGC] MySQL存储引擎详解
  • [Angular] 笔记 6:ngStyle
  • [BSGS算法]纯水斐波那契数列
  • [BZOJ 4598][Sdoi2016]模式字符串
  • [BZOJ2281][SDOI2011]黑白棋(K-Nim博弈)
  • [C#]使用PaddleInference图片旋转四种角度检测
  • [CSS]中子元素在父元素中居中
  • [dfs搜索寻找矩阵中最长递减序列]魔法森林的秘密路径