diff options
Diffstat (limited to 'src/color.c')
| -rw-r--r-- | src/color.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/color.c b/src/color.c index 45a00fa..edbafc3 100644 --- a/src/color.c +++ b/src/color.c @@ -6,13 +6,12 @@ /* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/05/13 11:53:53 by charles #+# #+# */ -/* Updated: 2020/05/13 13:00:48 by charles ### ########.fr */ +/* Updated: 2020/05/13 16:43:59 by charles ### ########.fr */ /* */ /* ************************************************************************** */ #include "scop.h" -#include <string.h> float *color_new(size_t n) { size_t i; @@ -22,11 +21,11 @@ float *color_new(size_t n) if ((colors = malloc(sizeof(float) * (n * 4))) == NULL) return (NULL); - step = 1.0 / (float)n; + step = 0.8 / (float)n; i = 0; - c.r = 0.0; - c.g = 0.0; - c.b = 0.0; + c.r = 0.1; + c.g = 0.1; + c.b = 0.1; c.a = 1.0; while (i < n) { @@ -39,7 +38,7 @@ float *color_new(size_t n) return (colors); } -bool color_merge_vertices(t_object *object) +bool color_merge_vertices(t_object *object, float *coords) { size_t i; float *colors; @@ -47,7 +46,7 @@ bool color_merge_vertices(t_object *object) if ((colors = color_new(object->vertices_len)) == NULL) return (false); - if ((new_vertices = malloc(sizeof(float) * (object->vertices_len * 8))) == NULL) + if ((new_vertices = malloc(sizeof(float) * object->vertices_len * (4 + 4 + 2))) == NULL) { free(colors); return (false); @@ -55,8 +54,9 @@ bool color_merge_vertices(t_object *object) i = 0; while (i < object->vertices_len) { - ft_memcpy(&new_vertices[i * 8], &object->vertices[i * 4], 4 * sizeof(float)); - ft_memcpy(&new_vertices[i * 8 + 4], &colors[i * 4], 4 * sizeof(float)); + ft_memcpy(&new_vertices[i * (4 + 4 + 2)], &object->vertices[i * 4], 4 * sizeof(float)); + ft_memcpy(&new_vertices[i * (4 + 4 + 2) + 4], &colors[i * 4], 4 * sizeof(float)); + ft_memcpy(&new_vertices[i * (4 + 4 + 2) + 8], &coords[i * 2], 2 * sizeof(float)); i++; } free(object->vertices); |
