Code Monkey home page Code Monkey logo

Comments (3)

Dalibor-P avatar Dalibor-P commented on June 2, 2024 3

I have recently looked at my theme with the newest version of Blender, and it still works well. Maybe some of the newest features in Blender may not have the correct colors, but I don't think it matters much. The core appearance works.

The catch is the difficulty of developing and maintaining Blender themes. Here is a list of things that frustrated me:

  1. Blender has hundreds of color properties. Each editor has its own properties for multiple background and foreground layers and editor specific properties. Each property has to be checked and edited individually. Only one half of those properties are relevant. The rest is either doing nothing (as in, the color property exists, but doesn't affect Blender in any way, essentially being useless) or it controls an obscure feature that no one ever uses.
  2. There is at least one button type, that wasn't editable through Blender, and I had to find it in the .xml file that has a length of 1 500 lines.
  3. There are 20 different button types, each had to be verified individually, some of which exist only in one panel or one editor.
  4. Changing colors via search and replace function en masse is risky, because the same color can be used as a panel background and button outline.
  5. When an update rolls out, there is no list of new properties added with the updated, forcing me to search for them myself based on patch notes.
  6. Sometimes, one button property looks well in one panel, but looks awful in another panel. I found I had to make many compromises, sometimes even having to backtrack on dozens of changes done to editor/panel backgrounds.
  7. Blender development team develop blender UI for a dark theme (Blender Dark) first and foremost. Even their official light theme Blender Light uses dark buttons and accents. It's difficult to make and maintain a custom light theme.

All the points above make it difficult to come back and continue the maintenance of the theme, because of how overwhelming all those settings are. It's bloated, and I don't remember what each of the settings does.

So, my take is that I don't feel like continuing maintaining my repo. Not until Blender devs simplify the theme development by reducing the amount of properties, improving consistency of button properties, cleaning it up and merging the same properties together (one property to change all backgrounds in all editors), and I doubt that will happen.

Finally, take note of https://github.com/ameknite/blender. This person has forked my theme and built their own theme off of mine, but just after a few versions, theirs look a lot different from mine. The difference between our themes is that I made it light (latte) theme first, while they made it dark (frappe) theme first.

from catppuccin.

ameknite avatar ameknite commented on June 2, 2024 2

Right now my project is stale, but I really like catppuccin themes and with the announcement of the Extension Platform in Blender, I have plans to refactor all the project to parse correctly the Blender Theme and create a cli tool to made it easier to support different flavors and versions of blender.

When I have something decent, I'll open an issue, so people can check it out.

from catppuccin.

sgoudham avatar sgoudham commented on June 2, 2024

Thanks for sharing your experience @Dalibor-P, I assume you no longer would like to merge #2040 into the organisation as you have expressed your disinterest in maintaining the repository going forward?

Recently, we had a similar situation with catppuccin/steam and opted to archive it as it proved too difficult to theme reasonably and consistently, it sounds like Blender might also come under this category for now?

However, I'd be interested in hearing how @ameknite and @codekisser feel about their repositories, and if they've mitigated some of the pain points mentioned here.

from catppuccin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.