码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • VUE3_Three项目构建(基础模板)


    目录

    1. VUE3项目创建

    1.1 项目创建

    1.2 项目配置

     1.3 项目创建完成

    2. 配置Three.js

    2.1 安装项目所需依赖

    2.2  配置glsl语法支持:在vue.config.js文件添加如下代码

    3. 配置项目结构

    3.1 src目录详细介绍

    4. 项目源码地址

    5. 项目运行效果


    1. VUE3项目创建

    1.1 项目创建

    vue create vue_three_template

    1.2 项目配置

    Default([Vue 3] babel, eslint):vue3的项目,只包含js编译器babel,代码检测工具eslint。
    Default([Vue 2] babel, eslint):vue2的项目,只包含js编译器babel,代码检测工具eslint。
    Manually select features:自定义添加选择功能。

    Babel:js编译器
    Typescript:js的超集
    Progressive Web App Support:渐进式的网页应用程序
    Router:vue的路由
    Vuex:vue的状态管理
    CSS Pre-processors:css的预处理器
    Linter/Formatter:代码风格检测与格式化(如果自己代码不是很规范的话可以用这个约束下自己,也可不选择,按照自己的风格)
    Unit Testing:单元测试
    E2E Testing:端对端测试
    (选项根据个人需求选择) 

    选择VUE3版本:

     Babel、ESLint 等的配置存放选择都存放在package.json中,选择第二项:

     

     是否选择保存配置:

     

     选择打包方式:

     

     1.3 项目创建完成

    主要内容如下:

    2. 配置Three.js

    2.1 安装项目所需依赖

    1)安装Three

    1. npm install three --save
    2. or
    3. yarn add three

    2)安装dat.gui

    1. npm install webpack-glsl-loader
    2. or
    3. yarn add webpack-glsl-loader

    3)安装glsl-loader

    1. npm install webpack-glsl-loader
    2. or
    3. yarn add webpack-glsl-loader

    2.2  配置glsl语法支持:
    在vue.config.js文件添加如下代码

    1. configureWebpack: (config) => {
    2. config.module.rules.push({
    3. test: /\.glsl$/,
    4. use: [
    5. {
    6. loader: "webpack-glsl-loader",
    7. },
    8. ],
    9. });
    10. },

    3. 配置项目结构

     该项目模板中主要源码位于src目录下,public目录下包括model及textures文件夹,用于存放模型及纹理材质。

    src包括assets资产文件夹、components组件、router路由、shader着色器、threeThreejs文件、views视图文件及app.vue和main.js入口文件。

    3.1 src目录详细介绍

    1. assets文件夹

    用于存放资产资源,如图片、音频、模型等。

    2.componets文件夹

    用于存放vue组件,目前有scene.vue用于初始化three场景。

    3.router文件夹

    用于路由设置。

    4.shader文件夹

    用于存放Three中使用的片元着色器及顶点着色器glsl文件。

    5.three文件夹

    用于存放Three相关文件。

    1)mesh文件夹存放实体相关js文件,例如加载gltf模型、立方体物体等。

    2)modify文件夹用于存放修改材质的js文件,可以通过该部分js加载实体的着色器。

    3)animate.js--动画帧执行函数

    4)axesHelper.js--辅助坐标轴函数

    5)camera.js--相机设置函数

    6)controls.js--控制器设置函数

    7)createMesh.js--创建实体函数

    8)gui.js--设置dat.gui函数

    9)init.js--初始化屏幕函数

    10)renderer.js--渲染器函数

    11)scene.js--场景设置函数

    6.view文件夹

    用于存放vue视图。

    7.App.vue 和 main.js

    入口视图及主入口函数。

    4. 项目源码地址

    Three-vue3-template: Three-vue3-template项目最简模板 - Gitee.comhttps://gitee.com/lei-aimiao/three-vue3-template/tree/master

    5. 项目运行效果

     

  • 相关阅读:
    百度翻译API的python调用方式
    我常用的几个 VueUse 最佳组合,推荐给你们!
    Transit path
    Apache SeaTunnel本地源码构建编译运行调试
    DDS数据分发服务——提升汽车领域数据传输效率
    Webpack-cli构建流程
    SSM框架速成2——Spring5速成总结
    java废旧物品回收管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
    编译安装LAMP架构搭建wordpress个人博客和discuz论坛——编译安装基于 FASTCGI 模式LAMP架构多虚拟主机WEB应用
    web网页制作期末大作业HTML5+CSS大作业——游戏明星介绍(5页) 网页设计模板
  • 原文地址:https://blog.csdn.net/damadashen/article/details/126064919
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号