MLX42
1.0
MLX42
Loading...
Searching...
No Matches
mlx_texture.c
Go to the documentation of this file.
1
/* ************************************************************************** */
2
/* */
3
/* :::::::: */
4
/* mlx_texture.c :+: :+: */
5
/* +:+ */
6
/* By: W2Wizard <main@w2wizard.dev> +#+ */
7
/* +#+ */
8
/* Created: 2022/02/17 01:02:24 by W2Wizard #+# #+# */
9
/* Updated: 2023/03/09 11:03:47 by W2Wizard ######## odam.nl */
10
/* */
11
/* ************************************************************************** */
12
13
#include "
MLX42/MLX42_Int.h
"
14
15
//= Public =//
16
17
mlx_image_t
*
mlx_texture_to_image
(
mlx_t
*
mlx
,
mlx_texture_t
*
texture
)
18
{
19
MLX_NONNULL
(
mlx
);
20
MLX_NONNULL
(
texture
);
21
22
mlx_image_t
*
image
=
mlx_new_image
(
mlx
,
texture
->
width
,
texture
->height);
23
if
(
image
==
NULL
)
24
return
(
NULL
);
25
26
uint8_t
*
pixelx
;
27
uint8_t
*
pixeli
;
28
for
(
uint32_t
i
= 0;
i
<
texture
->height;
i
++)
29
{
30
pixelx
= &
texture
->pixels[(
i
*
texture
->width) *
texture
->bytes_per_pixel];
31
pixeli
= &
image
->pixels[(
i
*
image
->width) *
texture
->bytes_per_pixel];
32
memmove
(
pixeli
,
pixelx
,
texture
->width *
texture
->bytes_per_pixel);
33
}
34
return
(
image
);
35
}
36
37
void
mlx_delete_texture
(
mlx_texture_t
*
texture
)
38
{
39
MLX_NONNULL
(
texture
);
40
41
mlx_freen
(2,
texture
->pixels,
texture
);
42
}
mlx_new_image
mlx_image_t * mlx_new_image(mlx_t *mlx, uint32_t width, uint32_t height)
Definition
mlx_images.c:161
MLX42_Int.h
MLX_NONNULL
#define MLX_NONNULL(var)
Definition
MLX42_Int.h:46
mlx_freen
bool mlx_freen(int32_t count,...)
Definition
mlx_utils.c:89
texture
GLuint texture
Definition
glad.h:2899
image
GLenum GLenum GLsizei void * image
Definition
glad.h:5132
length
GLuint GLsizei GLsizei * length
Definition
glad.h:3372
mlx_texture_to_image
mlx_image_t * mlx_texture_to_image(mlx_t *mlx, mlx_texture_t *texture)
Definition
mlx_texture.c:17
mlx_delete_texture
void mlx_delete_texture(mlx_texture_t *texture)
Definition
mlx_texture.c:37
mlx_image
Definition
MLX42.h:341
mlx_texture
Definition
MLX42.h:264
mlx
Definition
MLX42.h:361
mlx::width
int32_t width
Definition
MLX42.h:364
lib
MLX42
src
textures
mlx_texture.c
Generated by
1.9.8