Change project structure;
Added new c# binding;
This commit is contained in:
17
native/header/Algorithm/GGXMultiScatter.h
Normal file
17
native/header/Algorithm/GGXMultiScatter.h
Normal file
@@ -0,0 +1,17 @@
|
||||
#ifndef GGX_MULTI_SCATTER_H
|
||||
#define GGX_MULTI_SCATTER_H
|
||||
|
||||
#include "Common.h"
|
||||
#include "cglm/struct/vec3.h"
|
||||
|
||||
// Initialize the tiny LUT. Safe to call multiple times.
|
||||
void ggx_ms_init_lut_once(void);
|
||||
|
||||
// Heitz-style multiple-scattering GGX approximation (Smith model).
|
||||
// Returns a broad lobe (Lambertian-shaped in shading space).
|
||||
vec3s ggx_multi_scatter_lambert(vec3s f0, float NoV, float NoL, float roughness);
|
||||
|
||||
// Expose E(NoV, roughness) for lobe mixing / pdfs.
|
||||
float ggx_ms_E(float NoV, float roughness);
|
||||
|
||||
#endif // GGX_MULTI_SCATTER_H
|
||||
Reference in New Issue
Block a user