PCG-FPS  v2 m0.22.4
Simple First Person Shooter with Procedurally Generated Level
MaterialParameters.h
Go to the documentation of this file.
1 #ifndef SKR_FPS2_RENDERER_OPENGL_SIMPLEMATERIAL_H
2 #define SKR_FPS2_RENDERER_OPENGL_SIMPLEMATERIAL_H
3 
4 #include "..\..\pch.h"
5 #include "Material.h"
6 
7 namespace skr
8 {
9 namespace fps2
10 {
11 namespace Renderer
12 {
13 namespace OpenGL
14 {
18  {
19  public:
20  glm::vec3 ambient;
21  glm::vec3 diffuse;
22  glm::vec3 specular;
23  float shininess;
24 
25  public:
28 
34  MaterialParameters(glm::vec3 amb, glm::vec3 diff, glm::vec3 spec, float shine = 32.0f);
35 
41  void SetMaterialProperties(glm::vec3 amb, glm::vec3 diff, glm::vec3 spec, float shine = 32.0f);
42 
45  void ApplyMaterial(Shader shader) override;
46 
49  void ApplyShininess(Shader shader);
50  };
51 }
52 }
53 }
54 }
55 #endif // !SKR_FPS2_RENDERER_OPENGL_SIMPLEMATERIAL_H
56 
Material.h
skr::fps2::Renderer::OpenGL::MaterialParameters::ApplyShininess
void ApplyShininess(Shader shader)
apply shininess to object through given shader
Definition: MaterialParameters.cpp:37
skr::fps2::Renderer::OpenGL::Shader
handles shader loading, compiling and linking. Also provides access to set uniform ids and usage.
Definition: Shader.h:31
skr::fps2::Renderer::OpenGL::MaterialParameters::specular
glm::vec3 specular
specular color
Definition: MaterialParameters.h:22
skr::fps2::Renderer::OpenGL::MaterialParameters::shininess
float shininess
shininess factor
Definition: MaterialParameters.h:23
skr::fps2::Renderer::OpenGL::MaterialParameters::MaterialParameters
MaterialParameters()
default constructor
Definition: MaterialParameters.cpp:12
skr::fps2::Renderer::OpenGL::Material
interface for material types
Definition: Material.h:17
skr::fps2::Renderer::OpenGL::MaterialParameters
holding material parameters for objects without textures
Definition: MaterialParameters.h:18
skr
Definition: AssetPath.h:10
skr::fps2::Renderer::OpenGL::MaterialParameters::ambient
glm::vec3 ambient
ambient color
Definition: MaterialParameters.h:20
skr::fps2::Renderer::OpenGL::MaterialParameters::SetMaterialProperties
void SetMaterialProperties(glm::vec3 amb, glm::vec3 diff, glm::vec3 spec, float shine=32.0f)
set material properties
Definition: MaterialParameters.cpp:22
skr::fps2::Renderer::OpenGL::MaterialParameters::diffuse
glm::vec3 diffuse
diffuse color
Definition: MaterialParameters.h:21
skr::fps2::Renderer::OpenGL::MaterialParameters::ApplyMaterial
void ApplyMaterial(Shader shader) override
apply material to object through given shader
Definition: MaterialParameters.cpp:30