-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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
Anchored pipe sprite layers. #34129
base: master
Are you sure you want to change the base?
Anchored pipe sprite layers. #34129
Conversation
RSI Diff Bot; head commit 2ee0fc0 merging into 4acfec8 Resources/Textures/Structures/Piping/Atmospherics/pipe.rsi
|
It is annoying that a different sprite/alignment is needed for some pipes, or this could just be added to the pipeConnector.png and I assume would just work, without needing any extra code. Note: the actual "anchored sprite appearance" will include the finished pipeConnector ends, despite what the media showcase shows. Right now I'm tacking down how that actually works, as I assume using a similar method would be the best way to implement the anchoring functionality for these layers, into the game. I assume a Visualizer component for related entities in pipes.yml would also work, though so far, I've struggled to get this working using anchoring as a state. |
You can simply use a GenericVisualizer to get the sprite change working, no C# needed. |
Thanks so much, that was exactly what I was looking for and couldn't work out for myself. You saved me a lot of head scratching. |
Well I uploaded a working version of the pipe.yml, but not sure it is quite right. I was hoping I could get |
It appears the zfighting bug I identified is unique to the test environment. Opon map loading, or anchoring/constructing a new pipe, the game correctly picks one pipe and bolt as the top layer. Assuming that I have somehow implemented the GenericVisualizer correctly, I suppose this is actually ready for review and a potential merge. Testing seems to have everything WAI in all circumstances I could think of. |
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.
I like the concept a lot, but there's a couple small issues.
Firstly, the 'screws' (as in, individual bordered pixels on the sides) should be less separated from the sheet of metal wrapping over the pipe in terms of contrast, not position. Also make sure it's not to the point of fully looking like a part of the sheet.
Second issue is during 3-4 way pipe intersections. The contrast is way too intense as compared to the 1-2 way ones, and it's simply jarring to see. Takes up too much attention on the screen and it should be similar to the others.
Thank for the feedback, both seem like fair points to me. I'll do a revision to address this and post an update. |
feels visually messy to me |
brackets should probably stick out from the sides of the pipe less |
I was on the fence about how much they should stick out. I think if I follow Ubasers advice about contrast, it will allow them to be pulled back in without merging too much with the pipe outline. |
sticks out too far on the sides and interrupting the color every tile makes it feel very visually messy. Not sure how I would go about this. |
About the PR
Resolves #33495. Displays bolted brackets when pipes are anchored.
Why / Balance
Visual feedback for anchored vs. unanchored sprites. Unanchored pipes are almost identical to anchored; when in place, it can be very hard to tell if individual pipe sections are unanchored, in a pipe network. This should make it much more obvious to the player, while maintaining a minimalist aesthetic to the pipe sprites.
Technical details
Allows a single brace and rivet sprite layer to be overlayed onto each anchored pipe type.
Media
Anchored pipe appearance:
In-game example:
With painted and unanchored pipes:
Requirements
Bugs
Changelog
Cosmetic, though relatively significant for atmos gameplay. Presumably no changelog needed.