Commit Graph

127 Commits

Author SHA1 Message Date
ousttrue
3187078011 private 2023-02-09 19:01:50 +09:00
ousttrue
7572ce5ded Func<(Texture2D, bool IsDisposable)> 2023-02-09 19:01:29 +09:00
ousttrue
04f409aa1f (Texture2D Texture, bool IsDisposable) 2023-01-26 15:24:25 +09:00
ousttrue
6d42ba01e3 remove IDisposableResourceList
* UnityEngine.Object => UnityEngine.Texture2D
2023-01-26 15:18:07 +09:00
ousttrue
b1825e8968 IDisposableResourceList
Dispose a texture if `TextureConverter.CopyTexture` is used.
2023-01-25 18:45:20 +09:00
ousttrue
a79e6b4a5b ITextureExporter inherit IDisposable
update ITextureExporter interface
2023-01-25 18:23:55 +09:00
Masataka SUMI
0a7ac08dac specify a Shader instead of a string in MaterialDescriptor. 2022-12-05 17:21:20 +09:00
Masataka SUMI
847b2703bc Remove concrete VRM shader's info from UniGLTF. 2022-12-05 17:03:48 +09:00
Masataka SUMI
2f915b4777 Take off responsibility of determining shaders from ImporterContext. 2022-12-05 16:30:43 +09:00
Masataka SUMI
aed1d170d4 make MaterialDescriptor class 2022-12-05 16:05:20 +09:00
ousttrue
1ca2d14100
Merge pull request #1904 from Santarh/suppressPreprocessor
Use static getter instead of preprocessors.
2022-11-04 14:06:37 +09:00
Masataka SUMI
f8ac8075e7 use static getter instead of preprocessors. 2022-11-03 20:58:14 +09:00
Masataka SUMI
fd293b5f4c fix 2022-11-03 18:34:13 +09:00
Masataka SUMI
29c4686af4 Suppress warning logs when loading vrm10 models. 2022-11-03 18:30:09 +09:00
ousttrue
b18e5cd63b VRM10Object を作成するステップ
* VRM10Object が無いときにエラー表示
* VRM10Object が無ければ VRM10Instance を停止させる
2022-10-26 14:27:36 +09:00
ousttrue
05a7cda9e1 remove ThisType? field. #1866 2022-10-24 17:56:22 +09:00
ousttrue
d71ed12f2b Editor向け機能の切り分け忘れ 2022-10-07 13:38:12 +09:00
ousttrue
85f4e22a98 typo 2022-10-04 17:55:49 +09:00
ousttrue
b0e20b95e4 Revert "typo rename UnityObjectDestoyer to UnityObjectDestroyer"
This reverts commit a8d5704a0f.
2022-10-03 18:09:05 +09:00
ousttrue
a8d5704a0f typo rename UnityObjectDestoyer to UnityObjectDestroyer 2022-10-03 17:56:36 +09:00
ousttrue
85702ea5b0 GltfViewer 2022-10-03 14:16:17 +09:00
Masataka SUMI
413ed64355 Fix a importing error when the model using KHR_texture_basisu extension. 2022-09-12 22:11:48 +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
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
ousttrue
41e8628ae8
Merge pull request #1765 from ousttrue/fix/use_optional_for_index
glTFTexture.source type to int?
2022-09-05 19:05:26 +09:00
ousttrue
f2d587e09f glTFTexture.source type to int? 2022-08-05 21:13:32 +09:00
ousttrue
1ca7a8684d WebGLの動作確認用 2022-07-26 14:30:51 +09:00
ousttrue
c0d7869258 より上流で防御
* Vector には Color も入っているぽい(Vector4 と Colorは実質同じ)
* Texture が無いときにも OffsetScale が入っているケースがある
2022-06-08 17:42:31 +09:00
ousttrue
b90c5026a6 unity-2021 では SetVector により offset, scale をセットするとエラー Property PROP_NAME already exists in the property sheet with a different type: 5 が発生する。 2022-06-07 17:37:07 +09:00
ousttrue
61422eb94c VRMShaders.GLTF.IO.Runtime から UniUnlit への参照を除去。MaterialFallback.cs にフォールバック情報を移動 2022-06-02 14:43:31 +09:00
ousttrue
090d86ba60 default material 2021-12-22 18:25:27 +09:00
Masataka SUMI
e6dba4c9c5 Can export metallic roughness occlusion correct. 2021-12-22 17:40:04 +09:00
Masataka SUMI
8059fe46d4 VRM_DEVELOP シンボル未定義時に unreachable code detected warning が出るのを抑制 2021-12-10 17:15:07 +09:00
ousttrue
89a346d0fe
Merge pull request #1409 from ousttrue/fix10/fix_shared_accessor_convert_twice
同一のバイト列を参照するBufferAccessor が複数回、座標変換(右手・左手変換)されるのを回避する
2021-12-09 19:27:26 +09:00
ousttrue
569e0ca147 add VRMShaders.Symbols 2021-12-09 16:34:44 +09:00
Masataka SUMI
8cff4f52ec make public 2021-12-09 15:18:16 +09:00
Masataka SUMI
f3b3dce186 読み込み時、MIME type による Validation ログを出す 2021-12-08 19:20:55 +09:00
Masataka SUMI
d5f7179424 不要なため、TextureDescriptor から Image file の情報を削除 2021-12-08 19:05:58 +09:00
Masataka SUMI
c96d4c1331 Image の MimeType を ITextureDeserializer に伝達する 2021-12-08 19:01:22 +09:00
Masataka SUMI
0feffcd5ef Merge branch 'master' of https://github.com/vrm-c/UniVRM into textureDeserializerInterface 2021-12-07 18:29:43 +09:00
Masataka SUMI
7120997e3a ITextureDeserializer のインタフェース変更。Sampler はインタフェース実装者が適用する。 2021-12-07 18:12:33 +09:00
Masataka SUMI
6fed2d0f2a ITextureSerializer に、出力予定アセットに対する事前処理の定義を追加 2021-12-04 02:00:04 +09:00
notargs
adcf43dcbe Merge remote-tracking branch 'upstream/master' into readonly_struct_material_descriptor 2021-10-25 17:02:13 +09:00
notargs
700f033fd7 MaterialDescriptorをreadonly structに変更 2021-10-25 16:52:55 +09:00
Masataka SUMI
4d6bf7d614 不要なフォールバックになったので削除する 2021-10-22 17:10:13 +09:00
Masataka SUMI
92f09afdab comment 2021-10-14 21:10:08 +09:00
Masataka SUMI
7b085d9b5d make internal 2021-10-14 19:43:00 +09:00
Masataka SUMI
6f7e2b7ab4 Fix infinite loop 2021-10-14 19:33:41 +09:00
Masataka SUMI
cb1e30a195 RuntimeOnlyAwaitCaller を実装 2021-10-14 19:18:44 +09:00
Masataka SUMI
4743ad7c57 mv 2021-10-14 18:19:15 +09:00