Пример #1
0
				SPROUT_CONSTEXPR color_type
				operator()(Intersection const& inter, Objects const& objs) const {
					return shade_1(
						inter,
						objs,
						sprout::darkroom::coords::sub(
							pos_,
							sprout::darkroom::intersects::point_of_intersection(inter)
							)
						);
				}
Пример #2
0
				SPROUT_CONSTEXPR color_type
				operator()(Intersection const& inter, Objects const& objs) const {
					return shade_1(
						inter,
						sprout::darkroom::objects::intersect_list(
							objs,
							sprout::darkroom::rays::make_ray(
								sprout::darkroom::coords::add(
									sprout::darkroom::coords::scale(
										dir_,
										sprout::numeric_limits<unit_type>::epsilon() * 256
										),
									sprout::darkroom::intersects::point_of_intersection(inter)
									),
								dir_
								)
							)
						);
				}
Пример #3
0
				SPROUT_CONSTEXPR color_type
				operator()(Intersection const& inter, Objects const& objs) const {
					return shade_1(inter, objs, sprout::index_range<0, sizeof...(Lights)>::make());
				}