From 6787a9219748575cd63aaadd483f49a4fd83b543 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Sat, 9 Jan 2010 20:38:51 -0500 Subject: Implement reflection. --- libdimension/dimension/texture.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'libdimension/dimension/texture.h') diff --git a/libdimension/dimension/texture.h b/libdimension/dimension/texture.h index c5f4b3f..4b14918 100644 --- a/libdimension/dimension/texture.h +++ b/libdimension/dimension/texture.h @@ -63,13 +63,17 @@ typedef dmnsn_color dmnsn_finish_fn(const dmnsn_finish *finish, dmnsn_vector viewer); typedef dmnsn_color dmnsn_ambient_fn(const dmnsn_finish *finish, dmnsn_color pigment); +typedef dmnsn_color dmnsn_reflection_fn(const dmnsn_finish *finish, + dmnsn_color reflect, dmnsn_color color, + dmnsn_vector ray, dmnsn_vector normal); /* dmnsn_finish definition */ struct dmnsn_finish { /* Callbacks */ - dmnsn_finish_fn *finish_fn; - dmnsn_ambient_fn *ambient_fn; - dmnsn_free_fn *free_fn; + dmnsn_finish_fn *finish_fn; + dmnsn_ambient_fn *ambient_fn; + dmnsn_reflection_fn *reflection_fn; + dmnsn_free_fn *free_fn; /* Generic pointer */ void *ptr; -- cgit v1.2.3