当前位置:首页 > 科技  > 软件

Vue 构建 3D 模型全新方案,TresJS 火啦?

来源: 责编: 时间:2024-06-11 17:47:36 271观看
导读Hello,大家好,我是 Sunday。说起 3D 模型构建,大家最先想到的应该就是 ThreeJS 了。但是 ThreeJS 本身是基于 WebGL 构建的 3D 模型库,学习曲线较高。特别是和 Vue 这种框架配合使用时,很多同学就需要花费较多的时间才可以

Hello,大家好,我是 Sunday。TGA28资讯网——每日最新资讯28at.com

说起 3D 模型构建,大家最先想到的应该就是 ThreeJS 了。但是 ThreeJS 本身是基于 WebGL 构建的 3D 模型库,学习曲线较高。特别是和 Vue 这种框架配合使用时,很多同学就需要花费较多的时间才可以掌握使用的方式。TGA28资讯网——每日最新资讯28at.com

那么有没有更加简单、易上手的框架呢?答案肯定是 有的,它就是咱们今天要说的主角 TresJS。TGA28资讯网——每日最新资讯28at.com

图片图片TGA28资讯网——每日最新资讯28at.com

01:TresJS

1.1 与 vue 深度兼容

TresJS 提供了完善的中文文档,我们可以直接在他的官网查看 TresJS 的使用方式。TGA28资讯网——每日最新资讯28at.com

目前 TresJS 直接兼容 vue3 和 vite,我们可以通过如下方式对 TresJS 进行使用:TGA28资讯网——每日最新资讯28at.com

  1. 直接通过 npm 进行安装 pnpm add three @tresjs/core
  2. 以插件的形式(use) 进行安装
import { createApp } from 'vue'import Tres from '@tresjs/core'import App from './App.vue'export const app = createApp(App)app.use(Tres)app.mount('#app')
  1. 在组件中直接使用
<script setup lang="ts">import { TresCanvas } from '@tresjs/core'</script><template>  <TresCanvas>    <!-- Your scene here -->  </TresCanvas></template>

1.2 完善的中文文档

学习一个库,最好的方式就是通过文档进行学习。TresJS 提供了完善的中文文档,以刚才使用的 TresCanvas 为例:TGA28资讯网——每日最新资讯28at.com

图片TGA28资讯网——每日最新资讯28at.com

根据文档中的内容,我们可以很轻松的了解 TresCanvas 组件 的使用。TGA28资讯网——每日最新资讯28at.com

那么接下来,就让我们利用 TresJS 来完成一个基本的 3D 模型展示TGA28资讯网——每日最新资讯28at.com

02:TresJS 案例

2.1 3D 场景构建基础

在使用 TresJS 之前,我们先简单了解下 3D 场景构建基础,我们来看下面的图:TGA28资讯网——每日最新资讯28at.com

图片图片TGA28资讯网——每日最新资讯28at.com

在整个 3D 场景中,包含 4 个关键概念:TGA28资讯网——每日最新资讯28at.com

  1. 物体(objects) 可以是球体、平面、灯光、你最喜欢的角色的 3D 模型(幻灯片放映类似于单词的 3D 场景)
  2. 然后我们需要一个 相机(camera) 来观察这些物体并捕捉它们。
  3. 我们将所有内容包装在一个 场景(scene) 中,然后......
  4. 我们告诉 渲染器(render) 将所有内容渲染到 DOM Canvas 元素中。

2.2 创建项目并安装 TresJS

  1. 通过 vue create project 与 pnpm add three @tresjs/core 可直接创建项目并安装 TresJS。
  2. 参考 1.1 与 vue 深度兼容 中的代码可快速构建 tresjs 基础样式。
  3. 接下来,我们可以创建 相机(camera) 即可看到一个基本的效果。
<script setup>import { TresCanvas } from '@tresjs/core'</script><template> <TresCanvas clear-color="#82DBC5">  <TresPerspectiveCamera /> </TresCanvas></template><style>* { margin: 0; padding: 0;}#app { height: 100vh; width: 100vw;}</style>
  1. 有了相机之后,我们可以利用 TresMesh 组件创建基本的模型。
