Skip to content

v0.4.0

Compare
Choose a tag to compare
@BardoBard BardoBard released this 01 Jul 00:03

v0.4.0

Full Changelog: v0.3.3...v0.4.0

Overview

The changes have backward compatibility issues, as the bounding_box() virtual function has been added to the shape.

Added sphere to objects.h.
Added bounding_box to objects.h.
Added bounding_box() to shape.
Added binary_tree class to algorithms.h.
Added bvh_tree class to algorithms.h.

Removed sphere from examples, it's now a bardrix object.

Documentation Changes

Added bounding_box to Bardrix_Reference.
Added binary_tree to Bardrix_Reference.
Added bvh_tree to Bardrix_Reference.
Updated class diagrams associated with the new changes.

Added changes from examples that used sphere to bardrix::sphere in Raytracing.

Code Changes

Major Changes

Added bounding_box class to objects.h.
Added bounding_box() to shape.
Added binary_tree class to algorithms.h.
Added bvh_tree class to algorithms.h.
Added sphere to objects.h.

Minor Changes

Added ray(position : point3, end : point3) to ray.
Updated material default constructor to have a shininess of 1, which is the minimum value.
Added longest_axis() and shortest_axis() to bounding_box.
Added enum class axis to bardrix.h, where axis::none is 0, axis::x is 1, axis::y is 2, axis::z is 4 and axis::w is 8.
Added operator[axis] to dimension3and dimension4.

Test Changes

Added tests for bounding_box and binary_tree.
Added tests for ray(position : point3, end : point3).
Added tests for sphere in objects.h.
Added tests for bvh_tree in algorithms.h.

Added tests for longest_axis() and shortest_axis() in bounding_box.
Added tests for operator[axis] in dimension3and dimension4.