-
-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
outlines for the stealth shader #1150
Conversation
oops didn't mean to do that, should be fine still hopefully? |
…into full-invis-stealth
…use the old shader
this is really good work, but its showing the outline all the time for me: probably because i'm an admin on my localhost? this will probably also translate to in-game and admins definitely don't want to "see" invisibility when they're playing without deadminning. just ghost visibility would be fine i know this isnt entirely the scope of this pr, but Stealth and StealthOnMove still have some networking issues between server and client that affect changeling. i could make it in a separate pr if you'd rather, but if you're up for it, could you pull the other datafield/component state updates from #1047? |
oh yeah I can port those in, that was bothering me as well during testing & I wasn't sure what the issue actually was, ty! |
|
||
SubscribeLocalEvent<StealthComponent, ComponentShutdown>(OnShutdown); | ||
SubscribeLocalEvent<StealthComponent, ComponentStartup>(OnStartup); | ||
SubscribeLocalEvent<StealthComponent, BeforePostShaderRenderEvent>(OnShaderRender); | ||
} | ||
|
||
//don't like doing this but it's the only good way to have the shader update as far as I can tell | ||
//though there's probably a better way, been staring at this for a while and kinda just want to be done with it | ||
//it works well, but it's not a very elegant solution |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is really scary but we can fix it at some point down the line (we are never going to fix this)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's not actually that bad since it's doing basically nothing, it just felt wierd to do
I'm like 90% sure I could just move it into handling the component state now that I think about it
edit - nvm the state handling should already be doing it this is some wierd shared / client split fuckery
edit 2 - I now have no idea why that actually works to fix it, programming is suffering, why did we teach rocks to think
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tested again and it seems to work good, im sure issues and feedback will crop up after its played with in real shifts but for now im slamming the thumbs up button
made invis actually invis, no more johnny bartender blasting the ninja frame 0
maybe don't merge immediately because I still want to do a bit of work on it (letting entities inside an invis thing see the thing they're inside & futzing with the outline colour), but it otherwise works fine.actually feel free to merge it so I don't have to worry about fucking up anything surrounding #1146 while I do more workactually actually anomalies will be completely invisible and trying to fix that has been driving me insane, maybe merge latereverything works properly finally!
ninjas, lings & cardboard boxes get the new shader, invisible anomalies will stay on the old shader
outline shader demo
visibility demo
Changelog
🆑