<TresCanvas clear-color="#82DBC5">  <!-- 相机 -->  <TresPerspectiveCamera />  <!-- 模型 -->  <TresMesh>    <TresBoxGeometry />    <TresMeshNormalMaterial />  </TresMesh></TresCanvas>
  1. 如果想要调整模型的位置,那么我们可以直接利用 TresMesh 组件的 props 进行修改。
<TresMesh :rotation="[Math.PI / 4, Math.PI / 2, 0]">  <TresBoxGeometry />  <TresMeshNormalMaterial /></TresMesh>

此时渲染效果如下:TGA28资讯网——每日最新资讯28at.com

图片图片TGA28资讯网——每日最新资讯28at.com

今天,咱们通过一个简单的示例了解了 TresJS 的用法。如果感觉 ThreeJS 学习复杂度高的同学,那么可以看下 TresJS ,或许可以为你带来不一样的开发体验呢?TGA28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-93082-0.htmlVue 构建 3D 模型全新方案,TresJS 火啦?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 七种JavaScript 中位运算符的神奇用法

下一篇: 使用 Spring Boot 结合断点续传技术和自动重连机制实现考试系统网络不稳定性的应对策略

标签:
  • 热门焦点
  • 轿车从天而降电动车主被撞身亡 超速抢道所致:现场视频让网友吵翻

    近日,上海青浦区法院判决轿车从天而降电动车主被撞身亡案,轿车车主被判有期徒刑一年。案件显示当时男子驾驶轿车在上海某路段行驶,前车忽然转弯提速超车,
  • JavaScript 混淆及反混淆代码工具

    介绍在我们开始学习反混淆之前,我们首先要了解一下代码混淆。如果不了解代码是如何混淆的,我们可能无法成功对代码进行反混淆,尤其是使用自定义混淆器对其进行混淆时。什么是混
  • 把LangChain跑起来的三个方法

    使用LangChain开发LLM应用时,需要机器进行GLM部署,好多同学第一步就被劝退了,那么如何绕过这个步骤先学习LLM模型的应用,对Langchain进行快速上手?本片讲解3个把LangChain跑起来
  • 三言两语说透柯里化和反柯里化

    JavaScript中的柯里化(Currying)和反柯里化(Uncurrying)是两种很有用的技术,可以帮助我们写出更加优雅、泛用的函数。本文将首先介绍柯里化和反柯里化的概念、实现原理和应用
  • 深度探索 Elasticsearch 8.X:function_score 参数解读与实战案例分析

    在 Elasticsearch 中,function_score 可以让我们在查询的同时对搜索结果进行自定义评分。function_score 提供了一系列的参数和函数让我们可以根据需求灵活地进行设置。近期
  • 自动化在DevOps中的力量:简化软件开发和交付

    自动化在DevOps中扮演着重要角色,它提升了DevOps的效能。通过自动化工具和方法,DevOps团队可以实现以下目标:消除手动和重复性任务。简化流程。在整个软件开发生命周期中实现更
  • 品牌洞察丨服务本地,美团直播成效几何?

    来源:17PR7月11日,美团App首页推荐位出现&ldquo;美团直播&rdquo;的固定入口。在直播聚合页面,外卖&ldquo;神枪手&rdquo;直播间、美团旅行直播间、美团买菜直播间等均已上线,同时
  • 当家的盒马,加速谋生

    来源 | 价值星球Planet作者 | 归去来自己&ldquo;当家&rdquo;的盒马,开始加速谋生了。据盒马官微消息,盒马计划今年开放生鲜供应链,将其生鲜商品送往食堂。目前,盒马在上海已经与
  • 英特尔Xe-HP项目终止,将专注Xe-HPC/HPG系列显卡

    据10 月 31 日消息报道,英特尔高级副总裁兼加速计算系统和图形事业部总经理 表示,Xe-HP“ Arctic Sound” 系列服务器 GPU 已经应用于 oneAPI devcloud 云服
Top