aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bluebey-studio/src/panel.js
diff options
context:
space:
mode:
authorYasutake Yohei <61961825+yasutakeyohei@users.noreply.github.com>2026-10-03 22:40:54 +0900
committerYasutake Yohei <61961825+yasutakeyohei@users.noreply.github.com>2026-10-03 22:40:54 +0900
commit0aa91f6f02fc95762ea4a6dbf5a4f795e4e35b86 (patch)
treedab0b35bbd64ca0e5e7eea930b2a40c63e839c1e /public/bluebey-studio/src/panel.js
parent5ef401508a9affb1aa64758a0975c3b53f3e1b2b (diff)
public/bluebey-studio: ひげ画像を色替え可能に、ダリの既定を調整
テクスチャのひげを「ひげの色」で着色できるようにした(source-in で墨の部分を色に置換え、輪郭のアンチエイリアスは維持)。近黒で作った画像でそのまま使える。 ひげの色の既定を近黒(#1c1624)にし、スウォッチに #000000 を追加。 ダリ: 左右の間隔を -10 まで選べるようにし、既定を 大きさ1/高さ100/間隔-10 にした。
Diffstat (limited to 'public/bluebey-studio/src/panel.js')
-rw-r--r--public/bluebey-studio/src/panel.js10
1 files changed, 5 insertions, 5 deletions
diff --git a/public/bluebey-studio/src/panel.js b/public/bluebey-studio/src/panel.js
index 3f63eb6..d63055a 100644
--- a/public/bluebey-studio/src/panel.js
+++ b/public/bluebey-studio/src/panel.js
@@ -168,7 +168,7 @@ export function buildPanel(app, root) {
left: randomEye(),
right: randomEye(),
cheeks: { enabled: Math.random() < 0.5 },
- beard: { shape: beardShape, ...(BEARD_KIND_DEFAULTS[beardShape] ?? { size: 1, offsetY: 0 }) },
+ beard: { shape: beardShape, ...(BEARD_KIND_DEFAULTS[beardShape] ?? { size: 1, offsetY: 0, spacing: 0 }) },
headMark: { shape: pick(['off', 'cap', 'fringe', 'fringe-up', 'wave', 'side']) },
brow: {
enabled: true,
@@ -1135,7 +1135,7 @@ export function buildPanel(app, root) {
// Each kind starts at its own size and height (a textured kind is drawn at a
// different scale from the built-in strokes). A kind with no entry resets to
// the neutral values, so switching kinds cannot leave a stray size behind.
- Object.assign(beard, BEARD_KIND_DEFAULTS[value] ?? { size: 1, offsetY: 0 });
+ Object.assign(beard, BEARD_KIND_DEFAULTS[value] ?? { size: 1, offsetY: 0, spacing: 0 });
app.actions.refresh('face');
sync();
},
@@ -1147,7 +1147,7 @@ export function buildPanel(app, root) {
onInput: (v) => { state.face.eyes.beard.size = v; app.actions.refresh('face'); },
}),
spacing: slider({
- label: '左右の間隔', min: 0, max: 240, step: 1, value: 0, format: (v) => `${Math.round(v)}`,
+ label: '左右の間隔', min: -10, max: 240, step: 1, value: 0, format: (v) => `${Math.round(v)}`,
onInput: (v) => { state.face.eyes.beard.spacing = v; app.actions.refresh('face'); },
}),
offsetY: slider({
@@ -1170,8 +1170,8 @@ export function buildPanel(app, root) {
beardBox.add(beardSliders.length.el);
beardBox.add(beardSliders.lineGap.el);
const beardColor = colorField({
- label: 'ひげの色', value: '#3a2a4a',
- swatches: ['#3a2a4a', '#1c1624', '#6b4a2a', '#8a8a94'],
+ label: 'ひげの色', value: '#1c1624',
+ swatches: ['#1c1624', '#000000', '#3a2a4a', '#6b4a2a', '#8a8a94'],
onChange: (v) => { state.face.eyes.beard.color = v; app.actions.refresh('face'); },
});
beardBox.add(beardColor.el);