Comments (11)
Ok when you say aminations do you mean aminations in Blender or Unity are broken?
Adding this system could make translations take even longer, in fact I not sure how I would add this into the current translation system, however I am planning on cleaning the translation system up which I hope will improve the speed of translations, so I may try and add this in when I do that.
At the moment in time I will put this on a maybe unto I take a proper look at the translation system in cats. I got to be honest, it's one of the few systems in cats that I not touched yet as it's a kinda of a bigger task.
from cats-blender-plugin-unofficial-.
as in, .anim files one uses in unity. they're text yaml; attached is one of them (very simple). One minor nit is the attribute which shows the blend shape name is encoded using unicode escapes like blendShape.\u53E3_\u4E0B
Given a csv/similar and a small amount of python or even bash one could easily do some sed-like operations on all the animation files and be done with it quick fast and in a hurry.
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "0Emote\u307B\u306B\u3083"
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u7167\u308C"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 54.6
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u7A4F\u3084\u304B_\u76EE"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u306B\u3063\u3053\u308A"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u3048"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u306A\u3054\u307F"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u03C9"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 61.3
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u53E3_\u4E0B"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u4E0B"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: useBlinkBlendshapes
path:
classID: 114
script: {fileID: 11500000, guid: e197bf28ecd22dd4ea1528dbc81dfe70, type: 3}
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 0
attribute: 3525843105
script: {fileID: 11500000, guid: e197bf28ecd22dd4ea1528dbc81dfe70, type: 3}
typeID: 114
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 1428606972
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 592780099
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 1438629341
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 2501776883
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 1701728247
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 2581586682
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 2137394197
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
- serializedVersion: 2
path: 2270107833
attribute: 131915638
script: {fileID: 0}
typeID: 137
customType: 20
isPPtrCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u7167\u308C"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 54.6
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u7A4F\u3084\u304B_\u76EE"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u306B\u3063\u3053\u308A"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u3048"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u306A\u3054\u307F"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u03C9"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 61.3
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u53E3_\u4E0B"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 100
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: "blendShape.\u4E0B"
path: Body
classID: 137
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: useBlinkBlendshapes
path:
classID: 114
script: {fileID: 11500000, guid: e197bf28ecd22dd4ea1528dbc81dfe70, type: 3}
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_Events: []
from cats-blender-plugin-unofficial-.
Ok I get ya.
Let me look at the current code properly and I get back to you here.
from cats-blender-plugin-unofficial-.
Hey there!
Just to let you know that exporting a csv with what you want is possible with the current translate system, I have a working proptotype which i kinda just bolted on however I want to do this correctly so this is what going to happen.
1: There will be a new setting in settings and updates which will be called "Export CSV file of translations fior shapekys"
2: This will be off by default to prevent this from generating for everyone.
3: If enabled it will export a CSV file of translations to your Documents/cats/shapekeys.csv
I hope to have this on the 3.6 dev branch in the next hour or so.
from cats-blender-plugin-unofficial-.
Update is now live in version 3.6 dev, feel free to test it out.
A 4.0 dev branch update is soon to follow.
Please note this won't be pushed to stable/ release for abit though and will only be in the dev branches for the time being.
from cats-blender-plugin-unofficial-.
Update is now live on 3.6, 4.0 and 4.1 dev branch. Let me know what you think!
To re-cap
1: There is a new setting in settings & updates which will be called "Export Shape Keys Translations CSV"
2: This will be off by default to prevent this from generating for everyone, so turn it on for it to work.
3: If enabled it will export a CSV file of translations for shape keys to your Documents/cats/shapekeys.csv
from cats-blender-plugin-unofficial-.
Very nice; however, it'd maybe be nice to have the file be named per blend, so like, AvatarName.blend->AvatarName.csv, to prevent accidental clobbering.
from cats-blender-plugin-unofficial-.
Should be doable, I add it tomorrow.
from cats-blender-plugin-unofficial-.
The above has been done.
When exporting translations to csv for shapekeys it will save as the current blend file name, if there isn't a save file it will error out asking the user to save the blend file. If the option is disabled translations will work regardless of the file being saved or not.
from cats-blender-plugin-unofficial-.
Quite good :)
from cats-blender-plugin-unofficial-.
This has now been released into version 3.6.6.3 for Blender 3.6 and version 4.0.4.2 for Blender 4.0.
Closed this request, if there anything else to do with this request feel free to re-open.
Thanks!
from cats-blender-plugin-unofficial-.
Related Issues (20)
- Combine Material Checkmark In Fix Model seems to do nothing at all. HOT 1
- Blender 4.0 ver tries to downgrade to 3.6 HOT 3
- "Join Meshes: Selected" joins all meshes ignoring the selection (Blender 4.0) HOT 5
- Blender 4.1 Support (Blender 4.1 is currently in Beta) HOT 4
- Delete zero weight bones [proposal] HOT 7
- Issue's With Parenting Bones HOT 5
- strange issue: importing a vrm no longer creates a FileName.vrm.textures folder HOT 4
- Remove Zero Weight Bones is gone HOT 3
- return feature req: 'set up eye tracking from avatars 2.0' HOT 4
- Re-work of the translate system for shapekeys, bones and etc. HOT 4
- Blender 4.0.2 fails to import the add-on version 4.0.4.2 correctly HOT 11
- Pose to Shape key failing HOT 18
- Separate by: Loose parts Not working HOT 4
- fix MMD model error HOT 4
- apply as rest pose removes all rigid bones and joints on pmx HOT 10
- MMD shapekey 'standard translations' HOT 2
- 4.1.0.2 release still has a check that fails if blender version >= 4.1 HOT 2
- Separating Loose Shapes won't work. "no auto smooth." HOT 2
- Readme before posting an issue - If you don't your issue will be closed.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cats-blender-plugin-unofficial-.