Shapekey Enhancement #76

Merged
kkbp-dev merged 4 commits from Sonogami_Rinne/KKBP_Importer:development into development 2026-07-04 14:08:07 +00:00
Collaborator

Add Expression shapekey
Support Gag shapekey for SVS and AC
Disable outline around eyes when applying Gag shapekey.
屏幕截图 2026-06-28 125531

Add Expression shapekey Support Gag shapekey for SVS and AC Disable outline around eyes when applying Gag shapekey. ![屏幕截图 2026-06-28 125531](/attachments/fdf5b83f-6559-4264-a389-2b63d2ab54e9)
Add expression shapekey, support gag shapekey for SVS and AC
Author
Collaborator

Some Clarifications:

1.Shapekey slider min/max values should no longer be adjusted. Since shapekeys are now rebuild from patterns, modifying the slider ranges would actually produce incorrect results.

2.Regarding the writing style of the SVS gag driver, I didn’t keep it consistent with the original pattern (e.g. '0 if gag0 else 1 if gag1 else ...'). This is because AC has 22 gag shapekeys, and this style would cause the expression to exceed the limit. Of course, I didn’t modify KK gag driver

3.I separated the '# SVS japanese names' section out of translation_dict, and only apply this dict when SVS. This is to avoid incorrect shapekey translation when importing models from Japanese-language-KK (where some names are a mix of English and Japanese). I also added a translation_dict for AC. Compared to SVS, it contains more entries. Since I’m not familiar with Japanese and English, I only directly reused entries that already appeared in SVS_translation_dict, and left the rest untranslated.

Some Clarifications: 1.Shapekey slider min/max values should no longer be adjusted. Since shapekeys are now rebuild from patterns, modifying the slider ranges would actually produce incorrect results. 2.Regarding the writing style of the SVS gag driver, I didn’t keep it consistent with the original pattern (e.g. '0 if gag0 else 1 if gag1 else ...'). This is because AC has 22 gag shapekeys, and this style would cause the expression to exceed the limit. Of course, I didn’t modify KK gag driver 3.I separated the '# SVS japanese names' section out of translation_dict, and only apply this dict when SVS. This is to avoid incorrect shapekey translation when importing models from Japanese-language-KK (where some names are a mix of English and Japanese). I also added a translation_dict for AC. Compared to SVS, it contains more entries. Since I’m not familiar with Japanese and English, I only directly reused entries that already appeared in SVS_translation_dict, and left the rest untranslated.
Author
Collaborator

For shapekeys that are not involved in the pattern-based shapekey construction, I believe they shouldn't be affected by the game's blendshape weight calculation system, so they probably don't need any adjustment either.

For shapekeys that are not involved in the pattern-based shapekey construction, I believe they shouldn't be affected by the game's blendshape weight calculation system, so they probably don't need any adjustment either.
Author
Collaborator

Here are gag eyes from AC that are not translated.

Here are gag eyes from AC that are not translated.
2.5 MiB
Sonogami_Rinne changed title from ShapeKey Ehhancement to ShapeKey Enhancement 2026-06-28 13:19:25 +00:00
Sonogami_Rinne changed title from ShapeKey Enhancement to Shapekey Enhancement 2026-06-28 13:19:35 +00:00
Author
Collaborator

Hmm, seems that outline around eyes should always be hidden.

Hmm, seems that outline around eyes should always be hidden.
Owner

These are great changes!

1.Shapekey slider min/max values should no longer be adjusted. Since shapekeys are now rebuild from patterns, modifying the slider ranges would actually produce incorrect results.

Okay thank you for that clarification. I was under the impression that the "Eyes Default" shapekey had to be applied at all times, which is why I had messed with the ranges. It's good that they don't have to be modified.

I only directly reused entries that already appeared in SVS_translation_dict, and left the rest untranslated.

I got these for a translation. I'm not sure how to translate the ones prefixed with 不動... So I just guessed. I'm assuming these don't animate in the game?

'目にキラリ': 'Sparkle Pupils',
'目にハート': 'Heart Pupils',
'不動ハート': 'Static Heart',
'不動ぐるぐる': 'Static Spiral',
'ネコ目': 'Cat Eyes',
'バツ目': 'XX Eyes',
'黒塗り目': 'Blackened Eyes',
'怒り目': 'Angry Eyes',
'泣き目': 'Sobbing Eyes'

Hmm, seems that outline around eyes should always be hidden.

Yes, I agree

I also noticed the cartoony wink shapekey is in the SVS_BlendShape.json two times. I think the duplicate entry is breaking the shape key.

These are great changes! > 1.Shapekey slider min/max values should no longer be adjusted. Since shapekeys are now rebuild from patterns, modifying the slider ranges would actually produce incorrect results. Okay thank you for that clarification. I was under the impression that the "Eyes Default" shapekey had to be applied at all times, which is why I had messed with the ranges. It's good that they don't have to be modified. > I only directly reused entries that already appeared in SVS_translation_dict, and left the rest untranslated. I got these for a translation. I'm not sure how to translate the ones prefixed with 不動... So I just guessed. I'm assuming these don't animate in the game? '目にキラリ': 'Sparkle Pupils', '目にハート': 'Heart Pupils', '不動ハート': 'Static Heart', '不動ぐるぐる': 'Static Spiral', 'ネコ目': 'Cat Eyes', 'バツ目': 'XX Eyes', '黒塗り目': 'Blackened Eyes', '怒り目': 'Angry Eyes', '泣き目': 'Sobbing Eyes' > Hmm, seems that outline around eyes should always be hidden. Yes, I agree I also noticed the cartoony wink shapekey is in the SVS_BlendShape.json two times. I think the duplicate entry is breaking the shape key.
Author
Collaborator

I'm assuming these don't animate in the game?

Yes, they are static version of those patterns.

I got these for a translation.

Thanks!

I also noticed the cartoony wink shapekey is in the SVS_BlendShape.json two times.

I noticed it and added a '2' at the end of its name during exporting.

> I'm assuming these don't animate in the game? Yes, they are static version of those patterns. >I got these for a translation. Thanks! >I also noticed the cartoony wink shapekey is in the SVS_BlendShape.json two times. I noticed it and added a '2' at the end of its name during exporting.
kkbp-dev merged commit d6ee541c75 into development 2026-07-04 14:08:07 +00:00
Owner

Thanks for these updates!

Thanks for these updates!
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kkbp-dev/KKBP_Importer!76
No description provided.