>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 安全
HTML

用 React 和 Three.js 让生物学教科书活起来

还记得学校教科书里那些无聊的细胞图吗?那些扁平的图片上画满了箭头,线粒体看起来像拖鞋,细胞核只是一个普通的圆圈。某一天你会意识到,静态图片根本无法传达一切在三维空间中是如何排列的。开发者 cclank 通过创建 Cell Architecture Studio 解决了这个问题。这是一个交互式画廊,将细胞学研究转变为直接在浏览器中探索 3D 模型。

Cell Architecture Studio demo

这是什么

该项目是一个交互式工作室,你可以在这里检查七种类型的细胞:从神经元和细菌到植物细胞和白细胞。这不仅仅是一个 3D 文件查看器。作者构建了一个完整的教育应用界面,包含细胞器的详细描述、比较模式,甚至还有 AI 导师的雏形。

为什么我们作为开发者应该关注它?首先,这是一个将 React 19 与重型 Three.js 图形结合的出色示例。其次,这里有一个有趣的视觉测试实现。如果你曾经在更新样式后破坏过 3D 场景,你会在源代码中找到一些值得研究的内容。

工作室能做什么

该应用有几个功能,使其与普通演示场景不同。

细节和查看模式

最详细的模型是植物细胞和白细胞。它们以 GLB 格式加载,保留了原生纹理。有两种主要模式:

  1. 网格(Mesh):标准模型查看,显示所有细节。
  2. 聚焦(Focus):一种突出显示特定细胞器的模式,移除不必要的视觉干扰。当你需要仅研究比如说高尔基体时,这很有用。

智能界面

该项目包含一个 AI 导师。目前它更多是一个带有预写提示和进度跟踪的概念,但它展示了教育软件的发展方向。有一个比较面板可以比较不同细胞的结构,以及每个对象的详细元数据卡片。

响应式 3D

开发者经常在为 Canvas 适配移动端布局时遇到困难。这里实现了三种布局变体:桌面端、紧凑型和移动端。这不仅仅是"用眼睛"测试——它通过自动化截图进行验证。

技术栈

该项目基于现代技术栈构建,没有遗留代码:

  • React 19 和 TypeScript:最新基础。
  • Vite:用于快速构建。
  • Three.js + React Three Fiber (R3F):Web 3D 的事实标准。
  • Drei:R3F 的辅助库,处理加载模型等常规工作。
  • Playwright Core:用于视觉验证。

有趣的一点:如果用户网络较慢,重型 GLB 模型尚未下载完成,应用不会崩溃或显示空白屏幕。相反,会触发程序化后备方案——使用纯 Three. js 生成简化几何体,同时加载主要资源。

如何验证视觉完整性

通常测试检查逻辑,但在 3D 项目中,图像不"漂移"很重要。仓库中有一个脚本 verify.mjs。它启动 Playwright,在不同分辨率下截图,并比较 Canvas 中的像素指标。这让你能够捕捉到模型渲染失败或 UI 覆盖重要控件的 bug。

自己运行验证:

  1. 启动本地服务器:npm run dev
  2. 在另一个终端,运行:npm run verify

脚本将检查植物细胞渲染、白细胞和模态窗口功能。这是如何在图形应用中自动化 QA 的一个好例子。

谁应该研究这个项目

在两种情况下我建议查看代码。如果你刚开始使用 React Three Fiber,你可以学习正确的组件结构和场景内事件处理。如果你正在从事 EdTech 项目,Cell Architecture Studio 是一个现成的参考,展示现代数字教科书应该是什么样子。

当然,该项目仍处于原型状态。并非所有细胞都有高质量的模型准备就绪,文档在某些地方也比较简略。但作为教育平台的基础或将复杂 3D 集成到 React 应用中的示例——这是非常扎实的工作。

你可以在这里试用实时演示,源代码在cclank 的仓库中。

相关项目