Skip to content

Conversation

@real-niacat
Copy link
Contributor

Additional Info:

  • I didn't modify api's or I've made a PR to the wiki repo.
  • I didn't modify api's or I've updated lsp definitions.
  • I didn't make new lovely files or all new lovely files have appropriate priority.

adds a new gameobject - SMODS.ScreenShader, which applies a given shader to the entire screen. Any amount of screenshaders can be stacked on the screen at once without conflicting
i am not very confident that this is good but its ok :3

@ethangreen-dev
Copy link

+rep good trade

@cg-223
Copy link
Contributor

cg-223 commented Jan 22, 2026

imo CRT should be applied later than normal since it leaves those empty bits on the corners

@real-niacat
Copy link
Contributor Author

i'll change it to order of 0 then, that feels right since it is the default shader thats always applied

@Aurelius7309
Copy link
Member

Is there a good reason for this not being a subclass of SMODS.Shader?

@real-niacat
Copy link
Contributor Author

the main reason why i made it as a new object is because G.SHADERS is a table of userdatas, so you can't add a function for getting send vars from one of those, but SMODS.Shaders doesn't contain vanilla shaders, so the best solution i thought of was to separate the initialization of a shader and adding it to the screen (though that still can be done via the path property)
i'm open to changing it if it's needed, but that was just my thought process

@cg-223
Copy link
Contributor

cg-223 commented Jan 27, 2026

also restarting the game from the crash screen does not work with this pr (it does work on main branch)

Co-authored-by: cg223 <cg223celeste@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants