博客
关于我
关于相同场景控制总结
阅读量:431 次
发布时间:2019-03-06

本文共 537 字,大约阅读时间需要 1 分钟。

在开发过程中遇到两个3D场景相同场景结合的问题,以下是我对解决思路的总结。

一、前期准备我们创建了两个3D场景,分别使用new ht.graph3d.Graph3dView()创建了两个view,并进行了反序列化。由于两个场景大小和位置不同,我们为小场景设置了className,便于后续样式操作。

二、问题抛出

  • 小场景中如何隐藏某些节点?
  • 小场景中的某些动画是否可以不执行,以避免性能浪费?
  • 两个场景的动画如何互不影响?
  • 两个场景如何通讯?
  • 三、代码实现

  • 判断场景类型在初始化时,我们发现两个场景返回的div结构不同,通过判断gv.getView().className是否为'smallG3d'来区分大场景和小场景。

  • 节省性能通过检查isSmallG3d变量,我们可以决定是否需要执行小场景的动画,从而优化性能。

  • 动画互不影响我们在data/index.js中引入了elevatorDownUp对象,分别通过status1和status2控制大场景和小场景的动画状态,避免全局状态冲突。

  • 通讯实现采用eventbus的发布订阅模式,发布事件后订阅者处理。订阅前需清除重复事件,确保高效通讯。

  • 通过以上方法,我们成功解决了相同场景结合的问题,确保各场景独立运行并优化性能。

    转载地址:http://epluz.baihongyu.com/

    你可能感兴趣的文章
    PHP二维数组转换为一维数组
    查看>>
    PHP二维数组重组
    查看>>
    PHP交换两个变量值
    查看>>
    php代码执行完整流程介绍
    查看>>
    PHP代码格式化工具phpcf常见问题解决方案
    查看>>
    PHP使用3DES算法加密解密字符串
    查看>>
    PHP使用curl multi要注意的问题:每次使用curl multi同时并发多少请求合适
    查看>>
    php使用memcached扩展的一个BUG
    查看>>
    PHP入门part1
    查看>>
    PHP内核介绍及扩展开发指南—基础知识
    查看>>
    PHP写日志fwrite和file_put_contents的区别与性能
    查看>>
    PHP函数
    查看>>
    PHP函数__autoload失效原因(与smarty有关)
    查看>>
    PHP函数操作数字和汉字互转(100以内)
    查看>>
    PHP函数方法
    查看>>
    PHP删除指定目录下的所有文件和文件夹 | 删除指定文件
    查看>>
    php判断ip黑名单程序代码
    查看>>
    php判断复选框是否被选中的方法
    查看>>
    PHP判断指定目录下是否存在文件
    查看>>
    php判断数组是否为空
    查看>>