aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYasutake Yohei <61961825+yasutakeyohei@users.noreply.github.com>2026-10-22 14:39:22 +0900
committerYasutake Yohei <61961825+yasutakeyohei@users.noreply.github.com>2026-10-22 14:39:22 +0900
commite5d1b6748a5e9d6e8e7650c657b79fc548b7393d (patch)
tree7839d399c7232c313e87d9635048af2f3e35cd7a
parentdbe32ac300ee581fb26c99eb58adfb73f630ce27 (diff)
bluebey-studio: パン後に回転がぶるべー中心になるよう修正
-rw-r--r--public/bluebey-studio/guide.html2
-rw-r--r--public/bluebey-studio/index.html2
-rw-r--r--public/bluebey-studio/src/main.js11
-rw-r--r--public/bluebey/guide.pdfbin3886942 -> 3888035 bytes
-rw-r--r--src/content/docs/bluebey/guide.mdx2
5 files changed, 12 insertions, 5 deletions
diff --git a/public/bluebey-studio/guide.html b/public/bluebey-studio/guide.html
index bf5cb36..a6cba9f 100644
--- a/public/bluebey-studio/guide.html
+++ b/public/bluebey-studio/guide.html
@@ -110,7 +110,7 @@
</ol>
<h3>パソコンでの操作</h3>
<ul>
- <li>ぶるべーをつかんでドラッグすると、カメラ(見ている基準点)を動かせます。</li>
+ <li>ぶるべーをつかんでドラッグすると、カメラ(見ている基準点)を動かせます。ぶるべーは画面の中心に残ります。</li>
<li>Shift を押しながらドラッグすると、ぶるべーを移動できます。</li>
<li>向きは、全身とボーンのスライダーや回転ギズモで調整できます。</li>
<li>モデルをクリックすると、その場所に近いボーンが選ばれます。</li>
diff --git a/public/bluebey-studio/index.html b/public/bluebey-studio/index.html
index bc0730d..9f2e089 100644
--- a/public/bluebey-studio/index.html
+++ b/public/bluebey-studio/index.html
@@ -136,7 +136,7 @@ if (window.matchMedia('(max-width: 768px), (max-height: 500px) and (pointer: coa
<h3>ポーズ</h3>
<ul>
<li>右パネルの「ポーズ」でボーンを選び、X/Y/Zのスライダーを動かします。「ポーズ例」から始めると早いです。</li>
- <li>ぶるべーをつかんでドラッグすると、カメラ(見ている基準点)を動かせます。Shiftを押しながらドラッグすると、ぶるべーを移動できます。</li>
+ <li>ぶるべーをつかんでドラッグすると、カメラ(見ている基準点)を動かせます(ぶるべーは中心に残ります)。Shiftを押しながらドラッグすると、ぶるべーを移動できます。</li>
<li>モデルをクリックすると、その場所にいちばん近いボーンが選ばれます。</li>
<li>ギズモ(回転の輪)を直接ドラッグしても回せます。</li>
<li>スライダーの値は「休めの姿勢(レストポーズ)」からの差分です。<code>0,0,0</code> で元の姿勢。</li>
diff --git a/public/bluebey-studio/src/main.js b/public/bluebey-studio/src/main.js
index 8d69154..b08ea11 100644
--- a/public/bluebey-studio/src/main.js
+++ b/public/bluebey-studio/src/main.js
@@ -2377,8 +2377,9 @@ async function init() {
const dy = event.clientY - modelDrag.y;
const k = dragScale();
if (modelDrag.pan) {
- // Plain drag: move the camera's reference point (the same effect as the
- // two-finger drag on a phone). The character stays where it is.
+ // Plain drag: move the camera's reference point (the phone's two-finger
+ // drag). The character rides along with it, so it stays at the centre and
+ // orbiting still turns it in place instead of swinging it around.
// Use the step since the previous event, not the total from the press:
// pointermove fires many times per drag, so adding the total every time
// would make the pan accelerate.
@@ -2391,9 +2392,15 @@ async function init() {
const move = new THREE.Vector3()
.addScaledVector(right, -stepX * k)
.addScaledVector(up, stepY * k);
+ // Stay on the floor: a vertical drag pans forward/back, never lifts the
+ // character off the ground (which would detach its shadow).
+ move.y = 0;
view.target.add(move);
for (const controls of Object.values(view.controlsMap ?? {})) controls.target.add(move);
for (const cam of Object.values(view.cameras ?? {})) cam.position.add(move);
+ const root = state.pose.root ?? (state.pose.root = [0, 0, 0]);
+ root[0] = round2((root[0] ?? 0) + move.x);
+ root[2] = round2((root[2] ?? 0) + move.z);
view.captureInto(state.view);
} else {
// Shift+drag (or any touch drag on the character): slide the character,
diff --git a/public/bluebey/guide.pdf b/public/bluebey/guide.pdf
index 903ee9d..6ef3dd7 100644
--- a/public/bluebey/guide.pdf
+++ b/public/bluebey/guide.pdf
Binary files differ
diff --git a/src/content/docs/bluebey/guide.mdx b/src/content/docs/bluebey/guide.mdx
index 61f30db..0749144 100644
--- a/src/content/docs/bluebey/guide.mdx
+++ b/src/content/docs/bluebey/guide.mdx
@@ -82,7 +82,7 @@ description: 小平市のマスコットキャラクタ「ぶるべー」の3Dã‚
### パソコンでの操作
-- ぶるべーをつかんでドラッグすると、カメラ(見ている基準点)を動かせます。
+- ぶるべーをつかんでドラッグすると、カメラ(見ている基準点)を動かせます。ぶるべーは画面の中心に残ります。
- Shift を押しながらドラッグすると、ぶるべーを移動できます。
- 向きは、全身とボーンのスライダーや回転ギズモで調整できます。
- モデルをクリックすると、その場所に近いボーンが選ばれます。