summaryrefslogtreecommitdiffstats
path: root/libdimension/dimension
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@tavianator.com>2014-06-04 14:56:30 -0400
committerTavian Barnes <tavianator@tavianator.com>2014-06-04 14:58:32 -0400
commit13779f79f41e8bce483e98faa6353c07c12563c8 (patch)
tree32e9daa27f7eb687eb60692529179fb75124f976 /libdimension/dimension
parent36e399810a25d5d3a41570ee0f52f8e6d1402fbc (diff)
downloaddimension-13779f79f41e8bce483e98faa6353c07c12563c8.tar.xz
triangles: Better API.
Diffstat (limited to 'libdimension/dimension')
-rw-r--r--libdimension/dimension/objects.h24
1 files changed, 7 insertions, 17 deletions
diff --git a/libdimension/dimension/objects.h b/libdimension/dimension/objects.h
index eb476cf..b5d3bd7 100644
--- a/libdimension/dimension/objects.h
+++ b/libdimension/dimension/objects.h
@@ -26,29 +26,19 @@
#include <stdbool.h>
/**
- * A triangle, with normals interpolated between the points.
+ * A flat triangle, without normal interpolation.
* @param[in] pool The memory pool to allocate from.
- * @param[in] a The first corner of the triangle.
- * @param[in] b The second corner of the triangle.
- * @param[in] c The third corner of the triangle.
- * @param[in] na The normal at \p a.
- * @param[in] nb The normal at \p b.
- * @param[in] nc The normal at \p c.
+ * @param[in] vertices The corners of the triangle.
*/
-dmnsn_object *dmnsn_new_triangle(
- dmnsn_pool *pool,
- dmnsn_vector a, dmnsn_vector b, dmnsn_vector c,
- dmnsn_vector na, dmnsn_vector nb, dmnsn_vector nc
-);
+dmnsn_object *dmnsn_new_triangle(dmnsn_pool *pool, dmnsn_vector vertices[3]);
/**
- * A flat triangle, without normal interpolation.
+ * A triangle, with normals interpolated between the points.
* @param[in] pool The memory pool to allocate from.
- * @param[in] a The first corner of the triangle.
- * @param[in] b The second corner of the triangle.
- * @param[in] c The third corner of the triangle.
+ * @param[in] vertices The corners of the triangle.
+ * @param[in] normals The normals at each corner.
*/
-dmnsn_object *dmnsn_new_flat_triangle(dmnsn_pool *pool, dmnsn_vector a, dmnsn_vector b, dmnsn_vector c);
+dmnsn_object *dmnsn_new_smooth_triangle(dmnsn_pool *pool, dmnsn_vector vertices[3], dmnsn_vector normals[3]);
/**
* A plane.