ray-tracer/src/ray.h
Moritz Gmeiner 29832e8f1b moved rendering code into own class
implemented antialiasing using random subsampling
2023-12-27 20:14:29 +01:00

20 lines
415 B
C++

#pragma once
#include "raytracer.h"
#include "vec3.h"
class Ray {
public:
constexpr Ray() = default;
constexpr Ray(const Point3& origin, const Vec3& direction) : orig_{origin}, dir_{direction} {}
Point3 origin() const { return orig_; }
Vec3 direction() const { return dir_; }
constexpr Point3 At(f64 t) const { return orig_ + t * dir_; }
private:
Point3 orig_;
Vec3 dir_;
};