diff --git a/src/main.c b/src/main.c index 4128d1d..107549b 100644 --- a/src/main.c +++ b/src/main.c @@ -6,15 +6,44 @@ /* By: freddy +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/05 16:59:32 by freddy #+# #+# */ -/* Updated: 2025/05/06 09:29:41 by freddy ### ########.fr */ +/* Updated: 2025/05/06 09:54:39 by freddy ### ########.fr */ /* */ /* ************************************************************************** */ #include "../includes/libft.h" #include "../includes/mlx.h" +typedef struct s_mlx_data +{ + void *img; + char *addr; + int bits_per_pixel; + int line_length; + int endian; +} t_mlx_data; + +void my_mlx_pixel_put(t_mlx_data *data, int x, int y, int color) +{ + char *dst; + + dst = data->addr + (y * data->line_length + x * (data->bits_per_pixel / 8)); + *(unsigned int*)dst = color; +} + int main(int argc, char **argv) { + void *mlx; + void *mlx_win; + t_mlx_data data; + if (argc < 2) return (ft_printf("Error: Missing cub3d filename\n"), 1); + (void)argv; + mlx = mlx_init(); + mlx_win = mlx_new_window(mlx, 800, 600, "Cub3d"); + data.img = mlx_new_image(mlx, 800, 600); + data.addr = mlx_get_data_addr(data.img, &data.bits_per_pixel, &data.line_length, &data.endian); + my_mlx_pixel_put(&data, 5, 5, 0x00FF0000); + mlx_put_image_to_window(mlx, mlx_win, data.img, 0, 0); + mlx_loop(mlx); }