Skip to content

Commit

Permalink
feat: add MA/NDMF support to improve compatibility with menu items (#44)
Browse files Browse the repository at this point in the history
* feat: add MA/NDMF support to improve compatibility with menu items

* feat: add MA/NDMF support to improve menu items compatibility
  • Loading branch information
poi-vrc authored Mar 13, 2024
1 parent 96df571 commit e59b9a5
Show file tree
Hide file tree
Showing 50 changed files with 1,381 additions and 181 deletions.
41 changes: 41 additions & 0 deletions .github/unity-project/Packages/manifest.2022.3.6f1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"dependencies": {
"com.unity.ide.rider": "3.0.26",
"com.unity.ide.visualstudio": "2.0.22",
"com.unity.test-framework": "1.1.29",
"com.unity.textmeshpro": "2.1.6",
"com.unity.timeline": "1.2.18",
"com.unity.ugui": "1.0.0",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
"com.unity.modules.animation": "1.0.0",
"com.unity.modules.assetbundle": "1.0.0",
"com.unity.modules.audio": "1.0.0",
"com.unity.modules.cloth": "1.0.0",
"com.unity.modules.director": "1.0.0",
"com.unity.modules.imageconversion": "1.0.0",
"com.unity.modules.imgui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0",
"com.unity.modules.particlesystem": "1.0.0",
"com.unity.modules.physics": "1.0.0",
"com.unity.modules.physics2d": "1.0.0",
"com.unity.modules.screencapture": "1.0.0",
"com.unity.modules.terrain": "1.0.0",
"com.unity.modules.terrainphysics": "1.0.0",
"com.unity.modules.tilemap": "1.0.0",
"com.unity.modules.ui": "1.0.0",
"com.unity.modules.uielements": "1.0.0",
"com.unity.modules.umbra": "1.0.0",
"com.unity.modules.unityanalytics": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0",
"com.unity.modules.unitywebrequestassetbundle": "1.0.0",
"com.unity.modules.unitywebrequestaudio": "1.0.0",
"com.unity.modules.unitywebrequesttexture": "1.0.0",
"com.unity.modules.unitywebrequestwww": "1.0.0",
"com.unity.modules.vehicles": "1.0.0",
"com.unity.modules.video": "1.0.0",
"com.unity.modules.vr": "1.0.0",
"com.unity.modules.wind": "1.0.0",
"com.unity.modules.xr": "1.0.0"
}
}
41 changes: 41 additions & 0 deletions .github/unity-project/Packages/manifest.2023.2.2f1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"dependencies": {
"com.unity.ide.rider": "3.0.26",
"com.unity.ide.visualstudio": "2.0.22",
"com.unity.test-framework": "1.1.29",
"com.unity.textmeshpro": "2.1.6",
"com.unity.timeline": "1.2.18",
"com.unity.ugui": "1.0.0",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
"com.unity.modules.animation": "1.0.0",
"com.unity.modules.assetbundle": "1.0.0",
"com.unity.modules.audio": "1.0.0",
"com.unity.modules.cloth": "1.0.0",
"com.unity.modules.director": "1.0.0",
"com.unity.modules.imageconversion": "1.0.0",
"com.unity.modules.imgui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0",
"com.unity.modules.particlesystem": "1.0.0",
"com.unity.modules.physics": "1.0.0",
"com.unity.modules.physics2d": "1.0.0",
"com.unity.modules.screencapture": "1.0.0",
"com.unity.modules.terrain": "1.0.0",
"com.unity.modules.terrainphysics": "1.0.0",
"com.unity.modules.tilemap": "1.0.0",
"com.unity.modules.ui": "1.0.0",
"com.unity.modules.uielements": "1.0.0",
"com.unity.modules.umbra": "1.0.0",
"com.unity.modules.unityanalytics": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0",
"com.unity.modules.unitywebrequestassetbundle": "1.0.0",
"com.unity.modules.unitywebrequestaudio": "1.0.0",
"com.unity.modules.unitywebrequesttexture": "1.0.0",
"com.unity.modules.unitywebrequestwww": "1.0.0",
"com.unity.modules.vehicles": "1.0.0",
"com.unity.modules.video": "1.0.0",
"com.unity.modules.vr": "1.0.0",
"com.unity.modules.wind": "1.0.0",
"com.unity.modules.xr": "1.0.0"
}
}
10 changes: 5 additions & 5 deletions .github/unity-project/Packages/vpm-manifest.2022.3.6f1.json
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
{
"dependencies": {
"com.vrchat.avatars": {
"version": "3.5.0"
"version": "3.5.1"
},
"com.vrchat.core.vpm-resolver": {
"version": "0.1.27"
"version": "0.1.28"
}
},
"locked": {
"com.vrchat.avatars": {
"version": "3.5.0",
"version": "3.5.1",
"dependencies": {
"com.vrchat.base": "3.5.0"
"com.vrchat.base": "3.5.1"
}
},
"com.vrchat.base": {
"version": "3.5.0",
"version": "3.5.1",
"dependencies": {}
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
m_EditorVersion: 2022.3.6f1
m_EditorVersionWithRevision: 2022.3.6f1 (b9e6e7e9fa2d)
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
m_EditorVersion: 2022.3.6f1
m_EditorVersionWithRevision: 2022.3.6f1 (b9e6e7e9fa2d)
31 changes: 26 additions & 5 deletions .github/workflows/unity-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,28 +2,36 @@ name: Unity Tests

on:
push:
branches: master
paths:
- "**.cs"
- ".github/unity-project/**/*"
- ".github/workflows/unity-tests.yml"
pull_request:
paths:
- "**.cs"
- ".github/unity-project/**/*"
- ".github/workflows/unity-tests.yml"

jobs:
build:
name: Build and Test (${{ matrix.unity-version }}${{ matrix.import-vrcsdk && ', VRC' || '' }}${{ matrix.import-dynbone && ', DynBone' || '' }}${{ matrix.import-univrm && ', VRM' || '' }})
name: Build and Test (${{ matrix.unity-version }}${{ matrix.import-vrcsdk && ', VRC' || '' }}${{ matrix.import-dynbone && ', DynBone' || '' }}${{ matrix.import-univrm && ', VRM' || '' }}${{ matrix.import-ma && ', MA' || '' }})
runs-on: ubuntu-latest
strategy:
fail-fast: true
max-parallel: 6
matrix:
unity-version: ['2019.4.31f1', '2022.3.6f1', '2023.2.2f1']
import-vrcsdk: [false, true]
import-ma: [false, true]
# import-dynbone: [false, true]
# import-univrm: [false, true]
import-dynbone: [false]
import-univrm: [false]
exclude:
# - unity-version: "2019.4.31f1"
# import-univrm: true
- import-vrcsdk: false
import-ma: true
- unity-version: "2023.2.2f1"
import-vrcsdk: true
steps:
Expand All @@ -50,11 +58,17 @@ jobs:
- uses: actions/cache@v3
with:
path: Library
key: Library-${{ matrix.unity-version }}-${{ matrix.import-vrcsdk }}-${{ matrix.import-dynbone }}-${{ matrix.import-univrm }}-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}
key: Library-${{ matrix.unity-version }}-${{ matrix.import-vrcsdk }}-${{ matrix.import-dynbone }}-${{ matrix.import-univrm }}-${{ matrix.import-ma }}-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}
restore-keys: |
Library-${{ matrix.unity-version }}-${{ matrix.import-vrcsdk }}-${{ matrix.import-dynbone }}-${{ matrix.import-univrm }}-
Library-${{ matrix.unity-version }}-${{ matrix.import-vrcsdk }}-${{ matrix.import-dynbone }}-${{ matrix.import-univrm }}-${{ matrix.import-ma }}-
- name: Use UniVRM manifest
- name: Prepare base UPM manifest
run: mv Packages/manifest.${{ matrix.unity-version }}.json Packages/manifest.json

- name: Prepare ProjectVersion
run: mv ProjectSettings/ProjectVersion.${{ matrix.unity-version }}.txt ProjectSettings/ProjectVersion.txt

- name: Prepare UniVRM manifest
if: matrix.import-univrm
run: mv Packages/manifest-vrm.json Packages/manifest.json

Expand All @@ -63,8 +77,15 @@ jobs:
run: |
mv Packages/vpm-manifest.${{ matrix.unity-version }}.json Packages/vpm-manifest.json
dotnet tool install --global vrchat.vpm.cli
vpm add repo https://vpm.chocopoi.com/index.json
vpm resolve project
- name: Import ModularAvatar
if: matrix.import-ma
run: |
vpm add repo https://vpm.nadena.dev/vpm.json
vpm add package nadena.dev.modular-avatar@1.9.7
# DynamicsBones stub
- name: Import DynamicBones stub
if: matrix.import-dynbone
Expand Down
2 changes: 2 additions & 0 deletions Editor/Context.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
using System;
using System.Collections.Generic;
using Chocopoi.DressingFramework.Animations;
using Chocopoi.DressingFramework.Extensibility.Sequencing;
using Chocopoi.DressingFramework.Logging;
using UnityEngine;
using Object = UnityEngine.Object;
Expand All @@ -26,6 +27,7 @@ public abstract class Context : IContext
{
public GameObject AvatarGameObject { get; private set; }

public abstract BuildRuntime CurrentRuntime { get; }
public abstract object RuntimeContext { get; }
internal abstract Report Report { get; }
public abstract Object AssetContainer { get; }
Expand Down
2 changes: 1 addition & 1 deletion Editor/Detail/DK/AvatarBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ private void DispatchAnimationStore()
private bool RunPassesAtStage(BuildStage stage)
{
// Debug.Log($"[DK] =========== {stage} Start ===========");
var passes = _plugMgr.GetSortedBuildPassesAtStage(stage);
var passes = _plugMgr.GetSortedBuildPassesAtStage(BuildRuntime.DK, stage);

if (passes == null)
{
Expand Down
Loading

0 comments on commit e59b9a5

Please sign in to comment.