33 lines
693 B
GLSL
33 lines
693 B
GLSL
// Common constants and definitions for ray tracing
|
|
|
|
#ifndef COMMON_GLSL
|
|
#define COMMON_GLSL
|
|
|
|
// Mathematical constants
|
|
#define PI 3.14159265359
|
|
#define INV_PI 0.31830988618
|
|
#define EPSILON 1e-4
|
|
#define MAX_FLOAT 3.402823466e38
|
|
#define RR_THRESHOLD 0.1
|
|
|
|
// Material types
|
|
#define MATERIAL_DIFFUSE 0
|
|
#define MATERIAL_METAL 1
|
|
#define MATERIAL_DIELECTRIC 2
|
|
#define MATERIAL_EMISSIVE 3
|
|
|
|
// Light types
|
|
#define LIGHT_DIRECTIONAL 0
|
|
#define LIGHT_POINT 1
|
|
#define LIGHT_SPOT 2
|
|
|
|
// Texture slots
|
|
#define TEXTURE_SLOT_ALBEDO 0
|
|
#define TEXTURE_SLOT_NORMAL 1
|
|
#define TEXTURE_SLOT_METALLIC 2
|
|
#define TEXTURE_SLOT_ROUGHNESS 3
|
|
#define TEXTURE_SLOT_AO 4
|
|
#define TEXTURE_SLOT_EMISSION 5
|
|
|
|
#endif // COMMON_GLSL
|