Commit Graph

25 Commits

Author SHA1 Message Date
Camden Dixie O'Brien
f386270842 Allow negative sky colour to be specified 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
139ff40f12 Add area light material 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
f89a779b8f Add camera aperture / depth-of-field 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
f66e306e8f Add rng_xy() 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
36bca27462 Rename rng_disc() to rng_plusminus() 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
d891320a2a Move rendering functions to own module 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
43670cbfba Randomise scene 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
6c832324e2 Create scene data structure 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
4b093f43b6 Allow camera position and target position to vary 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
483dab82ef Remove focal_len parameter from camera (hard-code as 1.0) 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
37d9b9e823 Specify camera FOV instead of viewport height 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
d47e7d7d9d Add fuzz parameter to reflective material 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
746b902302 Make samples per pixel a camera parameter 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
73028df5b3 Add dielectric material 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
3b6bc953b5 Add reflective material 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
7f1103a179 Create material abstraction 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
d8a2b8a3d8 Implement Gaussian anti-aliasing 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
259f0922b3 Parallelise rendering 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
f4fcdc8a02 Implement RNG module 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
6a6fc20dac Move rendering logic into camera module 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
6eb4da9e06 Add front/back face detection 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
77723aefa0 Move camera initialisation into seperate module 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
08f1a2a4dc Create obj module for scene objects 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
0d3871ff24 Create vec3 module 2025-09-23 15:35:26 +01:00
Camden Dixie O'Brien
e58e5c3967 Write simple farbfeld-writing module 2025-09-23 15:35:26 +01:00