├── .github └── workflows │ ├── build-listing.yml │ ├── call-build-repo-listing.yml │ └── gameci.yml ├── .gitignore ├── Collections.meta ├── Collections ├── AvatarMenuCreatorForMA.Collections.asmdef ├── AvatarMenuCreatorForMA.Collections.asmdef.meta ├── CountViewList.cs ├── CountViewList.cs.meta ├── SerializedDictionary.cs ├── SerializedDictionary.cs.meta ├── SerializedHashSet.cs ├── SerializedHashSet.cs.meta ├── SerializedThreeTupleDictionary.cs ├── SerializedThreeTupleDictionary.cs.meta ├── SerializedTwoTupleDictionary.cs └── SerializedTwoTupleDictionary.cs.meta ├── Components.meta ├── Components ├── AvatarChooseMenuCreator.cs ├── AvatarChooseMenuCreator.cs.meta ├── AvatarMenuCreatorBase.cs ├── AvatarMenuCreatorBase.cs.meta ├── AvatarMenuCreatorForMA.Components.asmdef ├── AvatarMenuCreatorForMA.Components.asmdef.meta ├── AvatarRadialMenuCreator.cs ├── AvatarRadialMenuCreator.cs.meta ├── AvatarToggleMenuCreator.cs ├── AvatarToggleMenuCreator.cs.meta ├── Editor.meta └── Editor │ ├── AvatarMenuCreatorBaseEditor.cs │ ├── AvatarMenuCreatorBaseEditor.cs.meta │ ├── AvatarMenuCreatorForMA.Components.Editor.asmdef │ ├── AvatarMenuCreatorForMA.Components.Editor.asmdef.meta │ ├── AvatarMenuCreatorPlugin.cs │ ├── AvatarMenuCreatorPlugin.cs.meta │ ├── DisableGizmoIcons.cs │ ├── DisableGizmoIcons.cs.meta │ ├── ParameterProviders.meta │ └── ParameterProviders │ ├── AvatarMenuCreatorBaseParameterProvider.cs │ ├── AvatarMenuCreatorBaseParameterProvider.cs.meta │ ├── AvatarMenuCreatorForMA.Components.Editor.ParameterProviders.asmdef │ └── AvatarMenuCreatorForMA.Components.Editor.ParameterProviders.asmdef.meta ├── Core.meta ├── Core ├── AnimationCurve.meta ├── AnimationCurve │ ├── ColorAnimationCurve.cs │ ├── ColorAnimationCurve.cs.meta │ ├── ColorKeyframe.cs │ ├── ColorKeyframe.cs.meta │ ├── ComplexAnimationCurve.cs │ ├── ComplexAnimationCurve.cs.meta │ ├── ComplexKeyframe.cs │ ├── ComplexKeyframe.cs.meta │ ├── NamedAnimationCurve.cs │ ├── NamedAnimationCurve.cs.meta │ ├── PermissionFilterAnimationCurve.cs │ ├── PermissionFilterAnimationCurve.cs.meta │ ├── PermissionFilterKeyframe.cs │ ├── PermissionFilterKeyframe.cs.meta │ ├── QuaternionAnimationCurve.cs │ ├── QuaternionAnimationCurve.cs.meta │ ├── QuaternionKeyframe.cs │ ├── QuaternionKeyframe.cs.meta │ ├── Vector3AnimationCurve.cs │ ├── Vector3AnimationCurve.cs.meta │ ├── Vector3Keyframe.cs │ ├── Vector3Keyframe.cs.meta │ ├── Vector4AnimationCurve.cs │ ├── Vector4AnimationCurve.cs.meta │ ├── Vector4Keyframe.cs │ └── Vector4Keyframe.cs.meta ├── AvatarChooseMenu.cs ├── AvatarChooseMenu.cs.meta ├── AvatarMenuBase.cs ├── AvatarMenuBase.cs.meta ├── AvatarMenuCreatorForMA.Core.asmdef ├── AvatarMenuCreatorForMA.Core.asmdef.meta ├── AvatarRadialMenu.cs ├── AvatarRadialMenu.cs.meta ├── AvatarToggleMenu.cs ├── AvatarToggleMenu.cs.meta ├── Collections.meta ├── Collections │ ├── ChooseBlendShapeDictionary.cs │ ├── ChooseBlendShapeDictionary.cs.meta │ ├── ChooseMaterialDictionary.cs │ ├── ChooseMaterialDictionary.cs.meta │ ├── ChooseShaderVectorParameterDictionary.cs │ ├── ChooseShaderVectorParameterDictionary.cs.meta │ ├── ChooseValueDictionary.cs │ ├── ChooseValueDictionary.cs.meta │ ├── ChooseVector3Dictionary.cs │ ├── ChooseVector3Dictionary.cs.meta │ ├── IntFloatDictionary.cs │ ├── IntFloatDictionary.cs.meta │ ├── IntHashSet.cs │ ├── IntHashSet.cs.meta │ ├── IntHashSetDictionary.cs │ ├── IntHashSetDictionary.cs.meta │ ├── IntMaterialDictionary.cs │ ├── IntMaterialDictionary.cs.meta │ ├── IntStringDictionary.cs │ ├── IntStringDictionary.cs.meta │ ├── IntTexture2DDictionary.cs │ ├── IntTexture2DDictionary.cs.meta │ ├── IntValueDictionary.cs │ ├── IntValueDictionary.cs.meta │ ├── IntVector3Dictionary.cs │ ├── IntVector3Dictionary.cs.meta │ ├── IntVector4Dictionary.cs │ ├── IntVector4Dictionary.cs.meta │ ├── NestedIntHashSetDictionary.cs │ ├── NestedIntHashSetDictionary.cs.meta │ ├── NestedToggleTypeDictionary.cs │ ├── NestedToggleTypeDictionary.cs.meta │ ├── NestedToggleUsingDictionary.cs │ ├── NestedToggleUsingDictionary.cs.meta │ ├── RadialBlendShapeDictionary.cs │ ├── RadialBlendShapeDictionary.cs.meta │ ├── RadialShaderVectorParameterDictionary.cs │ ├── RadialShaderVectorParameterDictionary.cs.meta │ ├── RadialValueDictionary.cs │ ├── RadialValueDictionary.cs.meta │ ├── RadialVector3Dictionary.cs │ ├── RadialVector3Dictionary.cs.meta │ ├── StringHashSet.cs │ ├── StringHashSet.cs.meta │ ├── ToggleBlendShapeDictionary.cs │ ├── ToggleBlendShapeDictionary.cs.meta │ ├── ToggleMaterialDictionary.cs │ ├── ToggleMaterialDictionary.cs.meta │ ├── ToggleShaderVectorParameterDictionary.cs │ ├── ToggleShaderVectorParameterDictionary.cs.meta │ ├── ToggleTransitionUsingDictionary.cs │ ├── ToggleTransitionUsingDictionary.cs.meta │ ├── ToggleTypeDictionary.cs │ ├── ToggleTypeDictionary.cs.meta │ ├── ToggleUsingDictionary.cs │ ├── ToggleUsingDictionary.cs.meta │ ├── ToggleValueDictionary.cs │ ├── ToggleValueDictionary.cs.meta │ ├── ToggleVector3Dictionary.cs │ └── ToggleVector3Dictionary.cs.meta ├── Editor.meta ├── Editor │ ├── EnumPopupUtility.cs │ ├── EnumPopupUtility.cs.meta │ ├── IconAttribute.cs │ ├── IconAttribute.cs.meta │ ├── ListPopupWindow.cs │ ├── ListPopupWindow.cs.meta │ ├── ListTreeView.cs │ ├── ListTreeView.cs.meta │ ├── ListTreeViewItemContainer.cs │ ├── ListTreeViewItemContainer.cs.meta │ ├── ToolbarUtility.cs │ └── ToolbarUtility.cs.meta ├── IToggleComplexItem.cs ├── IToggleComplexItem.cs.meta ├── IToggleSingleItem.cs ├── IToggleSingleItem.cs.meta ├── IToggleTypedComplexItem.cs ├── IToggleTypedComplexItem.cs.meta ├── IToggleTypedSingleItem.cs ├── IToggleTypedSingleItem.cs.meta ├── IUseActive.cs ├── IUseActive.cs.meta ├── IncludeAssetType.cs ├── IncludeAssetType.cs.meta ├── MaterialItemContainer.cs ├── MaterialItemContainer.cs.meta ├── NameAndDescriptionItemContainer.cs ├── NameAndDescriptionItemContainer.cs.meta ├── RadialBlendShape.cs ├── RadialBlendShape.cs.meta ├── RadialValue.cs ├── RadialValue.cs.meta ├── RadialVector3.cs ├── RadialVector3.cs.meta ├── RadialVector4.cs ├── RadialVector4.cs.meta ├── ToggleBlendShape.cs ├── ToggleBlendShape.cs.meta ├── ToggleCurve.meta ├── ToggleCurve │ ├── AnimationToggleCurveSetup.cs │ ├── AnimationToggleCurveSetup.cs.meta │ ├── BoolToggleCurve.cs │ ├── BoolToggleCurve.cs.meta │ ├── ColorToggleCurve.cs │ ├── ColorToggleCurve.cs.meta │ ├── ContinuousComplexToggleCurve.cs │ ├── ContinuousComplexToggleCurve.cs.meta │ ├── ContinuousSingleToggleCurve.cs │ ├── ContinuousSingleToggleCurve.cs.meta │ ├── ContinuousToggleCurve.cs │ ├── ContinuousToggleCurve.cs.meta │ ├── DiscreteComplexToggleCurve.cs │ ├── DiscreteComplexToggleCurve.cs.meta │ ├── DiscreteSingleToggleCurve.cs │ ├── DiscreteSingleToggleCurve.cs.meta │ ├── DiscreteToggleCurve.cs │ ├── DiscreteToggleCurve.cs.meta │ ├── FloatToggleCurve.cs │ ├── FloatToggleCurve.cs.meta │ ├── IAnimationToggleCurve.cs │ ├── IAnimationToggleCurve.cs.meta │ ├── INamedAnimationToggleCurve.cs │ ├── INamedAnimationToggleCurve.cs.meta │ ├── IntToggleCurve.cs │ ├── IntToggleCurve.cs.meta │ ├── NamedAnimationToggleCurveSetup.cs │ ├── NamedAnimationToggleCurveSetup.cs.meta │ ├── PermissionFilterToggleCurve.cs │ ├── PermissionFilterToggleCurve.cs.meta │ ├── QuaternionToggleCurve.cs │ ├── QuaternionToggleCurve.cs.meta │ ├── ToggleAnimationClipSet.cs │ ├── ToggleAnimationClipSet.cs.meta │ ├── ToggleCurve.cs │ ├── ToggleCurve.cs.meta │ ├── Vector3ToggleCurve.cs │ ├── Vector3ToggleCurve.cs.meta │ ├── Vector4ToggleCurve.cs │ └── Vector4ToggleCurve.cs.meta ├── ToggleItemBase.cs ├── ToggleItemBase.cs.meta ├── ToggleMaterial.cs ├── ToggleMaterial.cs.meta ├── ToggleTransitionUsing.cs ├── ToggleTransitionUsing.cs.meta ├── ToggleType.cs ├── ToggleType.cs.meta ├── ToggleUsing.cs ├── ToggleUsing.cs.meta ├── ToggleValue.cs ├── ToggleValue.cs.meta ├── ToggleVector3.cs ├── ToggleVector3.cs.meta ├── ToggleVector4.cs ├── ToggleVector4.cs.meta ├── Value.meta └── Value │ ├── BoolValue.cs │ ├── BoolValue.cs.meta │ ├── ColorValue.cs │ ├── ColorValue.cs.meta │ ├── FloatValue.cs │ ├── FloatValue.cs.meta │ ├── IntValue.cs │ ├── IntValue.cs.meta │ ├── PermissionFilterValue.cs │ ├── PermissionFilterValue.cs.meta │ ├── QuaternionValue.cs │ ├── QuaternionValue.cs.meta │ ├── Value.cs │ ├── Value.cs.meta │ ├── ValueExtension.cs │ ├── ValueExtension.cs.meta │ ├── Vector3Value.cs │ └── Vector3Value.cs.meta ├── Editor.meta ├── Editor ├── AssertException.cs ├── AssertException.cs.meta ├── AvatarMenuCreatorForMA.Editor.asmdef ├── AvatarMenuCreatorForMA.Editor.asmdef.meta ├── AvatarMenuCreatorForMA.cs ├── AvatarMenuCreatorForMA.cs.meta ├── CreateAvatarChooseMenu.cs ├── CreateAvatarChooseMenu.cs.meta ├── CreateAvatarMenuBase.cs ├── CreateAvatarMenuBase.cs.meta ├── CreateAvatarRadialMenu.cs ├── CreateAvatarRadialMenu.cs.meta ├── CreateAvatarToggleMenu.cs ├── CreateAvatarToggleMenu.cs.meta ├── CreatedAssets.cs ├── CreatedAssets.cs.meta ├── MenuType.cs ├── MenuType.cs.meta ├── RestoreAvatarChooseMenu.cs ├── RestoreAvatarChooseMenu.cs.meta ├── RestoreAvatarMenuBase.cs ├── RestoreAvatarMenuBase.cs.meta ├── RestoreAvatarRadialMenu.cs ├── RestoreAvatarRadialMenu.cs.meta ├── RestoreAvatarToggleMenu.cs ├── RestoreAvatarToggleMenu.cs.meta ├── Util.meta └── Util │ ├── AvatarMenuCreatorForMA.Editor.Util.asmdef │ ├── AvatarMenuCreatorForMA.Editor.Util.asmdef.meta │ ├── ComponentWhitelistUtil.cs │ ├── ComponentWhitelistUtil.cs.meta │ ├── EnumUtil.cs │ ├── EnumUtil.cs.meta │ ├── INameAndDescription.cs │ ├── INameAndDescription.cs.meta │ ├── QuaternionUtil.cs │ ├── QuaternionUtil.cs.meta │ ├── TypeMember.cs │ ├── TypeMember.cs.meta │ ├── TypeMemberUtil.cs │ ├── TypeMemberUtil.cs.meta │ ├── TypeUtil.cs │ ├── TypeUtil.cs.meta │ ├── UndoUtility.cs │ ├── UndoUtility.cs.meta │ ├── UnityObjectUtility.cs │ ├── UnityObjectUtility.cs.meta │ ├── Util.cs │ ├── Util.cs.meta │ ├── VRCPhysBoneUtil.cs │ └── VRCPhysBoneUtil.cs.meta ├── Icons.meta ├── Icons ├── AvatarMenuCreatorChooseIcon.png ├── AvatarMenuCreatorChooseIcon.png.meta ├── AvatarMenuCreatorRadialIcon.png ├── AvatarMenuCreatorRadialIcon.png.meta ├── AvatarMenuCreatorToggleIcon.png └── AvatarMenuCreatorToggleIcon.png.meta ├── LICENSE.txt ├── LICENSE.txt.meta ├── Localization.meta ├── Localization ├── AvatarMenuCreatorForMA.Localization.asmdef ├── AvatarMenuCreatorForMA.Localization.asmdef.meta ├── EnglishAttribute.cs ├── EnglishAttribute.cs.meta ├── JapaneseAttribute.cs ├── JapaneseAttribute.cs.meta ├── Lang.cs ├── Lang.cs.meta ├── LangAttribute.cs ├── LangAttribute.cs.meta ├── Localization.cs ├── Localization.cs.meta ├── T.cs └── T.cs.meta ├── README.md ├── README.md.meta ├── Test.meta ├── Test ├── AvatarMenuCreatorForMA.Test.asmdef ├── AvatarMenuCreatorForMA.Test.asmdef.meta ├── BuildAssetBundle.cs ├── BuildAssetBundle.cs.meta ├── Empty.prefab ├── Empty.prefab.meta └── gen~ │ └── .keep ├── doc~ └── site │ ├── .gitignore │ ├── .vscode │ ├── extensions.json │ └── launch.json │ ├── README.md │ ├── astro.config.mjs │ ├── package-lock.json │ ├── package.json │ ├── public │ ├── AvatarMenuCreaterForMA-vcc.unitypackage │ ├── AvatarMenuCreator.png │ ├── CNAME │ ├── favicon.svg │ └── ga.js │ ├── src │ ├── assets │ │ └── imgs │ │ │ ├── AvatarMenuCreator.png │ │ │ ├── AvatarMenuCreatorChooseIcon.png │ │ │ ├── AvatarMenuCreatorRadialIcon.png │ │ │ ├── AvatarMenuCreatorToggleIcon.png │ │ │ ├── AvatarParametersDriver_s.png │ │ │ ├── amc-alone.png │ │ │ ├── amc-asset.png │ │ │ ├── amc-avatar.png │ │ │ ├── amc-basic-set.clip │ │ │ ├── amc-basic-set.png │ │ │ ├── amc-basics.clip │ │ │ ├── amc-basics.png │ │ │ ├── amc-check-mat.clip │ │ │ ├── amc-check-mat.png │ │ │ ├── amc-choose-create.png │ │ │ ├── amc-choose-finish.clip │ │ │ ├── amc-choose-finish.png │ │ │ ├── amc-choose-mat-check.clip │ │ │ ├── amc-choose-mat-check.png │ │ │ ├── amc-choose-mat-create.clip │ │ │ ├── amc-choose-mat-create.png │ │ │ ├── amc-choose-mat-drag.clip │ │ │ ├── amc-choose-mat-drag.png │ │ │ ├── amc-choose-mat-drop.png │ │ │ ├── amc-choose-mat-lock.clip │ │ │ ├── amc-choose-mat-lock.png │ │ │ ├── amc-choose-mat-name.clip │ │ │ ├── amc-choose-mat-name.png │ │ │ ├── amc-choose-mat.clip │ │ │ ├── amc-choose-mat.png │ │ │ ├── amc-choose-menu-obj.png │ │ │ ├── amc-choose-obj.clip │ │ │ ├── amc-choose-obj.png │ │ │ ├── amc-choose-result.png │ │ │ ├── amc-choose.clip │ │ │ ├── amc-choose.png │ │ │ ├── amc-component-base.png │ │ │ ├── amc-component-choose.png │ │ │ ├── amc-component-radial.png │ │ │ ├── amc-component-toggle.png │ │ │ ├── amc-create-asset.png │ │ │ ├── amc-create-multi.png │ │ │ ├── amc-create-toggle.clip │ │ │ ├── amc-create-toggle.png │ │ │ ├── amc-create.clip │ │ │ ├── amc-create.png │ │ │ ├── amc-fade-conflict-order.png │ │ │ ├── amc-fade-conflict.clip │ │ │ ├── amc-fade-conflict.png │ │ │ ├── amc-fade-graph.clip │ │ │ ├── amc-fade-graph.png │ │ │ ├── amc-fade-param.png │ │ │ ├── amc-fade.clip │ │ │ ├── amc-fade.png │ │ │ ├── amc-from-avatar.png │ │ │ ├── amc-go-shape.clip │ │ │ ├── amc-go-shape.png │ │ │ ├── amc-icon-drag.png │ │ │ ├── amc-mat-alt.clip │ │ │ ├── amc-mat-alt.png │ │ │ ├── amc-mat-select.clip │ │ │ ├── amc-mat-select.png │ │ │ ├── amc-menu-obj-child.png │ │ │ ├── amc-menu-obj.png │ │ │ ├── amc-multi-edit.clip │ │ │ ├── amc-multi-edit.png │ │ │ ├── amc-name-replace.png │ │ │ ├── amc-only-onoff.png │ │ │ ├── amc-pb.png │ │ │ ├── amc-quest.clip │ │ │ ├── amc-quest.png │ │ │ ├── amc-radial-alpha-result.png │ │ │ ├── amc-radial-alpha.clip │ │ │ ├── amc-radial-alpha.png │ │ │ ├── amc-radial-blendshape-create.png │ │ │ ├── amc-radial-blendshape-multi.clip │ │ │ ├── amc-radial-blendshape-multi.png │ │ │ ├── amc-radial-blendshape.clip │ │ │ ├── amc-radial-blendshape.png │ │ │ ├── amc-radial-result.png │ │ │ ├── amc-radial.clip │ │ │ ├── amc-radial.png │ │ │ ├── amc-restore.clip │ │ │ ├── amc-restore.png │ │ │ ├── amc-select-modes.png │ │ │ ├── amc-select-obj-please.png │ │ │ ├── amc-select-obj.clip │ │ │ ├── amc-select-obj.png │ │ │ ├── amc-select-objs.clip │ │ │ ├── amc-select-objs.png │ │ │ ├── amc-toggle-inspector.clip │ │ │ ├── amc-toggle-inspector.png │ │ │ ├── amc-toggle.clip │ │ │ ├── amc-toggle.png │ │ │ ├── amc-tools.png │ │ │ ├── amc-types-radial.png │ │ │ ├── amc-types.png │ │ │ ├── animator.png │ │ │ ├── apd-3ex.png │ │ │ ├── apd-and.png │ │ │ ├── apd-and2.png │ │ │ ├── apd-blendshape-choose.png │ │ │ ├── apd-blendshape-toggle.png │ │ │ ├── apd-blendshape.png │ │ │ ├── apd-blendshape2.png │ │ │ ├── apd-complex.png │ │ │ ├── apd-dep.png │ │ │ ├── apd-exset.png │ │ │ ├── apd-inspector.clip │ │ │ ├── apd-inspector.png │ │ │ ├── apd-objs.png │ │ │ ├── apd-simple.png │ │ │ ├── apeg-dep.png │ │ │ ├── apeg-simple.png │ │ │ ├── apeg.png │ │ │ ├── aps-create.png │ │ │ ├── aps-inspector.png │ │ │ ├── aps-play.png │ │ │ ├── aps-result.png │ │ │ ├── aps-saved.png │ │ │ ├── aps-tools.png │ │ │ ├── aps-window.png │ │ │ ├── avatar-parameters-driver.png │ │ │ ├── clothes1.png │ │ │ ├── clothes2.png │ │ │ ├── clothes3.png │ │ │ ├── clothes4.png │ │ │ ├── clothes5.png │ │ │ ├── clothes6.png │ │ │ ├── clothes7.png │ │ │ ├── clothes8.png │ │ │ ├── clothes9.png │ │ │ ├── compress-parameters-option.png │ │ │ ├── gesture-manager.png │ │ │ ├── mat.clip │ │ │ ├── mat.png │ │ │ ├── menu-child-inspector.clip │ │ │ ├── menu-child-inspector.png │ │ │ ├── menu-child.png │ │ │ ├── menu-obj-scene.png │ │ │ ├── menu-parent-inspector.clip │ │ │ ├── menu-parent-inspector.png │ │ │ ├── menu-parent.png │ │ │ ├── obj-prefab.png │ │ │ ├── restore.png │ │ │ ├── vpm-apd.png │ │ │ ├── vpm-error.png │ │ │ ├── vpm1.png │ │ │ ├── vpm2.png │ │ │ ├── vpm3.png │ │ │ ├── vpm4.png │ │ │ ├── wf1.png │ │ │ ├── wf10.png │ │ │ ├── wf11.png │ │ │ ├── wf12.png │ │ │ ├── wf13.png │ │ │ ├── wf2.png │ │ │ ├── wf3.png │ │ │ ├── wf4.png │ │ │ ├── wf4_1.png │ │ │ ├── wf5.png │ │ │ ├── wf6.png │ │ │ ├── wf7.png │ │ │ ├── wf8.png │ │ │ └── wf9.png │ ├── content │ │ ├── config.ts │ │ └── docs │ │ │ ├── guides │ │ │ ├── basic.mdx │ │ │ ├── choose.md │ │ │ ├── install.md │ │ │ ├── radial.md │ │ │ ├── recommended.md │ │ │ ├── submenu.md │ │ │ └── toggle.md │ │ │ ├── index.mdx │ │ │ ├── references │ │ │ ├── base.md │ │ │ ├── choose.mdx │ │ │ ├── radial.mdx │ │ │ └── toggle.mdx │ │ │ └── usecases │ │ │ ├── alpha.md │ │ │ ├── components.md │ │ │ ├── compress-parameters.md │ │ │ ├── create-asset.mdx │ │ │ ├── material.md │ │ │ ├── multi-create.md │ │ │ ├── no-menu.md │ │ │ ├── only-onoff.mdx │ │ │ ├── parameters-driver.md │ │ │ ├── period.md │ │ │ ├── preset.md │ │ │ └── quest.md │ ├── env.d.ts │ └── styles │ │ └── custom.css │ └── tsconfig.json ├── package.json └── package.json.meta /.github/workflows/build-listing.yml: -------------------------------------------------------------------------------- 1 | name: Build documentation 2 | 3 | on: 4 | workflow_dispatch: 5 | push: 6 | branches: 7 | - master 8 | release: 9 | types: 10 | - published 11 | - created 12 | - edited 13 | - prereleased 14 | - released 15 | 16 | # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages 17 | permissions: 18 | contents: read 19 | pages: write 20 | id-token: write 21 | 22 | concurrency: 23 | group: "pages" 24 | cancel-in-progress: true 25 | 26 | jobs: 27 | build-package-listing: 28 | name: build-package-listing 29 | environment: 30 | name: github-pages 31 | url: ${{ steps.deployment.outputs.page_url }} 32 | runs-on: ubuntu-latest 33 | steps: 34 | - uses: actions/checkout@v3 # check out this repo 35 | 36 | - name: Use Node.js 37 | uses: actions/setup-node@v4 38 | with: 39 | node-version: 20 40 | cache: 'npm' 41 | cache-dependency-path: doc~/site/package-lock.json 42 | 43 | - run: npm ci 44 | working-directory: doc~/site 45 | - run: npm run build 46 | working-directory: doc~/site 47 | 48 | - name: Setup Pages 49 | uses: actions/configure-pages@v5 50 | 51 | - name: Upload artifact 52 | uses: actions/upload-pages-artifact@v3 53 | with: 54 | path: doc~/site/dist 55 | 56 | - name: Deploy to GitHub Pages 57 | id: deployment 58 | uses: actions/deploy-pages@v4 59 | -------------------------------------------------------------------------------- /.github/workflows/call-build-repo-listing.yml: -------------------------------------------------------------------------------- 1 | name: Call Build Repo Listing 2 | 3 | on: 4 | workflow_dispatch: 5 | workflow_run: 6 | workflows: [GameCI] 7 | types: 8 | - completed 9 | 10 | permissions: 11 | contents: read 12 | 13 | jobs: 14 | 15 | build-listing: 16 | uses: Narazaka/vpm-repos/.github/workflows/call-build-listing.yml@main 17 | secrets: 18 | DISPATCH_TOKEN: ${{ secrets.DISPATCH_TOKEN }} 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /Test/gen~/* 2 | !/Test/gen~/.keep 3 | 4 | # GameCI 5 | /[Aa]rtifacts/ 6 | /[Cc]odeCoverage/ 7 | -------------------------------------------------------------------------------- /Collections.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 573ad1fc20d0cae49a3748d147fe93e4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Collections/AvatarMenuCreatorForMA.Collections.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AvatarMenuCreatorForMA.Collections", 3 | "references": [], 4 | "includePlatforms": [], 5 | "excludePlatforms": [], 6 | "allowUnsafeCode": false, 7 | "overrideReferences": false, 8 | "precompiledReferences": [], 9 | "autoReferenced": false, 10 | "defineConstraints": [], 11 | "versionDefines": [], 12 | "noEngineReferences": false 13 | } -------------------------------------------------------------------------------- /Collections/AvatarMenuCreatorForMA.Collections.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0c5880c869a88db408b32d84f7d77128 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Collections/CountViewList.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d92beb6ff91a2e489303af7256a0458 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Collections/SerializedDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7ca8a4d564c22f643acd5bb56d2ede79 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Collections/SerializedHashSet.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c22de1010cbeb2241a580692709b4cb3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Collections/SerializedThreeTupleDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d663cf920a1327d4c93166b26c14ebed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Collections/SerializedTwoTupleDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 344bf66281808ec4ca93361a0662da8a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32492bb3851a0674583cec7fe791d1f9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Components/AvatarChooseMenuCreator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5dd4e9b75a0484149be2e2a2993c1a05 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: 5b8e415ac56ebe24ba38d9315e17a14d, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/AvatarMenuCreatorBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2230fe5146a5dc7468c8beb54d9e714c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/AvatarMenuCreatorForMA.Components.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 985f17f4bb01d634ba7f213158c15843 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Components/AvatarRadialMenuCreator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 18ad54914ee159d4a91cade0f89b8dc3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: a79e0197b1fe13d4aa4ba4a058e55715, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/AvatarToggleMenuCreator.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | using VRC.SDK3.Avatars.ScriptableObjects; 4 | 5 | namespace net.narazaka.avatarmenucreator.components 6 | { 7 | [HelpURL("https://avatar-menu-creator-for-ma.vrchat.narazaka.net/references/toggle/")] 8 | public class AvatarToggleMenuCreator : AvatarMenuCreatorBase 9 | { 10 | [SerializeField] 11 | public AvatarToggleMenu AvatarToggleMenu = new AvatarToggleMenu(); 12 | public override AvatarMenuBase AvatarMenu => AvatarToggleMenu; 13 | #if UNITY_EDITOR 14 | public override UnityEditor.SerializedProperty AvatarMenuProperty(UnityEditor.SerializedObject serializedObject) => serializedObject.FindProperty(nameof(AvatarToggleMenu)); 15 | 16 | public override IEnumerable GetEffectiveParameterNameAndTypes() 17 | { 18 | return new VRCExpressionParameters.Parameter[] 19 | { 20 | new VRCExpressionParameters.Parameter 21 | { 22 | name = ParameterName, 23 | valueType = VRCExpressionParameters.ValueType.Bool, 24 | defaultValue = AvatarToggleMenu.ToggleDefaultValue ? 1 : 0, 25 | saved = AvatarMenu.Saved, 26 | networkSynced = AvatarMenu.Synced, 27 | }, 28 | }; 29 | } 30 | #endif 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Components/AvatarToggleMenuCreator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 17c267e6edf81d843a4178a7a739e4ef 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: fe4b70806b6b5d64aabda3d47d343775, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14d296d78813ab148a930fcb402c7792 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Components/Editor/AvatarMenuCreatorBaseEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7e21e2785b324f6419a1ae7447b0b1c4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/Editor/AvatarMenuCreatorForMA.Components.Editor.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AvatarMenuCreatorForMA.Components.Editor", 3 | "rootNamespace": "", 4 | "references": [ 5 | "AvatarMenuCreatorForMA.Components", 6 | "AvatarMenuCreatorForMA.Core", 7 | "AvatarMenuCreatorForMA.Editor.Util", 8 | "AvatarMenuCreatorForMA.Editor", 9 | "nadena.dev.ndmf", 10 | "nadena.dev.modular-avatar.core", 11 | "AvatarMenuCreatorForMA.Localization" 12 | ], 13 | "includePlatforms": [ 14 | "Editor" 15 | ], 16 | "excludePlatforms": [], 17 | "allowUnsafeCode": false, 18 | "overrideReferences": false, 19 | "precompiledReferences": [], 20 | "autoReferenced": false, 21 | "defineConstraints": [ 22 | "NET_NARAZAKA_VRCHAT_AvatarMenuCreator_HAS_NDMF", 23 | "HAS_MENU_MA" 24 | ], 25 | "versionDefines": [ 26 | { 27 | "name": "nadena.dev.ndmf", 28 | "expression": "[1.0.0,2)", 29 | "define": "NET_NARAZAKA_VRCHAT_AvatarMenuCreator_HAS_NDMF" 30 | }, 31 | { 32 | "name": "nadena.dev.ndmf", 33 | "expression": "[1.3.0,2)", 34 | "define": "NET_NARAZAKA_VRCHAT_AvatarMenuCreator_HAS_NDMF_LOCALIZATION" 35 | }, 36 | { 37 | "name": "nadena.dev.modular-avatar", 38 | "expression": "[1.5.0,2)", 39 | "define": "HAS_MENU_MA" 40 | } 41 | ], 42 | "noEngineReferences": false 43 | } -------------------------------------------------------------------------------- /Components/Editor/AvatarMenuCreatorForMA.Components.Editor.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b1fb70803283d049844fb3483347e1c 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Components/Editor/AvatarMenuCreatorPlugin.cs: -------------------------------------------------------------------------------- 1 | using nadena.dev.ndmf; 2 | using net.narazaka.avatarmenucreator.editor; 3 | using nadena.dev.modular_avatar.core; 4 | 5 | [assembly: ExportsPlugin(typeof(net.narazaka.avatarmenucreator.components.editor.AvatarMenuCreatorPlugin))] 6 | 7 | namespace net.narazaka.avatarmenucreator.components.editor 8 | { 9 | public class AvatarMenuCreatorPlugin : Plugin 10 | { 11 | public override string QualifiedName => "net.narazaka.vrchat.avatar-menu-creater-for-ma"; 12 | 13 | public override string DisplayName => "Avatar Menu Creator for MA"; 14 | 15 | protected override void Configure() 16 | { 17 | InPhase(BuildPhase.Generating).BeforePlugin("nadena.dev.modular-avatar").Run("AvatarMenuCreatorForMA", ctx => 18 | { 19 | var creators = ctx.AvatarRootTransform.GetComponentsInChildren(true); 20 | foreach (var creator in creators) 21 | { 22 | if (!creator.IsEffective) continue; 23 | CreateAvatarMenuBase.GetCreateAvatarMenu(ctx.AvatarRootTransform, creator.AvatarMenu).CreateAssets(creator.name).StoreAssets(creator.gameObject, false); 24 | UnityEngine.Object.DestroyImmediate(creator); 25 | } 26 | }); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Components/Editor/AvatarMenuCreatorPlugin.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 610bf927b5620d9488ad0d4b3e6dc778 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/Editor/DisableGizmoIcons.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 53f14d51a30aaa842a1207f4d6a8a6ae 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/Editor/ParameterProviders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c4c2c93790f933e4aa541857aea7015d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Components/Editor/ParameterProviders/AvatarMenuCreatorBaseParameterProvider.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59e448f643f99cf4dbc32d8554552bdc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Components/Editor/ParameterProviders/AvatarMenuCreatorForMA.Components.Editor.ParameterProviders.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AvatarMenuCreatorForMA.Components.Editor.ParameterProviders", 3 | "rootNamespace": "", 4 | "references": [ 5 | "nadena.dev.ndmf", 6 | "nadena.dev.ndmf.vrchat", 7 | "AvatarMenuCreatorForMA.Components", 8 | "AvatarMenuCreatorForMA.Core", 9 | "AvatarMenuCreatorForMA.Editor.Util", 10 | "AvatarMenuCreatorForMA.Components.Editor" 11 | ], 12 | "includePlatforms": [ 13 | "Editor" 14 | ], 15 | "excludePlatforms": [], 16 | "allowUnsafeCode": false, 17 | "overrideReferences": false, 18 | "precompiledReferences": [], 19 | "autoReferenced": false, 20 | "defineConstraints": [ 21 | "HAS_NDMF_ParameterProvider", 22 | "HAS_MENU_MA" 23 | ], 24 | "versionDefines": [ 25 | { 26 | "name": "nadena.dev.ndmf", 27 | "expression": "[1.4.0-rc.2,2)", 28 | "define": "HAS_NDMF_ParameterProvider" 29 | }, 30 | { 31 | "name": "nadena.dev.modular-avatar", 32 | "expression": "[1.5.0,2)", 33 | "define": "HAS_MENU_MA" 34 | }, 35 | { 36 | "name": "nadena.dev.ndmf", 37 | "expression": "[1.5.0,2)", 38 | "define": "HAS_NDMF_ParameterProvider_DefaultValue" 39 | } 40 | ], 41 | "noEngineReferences": false 42 | } -------------------------------------------------------------------------------- /Components/Editor/ParameterProviders/AvatarMenuCreatorForMA.Components.Editor.ParameterProviders.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3922d985a3ca7e8418c790b81a5c3f88 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a583c030d362bc45a8f1ced26f0a6e5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Core/AnimationCurve.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a78b01a79e367df438bdecbc399f23d0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ColorAnimationCurve.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | #if UNITY_EDITOR 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.animationcurve 6 | { 7 | [Serializable] 8 | public class ColorAnimationCurve : ComplexAnimationCurve 9 | { 10 | static string[] PropertyNames = new string[] { "r", "g", "b", "a" }; 11 | 12 | public ColorAnimationCurve() : base() { } 13 | public ColorAnimationCurve(params ColorKeyframe[] keyframes) : base(keyframes) { } 14 | 15 | protected override int ComponentCount => 4; 16 | 17 | protected override string PropertyName(int index) => PropertyNames[index]; 18 | } 19 | } 20 | #endif 21 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ColorAnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d119baaf2362894448f514167176e567 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ColorKeyframe.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.animationcurve 4 | { 5 | public class ColorKeyframe : ComplexKeyframe 6 | { 7 | public ColorKeyframe() : base() { } 8 | public ColorKeyframe(float time, Color value) : base(time, value) { } 9 | 10 | public override float ValueComponent(int index) => Value[index]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ColorKeyframe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3bafb7fa0c41a634984f6a2e4b973d4b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ComplexAnimationCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using System; 3 | using UnityEngine; 4 | using System.Linq; 5 | using UnityEditor; 6 | 7 | namespace net.narazaka.avatarmenucreator.animationcurve 8 | { 9 | public abstract class ComplexAnimationCurve where U : ComplexKeyframe, new() 10 | { 11 | protected abstract int ComponentCount { get; } 12 | protected abstract string PropertyName(int index); 13 | ComplexKeyframe[] Keyframes; 14 | 15 | public ComplexAnimationCurve(params ComplexKeyframe[] keyframes) 16 | { 17 | Keyframes = keyframes; 18 | } 19 | 20 | public void AddKey(float time, T value) 21 | { 22 | Array.Resize(ref Keyframes, Keyframes.Length + 1); 23 | Keyframes[Keyframes.Length - 1] = new U { Time = time, Value = value }; 24 | } 25 | 26 | public NamedAnimationCurve[] GetCurves(string prefix) 27 | { 28 | var curves = new NamedAnimationCurve[ComponentCount]; 29 | for (int i = 0; i < ComponentCount; i++) 30 | { 31 | var curve = new AnimationCurve(Keyframes.Select(keyframe => new Keyframe(keyframe.Time, keyframe.ValueComponent(i))).ToArray()); 32 | curves[i] = new NamedAnimationCurve($"{prefix}.{PropertyName(i)}", curve); 33 | } 34 | return curves; 35 | } 36 | } 37 | } 38 | #endif 39 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ComplexAnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbac37b5bc1e97843a45e89976f91f8d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ComplexKeyframe.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.animationcurve 2 | { 3 | public abstract class ComplexKeyframe 4 | { 5 | public float Time; 6 | public T Value; 7 | 8 | public ComplexKeyframe() { } 9 | 10 | public ComplexKeyframe(float time, T value) 11 | { 12 | Time = time; 13 | Value = value; 14 | } 15 | 16 | public abstract float ValueComponent(int index); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Core/AnimationCurve/ComplexKeyframe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51b794445db771e4497270be1423a920 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/NamedAnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8893f9502b62d14faf8529679f5e9a6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/PermissionFilterAnimationCurve.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | #if UNITY_EDITOR 3 | using UnityEngine; 4 | using VRC.Dynamics; 5 | 6 | namespace net.narazaka.avatarmenucreator.animationcurve 7 | { 8 | [Serializable] 9 | public class PermissionFilterAnimationCurve : ComplexAnimationCurve 10 | { 11 | static string[] PropertyNames = new string[] { "allowSelf", "allowOthers" }; 12 | 13 | public PermissionFilterAnimationCurve() : base() { } 14 | public PermissionFilterAnimationCurve(params PermissionFilterKeyframe[] keyframes) : base(keyframes) { } 15 | 16 | protected override int ComponentCount => 2; 17 | 18 | protected override string PropertyName(int index) => PropertyNames[index]; 19 | } 20 | } 21 | #endif 22 | -------------------------------------------------------------------------------- /Core/AnimationCurve/PermissionFilterAnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ee89bd80ff691240af819b0a1ea626a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/PermissionFilterKeyframe.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using VRC.Dynamics; 3 | 4 | namespace net.narazaka.avatarmenucreator.animationcurve 5 | { 6 | public class PermissionFilterKeyframe : ComplexKeyframe 7 | { 8 | public PermissionFilterKeyframe() : base() { } 9 | public PermissionFilterKeyframe(float time, VRCPhysBoneBase.PermissionFilter value) : base(time, value) { } 10 | 11 | public override float ValueComponent(int index) => index == 0 ? Value.allowSelf ? 1 : 0 : Value.allowOthers ? 1 : 0; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/AnimationCurve/PermissionFilterKeyframe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afb5e144810f350488ef0dc11ad77397 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/QuaternionAnimationCurve.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | #if UNITY_EDITOR 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.animationcurve 6 | { 7 | [Serializable] 8 | public class QuaternionAnimationCurve : ComplexAnimationCurve 9 | { 10 | static string[] PropertyNames = new string[] { "x", "y", "z", "w" }; 11 | 12 | public QuaternionAnimationCurve() : base() { } 13 | public QuaternionAnimationCurve(params QuaternionKeyframe[] keyframes) : base(keyframes) { } 14 | 15 | protected override int ComponentCount => 4; 16 | 17 | protected override string PropertyName(int index) => PropertyNames[index]; 18 | } 19 | } 20 | #endif 21 | -------------------------------------------------------------------------------- /Core/AnimationCurve/QuaternionAnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 718472ae6d02d71408598e9c21445c40 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/QuaternionKeyframe.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.animationcurve 4 | { 5 | public class QuaternionKeyframe : ComplexKeyframe 6 | { 7 | public QuaternionKeyframe() : base() { } 8 | public QuaternionKeyframe(float time, Quaternion value) : base(time, value) { } 9 | 10 | public override float ValueComponent(int index) => Value[index]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/AnimationCurve/QuaternionKeyframe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5941243e48ef2624a85c02d304f75169 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector3AnimationCurve.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | #if UNITY_EDITOR 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.animationcurve 6 | { 7 | [Serializable] 8 | public class Vector3AnimationCurve : ComplexAnimationCurve 9 | { 10 | static string[] PropertyNames = new string[] { "x", "y", "z" }; 11 | 12 | public Vector3AnimationCurve() : base() { } 13 | public Vector3AnimationCurve(params Vector3Keyframe[] keyframes) : base(keyframes) { } 14 | 15 | protected override int ComponentCount => 3; 16 | 17 | protected override string PropertyName(int index) => PropertyNames[index]; 18 | } 19 | } 20 | #endif 21 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector3AnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0a5dcccd64d1b9f4bb85626bc0963194 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector3Keyframe.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.animationcurve 4 | { 5 | public class Vector3Keyframe : ComplexKeyframe 6 | { 7 | public Vector3Keyframe() : base() { } 8 | public Vector3Keyframe(float time, Vector3 value) : base(time, value) { } 9 | 10 | public override float ValueComponent(int index) => Value[index]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector3Keyframe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 158944561c807e2449953d36344a5f4b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector4AnimationCurve.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | #if UNITY_EDITOR 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.animationcurve 6 | { 7 | [Serializable] 8 | public class Vector4AnimationCurve : ComplexAnimationCurve 9 | { 10 | static string[] PropertyNames = new string[] { "x", "y", "z", "w" }; 11 | 12 | public Vector4AnimationCurve() : base() { } 13 | public Vector4AnimationCurve(params Vector4Keyframe[] keyframes) : base(keyframes) { } 14 | 15 | protected override int ComponentCount => 4; 16 | 17 | protected override string PropertyName(int index) => PropertyNames[index]; 18 | } 19 | } 20 | #endif 21 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector4AnimationCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c8a495fd870ed74499ddbefb76a3fc7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector4Keyframe.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.animationcurve 4 | { 5 | public class Vector4Keyframe : ComplexKeyframe 6 | { 7 | public Vector4Keyframe() : base() { } 8 | public Vector4Keyframe(float time, Vector4 value) : base(time, value) { } 9 | 10 | public override float ValueComponent(int index) => Value[index]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/AnimationCurve/Vector4Keyframe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71ee7260697466b44b0a172b31817808 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AvatarChooseMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa1ecf843af935044a1690ba225d767c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AvatarMenuBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03514cd4a0b773a428d71d7b8a4a6f71 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AvatarMenuCreatorForMA.Core.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87b19a1f46f27504c858f94d991470f0 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Core/AvatarRadialMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b85eeba48965eb4da9aadc9c4fc989c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/AvatarToggleMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0752716a0579fe64592f07219a8e072c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 018052ab71f0db646bcacdcd905cce95 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Core/Collections/ChooseBlendShapeDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class ChooseBlendShapeDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/ChooseBlendShapeDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a4a0b9dd4ef24504f9d077059bdbe0e0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ChooseMaterialDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.collections.instance 6 | { 7 | [System.Serializable] 8 | public class ChooseMaterialDictionary : SerializedTwoTupleDictionary 9 | { 10 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 11 | public IEnumerable Indexes(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 12 | public Material[] MaterialSlots(string child) 13 | { 14 | var firstNonNullMaterials = Keys.Where(k => k.Item1 == child).Select(k => (k.Item2, this[k].OrderBy(kv => kv.Key).FirstOrDefault(kv => kv.Value != null).Value)).ToArray(); 15 | if (firstNonNullMaterials.Length == 0) return new Material[0]; 16 | var slots = new Material[firstNonNullMaterials.Max(k => k.Item1) + 1]; 17 | foreach (var (index, material) in firstNonNullMaterials) 18 | { 19 | slots[index] = material; 20 | } 21 | return slots; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Core/Collections/ChooseMaterialDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a2145bfe465f9a44a28febdc512fdea 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ChooseShaderVectorParameterDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class ChooseShaderVectorParameterDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/ChooseShaderVectorParameterDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 216641ab8196f894883ee6573e56ed13 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ChooseValueDictionary.cs: -------------------------------------------------------------------------------- 1 | using net.narazaka.avatarmenucreator.util; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | namespace net.narazaka.avatarmenucreator.collections.instance 6 | { 7 | [System.Serializable] 8 | public class ChooseValueDictionary : SerializedTwoTupleDictionary 9 | { 10 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 11 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 12 | public IEnumerable Names() => Keys.Select(k => k.Item2); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/Collections/ChooseValueDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad9951519478d454cb6bc7aa63add6fc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ChooseVector3Dictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class ChooseVector3Dictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/ChooseVector3Dictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccf319a783f8f9944b6dc89e50200809 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntFloatDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntFloatDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntFloatDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 235b496ec2185f94d8bb2b358074e7a2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntHashSet.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntHashSet : SerializedHashSet { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntHashSet.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 269dd52148ae5cd49855d10872b91bb8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntHashSetDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntHashSetDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntHashSetDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b6ee7b2587959e409ad05d27bfface7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntMaterialDictionary.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.collections.instance 4 | { 5 | [System.Serializable] 6 | public class IntMaterialDictionary : SerializedDictionary { } 7 | } 8 | -------------------------------------------------------------------------------- /Core/Collections/IntMaterialDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9e7377aaeb6aaa3428ad43713d513771 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntStringDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntStringDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntStringDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56e101f010b81f943b9d01fc7c4fdb4c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntTexture2DDictionary.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.collections.instance 4 | { 5 | [System.Serializable] 6 | public class IntTexture2DDictionary : SerializedDictionary { } 7 | } 8 | -------------------------------------------------------------------------------- /Core/Collections/IntTexture2DDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a161c027f018ab4f972ebfcc16972c2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntValueDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntValueDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntValueDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b577422f7d4a68342b60187c519edbd6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntVector3Dictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntVector3Dictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntVector3Dictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 508c39a675ab1004d9d400704ce32046 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/IntVector4Dictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class IntVector4Dictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/IntVector4Dictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d5e62b118e3ab4e46aa3391f99a9ca3f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/NestedIntHashSetDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class NestedIntHashSetDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/NestedIntHashSetDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbeba7e6aa9582c41b087de86cea341b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/NestedToggleTypeDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class NestedToggleTypeDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/NestedToggleTypeDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 074c895ca77f97a4e9641c34b2aba09a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/NestedToggleUsingDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class NestedToggleUsingDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/NestedToggleUsingDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1de08da8fcb4fd54094e0bf5494bcd68 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/RadialBlendShapeDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class RadialBlendShapeDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/RadialBlendShapeDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d97e05cae5e1b8c4b9b7c66f4ed4b786 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/RadialShaderVectorParameterDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class RadialShaderVectorParameterDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/RadialShaderVectorParameterDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 77b218537524c504b84266e093f49dcb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/RadialValueDictionary.cs: -------------------------------------------------------------------------------- 1 | using net.narazaka.avatarmenucreator.util; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | namespace net.narazaka.avatarmenucreator.collections.instance 6 | { 7 | [System.Serializable] 8 | public class RadialValueDictionary : SerializedTwoTupleDictionary 9 | { 10 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 11 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/Collections/RadialValueDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6778a18bf895d654b8891a373664ec2f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/RadialVector3Dictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class RadialVector3Dictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/RadialVector3Dictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 301f2c7ecc88f1a4b967f37970d3d557 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/StringHashSet.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class StringHashSet : SerializedHashSet { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/StringHashSet.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 64f74babba7a4e34caf1b24433342193 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleBlendShapeDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class ToggleBlendShapeDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/ToggleBlendShapeDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc90749bc758f044f95333ad162f97a3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleMaterialDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.collections.instance 6 | { 7 | [System.Serializable] 8 | public class ToggleMaterialDictionary : SerializedTwoTupleDictionary 9 | { 10 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 11 | public IEnumerable Indexes(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 12 | public Material[] MaterialSlots(string child) 13 | { 14 | var nonNullMaterialSlots = Keys.Where(k => k.Item1 == child).Select(k => (k.Item2, this[k].Inactive ?? this[k].Active)).Where(kv => kv.Item2 != null).ToArray(); 15 | if (nonNullMaterialSlots.Length == 0) return new Material[0]; 16 | var slots = new Material[nonNullMaterialSlots.Max(k => k.Item1) + 1]; 17 | foreach (var (index, material) in nonNullMaterialSlots) 18 | { 19 | slots[index] = material; 20 | } 21 | return slots; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Core/Collections/ToggleMaterialDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b17be5718caf9c4abca7e86b97dcfca 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleShaderVectorParameterDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | 4 | namespace net.narazaka.avatarmenucreator.collections.instance 5 | { 6 | [System.Serializable] 7 | public class ToggleShaderVectorParameterDictionary : SerializedTwoTupleDictionary 8 | { 9 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 10 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Collections/ToggleShaderVectorParameterDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6dcbfe978b7fdea46b2a027fd985d8d6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleTransitionUsingDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class ToggleTransitionUsingDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/ToggleTransitionUsingDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 15dc80e35caae454b84e60399e2317af 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleTypeDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class ToggleTypeDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/ToggleTypeDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d7e91f8884f3ee41adf5cd554f679c6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleUsingDictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class ToggleUsingDictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/ToggleUsingDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d21949268fa8d184c953f7dfb85fe1ed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleValueDictionary.cs: -------------------------------------------------------------------------------- 1 | using net.narazaka.avatarmenucreator.util; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | namespace net.narazaka.avatarmenucreator.collections.instance 6 | { 7 | [System.Serializable] 8 | public class ToggleValueDictionary : SerializedTwoTupleDictionary 9 | { 10 | public bool HasChild(string child) => Keys.Any(k => k.Item1 == child); 11 | public IEnumerable Names(string child) => Keys.Where(k => k.Item1 == child).Select(k => k.Item2); 12 | public IEnumerable Names() => Keys.Select(k => k.Item2); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/Collections/ToggleValueDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b62ed4ea8e4e42642aba8ed902e3cb81 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Collections/ToggleVector3Dictionary.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.collections.instance 2 | { 3 | [System.Serializable] 4 | public class ToggleVector3Dictionary : SerializedDictionary { } 5 | } 6 | -------------------------------------------------------------------------------- /Core/Collections/ToggleVector3Dictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b2b8fdab5c1591b4a9013c9ebd3a85bb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 248cff33cb39edf4b8527a4f4b22543d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Core/Editor/EnumPopupUtility.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEditor; 3 | using System.Linq; 4 | using UnityEngine; 5 | 6 | namespace net.narazaka.avatarmenucreator 7 | { 8 | public static class EnumPopupUtility 9 | { 10 | public static T EnumPopup(GUIContent label, T selected) where T : System.Enum 11 | { 12 | var values = (int[])System.Enum.GetValues(typeof(T)); 13 | var names = System.Enum.GetNames(typeof(T)).Select(name => Localization.Get(typeof(T).GetField(name))).ToArray(); 14 | 15 | var selectedIndex = System.Array.IndexOf(values, System.Convert.ToInt32(selected)); 16 | var nextSelectedIndex = EditorGUILayout.Popup(label, selectedIndex, names); 17 | return (T)System.Enum.ToObject(typeof(T), values[nextSelectedIndex]); 18 | } 19 | 20 | public static T EnumPopup(string label, T selected) where T : System.Enum 21 | { 22 | return EnumPopup(new GUIContent(label), selected); 23 | } 24 | 25 | public static T EnumPopup(T selected) where T : System.Enum 26 | { 27 | return EnumPopup(GUIContent.none, selected); 28 | } 29 | } 30 | } 31 | #endif 32 | -------------------------------------------------------------------------------- /Core/Editor/EnumPopupUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 86d5b298f7f48d946aa53494e0d5bd00 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Editor/IconAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)] 6 | public class IconAttribute : Attribute 7 | { 8 | public string Path { get; } 9 | 10 | public IconAttribute(string path) 11 | { 12 | Path = path; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Core/Editor/IconAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f02aed1346af4d04284f7977fcafd742 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Editor/ListPopupWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb3ce9dba6285db4daaf9429a853ecdb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Editor/ListTreeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4201df8e68b0b224181e330ae4837986 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Editor/ListTreeViewItemContainer.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEditor; 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator 6 | { 7 | public class ListTreeViewItemContainer 8 | { 9 | public T item; 10 | 11 | public ListTreeViewItemContainer() { } 12 | public ListTreeViewItemContainer(T item) 13 | { 14 | this.item = item; 15 | } 16 | 17 | public virtual string displayName => item.ToString(); 18 | 19 | public virtual bool Toggle(Rect rect, bool exists) 20 | { 21 | return EditorGUI.ToggleLeft(rect, displayName, exists, exists ? EditorStyles.boldLabel : EditorStyles.label); 22 | } 23 | } 24 | } 25 | #endif 26 | -------------------------------------------------------------------------------- /Core/Editor/ListTreeViewItemContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d5087ab6aceb8ed42a27d2589251cd71 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Editor/ToolbarUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b295bb182a1b5c4d8e810e59c4eb49d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/IToggleComplexItem.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using net.narazaka.avatarmenucreator.valuecurve; 3 | #endif 4 | 5 | namespace net.narazaka.avatarmenucreator 6 | { 7 | public interface IToggleComplexItem 8 | { 9 | #if UNITY_EDITOR 10 | INamedAnimationToggleCurve ComplexAnimationToggleCurve(string prefix); 11 | #endif 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/IToggleComplexItem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d9e01684a8bce4459518c12c716893a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/IToggleSingleItem.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using net.narazaka.avatarmenucreator.valuecurve; 3 | #endif 4 | 5 | namespace net.narazaka.avatarmenucreator 6 | { 7 | public interface IToggleSingleItem 8 | { 9 | #if UNITY_EDITOR 10 | IAnimationToggleCurve AnimationToggleCurve(); 11 | #endif 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/IToggleSingleItem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6412e34ccc4395344a5d06dcc0391a21 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/IToggleTypedComplexItem.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using net.narazaka.avatarmenucreator.valuecurve; 3 | using System; 4 | #endif 5 | 6 | namespace net.narazaka.avatarmenucreator 7 | { 8 | public interface IToggleTypedComplexItem 9 | { 10 | #if UNITY_EDITOR 11 | INamedAnimationToggleCurve ComplexAnimationToggleCurve(Type type, string prefix); 12 | #endif 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/IToggleTypedComplexItem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c0000b337141c345811d6328e7018e8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/IToggleTypedSingleItem.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using net.narazaka.avatarmenucreator.valuecurve; 3 | using System; 4 | #endif 5 | 6 | namespace net.narazaka.avatarmenucreator 7 | { 8 | public interface IToggleTypedSingleItem 9 | { 10 | #if UNITY_EDITOR 11 | IAnimationToggleCurve AnimationToggleCurve(Type type); 12 | #endif 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/IToggleTypedSingleItem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2cd51f465cea484387bb02cf70958cd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/IUseActive.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator 2 | { 3 | public interface IUseActive 4 | { 5 | bool UseActive { get; set; } 6 | bool UseInactive { get; set; } 7 | bool UseTransitionToActive { get; set; } 8 | bool UseTransitionToInactive { get; set; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Core/IUseActive.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6633bddaaa7c3e04cb5884d7115bf1d9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/IncludeAssetType.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | public enum IncludeAssetType 6 | { 7 | [Japanese("全て個別に保存")] 8 | [English("All saved individually")] 9 | Extract, 10 | [Japanese("prefabとanimator")] 11 | [English("prefab & animator")] 12 | AnimatorAndInclude, 13 | [Japanese("全てprefabに含める")] 14 | [English("one prefab")] 15 | Include, 16 | #if NET_NARAZAKA_VRCHAT_AvatarMenuCreator_HAS_NDMF && !NET_NARAZAKA_VRCHAT_AvatarMenuCreator_HAS_NO_MENU_MA 17 | [Japanese("コンポーネントとして保持")] 18 | [English("as component")] 19 | Component, 20 | #endif 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Core/IncludeAssetType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba92f83299fb3c54887f881b092532b5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/MaterialItemContainer.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEngine; 3 | using UnityEditor; 4 | 5 | namespace net.narazaka.avatarmenucreator 6 | { 7 | class MaterialItemContainer : ListTreeViewItemContainer 8 | { 9 | public Material material; 10 | 11 | public MaterialItemContainer(int index, Material material) : base(index) 12 | { 13 | this.material = material; 14 | } 15 | 16 | public override string displayName => material == null ? "" : material.name; 17 | public override bool Toggle(Rect rect, bool exists) 18 | { 19 | var newExists = EditorGUI.ToggleLeft(new Rect(rect.x, rect.y, 45, rect.height), $"[{item}]", exists, exists ? EditorStyles.boldLabel : EditorStyles.label); 20 | rect.xMin += 45; 21 | EditorGUI.BeginDisabledGroup(true); 22 | EditorGUI.ObjectField(rect, material, typeof(Material), false); 23 | EditorGUI.EndDisabledGroup(); 24 | return newExists; 25 | } 26 | } 27 | } 28 | #endif 29 | -------------------------------------------------------------------------------- /Core/MaterialItemContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 90ca9b5105b483e4fb5709cd30b41691 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/NameAndDescriptionItemContainer.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEngine; 3 | using UnityEditor; 4 | using net.narazaka.avatarmenucreator.util; 5 | 6 | namespace net.narazaka.avatarmenucreator 7 | { 8 | class NameAndDescriptionItemContainer : ListTreeViewItemContainer 9 | { 10 | public INameAndDescription nameAndDescription; 11 | 12 | public NameAndDescriptionItemContainer(INameAndDescription nameAndDescription) : base(nameAndDescription.Name) 13 | { 14 | this.nameAndDescription = nameAndDescription; 15 | } 16 | 17 | public override string displayName => nameAndDescription.Description; 18 | } 19 | } 20 | #endif 21 | -------------------------------------------------------------------------------- /Core/NameAndDescriptionItemContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e5855e5bd7769946980704ae5f73823 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/RadialBlendShape.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: be446e19520285446bb8367551c77071 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/RadialValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e82284cbea4079a46a755dac39fa9fd4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/RadialVector3.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ac09f5a8238ce540b03c14dc92dcf9a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/RadialVector4.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 554c5677a405c594098b8ec7262df8a7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleBlendShape.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using net.narazaka.avatarmenucreator.valuecurve; 4 | 5 | 6 | #if UNITY_EDITOR 7 | using UnityEditor; 8 | #endif 9 | 10 | namespace net.narazaka.avatarmenucreator 11 | { 12 | [Serializable] 13 | public class ToggleBlendShape : ToggleItemBase, IToggleSingleItem 14 | { 15 | #if UNITY_EDITOR 16 | public IAnimationToggleCurve AnimationToggleCurve() => new FloatToggleCurve(Inactive, Active, TransitionOffsetPercent, TransitionDurationPercent); 17 | #endif 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Core/ToggleBlendShape.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd7187529e541dc40952ecd9c811dd3b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e54dd400957f9c499a915f91786589c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Core/ToggleCurve/AnimationToggleCurveSetup.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66c20a1b7e910904d88edb305496b65c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/BoolToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | namespace net.narazaka.avatarmenucreator.valuecurve 3 | { 4 | public class BoolToggleCurve : DiscreteSingleToggleCurve 5 | { 6 | public BoolToggleCurve(bool inactive, bool active, float transitionOffsetPercent) : base(inactive ? 1 : 0, active ? 1 : 0, transitionOffsetPercent) { } 7 | } 8 | } 9 | #endif 10 | -------------------------------------------------------------------------------- /Core/ToggleCurve/BoolToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b6cdf8efd30b7f438c66430de7d9935 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ColorToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEngine; 3 | using net.narazaka.avatarmenucreator.animationcurve; 4 | 5 | namespace net.narazaka.avatarmenucreator.valuecurve 6 | { 7 | public class ColorToggleCurve : ContinuousComplexToggleCurve 8 | { 9 | public ColorToggleCurve(string prefix, Color inactive, Color active, float transitionOffsetPercent, float transitionDurationPercent) : base(prefix, inactive, active, transitionOffsetPercent, transitionDurationPercent) { } 10 | } 11 | } 12 | #endif 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ColorToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7dc0af32546092741b77eafcef817a97 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ContinuousComplexToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2dd29f5fed8dde1498935d0e85663811 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ContinuousSingleToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b03d66aae23c03b4d8eed794969bc86b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ContinuousToggleCurve.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.valuecurve 2 | { 3 | public abstract class ContinuousToggleCurve : ToggleCurve 4 | { 5 | public readonly float TransitionDurationPercent; 6 | public ContinuousToggleCurve(float transitionOffsetPercent, float transitionDurationPercent) : base(transitionOffsetPercent) 7 | { 8 | TransitionDurationPercent = transitionDurationPercent; 9 | } 10 | 11 | protected float TransitionDurationRate { get => TransitionDurationPercent / 100f; } 12 | protected float ActivateStartRate { get => TransitionOffsetRate; } 13 | protected float ActivateEndRate { get => TransitionOffsetRate + TransitionDurationRate; } 14 | protected float InactivateStartRate { get => 1f - ActivateEndRate; } 15 | protected float InactivateEndRate { get => 1f - ActivateStartRate; } 16 | protected bool NeedActivateEndKey { get => 1f - ActivateEndRate >= 1f / 60; } 17 | protected bool NeedInactivateEndKey { get => 1f - InactivateEndRate >= 1f / 60; } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ContinuousToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24b79510d83c89449827c75a06e079ad 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/DiscreteComplexToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9b09225f096ba043bb2b83c6a23a1c0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/DiscreteSingleToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1147edb5e44015048b4f0ae2ef4a13ed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/DiscreteToggleCurve.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.valuecurve 2 | { 3 | public abstract class DiscreteToggleCurve : ToggleCurve 4 | { 5 | public DiscreteToggleCurve(float transitionOffsetPercent) : base(transitionOffsetPercent) { } 6 | 7 | protected float ActivateChangeRate { get => TransitionOffsetRate; } 8 | protected float InactivateChangeRate { get => 1f - TransitionOffsetRate; } 9 | protected bool NeedActivateStartKey { get => ActivateChangeRate > 0; } 10 | protected bool NeedActivateEndKey { get => 1f - ActivateChangeRate > 0; } 11 | protected bool NeedInactivateStartKey { get => InactivateChangeRate > 0; } 12 | protected bool NeedInactivateEndKey { get => 1f - InactivateChangeRate > 0; } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/ToggleCurve/DiscreteToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3843527835483f041bdedcd1c29b03e5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/FloatToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | namespace net.narazaka.avatarmenucreator.valuecurve 3 | { 4 | public class FloatToggleCurve : ContinuousSingleToggleCurve 5 | { 6 | public FloatToggleCurve(float inactive, float active, float transitionOffsetPercent, float transitionDurationPercent) : base(inactive, active, transitionOffsetPercent, transitionDurationPercent) { } 7 | } 8 | } 9 | #endif 10 | -------------------------------------------------------------------------------- /Core/ToggleCurve/FloatToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0ffd9d08f8dd5941af0dcc090101395 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/IAnimationToggleCurve.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.valuecurve 4 | { 5 | public interface IAnimationToggleCurve 6 | { 7 | AnimationCurve ActiveCurve(); 8 | AnimationCurve InactiveCurve(); 9 | AnimationCurve ActivateCurve(float transitionSeconds); 10 | AnimationCurve InactivateCurve(float transitionSeconds); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/IAnimationToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 184726e11059f4748be0cc39ba0bba48 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/INamedAnimationToggleCurve.cs: -------------------------------------------------------------------------------- 1 | using net.narazaka.avatarmenucreator.animationcurve; 2 | 3 | namespace net.narazaka.avatarmenucreator.valuecurve 4 | { 5 | public interface INamedAnimationToggleCurve 6 | { 7 | NamedAnimationCurve[] ActiveCurve(); 8 | NamedAnimationCurve[] InactiveCurve(); 9 | NamedAnimationCurve[] ActivateCurve(float transitionSeconds); 10 | NamedAnimationCurve[] InactivateCurve(float transitionSeconds); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/INamedAnimationToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d321e9e37c2f3c4ea7bb8d9644d640f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/IntToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | namespace net.narazaka.avatarmenucreator.valuecurve 3 | { 4 | public class IntToggleCurve : DiscreteSingleToggleCurve 5 | { 6 | public IntToggleCurve(int inactive, int active, float transitionOffsetPercent) : base(inactive, active, transitionOffsetPercent) { } 7 | } 8 | } 9 | #endif 10 | -------------------------------------------------------------------------------- /Core/ToggleCurve/IntToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f9af37f34ca1ef4fb0cde3a782278b2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/NamedAnimationToggleCurveSetup.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ceb5c1cfe3aa4f247b83458be21843a1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/PermissionFilterToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using net.narazaka.avatarmenucreator.animationcurve; 3 | using VRC.Dynamics; 4 | 5 | namespace net.narazaka.avatarmenucreator.valuecurve 6 | { 7 | public class PermissionFilterToggleCurve : DiscreteComplexToggleCurve 8 | { 9 | public PermissionFilterToggleCurve(string prefix, VRCPhysBoneBase.PermissionFilter inactive, VRCPhysBoneBase.PermissionFilter active, float transitionOffsetPercent) : base(prefix, inactive, active, transitionOffsetPercent) { } 10 | } 11 | } 12 | #endif 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/PermissionFilterToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3d76d582fb45904baaca37f1479201a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/QuaternionToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEngine; 3 | using net.narazaka.avatarmenucreator.animationcurve; 4 | 5 | namespace net.narazaka.avatarmenucreator.valuecurve 6 | { 7 | public class QuaternionToggleCurve : ContinuousComplexToggleCurve 8 | { 9 | public QuaternionToggleCurve(string prefix, Quaternion inactive, Quaternion active, float transitionOffsetPercent, float transitionDurationPercent) : base(prefix, inactive, active, transitionOffsetPercent, transitionDurationPercent) { } 10 | } 11 | } 12 | #endif 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/QuaternionToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 775a361b6a40f744092dc29473ff5b3a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ToggleAnimationClipSet.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3312612dfef23e24ba9ea02c6287cfca 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ToggleCurve.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.valuecurve 2 | { 3 | public abstract class ToggleCurve 4 | { 5 | public readonly float TransitionOffsetPercent; 6 | public ToggleCurve(float transitionOffsetPercent) 7 | { 8 | TransitionOffsetPercent = transitionOffsetPercent; 9 | } 10 | protected float TransitionOffsetRate { get => TransitionOffsetPercent / 100f; } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/ToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5fd0668a28672014d8ebf08d4175810d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/Vector3ToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEngine; 3 | using net.narazaka.avatarmenucreator.animationcurve; 4 | 5 | namespace net.narazaka.avatarmenucreator.valuecurve 6 | { 7 | public class Vector3ToggleCurve : ContinuousComplexToggleCurve 8 | { 9 | public Vector3ToggleCurve(string prefix, Vector3 inactive, Vector3 active, float transitionOffsetPercent, float transitionDurationPercent) : base(prefix, inactive, active, transitionOffsetPercent, transitionDurationPercent) { } 10 | } 11 | } 12 | #endif 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/Vector3ToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6103b33f33f5d484a8c5af0c7de3739a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleCurve/Vector4ToggleCurve.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEngine; 3 | using net.narazaka.avatarmenucreator.animationcurve; 4 | 5 | namespace net.narazaka.avatarmenucreator.valuecurve 6 | { 7 | public class Vector4ToggleCurve : ContinuousComplexToggleCurve 8 | { 9 | public Vector4ToggleCurve(string prefix, Vector4 inactive, Vector4 active, float transitionOffsetPercent, float transitionDurationPercent) : base(prefix, inactive, active, transitionOffsetPercent, transitionDurationPercent) { } 10 | } 11 | } 12 | #endif 13 | -------------------------------------------------------------------------------- /Core/ToggleCurve/Vector4ToggleCurve.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fad10a73602bfd345b90a36528d21b64 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleItemBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 525f211b4f5cda94cb25072aee334ea5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleMaterial.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2299352fab665194d9d32489bfeb6139 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleTransitionUsing.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace net.narazaka.avatarmenucreator 5 | { 6 | [Flags] 7 | public enum ToggleTransitionUsing 8 | { 9 | [InspectorName("両方制御")] 10 | NotSpecified = 0, 11 | [InspectorName("ONを無視")] 12 | OmitON = 1 << 0, 13 | [InspectorName("OFFを無視")] 14 | OmitOFF = 1 << 1, 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Core/ToggleTransitionUsing.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3cd66170cacc8a24c9f62ad7ae00bb40 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleType.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | public enum ToggleType 6 | { 7 | [InspectorName("制御しない")] 8 | None, 9 | [InspectorName("ON=表示")] 10 | ON, 11 | [InspectorName("ON=非表示")] 12 | OFF, 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/ToggleType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f606f89b422188c4d93ccecc6949bf22 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleUsing.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | public enum ToggleUsing 6 | { 7 | [InspectorName("両方制御")] 8 | Both, 9 | [InspectorName("ONのみ制御")] 10 | ON, 11 | [InspectorName("OFFのみ制御")] 12 | OFF, 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Core/ToggleUsing.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2076f09412ae3b2468dd6d74976295d0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: be1385613acec634987e9ca6d31ad8a8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleVector3.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using net.narazaka.avatarmenucreator.animationcurve; 4 | using net.narazaka.avatarmenucreator.valuecurve; 5 | 6 | 7 | #if UNITY_EDITOR 8 | using UnityEditor; 9 | #endif 10 | 11 | namespace net.narazaka.avatarmenucreator 12 | { 13 | [Serializable] 14 | public class ToggleVector3 : ToggleItemBase, IToggleComplexItem 15 | { 16 | #if UNITY_EDITOR 17 | public INamedAnimationToggleCurve ComplexAnimationToggleCurve(string prefix) => new Vector3ToggleCurve(prefix, Inactive, Active, TransitionOffsetPercent, TransitionDurationPercent); 18 | #endif 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Core/ToggleVector3.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a3407a59f62a8c42a2722118bb94bcd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/ToggleVector4.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | #if UNITY_EDITOR 5 | using net.narazaka.avatarmenucreator.valuecurve; 6 | #endif 7 | 8 | namespace net.narazaka.avatarmenucreator 9 | { 10 | [Serializable] 11 | public class ToggleVector4 : ToggleItemBase, IToggleComplexItem 12 | { 13 | #if UNITY_EDITOR 14 | public INamedAnimationToggleCurve ComplexAnimationToggleCurve(string prefix) => new Vector4ToggleCurve(prefix, Inactive, Active, TransitionOffsetPercent, TransitionDurationPercent); 15 | #endif 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Core/ToggleVector4.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dd54e102459a37643afa8d39690cf83a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e083a7e0994001b4bb6914c4debb3276 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Core/Value/BoolValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace net.narazaka.avatarmenucreator.value 5 | { 6 | [Serializable] 7 | public sealed class BoolValue : Value 8 | { 9 | public BoolValue(bool value) : base(new float[] { value ? 1 : 0 }) { } 10 | public static implicit operator bool(BoolValue value) => value != null && value.value.Length > 0 ? value.value[0] != 0 : false; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Value/BoolValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec47b6c7762cc3a409b3db894b26315c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/ColorValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace net.narazaka.avatarmenucreator.value 5 | { 6 | [Serializable] 7 | public sealed class ColorValue : Value 8 | { 9 | public ColorValue(Color value) : base(new float[] { value.r, value.g, value.b, value.a }) { } 10 | public static implicit operator Color(ColorValue value) => value != null && value.value.Length >= 4 ? new Color(value.value[0], value.value[1], value.value[2], value.value[3]) : default(Color); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Value/ColorValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c15a4d024426f024aaac3829e86e52a7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/FloatValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace net.narazaka.avatarmenucreator.value 5 | { 6 | [Serializable] 7 | public sealed class FloatValue : Value 8 | { 9 | public FloatValue(float value) : base(new float[] { value }) { } 10 | 11 | public static implicit operator float(FloatValue value) => value != null && value.value.Length > 0 ? value.value[0] : 0; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/Value/FloatValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3fcea5269892a014ba9d6b1c4a31fab8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/IntValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace net.narazaka.avatarmenucreator.value 6 | { 7 | [Serializable] 8 | public sealed class IntValue : Value 9 | { 10 | public IntValue(int value) : base(new float[] { value }) { } 11 | public static implicit operator int(IntValue value) => value != null && value.value.Length > 0 ? Mathf.RoundToInt(value.value[0]) : 0; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/Value/IntValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 665a5f7111c1dcd4884e993ef2526011 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/PermissionFilterValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using VRC.Dynamics; 4 | 5 | namespace net.narazaka.avatarmenucreator.value 6 | { 7 | [Serializable] 8 | public sealed class PermissionFilterValue : Value 9 | { 10 | public PermissionFilterValue(VRCPhysBoneBase.PermissionFilter value) : base(new float[] { value.allowSelf ? 1 : 0, value.allowOthers ? 1 : 0 }) { } 11 | public static implicit operator VRCPhysBoneBase.PermissionFilter(PermissionFilterValue value) => value != null && value.value.Length >= 2 ? new VRCPhysBoneBase.PermissionFilter { allowSelf = value.value[0] != 0, allowOthers = value.value[1] != 0 } : new VRCPhysBoneBase.PermissionFilter(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Core/Value/PermissionFilterValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b005f3305cda0b546a4aefa87c894d4a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/QuaternionValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace net.narazaka.avatarmenucreator.value 5 | { 6 | [Serializable] 7 | public sealed class QuaternionValue : Value 8 | { 9 | public QuaternionValue(Quaternion value) : base(new float[] { value.x, value.y, value.z, value.w }) { } 10 | public static implicit operator Quaternion(QuaternionValue value) => value != null && value.value.Length >= 4 ? new Quaternion(value.value[0], value.value[1], value.value[2], value.value[3]) : Quaternion.identity; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Value/QuaternionValue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4cfd9b5c0a150f64a862d4aa68a66338 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/Value.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 07de71b355ba7ba499adb2c925939d86 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/ValueExtension.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | namespace net.narazaka.avatarmenucreator.value 4 | { 5 | public static class ValueExtension 6 | { 7 | public static BoolValue AsBool(this Value value) => Unsafe.As(ref value); 8 | public static FloatValue AsFloat(this Value value) => Unsafe.As(ref value); 9 | public static IntValue AsInt(this Value value) => Unsafe.As(ref value); 10 | public static Vector3Value AsVector3(this Value value) => Unsafe.As(ref value); 11 | public static QuaternionValue AsQuaternion(this Value value) => Unsafe.As(ref value); 12 | public static ColorValue AsColor(this Value value) => Unsafe.As(ref value); 13 | public static PermissionFilterValue AsPermissionFilterValue(this Value value) => Unsafe.As(ref value); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Core/Value/ValueExtension.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c40a605543317ae4aadad074f7788bb0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Core/Value/Vector3Value.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace net.narazaka.avatarmenucreator.value 5 | { 6 | [Serializable] 7 | public sealed class Vector3Value : Value 8 | { 9 | public Vector3Value(Vector3 value) : base(new float[] { value.x, value.y, value.z }) { } 10 | public static implicit operator Vector3(Vector3Value value) => value != null && value.value.Length >= 3 ? new Vector3(value.value[0], value.value[1], value.value[2]) : Vector3.zero; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Core/Value/Vector3Value.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 500536cc4afc1124494cd4f2b65a9547 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed9228c6e4475d646aeb8a8798b46b7e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/AssertException.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.editor 2 | { 3 | public class AssertException : System.ArgumentException 4 | { 5 | public AssertException(string message) : base(message) { } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Editor/AssertException.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 177de802e10da0d4592dd8f45678d62f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/AvatarMenuCreatorForMA.Editor.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 558606e6c0d7c8448b6204c5950c666a 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/AvatarMenuCreatorForMA.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4e1188c6a0b325b45a2c6e2e3a503a74 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/CreateAvatarChooseMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d817d6719e1635749bb0c9a825ae25cb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/CreateAvatarMenuBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85c4f002a3ca4264abb3ff5c37ea3c75 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/CreateAvatarRadialMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b65cf3f1fed9a2741bb5daa3599ea8fd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/CreateAvatarToggleMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d7ea14590e729c49b8e3f129f113178 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/CreatedAssets.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e2553237ccb6b11409ed65e82c47d9c4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/MenuType.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.editor 4 | { 5 | enum MenuType 6 | { 7 | [Japanese("ON/OFF")] 8 | [English("Toggle")] 9 | [Icon("Icons/AvatarMenuCreatorToggleIcon.png")] 10 | Toggle, 11 | [Japanese("選択式")] 12 | [English("Select")] 13 | [Icon("Icons/AvatarMenuCreatorChooseIcon.png")] 14 | Choose, 15 | [Japanese("無段階制御")] 16 | [English("Range")] 17 | [Icon("Icons/AvatarMenuCreatorRadialIcon.png")] 18 | Slider, 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Editor/MenuType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 874395be175a7134b9efea3052fc5fc7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/RestoreAvatarChooseMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c919376a35d11444d8bf94bef48c1f5f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/RestoreAvatarMenuBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df823ec689d04a44d8ca13067581f7a8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/RestoreAvatarRadialMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf9cbef02ddf51040aecaf0b054f7494 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/RestoreAvatarToggleMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89f902978d9088c41abae2352c6fdd88 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 756127f556d646049bcba2b759f9b8c5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Util/AvatarMenuCreatorForMA.Editor.Util.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AvatarMenuCreatorForMA.Editor.Util", 3 | "rootNamespace": "", 4 | "references": [ 5 | "VRC.SDKBase" 6 | ], 7 | "includePlatforms": [], 8 | "excludePlatforms": [], 9 | "allowUnsafeCode": false, 10 | "overrideReferences": false, 11 | "precompiledReferences": [], 12 | "autoReferenced": false, 13 | "defineConstraints": [], 14 | "versionDefines": [ 15 | { 16 | "name": "com.vrchat.base", 17 | "expression": "[3,3.2)", 18 | "define": "PHYSBONE_ONLY_1_0" 19 | }, 20 | { 21 | "name": "com.vrchat.base", 22 | "expression": "[3.7.0,4)", 23 | "define": "HAS_VRC_CONSTRAINT" 24 | }, 25 | { 26 | "name": "com.vrchat.base", 27 | "expression": "[3.5.2,4)", 28 | "define": "HAS_VRC_HEADCHOP" 29 | } 30 | ], 31 | "noEngineReferences": false 32 | } -------------------------------------------------------------------------------- /Editor/Util/AvatarMenuCreatorForMA.Editor.Util.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8d3790345dfe964da49e8037fc71835 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/Util/ComponentWhitelistUtil.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Collections.Immutable; 4 | using System.Linq; 5 | using VRC.SDKBase.Validation; 6 | 7 | namespace net.narazaka.avatarmenucreator.util 8 | { 9 | public static class ComponentWhitelistUtil 10 | { 11 | static ImmutableHashSet Cache; 12 | 13 | public static IEnumerable FilterByVRCWhitelist(this IEnumerable types) 14 | { 15 | return types.Where(ComponentWhitelist.Contains); 16 | } 17 | 18 | static ImmutableHashSet ComponentWhitelist 19 | { 20 | get 21 | { 22 | if (Cache != null) return Cache; 23 | return Cache = AvatarValidation.ComponentTypeWhiteListCommon.Concat(AvatarValidation.ComponentTypeWhiteListSdk3).Select(TypeUtil.GetType).ToImmutableHashSet(); 24 | } 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Editor/Util/ComponentWhitelistUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f68596d4d63bcb14f911fe6a628df2fd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/EnumUtil.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using System.Collections.Generic; 4 | 5 | namespace net.narazaka.avatarmenucreator.util 6 | { 7 | public static class EnumUtil 8 | { 9 | static Dictionary EnumCache = new Dictionary(); 10 | 11 | public static string[] GetEnumNamesCached(this Type enumType) 12 | { 13 | if (EnumCache.TryGetValue(enumType, out var names)) 14 | { 15 | return names; 16 | } 17 | return EnumCache[enumType] = enumType.GetEnumNames(); 18 | } 19 | 20 | static Dictionary EnumValuesCache = new Dictionary(); 21 | 22 | public static int[] GetEnumValuesCached(this Type enumType) 23 | { 24 | if (EnumValuesCache.TryGetValue(enumType, out var values)) 25 | { 26 | return values; 27 | } 28 | return EnumValuesCache[enumType] = enumType.GetEnumValues().Cast().ToArray(); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Editor/Util/EnumUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 904b689a819486a4eb5bf12072840cc8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/INameAndDescription.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator.util 2 | { 3 | public interface INameAndDescription 4 | { 5 | string Name { get; } 6 | string Description { get; } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Editor/Util/INameAndDescription.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b1630a9c9084b1f42930a6b7af950382 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/QuaternionUtil.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace net.narazaka.avatarmenucreator.util 4 | { 5 | public static class QuaternionUtil 6 | { 7 | public static Vector4 ToVector4(this Quaternion value) 8 | { 9 | return new Vector4(value.x, value.y, value.z, value.w); 10 | } 11 | 12 | public static Quaternion ToQuaternion(this Vector4 value) 13 | { 14 | return new Quaternion(value.x, value.y, value.z, value.w); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Editor/Util/QuaternionUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8ffd81c845c4e2419e34e79cffda84b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/TypeMember.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 42e075daa5782a24087aa08aa9ea6de0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/TypeMemberUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83cd896c464e30448b5a7e4b3f2ce029 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/TypeUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 093e6942e4b1b85428f3cf2e60bb6c28 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/UndoUtility.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | using UnityEditor; 3 | using UnityObject = UnityEngine.Object; 4 | 5 | namespace net.narazaka.avatarmenucreator.util 6 | { 7 | public static class UndoUtility 8 | { 9 | public static void RecordObject(UnityObject uo, string name) 10 | { 11 | if (uo == null) 12 | { 13 | return; 14 | } 15 | 16 | Undo.RegisterCompleteObjectUndo(uo, name); 17 | 18 | if (!uo.IsSceneBound()) 19 | { 20 | EditorUtility.SetDirty(uo); 21 | } 22 | 23 | if (uo.IsPrefabInstance()) 24 | { 25 | EditorApplication.delayCall += () => 26 | { 27 | PrefabUtility.RecordPrefabInstancePropertyModifications(uo); 28 | }; 29 | } 30 | } 31 | } 32 | } 33 | #endif 34 | -------------------------------------------------------------------------------- /Editor/Util/UndoUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fdaba6a0286a0944e9aef6780d6ce7c5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/UnityObjectUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 78ce35c83a5a7a748bae24dcc38ea39d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/Util.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5dec09be82140234c8ab876f5f243ed8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Util/VRCPhysBoneUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: efdbf9b54a6c70947a412b2170a89b6a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Icons.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7879914c5fa2cf4ebc2b5af6df259ab 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Icons/AvatarMenuCreatorChooseIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/Icons/AvatarMenuCreatorChooseIcon.png -------------------------------------------------------------------------------- /Icons/AvatarMenuCreatorRadialIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/Icons/AvatarMenuCreatorRadialIcon.png -------------------------------------------------------------------------------- /Icons/AvatarMenuCreatorToggleIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/Icons/AvatarMenuCreatorToggleIcon.png -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2023 Narazaka 2 | 3 | This software is provided 'as-is', without any express or implied 4 | warranty. In no event will the authors be held liable for any damages 5 | arising from the use of this software. 6 | 7 | Permission is granted to anyone to use this software for any purpose, 8 | including commercial applications, and to alter it and redistribute it 9 | freely, subject to the following restrictions: 10 | 11 | 1. The origin of this software must not be misrepresented; you must not 12 | claim that you wrote the original software. If you use this software 13 | in a product, an acknowledgment in the product documentation would be 14 | appreciated but is not required. 15 | 16 | 2. Altered source versions must be plainly marked as such, and must not be 17 | misrepresented as being the original software. 18 | 19 | 3. This notice may not be removed or altered from any source 20 | distribution. 21 | -------------------------------------------------------------------------------- /LICENSE.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 91534b8475128b14c9f504fdc2a7c744 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Localization.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9cfe0aabc6ec8047a49ea80a940d01a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Localization/AvatarMenuCreatorForMA.Localization.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AvatarMenuCreatorForMA.Localization", 3 | "rootNamespace": "", 4 | "references": [ 5 | "nadena.dev.ndmf" 6 | ], 7 | "includePlatforms": [], 8 | "excludePlatforms": [], 9 | "allowUnsafeCode": false, 10 | "overrideReferences": false, 11 | "precompiledReferences": [], 12 | "autoReferenced": false, 13 | "defineConstraints": [], 14 | "versionDefines": [ 15 | { 16 | "name": "nadena.dev.ndmf", 17 | "expression": "[1.0.0,2)", 18 | "define": "HAS_NDMF" 19 | } 20 | ], 21 | "noEngineReferences": false 22 | } -------------------------------------------------------------------------------- /Localization/AvatarMenuCreatorForMA.Localization.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 570c21f2e664e3c4daa790fbf1a38f7f 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Localization/EnglishAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)] 6 | public class EnglishAttribute : LangAttribute 7 | { 8 | public EnglishAttribute(string value) : base(Lang.en_us, value) { } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Localization/EnglishAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 565dc1166141f1844ad65fb3ceabbc54 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Localization/JapaneseAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)] 6 | public class JapaneseAttribute : LangAttribute 7 | { 8 | public JapaneseAttribute(string value) : base(Lang.ja_jp, value) { } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Localization/JapaneseAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e59431e34670f9f4e8c3ad1304c626bc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Localization/Lang.cs: -------------------------------------------------------------------------------- 1 | namespace net.narazaka.avatarmenucreator 2 | { 3 | public enum Lang 4 | { 5 | ja_jp, 6 | en_us, 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Localization/Lang.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 55b4f81205066714ea630e6a97fe9447 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Localization/LangAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace net.narazaka.avatarmenucreator 4 | { 5 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)] 6 | public class LangAttribute : Attribute 7 | { 8 | public Lang Lang { get; } 9 | public string Value { get; } 10 | 11 | public LangAttribute(Lang lang, string value) 12 | { 13 | Lang = lang; 14 | Value = value; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Localization/LangAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a63424118b9e624c96474e4743ab51b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Localization/Localization.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c789d258d3f9b7040a6f129db469c36f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Localization/T.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1fbfd7047c1fd44586dc3767bf6e986 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8aff41a3e9d2dfc4f9d02ff9309c3c02 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Test.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b48b97f7044683e4fa41c75f5bab1999 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Test/AvatarMenuCreatorForMA.Test.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AvatarMenuCreatorForMA.Test", 3 | "rootNamespace": "", 4 | "references": [ 5 | "UnityEngine.TestRunner", 6 | "UnityEditor.TestRunner" 7 | ], 8 | "includePlatforms": [ 9 | "Editor" 10 | ], 11 | "excludePlatforms": [], 12 | "allowUnsafeCode": false, 13 | "overrideReferences": true, 14 | "precompiledReferences": [ 15 | "nunit.framework.dll" 16 | ], 17 | "autoReferenced": false, 18 | "defineConstraints": [ 19 | "UNITY_INCLUDE_TESTS" 20 | ], 21 | "versionDefines": [], 22 | "noEngineReferences": false 23 | } -------------------------------------------------------------------------------- /Test/AvatarMenuCreatorForMA.Test.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5820b515a0829de42acaeff840e702a8 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Test/BuildAssetBundle.cs: -------------------------------------------------------------------------------- 1 | using NUnit.Framework; 2 | using UnityEditor; 3 | 4 | namespace net.narazaka.avatarmenucreator.test 5 | { 6 | /// 7 | /// This tests compilation error in runtime build with building asset bundle. 8 | /// 9 | /// cf. https://github.com/bdunderscore/ndmf/blob/main/UnitTests~/BuildAssetBundle.cs 10 | /// 11 | public class BuildAssetBundle 12 | { 13 | [Test] 14 | public void Build() 15 | { 16 | BuildPipeline.BuildAssetBundles("Packages/net.narazaka.vrchat.avatar-menu-creater-for-ma/Test/gen~/", 17 | new[] 18 | { 19 | new AssetBundleBuild 20 | { 21 | assetNames = new[] { "Packages/net.narazaka.vrchat.avatar-menu-creater-for-ma/Test/Empty.prefab" }, 22 | assetBundleName = "asset.unity3d" 23 | } 24 | }, 25 | BuildAssetBundleOptions.None, 26 | EditorUserBuildSettings.activeBuildTarget 27 | ); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Test/BuildAssetBundle.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d33b53559c7fa46418f32d8e68dddd88 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Test/Empty.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &9057617057974388966 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 5998954798967962802} 12 | m_Layer: 0 13 | m_Name: Empty 14 | m_TagString: Untagged 15 | m_Icon: {fileID: 0} 16 | m_NavMeshLayer: 0 17 | m_StaticEditorFlags: 0 18 | m_IsActive: 1 19 | --- !u!4 &5998954798967962802 20 | Transform: 21 | m_ObjectHideFlags: 0 22 | m_CorrespondingSourceObject: {fileID: 0} 23 | m_PrefabInstance: {fileID: 0} 24 | m_PrefabAsset: {fileID: 0} 25 | m_GameObject: {fileID: 9057617057974388966} 26 | serializedVersion: 2 27 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 28 | m_LocalPosition: {x: 0, y: 0, z: 0} 29 | m_LocalScale: {x: 1, y: 1, z: 1} 30 | m_ConstrainProportionsScale: 0 31 | m_Children: [] 32 | m_Father: {fileID: 0} 33 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 34 | -------------------------------------------------------------------------------- /Test/Empty.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 581993f3cfa58f64a99c65295811bd56 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Test/gen~/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/Test/gen~/.keep -------------------------------------------------------------------------------- /doc~/site/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | # generated types 4 | .astro/ 5 | 6 | # dependencies 7 | node_modules/ 8 | 9 | # logs 10 | npm-debug.log* 11 | yarn-debug.log* 12 | yarn-error.log* 13 | pnpm-debug.log* 14 | 15 | 16 | # environment variables 17 | .env 18 | .env.production 19 | 20 | # macOS-specific files 21 | .DS_Store 22 | -------------------------------------------------------------------------------- /doc~/site/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["astro-build.astro-vscode"], 3 | "unwantedRecommendations": [] 4 | } 5 | -------------------------------------------------------------------------------- /doc~/site/.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "command": "./node_modules/.bin/astro dev", 6 | "name": "Development server", 7 | "request": "launch", 8 | "type": "node-terminal" 9 | } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /doc~/site/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "doc", 3 | "type": "module", 4 | "version": "0.0.1", 5 | "scripts": { 6 | "dev": "astro dev", 7 | "start": "astro dev", 8 | "build": "astro check && astro build", 9 | "preview": "astro preview", 10 | "astro": "astro" 11 | }, 12 | "dependencies": { 13 | "@astrojs/check": "^0.9.4", 14 | "@astrojs/starlight": "^0.30.3", 15 | "astro": "^5.1.2", 16 | "sharp": "^0.33.5", 17 | "typescript": "^5.6.2" 18 | }, 19 | "optionalDependencies": { 20 | "@pagefind/linux-x64": "^1.3.0", 21 | "@rollup/rollup-linux-x64-gnu": "^4.29.2" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /doc~/site/public/AvatarMenuCreaterForMA-vcc.unitypackage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/public/AvatarMenuCreaterForMA-vcc.unitypackage -------------------------------------------------------------------------------- /doc~/site/public/AvatarMenuCreator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/public/AvatarMenuCreator.png -------------------------------------------------------------------------------- /doc~/site/public/CNAME: -------------------------------------------------------------------------------- 1 | avatar-menu-creater-for-ma.vrchat.narazaka.net -------------------------------------------------------------------------------- /doc~/site/public/ga.js: -------------------------------------------------------------------------------- 1 | window.dataLayer = window.dataLayer || []; 2 | function gtag(){dataLayer.push(arguments);} 3 | gtag('js', new Date()); 4 | 5 | gtag('config', 'G-YKE861NPYC'); 6 | -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/AvatarMenuCreator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/AvatarMenuCreator.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/AvatarMenuCreatorChooseIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/AvatarMenuCreatorChooseIcon.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/AvatarMenuCreatorRadialIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/AvatarMenuCreatorRadialIcon.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/AvatarMenuCreatorToggleIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/AvatarMenuCreatorToggleIcon.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/AvatarParametersDriver_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/AvatarParametersDriver_s.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-alone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-alone.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-asset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-asset.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-avatar.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-basic-set.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-basic-set.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-basic-set.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-basic-set.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-basics.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-basics.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-basics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-basics.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-check-mat.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-check-mat.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-check-mat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-check-mat.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-create.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-finish.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-finish.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-finish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-finish.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-check.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-check.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-check.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-check.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-create.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-create.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-create.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-drag.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-drag.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-drag.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-drop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-drop.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-lock.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-lock.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-lock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-lock.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-name.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-name.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat-name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat-name.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-mat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-mat.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-menu-obj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-menu-obj.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-obj.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-obj.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-obj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-obj.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose-result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose-result.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-choose.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-choose.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-component-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-component-base.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-component-choose.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-component-choose.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-component-radial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-component-radial.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-component-toggle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-component-toggle.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-create-asset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-create-asset.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-create-multi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-create-multi.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-create-toggle.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-create-toggle.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-create-toggle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-create-toggle.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-create.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-create.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-create.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade-conflict-order.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade-conflict-order.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade-conflict.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade-conflict.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade-conflict.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade-conflict.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade-graph.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade-graph.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade-graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade-graph.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade-param.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade-param.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-fade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-fade.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-from-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-from-avatar.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-go-shape.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-go-shape.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-go-shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-go-shape.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-icon-drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-icon-drag.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-mat-alt.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-mat-alt.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-mat-alt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-mat-alt.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-mat-select.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-mat-select.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-mat-select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-mat-select.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-menu-obj-child.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-menu-obj-child.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-menu-obj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-menu-obj.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-multi-edit.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-multi-edit.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-multi-edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-multi-edit.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-name-replace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-name-replace.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-only-onoff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-only-onoff.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-pb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-pb.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-quest.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-quest.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-quest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-quest.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-alpha-result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-alpha-result.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-alpha.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-alpha.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-alpha.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-alpha.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-blendshape-create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-blendshape-create.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-blendshape-multi.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-blendshape-multi.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-blendshape-multi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-blendshape-multi.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-blendshape.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-blendshape.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-blendshape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-blendshape.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial-result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial-result.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-radial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-radial.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-restore.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-restore.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-restore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-restore.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-select-modes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-select-modes.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-select-obj-please.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-select-obj-please.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-select-obj.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-select-obj.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-select-obj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-select-obj.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-select-objs.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-select-objs.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-select-objs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-select-objs.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-toggle-inspector.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-toggle-inspector.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-toggle-inspector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-toggle-inspector.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-toggle.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-toggle.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-toggle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-toggle.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-tools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-tools.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-types-radial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-types-radial.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/amc-types.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/amc-types.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/animator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/animator.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-3ex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-3ex.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-and.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-and.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-and2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-and2.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-blendshape-choose.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-blendshape-choose.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-blendshape-toggle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-blendshape-toggle.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-blendshape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-blendshape.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-blendshape2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-blendshape2.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-complex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-complex.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-dep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-dep.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-exset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-exset.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-inspector.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-inspector.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-inspector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-inspector.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-objs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-objs.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apd-simple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apd-simple.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apeg-dep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apeg-dep.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apeg-simple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apeg-simple.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/apeg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/apeg.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-create.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-inspector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-inspector.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-play.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-result.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-saved.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-saved.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-tools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-tools.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/aps-window.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/aps-window.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/avatar-parameters-driver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/avatar-parameters-driver.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes1.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes2.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes3.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes4.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes5.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes6.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes7.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes8.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/clothes9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/clothes9.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/compress-parameters-option.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/compress-parameters-option.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/gesture-manager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/gesture-manager.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/mat.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/mat.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/mat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/mat.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-child-inspector.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-child-inspector.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-child-inspector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-child-inspector.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-child.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-child.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-obj-scene.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-obj-scene.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-parent-inspector.clip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-parent-inspector.clip -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-parent-inspector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-parent-inspector.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/menu-parent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/menu-parent.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/obj-prefab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/obj-prefab.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/restore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/restore.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/vpm-apd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/vpm-apd.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/vpm-error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/vpm-error.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/vpm1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/vpm1.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/vpm2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/vpm2.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/vpm3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/vpm3.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/vpm4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/vpm4.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf1.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf10.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf11.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf12.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf13.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf2.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf3.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf4.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf4_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf4_1.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf5.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf6.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf7.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf8.png -------------------------------------------------------------------------------- /doc~/site/src/assets/imgs/wf9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narazaka/AvatarMenuCreaterForMA/cd68994fb8aa8f245f6ee293e9134e61efb5b457/doc~/site/src/assets/imgs/wf9.png -------------------------------------------------------------------------------- /doc~/site/src/content/config.ts: -------------------------------------------------------------------------------- 1 | import { defineCollection } from 'astro:content'; 2 | import { docsSchema } from '@astrojs/starlight/schema'; 3 | 4 | export const collections = { 5 | docs: defineCollection({ schema: docsSchema() }), 6 | }; 7 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/guides/choose.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 複数の服を切り替えたい 【選択式】 3 | description: 複数のものを切り替えたい 4 | sidebar: 5 | order: 12 6 | --- 7 | 8 | ### モードを変えてオブジェクトを選択 9 | 10 | モードを「選択式」にします。 11 | 12 | 変更したいオブジェクトを全部選択します。 13 | 14 | ![](../../../assets/imgs/amc-choose.png) 15 | 16 | ### 選択肢を設定 17 | 18 | 「選択肢の数」とその下の選択肢の名前を設定します。 19 | 20 | オブジェクトの横にある「制御」をONにして、それぞれのオブジェクトがどの選択肢で表示されるかを設定します。 21 | 22 | ![](../../../assets/imgs/amc-choose-obj.png) 23 | 24 | ### 作成 25 | 26 | 親メニュー名を決めて「Create!」 27 | 28 | ![](../../../assets/imgs/amc-choose-create.png) 29 | 30 | 選択メニューが完成! 31 | 32 | ![](../../../assets/imgs/amc-choose-result.png) 33 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/guides/radial.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 胸のサイズを変えたい 【無段階制御】 3 | description: BlendShapeを無段階で変えたい 4 | sidebar: 5 | order: 13 6 | --- 7 | 8 | ### モードを変えてオブジェクトを選択 9 | 10 | モードを「無段階制御」にします。 11 | 12 | 身体のオブジェクトを選択します。 13 | 14 | ![](../../../assets/imgs/amc-radial.png) 15 | 16 | ### 制御の設定 17 | 18 | 変えたいBlendshape名を選択し、範囲を指定します。 19 | 20 | ![](../../../assets/imgs/amc-radial-blendshape.png) 21 | 22 | 複数のBlendshapeを連動して変えたい場合、offset設定で変化範囲を設定できます。 23 | 24 | たとえば0~50%まではBreast_Smallを100→0に、50~100%まではBreast_Bigを0→100にする場合、以下のように設定します。 25 | 26 | ![](../../../assets/imgs/amc-radial-blendshape-multi.png) 27 | 28 | ### 作成 29 | 30 | メニュー名を決めてCreate! 31 | 32 | ![](../../../assets/imgs/amc-radial-blendshape-create.png) 33 | 34 | Radialメニューが完成! 35 | 36 | ![](../../../assets/imgs/amc-radial-result.png) 37 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/guides/recommended.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: おすすめ服着せワークフロー 3 | sidebar: 4 | order: 31 5 | --- 6 | 7 | とりあえず服prefabをアバターの中に突っ込んで、Modular Avatar→Setup Outfitとかをやって服を着せます。 8 | 9 | ![](../../../assets/imgs/wf1.png) 10 | 11 | Avatar Menu Creatorを開いてアバターを設定した状態で、服の全メッシュを選択します。 12 | 13 | ![](../../../assets/imgs/wf2.png) 14 | 15 | - 「同名パラメーターや同マテリアルスロットを一括設定」をON 16 | - パラメーター初期値をON 17 | 18 | にします。 19 | 20 | ![](../../../assets/imgs/wf3.png) 21 | 22 | どれでもいいので「ON=表示」をクリックすると、全ての項目が「ON=表示」になります。 23 | 24 | ![](../../../assets/imgs/wf4.png) 25 | 26 | 不要なMA Menu Installerは付けない設定にします。(後で親メニューを作るので) 27 | 28 | ![](../../../assets/imgs/wf4_1.png) 29 | 30 | 全部のパーツが別々のメニューで良いなら「選択オブジェクト一つごとにメニューを作成」にチェックを付けて「Create!」 31 | 32 | ![](../../../assets/imgs/wf5.png) 33 | 34 | まとめてON/OFFしたいパーツがあるならそこだけ選び直して名前を付けて「Create!」していきます。 35 | 36 | ![](../../../assets/imgs/wf6.png) 37 | 38 | 選択が変わってもさっき設定した値はウインドウに保持されているので、途中で選択を変えても大丈夫です。 39 | 40 | ![](../../../assets/imgs/wf7.png) 41 | 42 | メニューを作り終わったら 43 | 44 | ![](../../../assets/imgs/wf8.png) 45 | 46 | メニューの親オブジェクトを作ってその中にメニューを突っ込んで 47 | 48 | ![](../../../assets/imgs/wf9.png) 49 | 50 | サブメニューのためのMA Menu Itemを設定して(参考: [メニューをサブメニューにまとめたい](/guides/submenu)) 51 | 52 | ![](../../../assets/imgs/wf10.png) 53 | 54 | そこにMA Menu Installerを付ければ 55 | 56 | ![](../../../assets/imgs/wf11.png) 57 | 58 | 完成です! 59 | 60 | ![](../../../assets/imgs/wf12.png)![](../../../assets/imgs/wf13.png) -------------------------------------------------------------------------------- /doc~/site/src/content/docs/guides/submenu.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: メニューをサブメニューにまとめたい 3 | sidebar: 4 | order: 21 5 | --- 6 | 7 | Modular Avatarの機能を使ってメニューをサブメニューにまとめることが出来ます。 8 | 9 | ### 空オブジェクトを作る 10 | 11 | アバターの下に親メニューとなる空オブジェクトを作ります。 12 | (アバターのオブジェクトを右クリックして「Create Empty」) 13 | 14 | ![](../../../assets/imgs/menu-parent.png) 15 | 16 | # Modular Avatarのコンポーネントを追加する 17 | 18 | 親メニューオブジェクトのInspector上の「Add Component」から`MA Menu Installer`と`MA Menu Item`を付けて、以下のように設定します。 19 | 20 | ![](../../../assets/imgs/menu-parent-inspector.png) 21 | 22 | # メニューを移動する 23 | 24 | 親メニューオブジェクトの子階層にAvatarMenuCreatorで作ったメニューをもってきます 25 | 26 | ![](../../../assets/imgs/menu-child.png) 27 | 28 | # 不要なコンポーネントを削除 29 | 30 | AvatarMenuCreatorでメニューオブジェクトに付いている`MA Menu Installer`を削除します。 31 | 32 | (削除して良いというヘルプと削除ボタンが出ている場合) 33 | 34 | ![](../../../assets/imgs/menu-child-inspector.png) 35 | 36 | # 完成 37 | 38 | これでこの階層通りのメニューが出来ます。 39 | 40 | ![](../../../assets/imgs/menu-child.png) 41 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/guides/toggle.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 服を出し入れしたい 【ON/OFF】 3 | description: 服やオブジェクトをオンオフしたい 4 | sidebar: 5 | order: 11 6 | --- 7 | 8 | ### モードを変えてオブジェクトを選択 9 | 10 | モードを「ON/OFF」にします。 11 | 12 | アバター内のON/OFFしたいオブジェクトを選びます。 13 | 14 | ![](../../../assets/imgs/amc-toggle.png) 15 | 16 | ### ON/OFFの設定 17 | 18 | - 「ON=表示」を選ぶ 19 | - 「パラメーター初期値」をON 20 | 21 | そして名前を付けて「Create!」 22 | 23 | ![](../../../assets/imgs/amc-create-toggle.png) 24 | 25 | ### 完成 26 | 27 | ON/OFFメニューが完成! 28 | 29 | ![](../../../assets/imgs/gesture-manager.png) 30 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/alpha.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 服の透明度(シェーダーパラメーター)を変えたい 3 | sidebar: 4 | order: 22 5 | --- 6 | 7 | シェーダーのパラメーターを変更することで透明度などを変えることが出来ます。 8 | 9 | ### マテリアルの値を確認 10 | 11 | シェーダーの値を変更するので、シェーダーを半透明にして、どういう値にすると透明になるかを確認します。 12 | 13 | ![](../../../assets/imgs/amc-check-mat.png) 14 | 15 | liltoonの場合、Altキーを押すとシェーダーパラメーターの名前が表示されます。 16 | 17 | ![](../../../assets/imgs/amc-mat-alt.png) 18 | 19 | ### 設定 20 | 21 | 好きなモードにして透明にしたいオブジェクトを選択します。 22 | 23 | 変えたいオブジェクトのシェーダーパラメーター名を選択し、範囲を指定してCreate! 24 | 25 | ![](../../../assets/imgs/amc-radial-alpha.png) 26 | 27 | ### 制限 28 | 29 | シェーダーのパラメーターのうち`float`、`Color`、`Vector`型の値のみ設定出来ます。 30 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/components.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Physboneやその他コンポーネントを制御したい 3 | sidebar: 4 | order: 24 5 | --- 6 | 7 | 各コンポーネントのチェック(enable)や、VRCPhysBoneや、VRCConstraints等一部コンポーネントが操作できます。 8 | 9 | ### Physbone自動リセット 10 | 11 | PhysBoneの一部プロパティは、PhysBoneを一度無効にして再度有効にしないと反映されません。 12 | 13 | 「Physbone自動リセット」はこれらの値の変更時に自動でPhysBoneのリセット(無効化→再度有効化)をかける機能です。 14 | 15 | ![](../../../assets/imgs/amc-pb.png) 16 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/compress-parameters.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 使うパラメーター数を削減したい 3 | --- 4 | 5 | 追加ツール **Compressed Int Parameters** を使うと、選択式メニューではパラメーターの必要bit数が必要最小限に削減できるようになります。 6 | 7 | - VCCからアバターに「Compressed Int Parameters」をインストールして下さい(Avatar Menu Creatorがインストールされていれば、本ツールも一覧に出るはずです)。 8 | - Avatar Menu Creator は 1.31.0以上にアップデートして下さい。 9 | 10 | 選択式メニューで「パラメーター圧縮」にチェックを入れると、パラメーターの必要bit数が必要最小限に削減できます。 11 | 12 | ![](../../../assets/imgs/compress-parameters-option.png) 13 | 14 | ※注意: この設定は「アセット生成(オプショナル)」で生成したアセットには適用されません。 15 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/create-asset.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: アニメーションを生成していじりたい 3 | --- 4 | 5 | import { LinkCard } from '@astrojs/starlight/components'; 6 | 7 | メニューをプレハブにすると、アセット生成機能が使えます。 8 | 9 | まずメニューをProjectビューにドラッグ & ドロップしてプレハブを作ります。 10 | 11 | ![](../../../assets/imgs/obj-prefab.png) 12 | 13 | シーン上のプレハブにしたメニューを選択します。 14 | 15 | ![](../../../assets/imgs/menu-obj-scene.png) 16 | 17 | 「アセット生成(オプショナル)」から「保存形式」を選んで、「この設定でアセットを生成」を押すと、アニメーションやAnimatorControllerが生成されます。 18 | 19 | ![](../../../assets/imgs/amc-create-asset.png) 20 | 21 | 生成されたアセットは自由に編集できます。 22 | マテリアルの変更などを含む複雑なアニメーション制御を行う場合などに、テンプレートとして使えると思います。 23 | 24 | 25 | 26 | ### MA Menu Itemがない? 27 | 28 | MA Menu InstallerがVRCExpressionsMenuを参照してメニューをインストールする形式の出力になっています。 29 | 30 | MA Menu Itemがある方が良い場合は、MA Menu Installerの「Extract menu to objects」ボタンを押してMA Menu Itemを作って下さい。 31 | 32 | #### なぜないの? 33 | 34 | この機能はもともと互換性のために存在する機能であるためです。 35 | 36 | 古いMAにはMA Menu Itemが存在しないため、古いMAに持っていっても大丈夫な形式で出力しています。 37 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/multi-create.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: いっぺんに複数のON/OFFメニューを作りたい 3 | --- 4 | 5 | 「選択オブジェクト一つごとにメニューを生成」を有効にしてCreate!すると、オブジェクトごとにメニューが作られます。 6 | 7 | ![](../../../assets/imgs/amc-create-multi.png) -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/no-menu.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: メニューは生成しないようにしたい 3 | --- 4 | 5 | メニューオブジェクトを以下のようにすると、メニューが生成されなくなります。 6 | 7 | - MA Menu Installerを削除する 8 | - MA Menu ItemのサブメニューまたはMA Menu Groupの直下以外に配置する 9 | 10 | メニューからの操作はできなくなりますが、パラメーターが他の手段で変更されると普通に動作します。 11 | 12 | ![](../../../assets/imgs/amc-alone.png) -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/only-onoff.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ONのみ/OFFのみ制御したい 3 | sidebar: 4 | order: 23 5 | --- 6 | 7 | import { LinkCard } from '@astrojs/starlight/components'; 8 | 9 | ON/OFFメニューにある「高度な設定」を有効にすると、ON時のみ、またはOFF時のみ制御することが可能です。 10 | 11 | 別のメニューで操作しているものを上書きするメニューなどを作る場合に便利です。 12 | 13 | ![](../../../assets/imgs/amc-only-onoff.png) 14 | 15 | 16 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/preset.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 複数メニューをまとめて切り替えるプリセット 3 | --- 4 | 5 | ### 追加ツール: Avatar Parameters Saver 6 | 7 | 追加ツール **Avatar Parameters Saver** を使うと、複数パラメーターをまとめて変更するプリセットメニューが作れます。 8 | 9 | VCCからアバターに「Avatar Parameters Saver」をインストールして下さい(Avatar Menu Creatorがインストールされていれば、本ツールも一覧に出るはずです)。 10 | 11 | #### プリセットメニューオブジェクトを作る 12 | 13 | まずプリセットメニューを作ります 14 | 15 | アバター内で右クリックして「Modular Avatar」→「AvatarParametersPresets」でプリセットメニューオブジェクトが作れます。 16 | 17 | ![](../../../assets/imgs/aps-create.png) 18 | 19 | #### 手動でパラメーターの設定 20 | 21 | パラメーターの設定をするとプリセットメニューが作られます。 22 | 23 | ![](../../../assets/imgs/aps-inspector.png) 24 | 25 | #### Av3Emulatorと連携して再生時に自動でパラメーター設定 26 | 27 | Avatar 3.0 Emulator (Av3Emulator)を使っている場合、シーン再生時に自動でパラメーター設定を収拾できます。 28 | 29 | シーン再生中にメニューから「Tools」→「Avatar Parameters Saver」で設定ウインドウを出し、プリセットを選択して下さい。 30 | 31 | 実際にメニューを操作し状態を確認しながら設定出来ます 32 | 33 | ![](../../../assets/imgs/aps-play.png) 34 | 35 | 再生をやめるとプリセットに値が保持されているはずです。 36 | 37 | ![](../../../assets/imgs/aps-saved.png) 38 | 39 | 再度再生するとプリセットメニューが完成しています。 40 | 41 | ![](../../../assets/imgs/aps-result.png) 42 | -------------------------------------------------------------------------------- /doc~/site/src/content/docs/usecases/quest.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Android(Quest)対応時のパラメーター同期 3 | --- 4 | 5 | PCとAndroidではパラメーターのビット位置を同じにする必要があります。 6 | 7 | メニューをそのままにする場合、Android用prefab variantの継承先で操作内容のみ削除・変更すると良いと思います。 8 | 9 | ![](../../../assets/imgs/amc-quest.png) 10 | -------------------------------------------------------------------------------- /doc~/site/src/env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /doc~/site/src/styles/custom.css: -------------------------------------------------------------------------------- 1 | :root { 2 | --sl-font: 3 | "Helvetica Neue", 4 | Arial, 5 | "Hiragino Kaku Gothic ProN", 6 | "Hiragino Sans", 7 | Meiryo, 8 | sans-serif; 9 | } 10 | -------------------------------------------------------------------------------- /doc~/site/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "astro/tsconfigs/strict" 3 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "net.narazaka.vrchat.avatar-menu-creater-for-ma", 3 | "version": "1.35.0-beta.0", 4 | "displayName": "AvatarMenuCreatorForMA", 5 | "description": "AvatarMenuCreator for Modular Avatar", 6 | "author": { 7 | "name": "Narazaka", 8 | "url": "https://github.com/Narazaka" 9 | }, 10 | "license": "Zlib", 11 | "documentationUrl": "https://avatar-menu-creator-for-ma.vrchat.narazaka.net", 12 | "changelogUrl": "https://github.com/Narazaka/AvatarMenuCreaterForMA#%E6%9B%B4%E6%96%B0%E5%B1%A5%E6%AD%B4", 13 | "type": "tool", 14 | "url" : "https://github.com/Narazaka/AvatarMenuCreaterForMA.git", 15 | "unity": "2019.4", 16 | "vpmDependencies": { 17 | "com.vrchat.avatars": ">=3.0.9", 18 | "nadena.dev.modular-avatar": ">=1.0.0 <2.0.0-a" 19 | }, 20 | "legacyFolders": { 21 | "Assets\\AvatarMenuCreaterForMA": "095273a7f0d90e54aa2e0b3b202fa526" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /package.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2cd433c338551aa4695991bd293fada2 3 | PackageManifestImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | --------------------------------------------------------------------------------