Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

GRIMUMU

4
Posts
15
Followers
20
Following
A member registered Aug 28, 2025 · View creator page →

Creator of

Recent community posts

I’ve analyzed why the game is crashing. There was a syntax error in the previous code snippet, and applying the shader in two different places simultaneously can cause conflicts. Here is the direct fix:

1. Correct the code in screens.rpy

Open your "screens.rpy" file and locate the "screen say(who, what):" section. Find the line for the Side Image and replace that block with this exact code:

if side_image:
    add side_image at outline_white_thick:
        xalign 0.0
        yalign 1.0

Applying it directly in the screen is much more efficient as it handles all your MC's expressions at once.

2. Clean up your image definitions

You must remove any "at outline_white_thick" or similar transforms from your individual image definitions (like "image side saki..."). If you apply the shader in the image definition AND in the screen at the same time, the game will crash or have performance issues.

3. Padding Reminder

If the outline looks cut off, ensure your PNG files have at least 15 pixels of empty transparency around the edges. If the character's hair or clothes touch the edge of the image, the shader won't have space to draw the outline.

This should solve the crash and get the shader working perfectly. 

Did it work? 

Hi there! Thank you for the feedback. I’ve analyzed why the shader might be acting up specifically with your Side MC sprite.

The issue isn't your sprite or the shader code itself, but how Ren'Py handles the "Side Image" container. When you define it using "At()", the shader expands the mesh to draw the outline , but the dialogue window often clips (cuts off) anything that goes outside its standard boundaries.

The fix is to apply the transform directly in your "screens.rpy" file:

  1. Open screens.rpy and locate the screen say(who, what): section.
  2. Find the line that says add SideImage().
  3. Apply the transform there like this:
if gui.show_side_image:
    add SideImage() at outline_white_thick

Pro Tip for your Sprites: Make sure your side saki PNG files have at least 10-15 pixels of empty transparency around the edges. If the character's hair or clothes touch the very edge of the image file, the shader won't have "canvas" space to draw the outline, even with the automatic padding.

Applying it in the screen is much more efficient as it handles all your MC's expressions at once! Let me know if this solves it for you.

She’s the only sprite I’ve drawn, haha 😅

Hi! Thank you so much for your comment! I'm really glad you like the shader. 

Regarding your question: Yes, it works perfectly on side images! Since side images are handled as sprites in Ren'Py, you can apply the shader directly when defining your character.

The best way to do this is to apply the transform in the image definition so you don't have to call it every time. Here is an example:

# Applying a white outline preset to a side image sprite
image side reze = At("images/reze_side.png", outline_white_thin)
# --
# Now define your character using that side image
define r = Character("Reze", image="reze")
label start:
    r "As you can see, the outline works on my side image too!"

I hope this helps! Feel free to ask if you have any more questions.