mirror of
https://github.com/seekrs/MacroLibX.git
synced 2026-01-11 14:43:34 +00:00
fixing weird color bug with mlx_get_image_pixel
This commit is contained in:
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2022/10/04 17:55:21 by maldavid #+# #+# */
|
/* Created: 2022/10/04 17:55:21 by maldavid #+# #+# */
|
||||||
/* Updated: 2024/01/26 11:59:34 by maldavid ### ########.fr */
|
/* Updated: 2024/02/24 01:07:56 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2022/10/04 17:35:20 by maldavid #+# #+# */
|
/* Created: 2022/10/04 17:35:20 by maldavid #+# #+# */
|
||||||
/* Updated: 2024/01/19 05:35:38 by maldavid ### ########.fr */
|
/* Updated: 2024/02/23 22:37:24 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@@ -120,7 +120,13 @@ extern "C"
|
|||||||
int mlx_get_image_pixel(void* mlx, void* img, int x, int y)
|
int mlx_get_image_pixel(void* mlx, void* img, int x, int y)
|
||||||
{
|
{
|
||||||
MLX_CHECK_APPLICATION_POINTER(mlx);
|
MLX_CHECK_APPLICATION_POINTER(mlx);
|
||||||
return static_cast<mlx::core::Application*>(mlx)->getTexturePixel(img, x, y);
|
int color = static_cast<mlx::core::Application*>(mlx)->getTexturePixel(img, x, y);
|
||||||
|
unsigned char color_bits[4];
|
||||||
|
color_bits[0] = (color & 0x000000FF);
|
||||||
|
color_bits[1] = (color & 0x0000FF00) >> 8;
|
||||||
|
color_bits[2] = (color & 0x00FF0000) >> 16;
|
||||||
|
color_bits[3] = (color & 0xFF000000) >> 24;
|
||||||
|
return *reinterpret_cast<int*>(color_bits);
|
||||||
}
|
}
|
||||||
|
|
||||||
void mlx_set_image_pixel(void* mlx, void* img, int x, int y, int color)
|
void mlx_set_image_pixel(void* mlx, void* img, int x, int y, int color)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2022/10/05 16:30:19 by maldavid #+# #+# */
|
/* Created: 2022/10/05 16:30:19 by maldavid #+# #+# */
|
||||||
/* Updated: 2024/01/16 07:59:15 by maldavid ### ########.fr */
|
/* Updated: 2024/02/23 22:27:30 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@@ -123,19 +123,19 @@ namespace mlx
|
|||||||
case SDL_WINDOWEVENT_FOCUS_GAINED:
|
case SDL_WINDOWEVENT_FOCUS_GAINED:
|
||||||
{
|
{
|
||||||
if(win_hook.hook)
|
if(win_hook.hook)
|
||||||
win_hook.hook(4, win_hook.param);
|
win_hook.hook(5, win_hook.param);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case SDL_WINDOWEVENT_LEAVE:
|
case SDL_WINDOWEVENT_LEAVE:
|
||||||
{
|
{
|
||||||
if(win_hook.hook)
|
if(win_hook.hook)
|
||||||
win_hook.hook(5, win_hook.param);
|
win_hook.hook(6, win_hook.param);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case SDL_WINDOWEVENT_FOCUS_LOST:
|
case SDL_WINDOWEVENT_FOCUS_LOST:
|
||||||
{
|
{
|
||||||
if(win_hook.hook)
|
if(win_hook.hook)
|
||||||
win_hook.hook(4, win_hook.param);
|
win_hook.hook(7, win_hook.param);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2023/03/31 18:03:35 by maldavid #+# #+# */
|
/* Created: 2023/03/31 18:03:35 by maldavid #+# #+# */
|
||||||
/* Updated: 2024/01/18 10:18:22 by maldavid ### ########.fr */
|
/* Updated: 2024/02/24 03:51:59 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@@ -98,7 +98,11 @@ namespace mlx
|
|||||||
if(_map == nullptr)
|
if(_map == nullptr)
|
||||||
openCPUmap();
|
openCPUmap();
|
||||||
uint32_t color = _cpu_map[(y * getWidth()) + x];
|
uint32_t color = _cpu_map[(y * getWidth()) + x];
|
||||||
return (color);
|
uint8_t* bytes = reinterpret_cast<uint8_t*>(&color);
|
||||||
|
uint8_t tmp = bytes[0];
|
||||||
|
bytes[0] = bytes[2];
|
||||||
|
bytes[2] = tmp;
|
||||||
|
return *reinterpret_cast<int*>(bytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Texture::openCPUmap()
|
void Texture::openCPUmap()
|
||||||
|
|||||||
Reference in New Issue
Block a user