基于threejs(webgl)的3D元宇宙云展厅

这篇具有很好参考价值的文章主要介绍了基于threejs(webgl)的3D元宇宙云展厅。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先看看效果图:threejs 展厅,3d,vr,JavaScript

 

基于 threejs 的 3D 展厅

基于 threejs 开发的 3D 展厅,展品可以自由摆放。支持 gltf/glb 格式

github地址:GitHub - mtsee/vr-hall: three.js 3D vr hall文章来源地址https://www.toymoban.com/news/detail-521894.html

初始化实例

// 实例化
const vr = new VR3DHall({
  debugger: true, // 开启调试模式,开启调试模式后可以选中展品,缩放,旋转,位移,console.log中可以查看到数据
  maxSize: 25, // 画框最大尺寸
  movieHight: 1.5,
  container: document.getElementById("root"), // 容器
  cameraOption: {
    // 初始视角
    position: { x: 0, y: 1.5, z: 0 },
    lookAt: { x: 3, y: 1.5, z: 3 },
  },
  onClick: (item) => {
    console.log("你点击了", item);
  },
});

加载厅模型

// 加载厅模型
vr.loadHall({
  url: "./assets/room1/msg.gltf",
  planeName: "meishu01",
  position: { x: 2, y: -0.2, z: 2 },
  scale: 1,
  onProgress: (p) => {
    console.log("加载进度", p);
  },
});

加载其他模型和动画

// 加载机器人
vr.loadGLTF({
  url: "./assets/robot/robot.glb",
  position: { x: 0, y: 0, z: 0 },
  rotation: { x: 0, y: -Math.PI / 2, z: 0 },
  scale: 0.2,
}).then((gltf) => {
  // 创建动画
  vr.createAnimate(gltf, { animateIndex: 0, duration: 5 });
});

加载展品数据

/**
 * 画框数据
 * @params {
 *   id: '', // 唯一标识
 *   position: {x: 0, y: 0, z: 0},  // 模型位置
 *   rotation: {x: 0, y: 0, z: 0},  // 旋转角度
 *   view: {x: 0, y: 0, z: 0},  // 预览点的位置,移动到这里,看向position
 *   scale: {x: 0, y: 0, z: 0},  // 缩放比例
 *   name: '名字',  // 名字
 *   desc: '描述说明',  // 描述说明
 *   url: '资源url',  // 资源url
 *   type: 'picture',  // 'gltf' | 'picture' | 'dot'; // gltf模型,图画模型,图画要自定义画框
 *   boxColor: '#fff', // 画框颜色
 * }
 */
export const data = [
  {
    id: "1", // 唯一标识
    position: {
      x: -0.6593699553026159,
      y: 1.3866967899666711,
      z: 7.067726292206915,
    },
    scale: {
      x: 0.025612307671229958,
      y: 0.025612307671229958,
      z: 0.025612307671229958,
    },
    rotation: { x: 0, y: 0, z: 0 },
    view: { x: 0, y: 0, z: 0 }, // 预览点的位置,移动到这里,看向position
    name: "名字", // 名字
    desc: "描述说明", // 描述说明
    url: "/assets/pictures/1.jpg", // 资源url
    type: "picture", // 'gltf' | 'picture' | 'dot'; // gltf模型,图画模型,图画要自定义画框
    boxColor: "#fff", // 画框颜色
  },
];

// 加载画框数据
vr.loadItems(data);

导览

// 切换到对应的展品ID的视角
vr.viewItem(itemId);

开启和关闭重力感应

开启关闭重力感应必须在 callback 后执行

// 开启重力感应
vr.gravity.open();

// 关闭重力感应
vr.gravity.close();

