BSDF#
gs.surfaces.BSDF 是 Disney 原则化 BSDF 表面,携带完整的基于物理的渲染(PBR)参数。gs.surfaces.Default 继承该类,并且自身不新增任何参数,因此这里记录的 PBR 控制项(例如 specular_trans、diffuse_trans 和 metallic_texture)对两者都适用。
- class genesis.options.surfaces.BSDF(*, color: tuple[float, ...] | None = None, opacity: float | None = None, roughness: float | None = None, metallic: float | None = None, emissive: tuple[float, ...] | None = None, ior: float | None = 1.0, default_roughness: float = 1.0, vis_mode: typing.Literal['visual', 'collision', 'particle', 'sdf', 'recon'] | None = None, smooth: bool = True, double_sided: bool | None = None, cutoff: float = 180.0, normal_diff_clamp: float = 180.0, recon_backend: typing.Literal['splashsurf', 'openvdb'] = 'splashsurf', generate_foam: bool = False, foam_options: genesis.options.misc.FoamOptions = <factory>, diffuse_texture: genesis.options.textures.Texture | None = None, opacity_texture: genesis.options.textures.Texture | None = None, roughness_texture: genesis.options.textures.Texture | None = None, metallic_texture: genesis.options.textures.Texture | None = None, normal_texture: genesis.options.textures.Texture | None = None, emissive_texture: genesis.options.textures.Texture | None = None, specular_trans: float = 0.0, diffuse_trans: float = 0.0) None[source]#
Disney BSDF surface with principled shading.
- Parameters:
color (tuple | None, optional) – Diffuse color of the surface. Shortcut for
diffuse_texturewith a single color.ior (float, optional) – Index of Refraction. Defaults to 1.0.
specular_trans (float, optional) – Specular transmission. Defaults to 0.0.
diffuse_trans (float, optional) – Diffuse transmission. Defaults to 0.0.
diffuse_texture (gs.textures.Texture | None, optional) – Diffuse (basic color) texture of the surface.
opacity_texture (gs.textures.Texture | None, optional) – Opacity texture of the surface.
roughness_texture (gs.textures.Texture | None, optional) – Roughness texture of the surface.
metallic_texture (gs.textures.Texture | None, optional) – Metallic texture of the surface.
normal_texture (gs.textures.Texture | None, optional) – Normal texture of the surface.
emissive_texture (gs.textures.Texture | None, optional) – Emissive texture of the surface.