
Sign up to save your podcasts
Or
🎓 XR作业开发:校园WebXR导览项目
目标:为课程作业创建一个基于WebXR的校园导览页面。
过程:
使用Google相机拍摄校园全景图。
用3D扫描工具获取学校Logo的点云数据。
创建可在场景中漫游的导览体验。
遇到的问题:
点云包含不需要的背景杂物,需要用Blender清理。
Blender导出失败,找不到节点,转用MeshLab处理,效果良好。
Three.js优点:
更轻量,支持React(通过@react-three/fiber)。
点云渲染控制灵活,可以设置点大小。
Three.js缺点:
缺乏原生支持,许多功能需靠第三方库补足。
某些功能需退回旧版本才可用。
Babylon.js优点:
功能全面,专为3D游戏设计,原生支持XR、点云、360全景、加载管理等。
自带Inspector调试工具,虽不如Unity/Godot强大,但仍实用。
提供官方文档与示例,适合深入开发。
Babylon.js缺点:
渲染效率较低,尤其是360图像加载较慢。
点云点大小不易控制。
开发建议:
React结合Three.js的结构较复杂,建议拆分逻辑。
文本渲染需要额外加载字体并生成纹理。
测试经验:
浏览器调试可用Immersive Web Emulator(提供控制器/手势等支持)。
最佳测试方式是用USB线连接头显+Chrome DevTools远程调试,速度快,效果稳定。
HTTPS服务依然是基本要求(可用Vite+mkcert配置)。
活动:参加了由Tallinn当地Garage48组织、支持瓦伦西亚洪水重建的Hackathon。
经验:
实战使用RAG服务和AI Agents。
计划使用Microsoft OpenAI API却因国籍限制被封锁,转用Gemini。
因此意识到LangChain的重要性:它能屏蔽底层API差异,提升跨平台开发效率。
🎓 XR作业开发:校园WebXR导览项目
目标:为课程作业创建一个基于WebXR的校园导览页面。
过程:
使用Google相机拍摄校园全景图。
用3D扫描工具获取学校Logo的点云数据。
创建可在场景中漫游的导览体验。
遇到的问题:
点云包含不需要的背景杂物,需要用Blender清理。
Blender导出失败,找不到节点,转用MeshLab处理,效果良好。
Three.js优点:
更轻量,支持React(通过@react-three/fiber)。
点云渲染控制灵活,可以设置点大小。
Three.js缺点:
缺乏原生支持,许多功能需靠第三方库补足。
某些功能需退回旧版本才可用。
Babylon.js优点:
功能全面,专为3D游戏设计,原生支持XR、点云、360全景、加载管理等。
自带Inspector调试工具,虽不如Unity/Godot强大,但仍实用。
提供官方文档与示例,适合深入开发。
Babylon.js缺点:
渲染效率较低,尤其是360图像加载较慢。
点云点大小不易控制。
开发建议:
React结合Three.js的结构较复杂,建议拆分逻辑。
文本渲染需要额外加载字体并生成纹理。
测试经验:
浏览器调试可用Immersive Web Emulator(提供控制器/手势等支持)。
最佳测试方式是用USB线连接头显+Chrome DevTools远程调试,速度快,效果稳定。
HTTPS服务依然是基本要求(可用Vite+mkcert配置)。
活动:参加了由Tallinn当地Garage48组织、支持瓦伦西亚洪水重建的Hackathon。
经验:
实战使用RAG服务和AI Agents。
计划使用Microsoft OpenAI API却因国籍限制被封锁,转用Gemini。
因此意识到LangChain的重要性:它能屏蔽底层API差异,提升跨平台开发效率。