Commit Graph

4277 Commits

Author SHA1 Message Date
ousttrue
e9bbbd6bd0
Merge pull request #1790 from Santarh/fixBug
Fix bug of null access when loading vrm1.0 prefab placed in the scene.
2022-09-12 17:58:56 +09:00
Masataka SUMI
ae8d4db6b9 Fix bug of null access when loading vrm1.0 prefab placed in the scene. 2022-09-12 17:55:34 +09:00
ousttrue
34501bb26f
Merge pull request #1788 from 0b5vr/fix-migration
Fix VRM exported from MigrationVrm class (2)
2022-09-09 16:41:29 +09:00
0b5vr
ee3bf2b020 fix Migrate to Vrm1, set texture transform extension properly 2022-09-09 16:36:49 +09:00
ousttrue
370db5e550
Merge pull request #1787 from 0b5vr/fix-migration
Fix VRM exported from MigrationVrm class
2022-09-09 16:33:49 +09:00
ousttrue
bc1d972311
Merge pull request #1785 from 0b5vr/mtoon-1-beta
Fix specVersion of MToon `1.0-draft` -> `1.0-beta`
2022-09-09 13:41:16 +09:00
0b5vr
805397abb2 fix Migrate to Vrm1, set extensionsUsed properly 2022-09-09 12:54:47 +09:00
0b5vr
7c99c16634 fix: Migrate to Vrm1, set missing specVersion and licenseUrl 2022-09-09 12:14:35 +09:00
0b5vr
244e7b1947 refactor: update constraint spec URL on comments 2022-09-09 12:06:45 +09:00
0b5vr
d058be96f6 fix: Fix specVersion of MToon 1.0-draft -> 1.0-beta 2022-09-09 11:35:01 +09:00
ousttrue
e1a24eceaf
Merge pull request #1783 from ousttrue/doc/v0_103_0
release UniVRM-0.103.0
2022-09-08 20:18:52 +09:00
ousttrue
73f3f88494 release UniVRM-0.103.0 2022-09-08 19:34:19 +09:00
ousttrue
faa1dcf62f
Merge pull request #1782 from ousttrue/fix/SimpleViewer_null
add LoadPathAsync
2022-09-08 18:58:04 +09:00
ousttrue
3d1303759d add LoadPathAsync 2022-09-08 18:50:37 +09:00
ousttrue
b3a0cb3336
Merge pull request #1773 from ousttrue/version/v0_103_0
UniVRM-0.103.0
2022-09-08 18:07:01 +09:00
ousttrue
beb0f79f6a
Merge pull request #1780 from matsutaka-pxv/optimize-bonelimit-tohumanbonename
Optimize BoneLimit.ToHumanBoneName
2022-09-08 18:06:18 +09:00
Masataka SUMI
2f7ea945bb
Merge pull request #1781 from matsutaka-pxv/iawaitcaller-nextframe-iftimedout
BREAKING CHANGE: Add interface method IAwaitCaller.NextFrameIfTimedOut which invokes NextFrame if timed out
2022-09-08 18:05:59 +09:00
Takayuki Matsuoka
a68d0122ce BREAKING CHANGE: Introduce NextFrameIfTimedOut as a new interface method of IAwaitCaller
This is a breaking change since it introduces new interface method to IAwaitCaller.

----

NextFrameIfTimedOut() is added to IAwaitCaller.  The following inheritors also introduce the method.

- ImmediateCaller.NextFrameIfTimedOut() just invokes NextFrame().
- RuntimeOnlyAwaitCaller.NextFrameIfTimedOut() invokes NextFrame() if timed out.  Otherwise, do nothing.
- RuntimeOnlyNoThreadAwaitCaller.NextFrameIfTimedOut() works same as RuntimeOnlyAwaitCaller.

Constructor of RuntimeOnlyAwaitCaller and RuntimeOnlyNoThreadAwaitCaller
now take argument of timeout in seconds.  The default value is 1/1000 (1 milliseconds).

See also:
https://github.com/vrm-c/UniVRM/pull/1781#pullrequestreview-1100131840
2022-09-08 17:39:05 +09:00
Takayuki Matsuoka
8399f9cd18
Merge branch 'vrm-c:master' into iawaitcaller-nextframe-iftimedout 2022-09-08 10:41:18 +09:00
ousttrue
fba82f02a8
Merge pull request #1779 from Santarh/crOption
Add the `GenerateControlRig` option to VRM 1.0 Importer.
2022-09-07 19:47:10 +09:00
Masataka SUMI
9c88a9761c Add generateControlRig option to VRM 1.0 Importer 2022-09-07 18:51:23 +09:00
Masataka SUMI
e7ed265d67 refactoring 2022-09-07 18:22:11 +09:00
Takayuki Matsuoka
935afcb80d Add new pseudo method NextFrameIfTimedOut to RuntimeOnlyAwaitCaller
This change adds (pseudo) method RuntimeOnlyAwaitCaller.NextFrameIfTimedOut()
which invokes NextFrame() if given time is elapsed.  Otherwise, it does nothing.

