Golias Engine
A C++ 20 'game engine' built with SDL3 with wide platform support.
Public Member Functions | Public Attributes | List of all members
Material Struct Reference

#include <components.h>

Public Member Functions

void bind (Shader *shader) const
 

Public Attributes

glm::vec3 albedo = glm::vec3(1.0f)
 
float metallic = 0.0f
 
float roughness = 0.5f
 
float ao = 1.0f
 
glm::vec3 emissive = glm::vec3(0.0f)
 Ambient Occlusion. More...
 
float emissive_strength = 1.0f
 
Uint32 albedo_map = 0
 
Uint32 metallic_map = 0
 
Uint32 roughness_map = 0
 
Uint32 normal_map = 0
 
Uint32 ao_map = 0
 
Uint32 emissive_map = 0
 
bool use_albedo_map = false
 
bool use_metallic_map = false
 
bool use_roughness_map = false
 
bool use_normal_map = false
 
bool use_ao_map = false
 
bool use_emissive_map = false
 

Member Function Documentation

◆ bind()

void Material::bind ( Shader shader) const

Member Data Documentation

◆ albedo

glm::vec3 Material::albedo = glm::vec3(1.0f)

◆ albedo_map

Uint32 Material::albedo_map = 0

◆ ao

float Material::ao = 1.0f

◆ ao_map

Uint32 Material::ao_map = 0

◆ emissive

glm::vec3 Material::emissive = glm::vec3(0.0f)

Ambient Occlusion.

◆ emissive_map

Uint32 Material::emissive_map = 0

◆ emissive_strength

float Material::emissive_strength = 1.0f

◆ metallic

float Material::metallic = 0.0f

◆ metallic_map

Uint32 Material::metallic_map = 0

◆ normal_map

Uint32 Material::normal_map = 0

◆ roughness

float Material::roughness = 0.5f

◆ roughness_map

Uint32 Material::roughness_map = 0

◆ use_albedo_map

bool Material::use_albedo_map = false

◆ use_ao_map

bool Material::use_ao_map = false

◆ use_emissive_map

bool Material::use_emissive_map = false

◆ use_metallic_map

bool Material::use_metallic_map = false

◆ use_normal_map

bool Material::use_normal_map = false

◆ use_roughness_map

bool Material::use_roughness_map = false

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