.ass 文件结构
Arnold 的原生场景描述文件格式(称为“.ass”文件)是一种易于读取的 ASCII 文本文件。
.ass 文件通常包含作为一系列节点的摄影机、灯光、模型几何体和着色器及其连接和参数。
适用于 Maya、Houdini 等的 Arnold DCC 插件可以导出 ass 文件。
Arnold 的命令行渲染器 kick 可以用于将这些 ass 文件渲染为图像文件。
节点和参数
Arnold 是基于不同类型的节点构建的。
例如,目前有着色器节点、摄影机节点、灯光节点、过滤器节点、几何体(也称为“形状”)节点和输出驱动程序节点。每个节点都有多个参数。
每个类型的节点均通过唯一的名称(options、persp_camera、polymesh、lambert 等)进行标识。
对于每个节点类型,可以包含任意数量的节点。
每个节点由称为“name”的字符串参数来唯一标识。
要创建节点,您可以写入节点类型,并将参数值定义括在花括号中。
lambert
{
name my_white_shader
Kd 0.9
Kd_color 1 1 1
}
节点
下面是 ass 文件中一些比较重要的节点。
options - 此节点是全局渲染选项的容器,例如:
xres、yres:图像分辨率
AA_samples:抗锯齿采样
camera:活动摄影机。该选项必须指向场景中的有效摄影机节点
outputs:此字符串数组定义 AOV 通道(或层)到输出驱动程序的映射。每个字符串的格式为:“<AOV_name> <data_type><filter> <driver>”
gaussian_filter - 这是 kick 使用的默认类型过滤器。过滤器具有用户指定的宽度,默认设置为 2.0 像素。
driver_tiff - 可以被 options 节点中的 outputs 参数引用的驱动程序节点。该节点包含一个 filename 参数,指定用于存储最终渲染图形的输出文件。
persp_camera - 可以被 options 节点中的 camera 参数引用的摄影机节点。此节点具有视野和用来定义方向的摄影机到世界矩阵,以及其他一些参数。
distant_light - 具有变换矩阵、颜色、密度等的远距离或带方向性的灯光节点。
polymesh - 这是渲染器中最重要的几何基本体。其部分参数如下:
vidxs、nidxs、vlist、nlist:这些数组描述网格顶点、法线及其各自的拓扑(面索引)。如果网格具有 UV 坐标,则将存储在 uvidxs 和 uvlist 参数中。
visibility、sidedness:这些是为每个光线类型(摄影机、阴影、反射等)定义可见性和片面性特性的位掩码。
matrix:网格的对象到世界变换矩阵。
shader:指向将在着色对象时执行的着色器节点的指针。
.ass 文件示例
下面是一个简单的 .ass 文件,其中包含选项块、过滤器节点、驱动程序、摄影机、灯光、多边形网格和着色器。
options
{
AA_samples 3
outputs "RGBA RGBA myfilter mydriver"
xres 720
yres 486
}
gaussian_filter
{
name myfilter
width 2.0
}
driver_tiff
{
name mydriver
filename "image.tif"
color_space auto
}
persp_camera
{
name mycamera
fov 53.638
matrix
1 0 -0 0
-0 0.995 -0.0995 0
0 0.0995 0.995 0
0 2 20 1
}
distant_light
{
name mylight
matrix
0.78867512 -0.21132487 -0.57735025 0
-0.21132487 0.78867512 -0.57735025 0
0.57735025 0.57735025 0.57735025 0
1 1 1 1
color 1 1 1
intensity 1
cast_shadows on
}
polymesh
{
name mysphere
nsides 6 1 BYTE 3 3 3 3 3 3
vidxs 18 1 UINT
3 2 0 2 3 1 4 3 0 3 4 1 2 4 0 4 2 1
nidxs 18 1 UINT
0 0 1 0 0 2 3 3 4 3 3 5 6 6 7 6 6 8
vlist 5 1 VECTOR 0 -4 0 0 4 0 -4 0 0 2 0 3.4641015
2 0 -3.4641015
nlist 9 1 VECTOR
-0.5 0 0.8660254 -0.44721359 -0.44721359 0.77459669
-0.44721359 0.44721359 0.77459669 1 0 0
0.89442718 -0.44721359 0 0.89442718 0.44721359 0
-0.5 0 -0.8660254 -0.44721359 -0.44721359 -0.77459669
-0.44721359 0.44721359 -0.77459669
smoothing on
matrix
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
shader myshader
}
standard_surface
{
name myshader
base 0.7
base_color 0 1 0
specular 0.05
specular_color 1 1 1
specular_roughness 0.3
}
参数
所有参数都有默认值,因此您不需要显式设置所有可用的参数。默认参数值可以通过 Arnold 的命令行渲染器 kick 进行查询。例如,要在 Lambert 着色器中查找参数 Kd 的默认值,请键入以下内容:
% kick -info lambert.Kd node: lambert param: Kd type: FLOAT default: 0.7
最常见的类型包括 BOOL、INT、UINT、ENUM、FLOAT、MATRIX、VECTOR、NODE 和 STRING。
数组
以下语法指定了基本类型的数组,例如 VECTOR[ ] 或 FLOAT[ ]:
parameter_name ...
例如,polymesh 节点有一个称为 vlist 的参数,它是存储多边形顶点的点数组:
% kick -info polymesh.vlist node: polymesh param: vlist type: VECTOR[] default: (empty)
因此,通过一个包含三个向量的数组,可以指定一个具有单个三角形的多边形网格:
polymesh
{
...
vlist 3 1 VECTOR 0 0 0 1 0 0 0 0 1
...
}
运动模糊
对于支持运动模糊的参数,您可以为每个运动模糊时间采样(或“关键帧”)定义多个值。以下示例显示了具有两个运动关键帧的三角形的顶点列表,其中三角形已经沿 Y 方向移动了 5 个单位:
vlist 3 2 VECTOR 0 0 0 1 0 0 0 0 1 0 5 0 1 5 0 0 5 1
通过改为存储静态三角形顶点并提供多个变换矩阵,可以实现相同的垂直运动:
vlist 3 1 VECTOR 0 0 0 1 0 0 0 0 1 matrix 1 2 MATRIX 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 5 0 1




听话饮料的联系方式【下单网址— cuiyao999.com—】—— 正品保障 —— 雄厚资金保障 —— 国外代购 —— 口碑第一 —— 强效安全 ——2025年9月1日,国家主席习近平在“上海合作组织+”会议上首次提出全球治理倡议,为加强和完善全球治理进一步贡献中国智慧、提出中国方案。版权声明:网站作为信息内容发布平台,为非经营性网站,内容为用户上传,不代表本网站立场,不承担任何经济和法律责任。【下单网址— cuiyao999.com—】听话饮料的联系方式【下单网址— cuiyao999.com—】
(重大突破)乐酷大厅房卡获取讲解【QQ澂信66330822】无需要打开直接添加▊新道游系列▊大圣系列▊新神兽系列▊老神兽系列▊悠悠系列H5等游戏房卡--海熊大厅微信十二人牛牛房卡【QQ澂信66330822】无需要打开直接添加▊1新道游系列▊大圣系列▊新神兽系列▊老神兽系列▊悠悠系列H5等游戏房卡大厅
三仑片哪里可以买到正宗的药品(網纸→ ctmyao.com)*官方正品,*雄厚资金保障,*十年信誉,*一对一耐心指导,*万人推荐,*(網纸→ ctmyao.com)三仑片哪里可以买到正宗的药品(網纸→ ctmyao.com)