Primitive Type Primitive类型
Primitive类型种类较多,
如几何体一般包括 mesh
,以及一个父级 Xform
,
灯光一般包括 Light
以及一个父级 Xform
,
材质包括 Shader
以及父级的 Material
,
用于方便用组去管理,还会创建 Scope
类型出来。
相机一般是 Camera
。
另外还包括 BasisCurves
等类型。
parent primitives 父级类型
在houdini LOP中,parent primitives分为 Scope
,Xform
和 None
。
Scope:
范围,在USD中是primitives的一种类型,它类似于组的概念,但是它本身不支持变换,主要用来组织层级关系,比如 /models/...
, /materials/...
, /collections
,
Xform:
Xform在USD中是中是 primitives
的一种类型,它类似于组的概念,可支持变换属性。
Kind种类
在USD中是指“模型”的种类。
这个概念在USD中较为难理解。具有几何体形状的每个基本体应具有“种类”。
此“模型”含义在USD中并不是图形学意义上的模型,而是一个抽象概念,用于将场景图划分为更容易管理的部分,是对场景图的注释。
Kind包括以下几种:
Kind种类 |
Draw mode |
USD中定义 |
Icon |
Assembly程序集 |
有 |
重要的组模型,通常是已经发布的资产或者引用的资产 |
|
Component组件 |
有 |
模型层级结构的“叶”项,这种层次不能再包含其它模型(Group或Assembly或其它Component) |
|
Group组 |
有 |
一组其它模型(Assembly或Component或Group),模型层级结构的分支项 |
|
Subcomponent子组件 |
无 |
模型的子模型 |
|
None无 |
无 |
无定义 |
|
场景图树中的模型层次结构可能如下图所示:
要维护模型层次结构,场景中应该具有以下内容:
- 处理其下(从其降序)的几何体都应该具有一个起始,包括根
prim
,例如 /Models
。 - 仅
group
/assembly
应包含其他模型类型。Component
类型不能包含 groups
, assemblies
或 models
。