diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-02-25 17:41:43 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-02-25 17:42:43 +0100 |
| commit | bf02e60b7b38e257b930a7188e42ade25920f71f (patch) | |
| tree | 4bf965e77470a76d186a1d8af0f43ad464397d31 | |
| parent | a5795a2b1fae5ce8f1ac1157893bc8e3b4f5071f (diff) | |
| download | fractol-bf02e60b7b38e257b930a7188e42ade25920f71f.tar.gz fractol-bf02e60b7b38e257b930a7188e42ade25920f71f.tar.bz2 fractol-bf02e60b7b38e257b930a7188e42ade25920f71f.zip | |
Added screenshots
| -rw-r--r-- | README.md | 8 | ||||
| -rw-r--r-- | screenshots/julia.png | bin | 0 -> 391587 bytes | |||
| -rw-r--r-- | screenshots/mandelbrot.png | bin | 0 -> 276660 bytes | |||
| -rw-r--r-- | src/event.c | 3 | ||||
| -rw-r--r-- | src/render.c | 37 | ||||
| -rw-r--r-- | src/state.c | 6 |
6 files changed, 47 insertions, 7 deletions
@@ -1,3 +1,11 @@ # fractol fractol project of school 42. + +## Mandelbrot + + + +## Julia + + diff --git a/screenshots/julia.png b/screenshots/julia.png Binary files differnew file mode 100644 index 0000000..e584887 --- /dev/null +++ b/screenshots/julia.png diff --git a/screenshots/mandelbrot.png b/screenshots/mandelbrot.png Binary files differnew file mode 100644 index 0000000..41c09b3 --- /dev/null +++ b/screenshots/mandelbrot.png diff --git a/src/event.c b/src/event.c index 1c6753e..d3adc1b 100644 --- a/src/event.c +++ b/src/event.c @@ -6,14 +6,13 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/24 09:52:35 by cacharle #+# #+# */ -/* Updated: 2020/02/25 16:20:49 by cacharle ### ########.fr */ +/* Updated: 2020/02/25 17:04:38 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ #include "fractol.h" #define MOVE_SPEED 0.1 -#define ZOOM_SPEED 1.2 int event_quit(t_state *state) { diff --git a/src/render.c b/src/render.c index 2045a3a..a7e9f92 100644 --- a/src/render.c +++ b/src/render.c @@ -6,12 +6,45 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/24 09:54:59 by cacharle #+# #+# */ -/* Updated: 2020/02/25 16:13:40 by cacharle ### ########.fr */ +/* Updated: 2020/02/25 17:28:08 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ #include "fractol.h" +#define SUPERSAMPLE_SIZE 3 + +static t_color st_take_sample(t_state *state, t_complex z) +{ + int u; + int v; + t_complex sz; + t_color color; + t_color tmp; + + color.hexcode = 0x0; + u = -1; + while (++u < SUPERSAMPLE_SIZE) + { + v = -1; + while (++v < SUPERSAMPLE_SIZE) + { + sz.r = z.r + (double)v / 3.0; + sz.i = z.i + (double)u / 3.0; + tmp = state->palette[state->func(state, sz)]; + color.rgb.r += tmp.rgb.r; + color.rgb.g += tmp.rgb.g; + color.rgb.b += tmp.rgb.b; + } + } + + color.rgb.r /= 9; + color.rgb.g /= 9; + color.rgb.b /= 9; + + return (color); +} + static void *st_render_routine(void *void_arg) { int j; @@ -28,7 +61,7 @@ static void *st_render_routine(void *void_arg) while (++j < WINDOW_WIDTH) { z.r = ((double)j / (double)WINDOW_WIDTH) * state->plane.r - (state->plane.r / 2.0) + state->center.r; - ((t_color*)state->window.data)[offset] = state->palette[state->func(state, z)]; + ((t_color*)state->window.data)[offset] = state->palette[state->func(state, z)];//st_take_sample(state, z); offset++; } return (NULL); diff --git a/src/state.c b/src/state.c index f079b6c..ae9f107 100644 --- a/src/state.c +++ b/src/state.c @@ -6,7 +6,7 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/24 09:58:01 by cacharle #+# #+# */ -/* Updated: 2020/02/25 15:57:01 by cacharle ### ########.fr */ +/* Updated: 2020/02/25 17:31:49 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -31,7 +31,7 @@ void state_update_palette(t_state *state) hsl.l = 127; state->palette[i] = color_hsl_to_rgb(hsl); } - state->palette[i].hexcode = 0x0; + state->palette[i].hexcode = 0x111111; } static int st_state_dispatch_func(t_state *state, char *fractal_name) @@ -75,7 +75,7 @@ int state_init(t_state *state, char *fractal_name) state->center.i = 0.0; state->plane.r = 4.0; state->plane.i = 4.0; - state->iterations = 30; + state->iterations = 50; state->palette = NULL; state_update_palette(state); state->updated = false; |
