Change project structure;

Added new c# binding;
This commit is contained in:
2025-12-30 20:54:05 +09:00
parent 5f5404268c
commit f1d3dddb9a
392 changed files with 2694 additions and 360462 deletions

View 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