diff --git a/Assets/UniGLTF/Runtime/UniGLTF/PackageVersion.cs b/Assets/UniGLTF/Runtime/UniGLTF/PackageVersion.cs index e37857f65..8c8b3ff8f 100644 --- a/Assets/UniGLTF/Runtime/UniGLTF/PackageVersion.cs +++ b/Assets/UniGLTF/Runtime/UniGLTF/PackageVersion.cs @@ -5,7 +5,7 @@ namespace UniGLTF { public const int MAJOR = 0; public const int MINOR = 129; - public const int PATCH = 2; - public const string VERSION = "0.129.2"; + public const int PATCH = 3; + public const string VERSION = "0.129.3"; } } diff --git a/Assets/UniGLTF/Runtime/UniGLTF/UniGLTFVersion.cs b/Assets/UniGLTF/Runtime/UniGLTF/UniGLTFVersion.cs index ad4c83d70..e53ebd034 100644 --- a/Assets/UniGLTF/Runtime/UniGLTF/UniGLTFVersion.cs +++ b/Assets/UniGLTF/Runtime/UniGLTF/UniGLTFVersion.cs @@ -5,7 +5,7 @@ namespace UniGLTF { public const int MAJOR = 2; public const int MINOR = 65; - public const int PATCH = 2; - public const string VERSION = "2.65.2"; + public const int PATCH = 3; + public const string VERSION = "2.65.3"; } } diff --git a/Assets/UniGLTF/Runtime/UniHumanoid/AvatarDescription.cs b/Assets/UniGLTF/Runtime/UniHumanoid/AvatarDescription.cs index 05dd9bdf0..496db8baf 100644 --- a/Assets/UniGLTF/Runtime/UniHumanoid/AvatarDescription.cs +++ b/Assets/UniGLTF/Runtime/UniHumanoid/AvatarDescription.cs @@ -98,7 +98,9 @@ namespace UniHumanoid { map[t.name] = t; } - return human.Select(x => (map[x.boneName], x.humanBone)); + return human + .Where(x => !string.IsNullOrEmpty(x.boneName) && map.ContainsKey(x.boneName)) + .Select(x => (map[x.boneName], x.humanBone)); } public Avatar CreateAvatarAndSetup(Transform root) diff --git a/Assets/UniGLTF/package.json b/Assets/UniGLTF/package.json index 80a7981d0..97761e961 100644 --- a/Assets/UniGLTF/package.json +++ b/Assets/UniGLTF/package.json @@ -1,6 +1,6 @@ { "name": "com.vrmc.gltf", - "version": "0.129.2", + "version": "0.129.3", "displayName": "UniGLTF", "description": "GLTF importer and exporter", "unity": "2021.3", diff --git a/Assets/VRM/package.json b/Assets/VRM/package.json index 1d95b13c2..b40b7f445 100644 --- a/Assets/VRM/package.json +++ b/Assets/VRM/package.json @@ -1,6 +1,6 @@ { "name": "com.vrmc.univrm", - "version": "0.129.2", + "version": "0.129.3", "displayName": "VRM", "description": "VRM importer", "unity": "2021.3", @@ -14,7 +14,7 @@ "name": "VRM Consortium" }, "dependencies": { - "com.vrmc.gltf": "0.129.2", + "com.vrmc.gltf": "0.129.3", "com.unity.ugui": "1.0.0" }, "samples": [ diff --git a/Assets/VRM10/MToon10/Shaders/vrmc_materials_mtoon_render_pipeline.hlsl b/Assets/VRM10/MToon10/Shaders/vrmc_materials_mtoon_render_pipeline.hlsl index bcc46dc8b..a1199afe4 100644 --- a/Assets/VRM10/MToon10/Shaders/vrmc_materials_mtoon_render_pipeline.hlsl +++ b/Assets/VRM10/MToon10/Shaders/vrmc_materials_mtoon_render_pipeline.hlsl @@ -52,11 +52,11 @@ #ifdef MTOON_URP #if defined(REQUIRES_VERTEX_SHADOW_COORD_INTERPOLATOR) -#define MTOON_SHADOW_COORD input.shadowCoord +#define MTOON_SHADOW_COORD(input) input.shadowCoord #elif defined(MAIN_LIGHT_CALCULATE_SHADOWS) -#define MTOON_SHADOW_COORD TransformWorldToShadowCoord(input.positionWS) +#define MTOON_SHADOW_COORD(input) TransformWorldToShadowCoord(input.positionWS) #else -#define MTOON_SHADOW_COORD float4(0, 0, 0, 0) +#define MTOON_SHADOW_COORD(input) float4(0, 0, 0, 0) #endif #if defined(SHADOWS_SHADOWMASK) && defined(LIGHTMAP_ON) @@ -70,7 +70,7 @@ #define MTOON_LIGHT_DESCRIPTION(input, atten, lightDir, lightColor) \ const half3 lightDir = _MainLightPosition.xyz; \ const half3 lightColor = _MainLightColor.rgb; \ - const float atten = MainLightShadow(MTOON_SHADOW_COORD, input.positionWS, MTOON_SAMPLE_SHADOWMASK(input.lightmapUV), _MainLightOcclusionProbes); + const float atten = MainLightShadow(MTOON_SHADOW_COORD(input), input.positionWS, MTOON_SAMPLE_SHADOWMASK(input.lightmapUV), _MainLightOcclusionProbes); #else @@ -85,22 +85,22 @@ #ifdef MTOON_URP #if defined(REQUIRES_VERTEX_SHADOW_COORD_INTERPOLATOR) -#define MTOON_TRANSFER_FOG_AND_LIGHTING(o, outpos, coord, vertex) \ +#define MTOON_TRANSFER_FOG_AND_LIGHTING(output, outpos, coord, vertex) \ OUTPUT_LIGHTMAP_UV(coord.xy, unity_LightmapST, output.lightmapUV); \ OUTPUT_SH(output.normalWS.xyz, output.vertexSH); \ output.fogFactorAndVertexLight = half4(ComputeFogFactor(outpos.z), VertexLighting(output.positionWS, output.normalWS)); \ output.shadowCoord = GetShadowCoord(GetVertexPositionInputs(vertex.xyz)); #else -#define MTOON_TRANSFER_FOG_AND_LIGHTING(o, outpos, coord, vertex) \ +#define MTOON_TRANSFER_FOG_AND_LIGHTING(output, outpos, coord, vertex) \ OUTPUT_LIGHTMAP_UV(coord.xy, unity_LightmapST, output.lightmapUV); \ OUTPUT_SH(output.normalWS.xyz, output.vertexSH); \ output.fogFactorAndVertexLight = half4(ComputeFogFactor(outpos.z), VertexLighting(output.positionWS, output.normalWS)); #endif #else -#define MTOON_TRANSFER_FOG_AND_LIGHTING(o, outpos, coord, vertex) \ - UNITY_TRANSFER_FOG(o, outpos); \ - UNITY_TRANSFER_LIGHTING(o, coord.xy); +#define MTOON_TRANSFER_FOG_AND_LIGHTING(output, outpos, coord, vertex) \ + UNITY_TRANSFER_FOG(output, outpos); \ + UNITY_TRANSFER_LIGHTING(output, coord.xy); #endif // SampleSH diff --git a/Assets/VRM10/Runtime/IO/Vrm10Importer.cs b/Assets/VRM10/Runtime/IO/Vrm10Importer.cs index 3c28d48e2..af6bdc9c1 100644 --- a/Assets/VRM10/Runtime/IO/Vrm10Importer.cs +++ b/Assets/VRM10/Runtime/IO/Vrm10Importer.cs @@ -590,7 +590,10 @@ namespace UniVRM10 if (gltfSpring.ColliderGroups != null) { - spring.ColliderGroups = gltfSpring.ColliderGroups.Select(x => controller.SpringBone.ColliderGroups[x]).ToList(); + spring.ColliderGroups = gltfSpring.ColliderGroups + // VRM1_Constraint_Twist_Sample_Plane.vrm + .Where(x => x >= 0 && x < controller.SpringBone.ColliderGroups.Count) + .Select(x => controller.SpringBone.ColliderGroups[x]).ToList(); } // joint foreach (var gltfJoint in gltfSpring.Joints) diff --git a/Assets/VRM10/package.json b/Assets/VRM10/package.json index 66644b5bc..2a684679b 100644 --- a/Assets/VRM10/package.json +++ b/Assets/VRM10/package.json @@ -1,6 +1,6 @@ { "name": "com.vrmc.vrm", - "version": "0.129.2", + "version": "0.129.3", "displayName": "VRM-1.0", "description": "VRM-1.0 importer", "unity": "2021.3", @@ -15,7 +15,7 @@ }, "dependencies": { "com.unity.timeline": "1.7.6", - "com.vrmc.gltf": "0.129.2" + "com.vrmc.gltf": "0.129.3" }, "samples": [ { diff --git a/Packages/manifest.json b/Packages/manifest.json index 39132c32c..8dbaa6d50 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -4,6 +4,7 @@ "com.unity.cloud.ktx": "3.3.0", "com.unity.cloud.ktx.webgl-2022": "1.0.1", "com.unity.ide.rider": "3.0.36", + "com.unity.ide.visualstudio": "2.0.23", "com.unity.postprocessing": "3.4.0", "com.unity.render-pipelines.universal": "17.0.4", "com.unity.test-framework": "1.1.33", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 9d23fdef0..0316990af 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -42,6 +42,15 @@ }, "url": "https://packages.unity.com" }, + "com.unity.ide.visualstudio": { + "version": "2.0.23", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.9" + }, + "url": "https://packages.unity.com" + }, "com.unity.mathematics": { "version": "1.2.6", "depth": 1,