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

Three.js + React 实战系列 : 从零搭建 3D 个人主页

可能你对tailiwindcss毫不了解,别紧张,记住我们只是在学习,学习的是作者的思想和技巧,并不是某一行代码。

在之前的几篇文章中,我们已经熟悉了 Three.js 的基本用法,并通过 react-three-fiber 快速构建了一个完整场景。

本篇将正式开启我们的 3D 个人主页实战系列 🚀

完整项目:
github项目地址:https://github.com/SunACong/three-practice.git

教程仓库:
gitcode地址:https://gitcode.com/sunbyte/three-profile.git

前置知识:

  • ✅ tailiwindcss

本篇聚焦以下几个目标:

  • ✅ 规划整个项目的基础目录结构
  • ✅ 明确资源(模型/贴图)存放位置
  • ✅ 明确各个文件夹的作用以及内容

这是构建你专属 3D 主页的第一步,让我们开始吧!

部署效果地址:https://three-profile-one.vercel.app/

在这里插入图片描述


🗂️ 项目基础目录结构


建议将项目结构清晰划分,便于后续维护与模块化开发:
three-profile/ 
├── public/ # 静态资源(模型、贴图、icon) 
│ ├── models/ # .glb / .gltf 模型资源 
│ ├── textures/ # 贴图(背景、材质贴图等) 
│ └── assetss/ # 图标icon资源
├── src/ 
│ ├── components/ # 3D 场景组件(Avatar, Card, Icons...) 
│ ├── constans/ # 常量定义 
│ ├── sections/ # 构成主页部分的section 
│ ├── App.jsx # 应用主入口 
│ └── main.jsx # React 挂载入口 
│ └── index.css # 引入全局css配置入口
├── index.html 
└── vite.config.js

🛠️ 搭建项目

  1. 初始化 react 项目
npm create vite@latest three-profile -- --template reactnpm installnpm run dev
  1. 💻 安装Tailiwindcss

虽然tailiwindcss已经更新到v4版本,但是为了不在环境配置上浪费时间,请使用v3版本。

"autoprefixer": "^10.4.20",	
"postcss": "^8.4.41",
"tailwindcss": "^3.4.10",将上面依赖复制到package.json中执行npm install 安装依赖即可
  1. 配置项目
根目录执行 npx tailwindcss init 生成 tailiwindcss.config.js在仓库Readme-代码片段中复制 tailiwindcss.config.js 代码片段根目录创建postcss.config.js,在仓库Readme-代码片段中复制 postcss.config.js 代码片段在仓库ReadMe文件中复制 index.css 覆盖 src/index.css删除 App.css

👋 Hello ThreeJS!!

🎥 01 · 项目框架与资源准备:你的 3D 主页起点

✅ 小结

我们已经完成了以下工作:

  • ✅ 初始化项目结构

  • ✅ 安装并配置核心依赖

  • ✅ 梳理项目资源

    • GLB转换为React代码:https://gltf.pmnd.rs/
    • 捏脸网址:https://readyplayer.me/
    • GLB转换为FBX:https://products.aspose.app/3d/conversion/glb-to-fbx#
    • 为你的3D模型添加动作:https://www.mixamo.com/#/
    • 免费部署网址:https://vercel.com/

🔮 下一篇预告

  • Navbar 导航栏 ✅

相关文章:

  • RT-Thread学习笔记(一)
  • java 设计模式之单例模式
  • 关于 雷达(Radar) 的详细解析,涵盖其定义、工作原理、分类、关键技术、应用场景、挑战及未来趋势,结合实例帮助理解其核心概念
  • 【模型常见评价指标(分类)】
  • 从 ComponentActivity 看 Android Activity 的演变与 Jetpack 架构融合
  • 驱动开发硬核特训 · Day 14:深入理解 Power 管理驱动架构与实战应用
  • SQL Server 存储过程
  • webgl入门实例-08索引缓冲区的基本概念
  • 02、GPIO外设(一):基础知识
  • 3D人脸扫描技术如何让真人“进入“虚拟,虚拟数字人反向“激活“现实?
  • 机器学习在催化剂设计中的应用理论加实操
  • Muduo网络库实现 [十四] - HttpResponse模块
  • 【AI提示词】哲学三问
  • Java基础系列-LinkedList源码解析
  • 面试情景题:企业内部系统如何做微前端拆分,如何通信?
  • IDEA 中 Scala 项目远程连接虚拟机 Spark 环境
  • OpenCV 模板匹配方法详解
  • 中间件--ClickHouse-7--冷热数据分离,解决Mysql海量数据瓶颈
  • springboot自定义starter(避坑教学)
  • OpenCV day5
  • 首次公布!我国空间站内发现微生物新物种
  • 以军证实空袭也门多个港口
  • 习近平在第三十五个全国助残日到来之际作出重要指示
  • 外企聊营商|武田制药:知识产权保护助创新药研发
  • 与总书记交流的上海人工智能实验室年轻人,在探索什么前沿领域?
  • 科技部等七部门:优先支持取得关键核心技术突破的科技型企业上市融资