PBRMaterial#

class PBRMaterial[source]#

Bases: MaterialBase

PBRMaterial defines a physically based rendering (PBR) material.

Example

>>> PBRMaterial(color=(180, 180, 255), roughness=0.3)

Attributes

color: tuple[Annotated[int, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0), Le(le=255)])], Annotated[int, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0), Le(le=255)])], Annotated[int, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0), Le(le=255)])]]#

Basic diffuse color of the material (base color)

Default:

[255, 255, 255]

opacity: float#

The transparency of the material 1 is fully opaque, 0 is fully transparent

Default:

1

roughness: float#

Material roughness, controls the fuzziness of reflections

Default:

0.5

f0: Vector#

Fresnel reflection coeff. at 0 incidence angle, controls reflectivity

Default:

(0.03, 0.03, 0.03)

Additional Constructors

classmethod from_file(filename)#

Load a Flow360BaseModel from a .json file.

Parameters:

filename (str)

Return type:

Flow360BaseModel

Methods

classmethod metal(shine=0.5, opacity=1.0)[source]#

Create a metallic PBR material.

Example

>>> PBRMaterial.metal(shine=0.8)
classmethod plastic(shine=0.5, opacity=1.0)[source]#

Create a plastic PBR material.

Example

>>> PBRMaterial.plastic(shine=0.2)
help(methods=False)#

Print fields and methods of a Flow360BaseModel using rich.

Parameters:

methods (bool)

Return type:

None

to_file(filename, **kwargs)#

Export Flow360BaseModel instance to a .json file.

Parameters:
Return type:

None