We'll be able to utilize this (pseudo) method to ease possible cause of spikes.

For example:

----
public class VRMImporterContext : ImporterContext {
  protected override async Task OnLoadHierarchy(IAwaitCaller awaitCaller, ...) {
    ...
    var blendShapeList = VRM.blendShapeMaster.blendShapeGroups;
    if (blendShapeList != null && blendShapeList.Count > 0) {
      foreach (var x in blendShapeList) {
        await awaitCaller.NextFrameIfTimeout();
        BlendShapeAvatar.Clips.Add(await LoadBlendShapeBind(awaitCaller, x, transformMeshTable));
      }
    }
    ...
  }
}
----

Note that this change doesn't add NextFrameIfTimeout() to IAwaitCaller to avoid
breaking change.  This limitation introduces extra (maybe unnecessarily) complexity.
2022-09-07 17:51:10 +09:00
Takayuki Matsuoka
e7408fe93d
Merge branch 'vrm-c:master' into optimize-bonelimit-tohumanbonename 2022-09-07 16:57:59 +09:00
Takayuki Matsuoka
aac707d187 Optimize UniHumanoid.BoneLimit.ToHumanBoneName
This change optimizes the following points:

(1) Replace linear search for "cashedHumanTraitBoneName" with Dictionary.
(2) Avoid GC alloc in the inner loop.
(2a) Do b.ToString() at the outside of the loop.
(2b) Do x.Replace(" ", "") at once in the static constructor of BoneLimit.
2022-09-07 16:56:46 +09:00
Masataka SUMI
12ac6e372e Apply localPosition while bvh motion transfer in VRM10 Viewer. 2022-09-07 16:44:43 +09:00
Masataka SUMI
f06d4bdd35 Create the ControlRig at a child of the VRM instance root. 2022-09-07 16:36:29 +09:00
ousttrue
6b41e34071
Merge pull request #1778 from Santarh/enumFast
Caching Enum.GetValues with implementation of CachedEnum class
2022-09-07 16:30:57 +09:00
Masataka SUMI
0dfa783406 mv CachedEnum namespace to UniGLTF.Utils 2022-09-07 15:59:35 +09:00
Masataka SUMI
b986130817 Create an asmdef named UniGLTF.Utils 2022-09-07 15:53:59 +09:00
Masataka SUMI
8b9491e5a9 mv 2022-09-07 15:46:51 +09:00
Masataka SUMI
894ba1ecec Use CachedEnum instead of EnumUtil 2022-09-07 15:42:41 +09:00
Masataka SUMI
29163a43b1 Use CachedEnum 2022-09-07 15:38:02 +09:00
ousttrue
09363b75b9 update sample 2022-09-07 15:32:54 +09:00
Masataka SUMI
85a3f0fe3a fix 2022-09-07 15:20:06 +09:00
Masataka SUMI
613a783d1e Refactoring 2022-09-07 15:16:41 +09:00
Masataka SUMI
996bc91c93 Rename CacheEnum to CachedEnum 2022-09-07 15:04:23 +09:00
ousttrue
32f03781e4 UniVRM-0.103.0 2022-09-07 14:33:52 +09:00
ousttrue
da04ce7379
Merge pull request #1777 from Santarh/removeOption
Remove the VRM 1.0 importer option about the normalization of node transforms.
2022-09-07 14:29:51 +09:00
Masataka SUMI
f8fe9daa1e Remove the VRM 1.0 importer option about the normalization of node transforms. 2022-09-07 14:19:04 +09:00
ousttrue
20be242bfa
Merge pull request #1776 from Santarh/controlRIg4
Change access modifiers, Add methods, about ControlRig
2022-09-06 21:38:23 +09:00
Masataka SUMI
94ddfa9db7 Update Sample 2022-09-06 21:19:58 +09:00
Masataka SUMI
e4041895f4 add EnforceTPose method to ControlRig 2022-09-06 21:19:27 +09:00
Masataka SUMI
3753c6cde7 make IVrm10Constraint access public 2022-09-06 20:12:10 +09:00
Masataka SUMI
1e52889cc2 make Runtime Process methods internal. 2022-09-06 20:04:16 +09:00
ousttrue
157c48ca06
Merge pull request #1775 from Santarh/controlRig2
Refactoring about ControlRig
2022-09-06 20:02:51 +09:00
Masataka SUMI
4649f7aa60 Merge branch 'master' of https://github.com/vrm-c/UniVRM into controlRig2 2022-09-06 19:52:34 +09:00
ousttrue
aedfd5c850
Merge pull request #1774 from Santarh/contolRig
Rename class names about FKRetarget into ControlRig
2022-09-06 19:51:33 +09:00
Masataka SUMI
411db43ad7 remove unused 2022-09-06 19:43:59 +09:00
Masataka SUMI
072031973c Refactoring about RuntimeControlRig 2022-09-06 19:26:40 +09:00