cocos源码四 《渲染之对顶点数据的封装Node节点》

简介

与节点属性相关的几个核心变量_trs、_matrix、_worldMatrix、_localMatDirty、_worldMatDirty。

_trs:存储节点的position、rotation、scale

_matrix:存储节点的缩放、位移、旋转三者合一的变化矩陈(仿射矩陈)

_worldMatrix:存储节点的世界矩陈。本地矩陈与父节点的世界矩陈相乘而来

_localMatDirty:本地脏数据的标记  当你修改position、rotation、scale、anchor时会进行对应的标记。它是个二进制数表示。根据标记更新_matrix。

_worldMatDirty:当你修改节点的position、rotation、scale、anchor属性时 都会标记为true。它是个Boolean值。true 时,会重新计算时间矩阵,并所有子节点的世界矩阵也会标记为脏

这些值的初始化:


        Mat4.identity(this._matrix); //单位向量
        Mat4.identity(this._worldMatrix);//单位向量
        this._localMatDirty = LocalDirtyFlag.ALL;
        this._worldMatDirty = true;

        let trs = this._trs = spaceInfo.trs;
        trs[0] = 0; // position.x
        trs[1] = 0; // position.y
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值