diff options
author | Joshua Leung <aligorith@gmail.com> | 2008-01-23 13:14:45 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2008-01-23 13:14:45 +0300 |
commit | 9cd27e908b4f4a607b2325be45491d465742e4bb (patch) | |
tree | 57fb5722a38e3a298e1c51c4c8ed954d4d7fad73 /source/blender/makesdna/DNA_userdef_types.h | |
parent | 93f3585f8bd703e874752ef367717740248ff2c1 (diff) |
== "Custom Bone Colors" ==
This commit introduces the ability to give groups of bones different colour-sets, which enables them to be more easily identified in the 3d-view. Currently, custom bone colours have been implemented as a way to visualise bone-group membership (after all, colours and groups are both just ways of managing bones).
Usage Notes:
* Each theme currently has 20 Color-Sets available for Bones.
These can be accessed from the "Bone Color Sets" option under the Theme buttons. (Note: currently, I haven't defined any default colour-sets. Donations welcome on this ;-) ) As such, colour sets are not saved per file! You will need to save the theme to preserve the color set for the next session.
* Each Bone-Group can use any one of these 20 sets, or just use the default colour-set.
Use the "GroupCol" button to set this. When a set has been chosen, three little rectangles are drawn beside the button to preview the colours the set provides.
* A bone must belong to a Bone-Group to get that group's colours.
* "Colors" toggle on "Armature" panel must be enabled for these custom-colours to be shown for all bones that can have them.
This toggle is off by default, but is there to allow rigs to be debugged (by colours) for example.
* The "Use 'Constraint' Colouring" option (per Colour Set), determines whether the colours denoting presences of constraints, ik, or keyframes are drawn in conjunction with the custom colours. It is off by default, as in many combinations, they look quite ugly when used in conjunction with custom colours.
* Custom colours are only shown in PoseMode
Assorted Notes:
* I've tested this thoroughly, and there shouldn't be any problems caused by this.
* In the process, I found a bug with envelope bone drawmode. In wire-frame mode, all bones got scaled up by several types.
* I've cleaned up the armature drawing code a bit (mostly fixing messy white-space usage), but also creating a centralised method of setting colours for bones (currently only used for bones in PoseMode).
Diffstat (limited to 'source/blender/makesdna/DNA_userdef_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_userdef_types.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index 16b7cdd87df..b22966e61d8 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -64,7 +64,6 @@ typedef struct ThemeUI { char but_drawtype; char pad[3]; char iconfile[80]; // FILE_MAXFILE length - } ThemeUI; /* try to put them all in one, if needed a special struct can be created as well @@ -107,14 +106,20 @@ typedef struct ThemeSpace { char editmesh_active[4]; } ThemeSpace; + /* set of colors for use as a custom color set for Objects/Bones wire drawing */ typedef struct ThemeWireColor { - char unselected[3]; - char selected[3]; - char active[3]; - char pad[7]; + char solid[4]; + char select[4]; + char active[4]; + + short flag; + short pad; } ThemeWireColor; +/* flags for ThemeWireColor */ +#define TH_WIRECOLOR_CONSTCOLS (1<<0) + /* A theme */ typedef struct bTheme { struct bTheme *next, *prev; |