summaryrefslogtreecommitdiff
path: root/src/modules/ray/ray_camera.c
AgeCommit message (Collapse)Author
2017-09-13ray: cleanup ray_camera_frame_t fragmentsVito Caputo
Previously every fb_fragment_t (and thus thread) was constructing its own ray_camera_frame_t view into the scene, duplicating some work. Instead introduce ray_camera_fragment_t to encapsulate the truly per-fragment state and make ray_scene_render_fragment() operate on just this stuff with a reference to a shared ray_camera_frame_t prepared once per-frame. Some minor ray_camera.c cleanups sneak in as well (prefer multiply instead of divide, whitespace cleanups...)
2017-09-12ray: don't assume x_alpha is 0 at begin or y_stepVito Caputo
Currently fragments always start at the left edge of the frame, but when switching to a tiling fragmenter this is no longer true and causes visible errors.
2017-05-27ray: normalize direction missed in 28d8022Vito Caputo
Need to normalize the direction when we step the y axis and @ start.
2017-05-26ray: s/nlerp/lerp/ where normalize is unnecessaryVito Caputo
It's only necessary to normalize the direction stored vector in x_step(), the rest can simply be linearly interpolated which saves some divides.
2017-01-18*: move source into src/ subdirVito Caputo
Restoring some organizational sanity since adopting autotools.
© All Rights Reserved