Change project structure;
Added new c# binding;
This commit is contained in:
17
native/header/Algorithm/MicrofacetGGX.h
Normal file
17
native/header/Algorithm/MicrofacetGGX.h
Normal file
@@ -0,0 +1,17 @@
|
||||
#ifndef MICROFACET_GGX_H
|
||||
#define MICROFACET_GGX_H
|
||||
|
||||
#include "Common.h"
|
||||
#include "Algorithm/BSDF.h" // create_orthonormal_basis
|
||||
#include "cglm/struct/vec3.h"
|
||||
|
||||
// Trowbridge-Reitz GGX helpers (isotropic)
|
||||
float ggx_distribution(float n_dot_h, float roughness);
|
||||
float ggx_g1(float n_dot_v, float roughness);
|
||||
float ggx_g_smith(float n_dot_v, float n_dot_l, float roughness);
|
||||
|
||||
// GGX VNDF sampling (Heitz 2018) for isotropic GGX.
|
||||
// Returns a half-vector (H) sampled from the distribution of visible normals.
|
||||
vec3s ggx_sample_vndf(vec3s n, vec3s v, float roughness, float u1, float u2);
|
||||
|
||||
#endif // MICROFACET_GGX_H
|
||||
Reference in New Issue
Block a user