zoukankan      html  css  js  c++  java
  • SceneManager

    文章原link

    场景加载器

    人员 操作 日期 备注
    Conerlius Add 2017-2-5 创建

    scene的进场顺序,方便对每个场景的回退,同一个弹出式的窗口在游戏中只允许出现一个,弹出窗口的进场顺序管理


    基本类型说明:

    graph TD
        subgraph Scene
            Scene1["MonoBehavious"]--继承-->Scene2["Scene"]
            Scene2--继承-->Scene3["Windows"]
            click Scene1 alert "基本的mono类型"
            click Scene2 alert "所有的ui基类"
            click Scene3 alert "所有的窗口ui基类"
        end
        
        subgraph SceneData
            SceneData0["SceneData"]---SceneData1["AllPanel"]
            SceneData0["SceneData"]---SceneData2["WindowsOrNot"]
            click SceneData0 alert "ui下所有的配置数据"
        end
        Scene2---SceneData0
        
        subgraph Mgr
            Mgr1["Replace"]
            Mgr2["Push"]
            Mgr3["Pop"]
        end
        
    

    Manager解释

    对ui的堆栈进行管理,执行压栈,退栈,清栈等行为;并且对ui的panel深度进行设定。

    graph TD
        subgraph Manager
            A["uiList"]
            B["CurrentDepth"]
            C["LoadUI"]
            click A alert "所有的ui堆栈"
            click B alert "当前正在展示的ui最大深度"
            click C alert "加载ui"
        end
    
    

    Manager.Replace解释

    清空ui堆栈,重新放置ui栈底ui

    graph TD
        subgraph Replace
            subgraph 加载ui
                LoadUI1{"ui存在?"}--是-->LoadUI2["完成加载"]
                LoadUI1--否-->LoadUI3["启动加载"]
                LoadUI3-->LoadUI2
                click LoadUI3 alert "使用ResourceManager加载"
                click LoadUI2 alert "回归到ui场景切换"
            end
            subgraph 清空所有uilist
                ClearUI2{"动画?"}--是-->ClearUI3["播放动画"]
                ClearUI2--否-->ClearUI4["直接隐藏"]
                click ClearUI2 alert "是否需要播放退场动画"
            end
            Replace1["重置depth"]-->Replace2["置入到uilist"]
            Replace2-->Replace3{"动画?"}
            Replace3--是-->Replace4("播放动画")
            Replace3--否-->Replace5("直接显示")
            click Replace1 alert "重置ui下所有的panel深度"
            click Replace3 alert "是否需要播放退场动画"
        end
    

    Manager.Push解释

    把需要展示的ui压入到uilist

    graph TD
        subgraph Push
            subgraph 加载ui
                LoadUI1{"ui存在?"}--是-->LoadUI2["完成加载"]
                LoadUI1--否-->LoadUI3["启动加载"]
                LoadUI3-->LoadUI2
            end
            subgraph 隐藏上层ui
                ClearUI2{"动画?"}--是-->ClearUI3["播放动画"]
                ClearUI2--否-->ClearUI4["直接隐藏"]
            end
            Replace1["重置depth"]-->Replace2["置入到uilist"]
            Replace2-->Replace3{"动画?"}
            Replace3--是-->Replace4("播放动画")
            Replace3--否-->Replace5("直接显示")
        end
    

    Manager.Pop解释

    返回上一层展示ui或指定ui

    graph TD
        subgraph Pop
            subgraph 隐藏当前ui
                ClearUI2{"动画?"}--是-->ClearUI3["播放动画"]
                ClearUI2--否-->ClearUI4["直接隐藏"]
                ClearUI5["回退最大depth"]
            end
            Pop1-->Pop2{"动画?"}
            Pop2--是-->Pop3("播放动画")
            Pop2--否-->Pop4("直接显示")
        end
    
  • 相关阅读:
    发送邮件
    C#操作Excel总结
    注意!监控MySQL服务是否正常,懂这4种方法就可以了
    Linux磁盘空间爆满怎么办?定时文件清理脚本配置实现
    Linux 服务器必备的安全设置,建议收藏!
    MySQL入门到精通:MySQL 选择数据库
    TIOBE3月榜单公布!C 语言稳居第一,将新增功能,消除差异
    C++如何读取带空格字符串?这5种方法教会你
    C语言丨二分查找算法详解(含示例代码)
    线上故障了!居然是因为Linux磁盘缓存机制导致的
  • 原文地址:https://www.cnblogs.com/conerlius/p/6368263.html
Copyright © 2011-2022 走看看