到了这里,关于基于threejs(webgl)的3D元宇宙云展厅的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Web3D数学基础(平移、旋转、缩放矩阵)—WebGL、WebGPU、Threejs

    参考资料:threejs中文网 threejs qq交流群:814702116 本下节课给大家介绍下矩阵的概念,以及用于几何变换的矩阵,比如平移矩阵、缩放矩阵、旋转矩阵。 如果你对这些几何变换的矩阵概念比较熟悉,可以跳过本节课。 线性代数、图形学 如果你有《线性代数》、《计算机图形学

    2024年02月03日
    浏览(41)
  • 元宇宙红色展厅VR虚拟展馆提高受训者的参与感

    生活在和平年代的新一代青少年,可能对革命先烈英勇事迹难以有很深的体会,无法切实感受到中国共产党无畏牺牲、誓死保家卫国的红色精神,因此借助VR虚拟现实制作技术,让参观者们走近革命先烈中,感受老一辈无产阶级革命家浴血奋战、砥砺前行的艰辛奋斗历程,让

    2024年02月03日
    浏览(30)
  • 抖音直播VR全景3D立体元宇宙直播间搭建教程软件详细玩法教程

    标题:抖音直播VR全景3D立体元宇宙直播间搭建教程:详细玩法指南 简介: 本文将为您详细介绍抖音直播VR全景3D立体元宇宙直播间的搭建教程,并提供详细的玩法指南。通过了解的使用和相关软件的操作,帮助您在抖音直播平台上打造独特的虚拟现实直播体验。 第一

    2024年01月20日
    浏览(103)
  • 基于ThreeJS的3D地球

    第一次接触threeJS,说实话,挺脑瓜子疼的! 功能:3D地球(纹理贴图),地球上添加标记点(经纬度),点击标记点弹出对应的信息框,地球入场动画,相机移动动画等。 先开效果图吧 一:添加必要的依赖 二:组件代码 三:父组件中的代码 四:项目gitee地址 mythree: 基于

    2024年02月12日
    浏览(27)
  • 解锁工业 4.0 元宇宙:AR/VR、AI 和 3D 技术如何为下一次工业革命提供动力

    原创 | 文 BFT机器人  沉浸式混合现实和由虚拟现实(VR)和增强现实(AR)组成的扩展现实技术仍然是业务创新和扩张的关键驱动因素。通过改变公司的运营、与客户互动和实现目标的方式,这一技术解决方案集已在多个行业产生了重大影响。 虽然仍处于起步阶段,但据估计

    2024年02月08日
    浏览(27)
  • WebGL入门之基于WebGL的3D可视化引擎介绍

    WebGL(Web Graphics Library)是一个JavaScript API,用于在任何兼容的Web浏览器中渲染高性能交互式3D和2D图形,而无需使用插件。WebGL通过引入一个非常符合OpenGL ES 2.0的API来实现这一点,该API可以在HTML 元素中使用。这种一致性使 API 可以利用用户设备提供的硬件图形加速。WebGL完全集

    2024年02月11日
    浏览(31)
  • vue基于threejs实现的3D可视化编辑器

    随着5G网络的渐渐普及,物联网在人们的生活中渐渐广泛使用,社会向着越来越智能化的方向发展。当康科技经过不懈努力,研发属于自己的一款3D可视化编辑器,助力企业应用实现3D可视化服务。 编辑器界面如下: 操作视频演示: 3D可视化编辑器v1.0版本完成 主要功能点如下

    2024年02月13日
    浏览(29)
  • 基于Web的6个完美3D图形WebGL库

    现代前端、游戏和Web开发正是WebGL可以转化为数字杰作的东西。使用GPU绘制在浏览器屏幕上生成的矢量元素,WebGL创建交互式Web图形,从而获得用户体验。视觉元素的质量和复杂性使该工具在HTML或CSS等其他方法中脱颖而出。 WebGL不是一个图形套件。相反,它利用代码绘制几何

    2024年02月16日
    浏览(35)
  • 基于 H5 与 WebGL 的3D太阳系立体展示

    前言 近年来随着引力波的发现、黑洞照片的拍摄、火星上存在水的证据发现等科学上的突破,以及文学影视作品中诸如《三体》、《流浪地球》、《星际穿越》等的传播普及,宇宙空间中那些原本遥不可及的事物离我们越来越近,人们对未知文明的关注和对宇宙空间的好奇达

    2024年02月20日
    浏览(33)
  • 基于 HTML5 + WebGL 的太阳系 3D 展示系统

    前言 近年来随着引力波的发现、黑洞照片的拍摄、火星上存在水的证据发现等科学上的突破,以及文学影视作品中诸如《三体》、《流浪地球》、《星际穿越》等的传播普及,宇宙空间中那些原本遥不可及的事物离我们越来越近,人们对未知文明的关注和对宇宙空间的好奇达

    2024年02月20日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包