aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bluebey-studio/src/presets.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/bluebey-studio/src/presets.js')
-rw-r--r--public/bluebey-studio/src/presets.js57
1 files changed, 47 insertions, 10 deletions
diff --git a/public/bluebey-studio/src/presets.js b/public/bluebey-studio/src/presets.js
index 3146e0b..b14a6e4 100644
--- a/public/bluebey-studio/src/presets.js
+++ b/public/bluebey-studio/src/presets.js
@@ -186,25 +186,28 @@ export function defaultState() {
// The tears live on each eye (see `eyes.left.tear`), so one eye can cry
// on its own; only the colour is shared.
tearColor: '#8fd8ff',
- // ほっぺ (a manga blush) and 頭の模様 (a mark on the head) are drawn into
- // the same plate as the eyes and brows. Both are generic manga devices,
- // not a copy of any one character, and both start off. The mark's shape
- // is one of `off`, `hook`, `spiral`, `strokes`, `dots`.
+ // ほっぺ (a manga blush) and 頭の模様 (a hair-like head covering) are drawn
+ // into the same plate as the eyes and brows. Both are generic devices,
+ // not a copy of any one character, and both start off. The blush is always
+ // four horizontal strokes, so there is no line-count field.
cheeks: {
enabled: false,
size: 1,
spacing: 0, // extra gap outwards from the eyes
offsetY: 0, // extra drop below the eyes
- lines: 4, // hatch strokes; 0 leaves a plain patch
color: '#f6a6b8',
},
+ // The head covering's `shape` is one of `off`, `cap`, `fringe`, `wave`,
+ // `side` (the boundary style) or `split` (a two-tone head divided by a
+ // vertical curve). `color` is the covering / left half; `color2` is the
+ // second colour of the two-tone split.
headMark: {
shape: 'off',
size: 1,
offsetX: 0,
offsetY: 0,
- lineWidth: 1,
color: '#8a4fe0',
+ color2: '#ffffff',
},
// Eyebrows are drawn into the eye texture. Off by default, because the
// original character has no eyebrows.
@@ -488,9 +491,43 @@ export const FACE_PRESETS = [
*/
export const POSE_PRESETS = [
{ id: 'stand', label: '立ち', pose: { bones: {} } },
- { id: 'bow', label: 'おじぎ', pose: { bones: { master: [22, 0, 0] } } },
- { id: 'deep-bow', label: 'ふかくおじぎ', pose: { bones: { master: [42, 0, 0] } } },
- { id: 'tilt', label: 'くびかしげ', pose: { bones: { master: [0, 0, 16] } } },
+ {
+ id: 'attention',
+ label: 'きおつけ',
+ pose: {
+ bones: {
+ // Both flippers dropped to the sides. A negative X lowers the arm, and
+ // the value is the same on both sides (only Z mirrors between them).
+ 'arm.l': [-62, 0, 0],
+ 'arm.r': [-62, 0, 0],
+ },
+ },
+ },
+ {
+ id: 'bow',
+ label: 'おじぎ',
+ pose: { bones: { master: [22, 0, 0], 'arm.l': [-62, 0, 0], 'arm.r': [-62, 0, 0] } },
+ },
+ {
+ id: 'deep-bow',
+ label: 'ふかくおじぎ',
+ pose: { bones: { master: [42, 0, 0], 'arm.l': [-62, 0, 0], 'arm.r': [-62, 0, 0] } },
+ },
+ {
+ id: 'tilt',
+ label: 'くびかしげ',
+ pose: {
+ bones: {
+ master: [0, 0, 16],
+ // The roll turns the whole body about its base, which swings the feet up
+ // and down, so the legs take the difference. The right-hand leg (on the
+ // left of the screen) is the one that is planted: it opens outwards a
+ // little and keeps the sole down. The left-hand leg bends back behind it.
+ 'legsupport.r': [8, 0, 0],
+ 'legsupport.l': [-6, 0, 14],
+ },
+ },
+ },
{
id: 'wave',
label: 'てをふる',
@@ -546,7 +583,7 @@ export const POSE_PRESETS = [
},
{
id: 'leap',
- label: 'とびはねる',
+ label: '大ジャンプ',
pose: {
bones: {
master: [-18, 0, 0],