glTF 2.0 节点与子节点的变换及camera属性关联规则咨询
glTF 2.0 节点关联规则解答
1. 节点变换的继承与组合规则
- 父节点的变换属性会被子节点完全继承,父子节点的变换是组合计算关系,不会出现子节点变换替换父节点变换的情况
- 单个节点的局部变换优先级:如果节点定义了
matrix属性,直接使用该4x4矩阵作为局部变换;未定义matrix时,按translation(平移) *rotation(旋转) *scale(缩放)的顺序计算得到局部变换矩阵;如果子节点未定义任何变换属性,其局部变换默认为单位矩阵,最终位姿完全等同于父节点的世界变换 - 子节点的最终世界空间变换计算逻辑:父节点的世界变换矩阵 × 子节点的局部变换矩阵,所有父链的变换会逐层叠加到子节点的最终位姿上
2. camera属性的处理规则
camera是节点的挂载类属性,不属于可继承的变换属性,不存在父子节点组合计算的逻辑,也不存在子节点替换父节点属性的逻辑- 每个节点携带的
camera属性都指向一个独立的相机资源实例,父节点定义的camera和子节点定义的camera是完全独立的两个相机,参数互不影响 - 相机的空间位姿(位置、朝向)由其挂载节点的完整父链世界变换决定,但相机本身的投影参数(透视fov、近远裁剪面、正交缩放比等)完全由自身引用的camera资源定义,和其他节点的
camera属性无关
内容的提问来源于stack exchange,提问作者user2554330
相关产品推荐
相关产品推荐

