Files
dorayme/source/include/intersection.h
Godzil 01a0de09ab Add 3 new type of object: Sphere, Object and Intersect.
Add Intersect object as a way to report where a ray intersect another object and which one it is.
Add an Object base class for all object that can be rendered.
Add the Sphere object.
2020-02-17 11:16:20 +00:00

44 lines
685 B
C++

/*
* DoRayMe - a quick and dirty Raytracer
* Intersection header
*
* Created by Manoël Trapier
* Copyright (c) 2020 986-Studio.
*
*/
#ifndef DORAYME_INTERSECTION_H
#define DORAYME_INTERSECTION_H
#include <stdlib.h>
class Object;
struct Intersection
{
double t;
Object *object;
};
static Intersection *newIntersection(double t, Object *object)
{
Intersection *ret = (Intersection *)calloc(sizeof(Intersection), 1);
if (ret != nullptr)
{
ret->t = t;
ret->object = object;
}
return ret;
}
static void freeIntersection(Intersection *i)
{
if ( i != nullptr )
{
free(i);
}
}
#endif //DORAYME_INTERSECTION_H