R2 Core Shaders

R2SurfaceOutput.h
Go to the documentation of this file.
1 #ifndef R2_SURFACE_OUTPUT_H
2 #define R2_SURFACE_OUTPUT_H
3
4 /// \file R2SurfaceOutput.h
5 /// \brief Types describing calculated surfaces
6
7 /// The type of surface details that all deferred surface shaders are required to calculate.
8
9 struct R2_surface_output_t {
10 /// 8-bit unsigned normalized RGB color
11 vec3 albedo;
12 /// 8-bit unsigned normalized emission level
13 float emission;
14 /// Eye-space normal vector
15 vec3 normal;
16 /// 8-bit unsigned normalized RGB specular color
17 vec3 specular;
18 /// Specular exponent in the range `[0, 256]`
19 float specular_exp;
20 /// `True` if this particular surface fragment should be discarded
21 bool discarded;
22 };
23
24 #endif // R2_SURFACE_OUTPUT_H
R2_surface_output_t::specular
vec3 specular
8-bit unsigned normalized RGB specular color
Definition: R2SurfaceOutput.h:17
R2_surface_output_t::emission
float emission
8-bit unsigned normalized emission level
Definition: R2SurfaceOutput.h:13
R2_surface_output_t::discarded
bool discarded
True if this particular surface fragment should be discarded
Definition: R2SurfaceOutput.h:21
R2_surface_output_t::normal
vec3 normal
Eye-space normal vector.
Definition: R2SurfaceOutput.h:15
R2_surface_output_t::specular_exp
float specular_exp
Specular exponent in the range [0, 256]
Definition: R2SurfaceOutput.h:19
R2_surface_output_t
The type of surface details that all deferred surface shaders are required to calculate.
Definition: R2SurfaceOutput.h:9
R2_surface_output_t::albedo
vec3 albedo
8-bit unsigned normalized RGB color
Definition: R2SurfaceOutput.h:11