PixelBullet  0.0.1
A C++ game engine
Loading...
Searching...
No Matches
pixelbullet::Material Class Reference

Public Member Functions

 Material (const Filesystem &filesystem, const VirtualPath &asset_path)
bool Load (const Filesystem &filesystem, const VirtualPath &asset_path)
SerializationResult TrySaveToFile (const Filesystem &filesystem, const VirtualPath &asset_path) const
const VirtualPathGetFilename () const

Public Attributes

VirtualPath base_color_texture
VirtualPath normal_texture
VirtualPath orm_texture
VirtualPath emissive_texture
VirtualPath transmission_texture
VirtualPath volume_thickness_texture
VirtualPath specular_texture
VirtualPath specular_color_texture
VirtualPath clearcoat_texture
VirtualPath clearcoat_roughness_texture
VirtualPath clearcoat_normal_texture
VirtualPath sheen_color_texture
VirtualPath sheen_roughness_texture
VirtualPath iridescence_texture
VirtualPath iridescence_thickness_texture
MaterialTextureSamplerSettings base_color_sampler
MaterialTextureSamplerSettings normal_sampler
MaterialTextureSamplerSettings orm_sampler
MaterialTextureSamplerSettings emissive_sampler
MaterialTextureSamplerSettings transmission_sampler
MaterialTextureSamplerSettings volume_thickness_sampler
MaterialTextureSamplerSettings specular_sampler
MaterialTextureSamplerSettings specular_color_sampler
MaterialTextureSamplerSettings clearcoat_sampler
MaterialTextureSamplerSettings clearcoat_roughness_sampler
MaterialTextureSamplerSettings clearcoat_normal_sampler
MaterialTextureSamplerSettings sheen_color_sampler
MaterialTextureSamplerSettings sheen_roughness_sampler
MaterialTextureSamplerSettings iridescence_sampler
MaterialTextureSamplerSettings iridescence_thickness_sampler
MaterialTextureUvSet base_color_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet normal_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet orm_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet emissive_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet transmission_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet volume_thickness_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet specular_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet specular_color_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet clearcoat_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet clearcoat_roughness_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet clearcoat_normal_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet sheen_color_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet sheen_roughness_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet iridescence_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureUvSet iridescence_thickness_uv_set = MaterialTextureUvSet::Uv0
MaterialTextureTransform base_color_uv_transform
MaterialTextureTransform normal_uv_transform
MaterialTextureTransform orm_uv_transform
MaterialTextureTransform emissive_uv_transform
MaterialTextureTransform transmission_uv_transform
MaterialTextureTransform volume_thickness_uv_transform
MaterialTextureTransform specular_uv_transform
MaterialTextureTransform specular_color_uv_transform
MaterialTextureTransform clearcoat_uv_transform
MaterialTextureTransform clearcoat_roughness_uv_transform
MaterialTextureTransform clearcoat_normal_uv_transform
MaterialTextureTransform sheen_color_uv_transform
MaterialTextureTransform sheen_roughness_uv_transform
MaterialTextureTransform iridescence_uv_transform
MaterialTextureTransform iridescence_thickness_uv_transform
glm::vec4 base_color_factor = glm::vec4(1.0f)
float metallic_factor = 0.0f
float roughness_factor = 1.0f
float normal_scale = 1.0f
float occlusion_strength = 1.0f
float ior = 1.5f
float transmission_factor = 0.0f
float volume_thickness_factor = 0.0f
float volume_attenuation_distance = 0.0f
glm::vec3 emissive_factor = glm::vec3(0.0f)
float emissive_strength = 1.0f
glm::vec3 volume_attenuation_color = glm::vec3(1.0f)
float specular_factor = 1.0f
glm::vec3 specular_color_factor = glm::vec3(1.0f)
float clearcoat_factor = 0.0f
float clearcoat_roughness_factor = 0.0f
float clearcoat_normal_scale = 1.0f
glm::vec3 sheen_color_factor = glm::vec3(0.0f)
float sheen_roughness_factor = 0.0f
float iridescence_factor = 0.0f
float iridescence_ior = 1.3f
float iridescence_thickness_minimum = 100.0f
float iridescence_thickness_maximum = 400.0f
MaterialAlphaMode alpha_mode = MaterialAlphaMode::Opaque
float alpha_cutoff = 0.5f
bool double_sided = false
MaterialShadingModel shading_model = MaterialShadingModel::Lit

Friends

Nodeoperator<< (Node &node, const Material &material)
const Nodeoperator>> (const Node &node, Material &material)

The documentation for this class was generated from the following files: