1.2 3D资源铭文(实验) 3D Resources (experimental develop)

此为Metaverse Resource的3D资源相关属性设置说明,此属性还处于试验开发中,任何现阶段的引用以及使用参照仅为测试,不代表最终资源规范。所带来的相关问题请开发者酌情自行评估

Idea

3D资源相对于2D资源要复杂得多,其资源大小也相对更大。占用的链上空间也会更多。其配置也会相对更加加复杂。本实验性协议,将3D模型划分为:

  • ModelData 模型数据 :模型的基础数据,一般为通用的模型文件,比如OBJ,FBX,GLB等,也可以是相关引擎打包资源,比如UnityAsset,UEAsset等,其中会包括模型的所有顶点,法线,切线等相关数据。

  • MaterialData 材质数据:

    1. Base 基础引用:如果有完整的material数据格式可以直接引用

    2. Textures 贴图:材质所引用的贴图资源

    3. Shader 着色器:材质所依赖的着色器资源

  • Animation 动画数据: 模型的动画数据,其中记录了一个或多个动画的关键帧信息。一般与引擎高度挂钩,也可以使用通用数据形式。

  • Physical 物理特性: 模型的物体特性,用来进行物理学计算使用

  • Other 其他数据:模型的其他数据

有些3D资源数据格式不仅可以存储模型的基础数据,也可以存储材质,着色器,甚至动画等数据。比如GLB,UnityAsset,UEAsset等

模型数据 ModelData

Key
Required?
Description

modelsrc

yes

模型相关源文件链上地址

modeltype

yes

模型3D文件类型 可以为OBJ,FBX,GLB,UnityAsset,UEAsset等

材质数据 MaterialData

材质部分可以直接引用一种material的资源格式,也可以通过Texture以及Shader的引用来进行拼装,以<materialdata>为属性块分布

基础部分的属性key为:

Base

Key
Required?
Description

src

No

如果有参数,则为material的数据源地址,直接拿来即用

type

No

和数据源挂钩,可为UnityAsset,UEAsset,Mat等各种可解析的材质格式。

basemat

No

默认何种质地,比如皮革,金属,大理石等

basecolor

No

默认何种颜色

贴图 Texture

Key
Required?
Description

src

yes

数据源地址,即为一张已经上联的相关贴图图片

type

No

图片格式,比如PNG,JPG,TGA等

propname

No

图片被shader引用时的属性关键字,比如main,normal,specular等

Shader

着色器是材质资源中非常重要的一个资源依赖,其决定了材质的显示方式和效果。开发者可以将自己编写的着色器代码上链存储,供所有人使用。

以<shader>为属性块分布

Key
Required?
Description

src

yes

数据源地址,即为一张已经上联的相关shader源码或者可解析的文件

type

No

shader文件的解析格式,可以为GLSL,HLSL,UnityAsset,UEAsset 等

propname1

No

shader中的默认属性的设置参数,propname1即为shader中的默认属性名,=号后面记录其数值。 比如: propname1="1.8"

...

...

propnameN

...

和2D的相关设置类似,以<animation>为属性块分布

key
Required?
Description

src

Yes

动画数据资源的相关链上地址

type

Yes

动画文件的解析格式,可以为anime,ani,UnityAsset,UEAsset 等

name

Yse

动画名称

duration

Yes

播放速度

loop

No

是否循环

Physical

Key
Required?
Description

weight

No

重量,反应物体的重量,可用于物理计算

friction

No

摩擦系数

status

No

默认为静态 可为static和dynamic两种

Other

Key
Required?
Description

type

No

模型的类别 比如化身,建筑,交通工具,植物等

speed

No

如为动态三维物件,可以设置其初始速度

others

..

Last updated