aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bluebey-studio/src/look.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/bluebey-studio/src/look.js')
-rw-r--r--public/bluebey-studio/src/look.js6
1 files changed, 5 insertions, 1 deletions
diff --git a/public/bluebey-studio/src/look.js b/public/bluebey-studio/src/look.js
index f68b602..d755c3b 100644
--- a/public/bluebey-studio/src/look.js
+++ b/public/bluebey-studio/src/look.js
@@ -130,7 +130,11 @@ export function createLook({ renderer, scene, styles, model, ground, key, charac
// where the body hides its own shadow right at the feet, which otherwise
// reads as "the shadow is cut off". It is the only thing keeping the
// character looking like it is standing on the floor rather than above it.
- contact.visible = wantsShadow;
+ // The blob sits at the feet. It used to be drawn whenever the shadow was on,
+ // which left a faint ring behind at the origin once the character was moved;
+ // it is now opt-in (`render.contactBlob`, default off). It is always shown in
+ // the 「接地影だけ」 mode, where it is the only shadow there is.
+ contact.visible = wantsShadow && (blobOnly || render.contactBlob === true);
contact.material.opacity = clamp01((render.shadowOpacity ?? 0.22) * (blobOnly ? 2.6 : 1.6));
const spread = Math.max(0.2, (model.size.x * 1.15) / Math.max(0.05, render.shadowSoftness ?? 1.6));
contact.scale.setScalar(Math.max(0.5, model.size.x * 1.35 - spread * 0.25));