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

点击跳转源码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/299965.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C#】Visual Studio 2022 远程调试配置教程

在某些特殊的情况下,开发机和调试机可能不是同一台设备,此时就需要远程调试了。 开发机配置 首先需要确保两台机器在同一局域网下。 创建共享文件夹 随便找个地方新建一个文件夹,用来放编译结果。例如我这里是 D:\DebuggingWorkspace\。 …

正式官宣!谈思AutoSec 8周年年会暨中国汽车网络安全及数据安全合规峰会将于明年4月在沪召开

随着智能互联网时代的到来,智能汽车的安全形势变得更加严峻和复杂,网络资产的暴露和安全边界继续扩大。与传统的汽车车身安全问题相比,网络安全、数据安全、用户隐私等安全问题交织叠加,并加速了黑客对智能汽车领域的渗透&#xf…

歌曲春节回家:歌手荆涛探寻家庭与归属感的深刻内涵

歌曲春节回家:歌手荆涛探寻家庭与归属感的深刻内涵 春节,对于中国人来说,是一个意义非凡的节日。它不仅仅是一个传统的庆祝活动,更是一种深深的家庭情怀和归属感的体现。荆涛的《春节回家》这首歌,以其深情的旋律和富…

智能优化算法应用:基于斑马算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于斑马算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于斑马算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.斑马算法4.实验参数设定5.算法结果6.参考文献7.MA…

【数据结构入门精讲 | 第五篇】栈知识点及考研408、企业面试练习

在上一篇中我们进行了表的专项练习,在这篇文章中我们将介绍栈的相关知识点。 目录 基础概念顺序栈链栈判断题选择题填空题函数题R6-1 在一个数组中实现两个堆栈 编程题R7-1 汉诺塔的非递归实现R7-2 表达式转换R7-3 出栈序列的合法性R7-4 包装机R7-1 彩虹瓶 基础概念…

智能优化算法应用:基于指数分布算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于指数分布算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于指数分布算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.指数分布算法4.实验参数设定5.算法结果6.…

TensorFlow层次结构中的三种计算图

三种计算图 所谓计算图,计算图由节点(nodes)和线(edges)组成。节点表示操作符 Operator,或者称之为算子,线表示计算间的依赖。实线表示有数据传递依赖,传递的数据即张量。虚线通常可…

07 Vue3框架简介

文章目录 一、Vue3简介1. 简介2. 相关网站3. 前端技术对比4. JS前端框架5. Vue核心内容6. 使用方式 二、基础概念1. 创建一个应用2. 变量双向绑定(v-model)3. 条件控制(v-if)4. 数组遍历(v-for)5. 绑定事件…

第十五节TypeScript 接口

1、简介 接口是一系列抽象方法的声明,是一些方法特征的集合,这些方法都应该是抽象的,需要有由具体的类去实现,然后第三方就可以通过这组抽象方法调用,让具体的类执行具体的方法。 2、接口的定义 interface interface_…

阿里云服务器记录

阿里云服务器记录 CentOS 8.4 64位 SCC版 CentOS 7.9 64位 SCC版 CentOS 7.9 64位 CentOS 7.9 64位 UEFI版 Alibaba Cloud Linux Anolis OS CentOS Windows Server Ubuntu Debian Fedora OpenSUSE Rocky Linux CentOS Stream AlmaLinux 阿里云服务器有个scc版,这个…

Qt Creator可视化交互界面exe快速入门2

上一期介绍的通过代码的方式实现一个简单界面,需要敲小几十行代码,显然是效率低的,这期就介绍下Qt Creator的作用。 Qt Creator的使用: 首先打开我们的Qt Creator 然后点击创建项目,在项目Application里面选择Qt Wid…

分享71个Java源码总有一个是你想要的

分享70个Java源码总有一个是你想要的 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 链接:https://pan.baidu.com/s/1frK-W3GT8WrydSlQ-E3o6A?pwd6666 提取码:6666 UI代码 def __init__(self):import …