-
3c04d674a5
Write README
main
cdo
2025-09-23 15:41:58 +01:00
-
e35d1a68a3
Add demo image
cdo
2025-09-23 15:46:13 +01:00
-
c1af03bfd5
Tweak demo scene
cdo
2025-09-23 15:36:09 +01:00
-
cf876f4a8b
Allow negative sky colour to be specified
cdo
2025-09-23 15:36:09 +01:00
-
e6ee20d5d1
Create multiple demo programs
cdo
2025-09-23 15:36:09 +01:00
-
af3e685022
Add area light material
cdo
2025-09-23 15:36:09 +01:00
-
d6a2a8aa44
Allow -1 to be passed for auto focal length
cdo
2025-09-23 15:36:09 +01:00
-
9fb16a58c4
Set absorbed colour in material scatter function
cdo
2025-09-23 15:36:09 +01:00
-
cc7ff471f1
Add camera aperture / depth-of-field
cdo
2025-09-23 15:36:08 +01:00
-
9e3bc4176b
Add PNGs to .gitignore
cdo
2025-09-23 15:36:08 +01:00
-
cf8937cd6e
Add rng_xy()
cdo
2025-09-23 15:36:08 +01:00
-
0dccfcddea
Rename rng_disc() to rng_plusminus()
cdo
2025-09-23 15:36:08 +01:00
-
fa60617d9e
Adjust camera to focus at target
cdo
2025-09-23 15:36:08 +01:00
-
fc9980b838
Move rendering functions to own module
cdo
2025-09-23 15:36:08 +01:00
-
5edca0b565
Randomise scene
cdo
2025-09-23 15:36:08 +01:00
-
e407090152
Increase MAX_ITER in camera
cdo
2025-09-23 15:36:08 +01:00
-
61f9ec7642
Create scene data structure
cdo
2025-09-23 15:36:08 +01:00
-
a6b52d5f75
Change sky colour
cdo
2025-09-23 15:36:08 +01:00
-
c32c903d18
Allow camera position and target position to vary
cdo
2025-09-23 15:36:08 +01:00
-
75159e7223
Remove focal_len parameter from camera (hard-code as 1.0)
cdo
2025-09-23 15:36:08 +01:00
-
bb6c1683b2
Specify camera FOV instead of viewport height
cdo
2025-09-23 15:36:08 +01:00
-
90240ee5ad
Add fuzz parameter to reflective material
cdo
2025-09-23 15:36:08 +01:00
-
1e31fae5d0
Make samples per pixel a camera parameter
cdo
2025-09-23 15:36:08 +01:00
-
1eb8fd3067
Add dielectric material
cdo
2025-09-23 15:36:08 +01:00
-
cdc56a119f
Add progress output
cdo
2025-09-23 15:36:08 +01:00
-
249eedc5d6
Tweak demo scene a little
cdo
2025-09-23 15:36:08 +01:00
-
187876c3f2
Add reflective material
cdo
2025-09-23 15:36:08 +01:00
-
ce45c57662
Create material abstraction
cdo
2025-09-23 15:36:08 +01:00
-
b15edd1906
Gamma correct pixels before writing out
cdo
2025-09-23 15:36:08 +01:00
-
a2559d373f
Implement Lambertian diffuse scattering
cdo
2025-09-23 15:36:08 +01:00
-
61cfddd75c
Implement Gaussian anti-aliasing
cdo
2025-09-23 15:36:08 +01:00
-
75b646dd44
Parallelise rendering
cdo
2025-09-23 15:36:08 +01:00
-
8827f22359
Sample each pixel multiple times
cdo
2025-09-23 15:36:08 +01:00
-
c92f43ca3c
Implement diffuse scattering
cdo
2025-09-23 15:36:08 +01:00
-
83154d7548
Prevent potential divide by zero in vec3_unit()
cdo
2025-09-23 15:36:08 +01:00
-
5d48f61406
Implement RNG module
cdo
2025-09-23 15:36:08 +01:00
-
036b8fd4d3
Simplify hit detection logic
cdo
2025-09-23 15:36:08 +01:00
-
3687723153
Move rendering logic into camera module
cdo
2025-09-23 15:36:08 +01:00
-
f934cc8fa8
Handle hits on multiple objects
cdo
2025-09-23 15:36:08 +01:00
-
252489f6d9
Add "ground" to demo scene
cdo
2025-09-23 15:36:08 +01:00
-
9bf8753f42
Add front/back face detection
cdo
2025-09-23 15:36:08 +01:00
-
f4ffea57fd
Move camera initialisation into seperate module
cdo
2025-09-23 15:36:08 +01:00
-
47fcd8a11e
Create obj module for scene objects
cdo
2025-09-23 15:36:08 +01:00
-
f7e71da27f
Colour sphere based on normal
cdo
2025-09-23 15:36:08 +01:00
-
4705671b53
Implement simple intersection detection with sphere
cdo
2025-09-23 15:36:08 +01:00
-
255f2bfae8
Set up camera and bg in demo
cdo
2025-09-23 15:36:08 +01:00
-
65b50578fa
Create vec3 module
cdo
2025-09-23 15:36:08 +01:00
-
db2c95640d
Add license (Komorebi)
cdo
2025-09-23 15:36:08 +01:00
-
b1256f4648
Write simple CMake build config
cdo
2025-09-23 15:36:08 +01:00
-
ad9c3373fe
Add .gitignore for build directory and output images
cdo
2025-09-23 15:36:08 +01:00
-
1144d0d9a4
Create initial demo writing an image
cdo
2025-09-23 15:36:08 +01:00
-
9d153c4e57
Write simple farbfeld-writing module
cdo
2025-09-23 15:36:08 +01:00