博客
关于我
关于相同场景控制总结
阅读量: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/

    你可能感兴趣的文章
    PANDA:基于多列对数据表的行运行计算,并将输出存储在新列中
    查看>>
    PandoraFMS 监控软件 SQL注入漏洞复现
    查看>>
    PandoraFMS 监控软件 任意文件上传漏洞复现
    查看>>
    Papyrus项目常见问题解决方案
    查看>>
    Parallel.ForEach使用示例
    查看>>
    Parallel.ForEach的基础使用
    查看>>
    parallels desktop for mac安装虚拟机 之parallelsdesktop密钥 以及 parallels desktop安装win10的办公推荐可以提高办公效率...
    查看>>
    parallelStream导致LinkedList遍历时空指针的问题
    查看>>
    Parameter ‘password‘ not found. Available parameters are [md5String, param1, username, param2]
    查看>>
    ParameterizedThreadStart task
    查看>>
    Spring security之管理session
    查看>>
    paramiko模块
    查看>>
    param[:]=param-lr*param.grad/batch_size的理解
    查看>>
    spring mvc excludePathPatterns失效 如何解决spring拦截器失效 excludePathPatterns忽略失效 拦截器失效 spring免验证拦截器不起作用
    查看>>
    Spring Cloud 之注册中心 EurekaServerAutoConfiguration源码分析
    查看>>
    Parrot OS 6.2 重磅发布!推出全新 Docker 容器启动器
    查看>>
    Parrot OS 6.3 发布!全面提升安全性,新增先进工具,带来更高性能
    查看>>
    ParseChat应用源码ios版
    查看>>
    Part 2异常和错误
    查看>>
    Pascal Script
    查看>>