-
Notifications
You must be signed in to change notification settings - Fork 0
CustomOperation
riku1227 edited this page Nov 29, 2021
·
4 revisions
オプションの処理を定義するクラスです
キー | 値 | 必須/任意 | 説明 |
---|---|---|---|
operation_type | 文字列 | 必須 | オプションの処理タイプ 詳しくは下に書いています |
argument | 文字列 | 任意 | 特定の処理タイプで使用されます |
is_avatar_object | 真偽値 | 任意 | 処理する対象のオブジェクトがアバターのオブジェクトかどうかを設定します 服側のオブジェクトの場合、自動でオブジェクトの名前にIDが付与されます |
target_object_list | 配列(文字列) | 任意 | 処理タイプが'MOVE_BONE'以外の時に使用されます 処理の対象になるオブジェクトを設定します オブジェクトの下に置いてあるオブジェクトを指定する場合は '/'を使用してフルパスで記入します |
move_object_list | 配列(MoveObject) | 任意 | 処理タイプが'MOVE_BONE'の時に使用されます 服側のオブジェクトをアバター側に移動させることができます 服側のオリジナルボーンなどを良い感じに処理する時に使用されます |
Type | 使用される要素 | 説明 |
---|---|---|
DELETE_OBJECT | target_object_list | チェック/選択された場合、対象のオブジェクトを削除します 詳細オプションの'タグをEditorOnlyに設定'が有効化されている場合は オブジェクトは削除されず、タグが'EditorOnly'に設定され、オブジェクトが無効化されます |
NOT_DELETE_OBJECT | target_object_list | チェック/選択された場合、対象のオブジェクトを削除しません チェック/選択されなかった場合は削除されます 他の動作は'DELETE_OBJECT'と一緒です |
ENABLE_OBJECT | target_object_list | チェックされた/選択された場合、対象のオブジェクトを有効化します |
DISABLE_OBJECT | target_object_list | チェックされた/選択された場合、対象のオブジェクトを無効化します |
SET_MATERIAL | argument target_object_list |
チェック/選択された場合、対象オブジェクトのマテリアルを変更します マテリアルはargumentでマテリアまでのパスを指定します マテリアルのパスは相対パスで記入し(拡張子のmatまで必要です) ベースパスはこのオプションが書かれているファイルがあるフォルダになります |
MOVE_OBJECT | move_object_list | チェック/選択された場合、move_object_listで設定された'服側のオブジェクトをアバター側に移動させます' |
SET_BLEND_SHAPE | argument target_object_list |
チェック/選択された場合、指定したブレンドシェイプ(シェイプキー)の値をセットします ブレンドシェイプと値の指定はargumentでします 例 test_shapeというブレンドシェイプ(シェイプキー)の値を100にセットする、 test_shape:100 例 test_shapeとexample_shapeの値をセットする、 test_shape:100,example_shape:100
|
NONE | 何もしません |
これを有効化すると、target_object_listを処理する時に自動的にIDが追加されなくなります
RiCothes Setuperは複数の衣服やアクセサリーなどを一つのアバターに導入する場合と、服で追加されたオブジェくだということがわかりやすくするようにするために
服側のオブジェクトに追加でExpandOptionで指定したIDを付けます
オブジェクトの名前がexample_clothでidがtest_idの場合、アバター側に移動された時のオブジェクトの名前は example_cloth_test_id になります
そのため、デフォルトでCustomOperationのtarget_object_listを処理する時に、自動的にIDが追加されるようになります
ですが、アバター側にデフォルトであるオブジェクトに対して処理を行いたい場合、IDが自動で追加されてしまうと正常に処理することができなくなってしまいます
-
CustomOption
- カスタムオプションを定義するクラス
- CustomOperationが使用される
-
CustomGridOption
- グリッドオプションのを定義するクラス
- CustomOperationが使用される
-
MoveObject
- 服側にあるオブジェクトをアバター側に移動させるオプションのときに使用されるクラス
- CustomOperationが使用する
説明用にコメントを書いています、本来はJSONファイルにコメントは書けません
RiClothes Setuperの場合読み込み時に正常に読み込めず、エラーが出ます
- アバターがデフォルトで着ている服や靴を削除する
{
"operation_type": "DELETE_OBJECT",
"is_avatar_object": true,
"target_object_list": [
"avatar_cloth",
"avatar_shoes"
]
}
- 服側の帽子の左側を削除する
{
"operation_type": "DELETE_OBJECT",
"target_object_list": [
"cloth_hat_left"
]
}
- マテリアルを切り替える
cloht_folder/
material/
01.mat
02.mat ←
prefab/
cloth.prefab
Option.json
{
"operation_type": "SET_MATERIAL",
"argument": "../material/02.mat",
"target_object_list": [
"cloth"
]
}
- オブジェクトを移動させる
{
"operation_type": "MOVE_OBJECT",
"move_object_list": [
{ /* MoveObject */ },
{ /* MoveObject */ }
]
}
- exampleというオブジェクトのtest_shapeというブレンドシェイプ(シェイプキー)の値を100にセットする
{
"operation_type": "SET_BLEND_SHAPE",
"target_object_list": [
"example"
],
"argument": "test_shape:100"
}
- exampleというオブジェクトのtest_shapeとexample_shapeとテストシェイプの値をそれぞれセットする
{
"operation_type": "SET_BLEND_SHAPE",
"target_object_list": [
"example"
],
"argument": "test_shape:100,example_shape:0,テストシェイプ:100"
}
- 何もしない
{
"operation_type": "NONE"
}
-
- ファイル構造
- リファレンス
- ファイル構造
- リファレンス