summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-04-16Add vec3::refract<Enable_TIR>, vec3::valid, float-point validity assertion ↵Keuin
in vec3 operations, and tests.
2022-04-15Print notice if assertion is disabled.Keuin
2022-04-15Add fuzzy reflective material.Keuin
2022-04-15Smaller font size.Keuin
2022-04-15Add scene for reflective material.Keuin
2022-04-15Add move constructor for material_reflective, move convenient.Keuin
2022-04-15Bugfix: wrong assertion.Keuin
2022-04-15Move diffusive into material_diffusive. Add material_reflective.h.Keuin
2022-04-15Add missing header.Keuin
2022-04-15Include vec.h.Keuin
2022-04-15Rename material.cpp -> material_diffusive.cpp.Keuin
2022-04-15Make ray3::decay_ distinguishable between different color channels.Keuin
2022-04-15Fix vec3::reflect. Add tests for vec3::reflect and vec3::is_zero.Keuin
2022-04-15Remove unused macros.Keuin
2022-04-15Fix indirect inclusion.Keuin
2022-04-15Fix bad inclusion cause code not compiling.Keuin
2022-04-15Code Refactor:Keuin
- Add material class. - Move diffuse routine into separate material classes.
2022-04-15Add vec3::is_zero and vec3::reflect. (not tested)Keuin
2022-04-14Make hitlist<T> no longer a generic class (but hitlist::color<T>(...) is now ↵Keuin
a generic member function).
2022-04-14Move decay accumulation to ray3<T>.Keuin
2022-04-14Implement Lambertian Reflection and Hemispherical Reflection.Keuin
2022-04-14Fix shadow acne problem.Keuin
2022-04-14Delete default constructor of random_uv_gen.Keuin
2022-04-14Add text_policy for bitmap::print, supporting auto newline.Keuin
2022-04-14Specialize pixel::gamma2 for small values.Keuin
2022-04-14Add gamma2 correction.Keuin
2022-04-14Remove viewport8b and basic_viewport8b.Keuin
2022-04-14Use flexible intermediate color depth when rendering.Keuin
Note: further debugging is needed. The output image quality won't be improved when using 16bit/32bit internal color depth.
2022-04-14Add pixel and bitmap color depth conversion.Keuin
2022-04-13Global diffuse lighting. (gamma not corrected)Keuin
Some operations on pixel<T>. Make ray3 support copy semantic. Fix vec3 operands does not filter out vec3-vec3 as parameters. random_uv_gen generating random unit vectors.
2022-04-13Threaded antialiasing.Keuin
2022-04-13Remove const qualifier to gain move semantic.Keuin
2022-04-13Use basic_viewport8b if antialiasing is not enabled.Keuin
2022-04-13Antialiasing. (not parallelized)Keuin
2022-04-13Simplify bias_ctx's constructor.Keuin
2022-04-13Generalize hitlist and basic_viewport. (HDR in the future)Keuin
2022-04-13Rename viewport to basic_viewport.Keuin
Extract interface viewport.
2022-04-12Refactor: move hitlist, object, sphere, viewport into single files.Keuin
Add bias_ctx for setting sub-pixel sampling bias.
2022-04-12Refactor: Separate hitlist out from viewport.Keuin
2022-04-12Bugfix: caption won't print if the image is too small.Keuin
2022-04-12Caption printing is configurable as a cli parameter.Keuin
2022-04-12Bugfix: object hit priority is incorrect.Keuin
Replace unique_ptr with shared_ptr.
2022-04-12Add range restriction support in object::hit.Keuin
2022-04-12Bugfix: output image is upside down.Keuin
2022-04-12Add the earth. (now we've found a bug)Keuin
2022-04-12Replace dot with mod2.Keuin
2022-04-12Add vec3::mod2.Keuin
2022-04-12Add comments.Keuin
2022-04-12Add bitmap::print for printing ASCII text.Keuin
2022-04-12Optimize sphere hit calculation.Keuin