Skip to content
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

Improve controller textures #8158

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

Mithi83
Copy link
Contributor

@Mithi83 Mithi83 commented Aug 23, 2024

As discussed in Discord, here are some ideas on how to improve the controller textures to avoid color mismatches in certain places. The basic idea is to expand on the (currently broken) feature for the 'inside' variant of controllers to have a and b variants of the blocks with different textures (colors swapped). It has been separated into 3 commits, each dealing with one variant of controller blocks (columns, blocks (i.e. corners) and inside).

I'm unfamiliar with what these changes will cause in terms of trouble for upgrading/downgrading existing worlds since the block states change. If columns and corners both will be merged some thought should be given to the question whether there should be a refactoring (moving the a or b information into a separate block state, as all CONTROLLER_TYPE will have a and b subtypes).

Another problem could be 3rd party texture packs that could break or require adaptations. Is that something we need to consider?

Some example pictures:
controller-texture-online
controller-texture-complex
controller-texture-offline
controller-texture-conflict
controller-texture-inside

Note that this approach cannot solve certain color mismatches, in particular corner edges and inner edges:
controller-texture-unsolvable

I'm posting this as a draft pull request as there should probably be some discussion.

Columns of controllers now have a matching color. This is achieved by
alternating a and b variants of the controllers, similar to what was
already done for the inside variants.
This extends the color matching of the columns to the blocks (i.e. the
corner pieces) as well. It only works for faces on the same plane.
Colors on the edge of the block will still not match as it is
mathematically impossible.
This extends the color matching to the inside variants of controller
blocks. For those there were also minor bugs in the texture that were
corrected as well.
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.

1 participant