# SDL: VITA: fix shader color format

**URL:** <https://discourse.libsdl.org/t/sdl-vita-fix-shader-color-format/55008>\
**Category:** SDL Commits\
**Created:** [October 16, 2024, 2:43pm UTC](https://discourse.libsdl.org/t/sdl-vita-fix-shader-color-format/55008 "2024-10-16T14:43:16Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![SDLPushPostBot](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/sdlpushpostbot/32/4370_2.png) [@SDLPushPostBot](https://discourse.libsdl.org/u/SDLPushPostBot)\
**Post date:** [October 16, 2024, 2:43pm UTC](https://discourse.libsdl.org/t/sdl-vita-fix-shader-color-format/55008/1 "2024-10-16T14:43:16Z")

</div>

> <https://github.com/libsdl-org/SDL/commit/860e38a3a2858122de17220e4ecd1e76b90bf85c>

```diff
From 860e38a3a2858122de17220e4ecd1e76b90bf85c Mon Sep 17 00:00:00 2001
From: Ivan Epifanov <[EMAIL REDACTED]>
Date: Wed, 16 Oct 2024 10:35:33 +0300
Subject: [PATCH] VITA: fix shader color format

---
 src/render/vitagxm/SDL_render_vita_gxm_tools.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/render/vitagxm/SDL_render_vita_gxm_tools.c b/src/render/vitagxm/SDL_render_vita_gxm_tools.c
index 52e9d742f4204..652ad055cb2b9 100644
--- a/src/render/vitagxm/SDL_render_vita_gxm_tools.c
+++ b/src/render/vitagxm/SDL_render_vita_gxm_tools.c
@@ -740,10 +740,10 @@ int gxm_init(SDL_Renderer *renderer)
         colorVertexAttributes[0].format = SCE_GXM_ATTRIBUTE_FORMAT_F32;
         colorVertexAttributes[0].componentCount = 2; // (x, y)
         colorVertexAttributes[0].regIndex = sceGxmProgramParameterGetResourceIndex(paramColorPositionAttribute);
- // color: 4 unsigned char = 32 bits
+ // color: 4 floats = 4*32 bits
         colorVertexAttributes[1].streamIndex = 0;
         colorVertexAttributes[1].offset = 8; // (x, y) * 4 = 8 bytes
- colorVertexAttributes[1].format = SCE_GXM_ATTRIBUTE_FORMAT_U8N;
+ colorVertexAttributes[1].format = SCE_GXM_ATTRIBUTE_FORMAT_F32;
         colorVertexAttributes[1].componentCount = 4; // (color)
         colorVertexAttributes[1].regIndex = sceGxmProgramParameterGetResourceIndex(paramColorColorAttribute);
         // 16 bit (short) indices
@@ -785,10 +785,10 @@ int gxm_init(SDL_Renderer *renderer)
         textureVertexAttributes[1].format = SCE_GXM_ATTRIBUTE_FORMAT_F32;
         textureVertexAttributes[1].componentCount = 2; // (u, v)
         textureVertexAttributes[1].regIndex = sceGxmProgramParameterGetResourceIndex(paramTextureTexcoordAttribute);
- // r,g,b,a: 4 unsigned chars 32 bits
+ // r,g,b,a: 4 floats 4*32 bits
         textureVertexAttributes[2].streamIndex = 0;
         textureVertexAttributes[2].offset = 16; // (x, y, u, v) * 4 = 16 bytes
- textureVertexAttributes[2].format = SCE_GXM_ATTRIBUTE_FORMAT_U8N;
+ textureVertexAttributes[2].format = SCE_GXM_ATTRIBUTE_FORMAT_F32;
         textureVertexAttributes[2].componentCount = 4; // (r, g, b, a)
         textureVertexAttributes[2].regIndex = sceGxmProgramParameterGetResourceIndex(paramTextureColorAttribute);
         // 16 bit (short) indices

```
