summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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
2022-04-12Inline util methods.Keuin
2022-04-12Improve comments.Keuin
2022-04-12Make object::hit provides hit time t.Keuin
Visualize normal vector at hit point. Add pixel<T>::from_normalized(const vec3d&) for visualizing normal vector.
2022-04-12Add comments in class ray3.Keuin
2022-04-12Add DEBUG macro for future usage.Keuin
2022-04-12Bugfix: fixpoint on ray is calculated incorrectly, causing objects being ↵Keuin
stretched.
2022-04-12Add basic object hit rendering.Keuin
Add NOPRINT environ switch. Add demo sphere rendering.
2022-04-11Decouple viewport size and generated image size.Keuin
Use cli parameters to control simple_scanner.
2022-04-11Implement ray3, timer and a simple viewport scanner.Keuin
Fix bitmap wrong pixel sequence. Remove default constructor of bitmap. Add pixel mixture method.
2022-04-11Implement vec3::zero().Keuin
2022-04-11Fix vec.h multiple inclusion.Keuin
2022-04-11Implement vec3 scalar and vector product, product by a scalar, get unit ↵Keuin
vector and print to ostream. Fix wrong vec3 norm implementation.
2022-04-11Implement bitmap and PPM serialization (with a demo program).Keuin
2022-04-11Test vec3 minus and cross product. Fix missing const qualifier in overloaded ↵Keuin
operators.
2022-04-11Add specialized eq for vec3l equality.Keuin
2022-04-11Create LICENSEKeuin
Licensed under GPLv3.
2022-04-11Basic 3d vector operations. Testing with GoogleTest.Keuin