美文网首页
laya 2D 游戏场景中物体的动态层级

laya 2D 游戏场景中物体的动态层级

作者: fat___lin | 来源:发表于2019-02-20 10:56 被阅读0次

问题

  • laya中如何实现动态游戏物体的前后遮挡

概述

example.jpg

如上图,场景中根据角色Y坐标,动态调整物体层级

层级管理器

实现

  • 将 动态层级的游戏物体 创建在同一个显示节点(sprite)下
  • layoutElementsInLayer中对所有需要排序的物体根据y坐标进行排序,并修改节点的索引
  • 分帧调用layoutElementsInLayer
    /**
     * 游戏物体动态层级处理
     * @param root
     */
    private function layoutElementsInLayer(root:Sprite){
        var elements:Array = [];
        var len:uint = root.numChildren;
        for (var i:int = 0; i<len; i++){
            elements.push(root.getChildAt(i));
        }
        if(elements.length > 1){
            // 根据y坐标进行排序
            elements.sort(function (a:*, b:*):int {
                return a.y - b.y;
            })

            while ( len-- ){
                var display:Sprite = elements[len];
                if(root.getChildIndex(display) != len){
                    root.setChildIndex(display, len);
                }
            }
        }
    }

相关文章

  • laya 2D 游戏场景中物体的动态层级

    问题 laya中如何实现动态游戏物体的前后遮挡 概述 如上图,场景中根据角色Y坐标,动态调整物体层级 层级管理器 ...

  • Unity动画系统详解1:在Unity中如何制作动画?

    摘要:在场景中加入动态的物体,可以让整个场景更加生动、真实。Unity场景中的物体可以通过制作动画,让物体动起来。...

  • 十、物体管理:2、场景中的物体层级管理

    1、首要考虑的是相机的渲染顺序,但是根据BuildIn渲染管线和URP渲染管线,在相机上的设置上会有一个划分。 如...

  • 2D游戏场景

    创建2D游戏工程,和场景 创建2D工程 创建2D场景(场景会保存在Asset目录下面) 创建工作层 为了使游戏对象...

  • 2D物理弹球

    场景搭建:游戏属于2D游戏,所以场景我们用2D精灵(Sprite)来搭建 一.砌墙 首先搭建一圈2D碰撞器作围墙,...

  • Unity 运动的方向

    Unity 3D Navigation(导航)是用于实现动态物体自动寻路的一种技术,它将游戏场景中复杂的结构关系简...

  • 导出unity动画到laya

    在unity里面设置好导出物体及动画animator导出即可,然后laya里面getComponent(Laya....

  • Unity-销毁函数

    1、Destroy动态销毁函数 删除一个游戏对象,组件或者资源。动态(游戏运行中)的删除某个物体,其资源和内存并没...

  • Unity 2D精灵

    什么是Sprite精灵 2D游戏中的游戏物体,实际上是对图片的处理。把图片的格式转换成可以直接用在2D游戏中的格式...

  • Laya3d API

    scene 创建场景var scene = Laya.stage.addChild(new Laya.Scene(...

网友评论

      本文标题:laya 2D 游戏场景中物体的动态层级

      本文链接:https://www.haomeiwen.com/subject/ldlreqtx.html