17 lines
430 B
C
17 lines
430 B
C
#include "structs.h"
|
|
#include "collision.h"
|
|
#include "vectorOp.h"
|
|
|
|
RGBA raytraceSphere(sphere *obj, ray *lightray) {
|
|
RGBA pixel;
|
|
pixel.r = 0;
|
|
pixel.g = 0;
|
|
pixel.b = 0;
|
|
pixel.a = 1;
|
|
|
|
vec3 collisionPoint = collisionPointSphere(lightray, obj);
|
|
vec3 sphereNormal = vec3Normalize(vec3Subtract(collisionPoint, obj->origin));
|
|
pixel.r = -vec3Product(sphereNormal, lightray->direction);
|
|
return pixel;
|
|
|
|
} |