sphinx 関連を削除します

document は vrm.dev に移動しました。
This commit is contained in:
ousttrue
2024-02-22 13:29:57 +09:00
parent c684b72477
commit 4a25cf5454
325 changed files with 1 additions and 28383 deletions

View File

@@ -1,31 +0,0 @@
name: Sphinx
on:
push:
branches:
- master
# Actions タブから手動でワークフローを実行できるようにします
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
steps:
- uses: actions/checkout@v1
- run: sudo apt install gettext
- run: pip install -r requirements.txt
- name: sphinx build(ja)
working-directory: ./docs
run: sphinx-build . ../public/ja
- name: sphinx build(en)
working-directory: ./docs
run: sphinx-build . ../public/en -D language=en -A language=en
- name: copy index.html
run: cp docs/index.html public/index.html
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public

10
.vscode/launch.json vendored
View File

@@ -7,18 +7,10 @@
"path": "${workspaceFolder}/Library/EditorInstance.json",
"request": "launch"
},
{
"name": "release_gen.py",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/docs/release_gen.py",
"console": "integratedTerminal",
"justMyCode": true
},
{
"name": "Attach to Unity",
"type": "vstuc",
"request": "attach"
}
]
}
}

14
.vscode/tasks.json vendored
View File

@@ -1,14 +0,0 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "sphinx autobuild",
"type": "shell",
"command": "sphinx-autobuild docs _build",
"isBackground": true,
"problemMatcher": []
}
]
}

62
doc.md
View File

@@ -1,62 +0,0 @@
```{orphan}
```
# Sphinx 作業
## 初期化
```
$ pip install sphinx
$ mkdir docs
$ cd docs
docs$ sphinx-quickstart
```
`docs/_build/ja` に日本語ドキュメントを出力する
```
doc$ sphinx-build . _build/ja
```
## MySt 導入
markdown で記事を記述する
```
$ pip install --upgrade myst-parser
```
conf.py
```py
extensions = ['myst_parser']
```
## gettext 導入
```
$ pip install sphinx-intl
```
conf.py
```py
locale_dirs = ['locale/']
gettext_compact = False
```
## gettext 更新
potファイル作成
```
doc$ sphinx-build -M gettext . _pot
# => _pot/gettext
```
poファイルを作成
```
doc$ sphinx-intl update -p _pot/gettext -l en
# => locale/en
```
ロケールを使ってサイトビルド
```
doc$ sphinx-build . _build/en -D language=en
```

3
docs/.gitignore vendored
View File

@@ -1,3 +0,0 @@
_build
_pot
*.mo

View File

@@ -1,3 +0,0 @@
.wy-nav-content {
max-width: 1200px !important;
}

View File

@@ -1,7 +0,0 @@
{%- if language == "ja" %}
[日本語] <a href="{{ pathto('../en/', 1) }}{{ pathto(pagename, 0, '.') }}">English</a>
{%- elif language == "en" %}
<a href="{{ pathto('../ja/', 1) }}{{ pathto(pagename, 0, '.') }}">日本語</a> [English]
{% else %}
unknown language: {{ language }}
{%- endif %}

View File

@@ -1,22 +0,0 @@
# `v0.106` SpringBone の手動更新
from {doc}`v0.106.0</release/100/v0.106.0>`
[\#1866](https://github.com/vrm-c/UniVRM/pull/1886)
* VRMSpringBone.SpringBoneUpdateType.Manual を追加
* VRMSpringBone.ManualUpdate を追加
以下のように呼び出すことができます。
```csharp
VRMSpringBone spring;
// setup
spring.m_updateType = VRMSpringBone.SpringBoneUpdateType.Manual;
// each frame
spring.ManualUpdate(time.deltaTime);
```
* spring.ManualUpdate を使う前に spring.m_updateType を `Manual` に設定する必要があります。

View File

@@ -1,46 +0,0 @@
# `v0.112` MToon の URP 対応
| URP-Shader | |
|------------|-----------------|
| Standard | ✅ |
| Unlit | ✅ |
| MToon | ✅ `from v0.112` |
## `v0.112` URP サポート状況
| | URP | HDRP |
|----------------|-----|------|
| Runtime Import | ✅ | No |
| Editor Import | WIP | No |
| Runtime Export | WIP | No |
| Editor Export | WIP | No |
* `Urpオプションを有効にして` VRM-1.0 を Runtime ロードした時に、にマテリアルが `URP版` に入れ替わります。
:::{note}
VRM-0.x モデルでも import 時に migrate して VRM-1.0 として運用することが可能です
[RuntimeLoad](/vrm1/vrm1_load)
:::
:::{warning}
VRM-0.x 版の URP MToon 提供の予定はありません。
:::
:::{warning}
URP MToon をエクスポートする機能はまだありません。
URP のプロジェクトでセットアップした VRM をエクスポートしても、
Material 情報を反映するの機能が未実装です。
:::
## 利用方法
サンプル `Assets\VRM10_Samples\URPSample` を参照してください。
![project_settings](https://github.com/vrm-c/UniVRM/assets/68057/b89d1b5b-251b-4ee7-b17d-9dfbd5bac81a)
## ビルド
URP Shader をビルドに含める必要があります。
[ビルド](/build) を参照してください。

View File

@@ -1,36 +0,0 @@
# `v0.36` GltfUpdate
## テクスチャ名の格納位置の修正
GLTFの仕様に準拠しました。
* extraはextrasの間違い
* imageはnameを持っていた
```js
json.images[i].extra.name
```
変更後
```js
json.images[i].name
```
## ブレンドシェイプ名の格納位置の修正
GLTFの仕様に準拠しました。
* extraはextrasの間違い
* targetにextrasは不許可
* https://github.com/KhronosGroup/glTF/issues/1036#issuecomment-314078356
```js
json.meshes[i].primitives[j].targets[k].extra.name
```
変更後
```js
json.meshes[i].primitives[j].extras.targetNames[k]
```

View File

@@ -1,163 +0,0 @@
# `v0.44` RuntimeImport
## `Version 0.44` LoadAsyncの例
```csharp
var bytes = File.ReadAllBytes(path);
// なんらかの方法でByte列を得る
var context = new VRMImporterContext();
context.ParseGlb(bytes);
// metaが必要な場合
bool createThumbnail=true;
var meta = context.ReadMeta(createThumbnail);
var thumbnail = meta.Thumbnail;
// modelを構築
context.LoadAsync(_ =>
{
context.ShowMeshes();
var go = context.Root;
// load完了
},
Debug.LogError);
```
## LoadAsyncTaskを使う例
```csharp
#if (NET_4_6 && UNITY_2017_1_OR_NEWER)
async static Task<GameObject> LoadAsync(Byte[] bytes)
{
var context = new VRMImporterContext();
// GLB形式でJSONを取得しParseします
context.ParseGlb(bytes);
try
{
// ParseしたJSONをシーンオブジェクトに変換していく
await context.LoadAsyncTask();
// バウンディングボックスとカメラの位置関係で見切れるのを防止する
// SkinnedMeshRenderer.updateWhenOffscreen = true
context.EnableUpdateWhenOffscreen();
// T-Poseのモデルを表示したくない場合、ShowMeshesする前に準備する
// ロード後に表示する
context.ShowMeshes();
return context.Root;
}
catch(Exception ex)
{
Debug.LogError(ex);
// 関連するリソースを破棄する
context.Destroy(true);
throw;
}
}
#endif
```
## 関連する記事など
こちらの記事がわかりやすいです。
* [UniVRMを使ってVRMモデルをランタイムロードする方法](https://qiita.com/sh_akira/items/8155e4b69107c2a7ede6)
最新バージョンは[こちら]({{< relref "runtime_import.md" >}})をご覧ください。
Unityで実行時にモデルをインポートする方法です。
## ファイルパスからVRMを開く
```csharp
var path="sample.vrm";
var go=VRM.VRMImporter.LoadFromPath(path);
Debug.LogFormat("loaded {0}", go.name);
```
## ファイルパスから非同期にVRMを開く
```csharp
var path="sample.vrm";
VRMImporter.LoadVrmAsync(path, go => {
Debug.LogFormat("loaded {0}", go.name);
});
```
## バイト列からVRM開く
```csharp
var path="sample.vrm";
var bytes = File.ReadAllBytes(path);
var go=VRMImporter.LoadFromBytes(bytes);
```
## バイト列から非同期にVRMを開く
```csharp
VRMImporter.LoadVrmAsync(bytes, go => {
Debug.LogFormat("loaded {0}", go.name);
});
```
## VRMから情報を取り出す
```csharp
#if UNITY_STANDALONE_WIN
var path = FileDialogForWindows.FileDialog("open VRM", ".vrm");
#else
var path = Application.dataPath + "/default.vrm";
#endif
if (string.IsNullOrEmpty(path))
{
return;
}
// Byte列を得る
var bytes = File.ReadAllBytes(path);
var context = new VRMImporterContext();
// GLB形式をParseしてチャンクからJSONを取得しParseします
context.ParseGlb(bytes);
// metaを取得
var meta = context.ReadMeta();
Debug.LogFormat("meta: title:{0}", meta.Title);
// もしくはこちらでパースされたGLTF全体にアクセスできます
var vrm = context.GLTF;
// ParseしたJSONをもとにシーンを構築します
if (m_loadAsync)
{
// 非同期に実行する
var now = Time.time;
VRMImporter.LoadVrmAsync(context, go=> {
var delta = Time.time - now;
Debug.LogFormat("LoadVrmAsync {0:0.0} seconds", delta);
OnLoaded(go);
});
}
else
{
// 同期的に実行する
VRMImporter.LoadFromBytes(context);
OnLoaded(context.Root);
}
```
## Thumbnailを取得する(v0.37から)
ReadMetaに引数を渡すことでThumbnailテクスチャを作成できます。
```csharp
var meta = context.ReadMeta(true); // Thumbnailテクスチャを作成する
Texture2D thumbnail=meta.Thumbnail;
```

View File

@@ -1,141 +0,0 @@
# `v0.58` BlendShapeProxy
## BlendShapeKeyのインタフェースを厳格化、整理
BlendShapeKeyを作成する方法が不明瞭だったため、
より明示的な API に置き換えました。
* BlendShapeClip.Key 追加
| arguments | before | after | 備考 |
|--------------------------------------|--------------------------|--------------------------------|------------------------------------------------------------------------------------------------------------------------|
| string name, BlendShapePreset preset | public constructor | private constructor | BlendShapePreset.Unknownのときの挙動が不明瞭だった。代わりに、CreateFromPreset または CreateUnknown を使用してください |
| BlendShapeClip | BlendShapeKey.CreateFrom | BlendShapeKey.CreateFromClip | 他の関数に合わせて、名前を変更 |
| BlendShapePreset | public constructor | BlendShapeKey.CreateFromPreset | オーバーロードをやめて明示的な関数に変更 |
| string | public constructor | BlendShapeKey.CreateUnknown | オーバーロードをやめて明示的な関数に変更。 |
## 使用するメソッド
* [推奨] `SetValues`
* [非推奨] `ImmediatelySetValue`
* [上級者向け] `AccumulateValue`
* [上級者向け] `Apply`
## スクリプトから BlendShape weight を適用する
`SetValues` 関数のみを使用します。
そのフレームで必要な表情の weight 値をすべて集めてから `SetValues` を 1 回だけ呼んで設定します。
```csharp
var proxy = GetComponent<VRMBlendShapeProxy>();
proxy.SetValues(new Dictionary<BlendShapeKey, float>
{
{BlendShapeKey.CreateFromPreset(BlendShapePreset.A), 1f}, // [0, 1] の範囲で Weight を指定
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Joy), 1f}, // システム定義の表情は enum で指定
{BlendShapeKey.CreateUnknown("USER_DEFINED_FACIAL"), 1f}, // ユーザ定義の表情は string で指定
});
```
## 複数の BlendShape weight を適用する際の競合の問題について
この節では、なぜ `SetValues` を使わなければならないのかという疑問に回答します。
たとえば 2 つの VRMBlendShape `Blink_L``Blink_R`
VRMBlendShape `Blink_L`
* Mesh `A` の Blendshape `eye_close_L` の weight 値 `100`
* Mesh `A` の Blendshape `eye_close_R` の weight 値 `1`
VRMBlendShape `Blink_R`
* Mesh `A` の Blendshape `eye_close_L` の weight 値 `1`
* Mesh `A` の Blendshape `eye_close_R` の weight 値 `100`
で定義されているとします。
このとき両目を閉じたいモチベーションから、両方を有効にする意図で下記のように実行します。
```csharp
proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f);
proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f);
```
すると、左目だけが開いてしまいます。
これは後から `ImmediateSetValue` した `Blink_R``Blink_L` と競合して weight を上書きしてしまうからです。
したがって VRM の表情制御においては下記の 2 通りのどちらかの方法で書くことが求められます。
これらの方法はこの競合の問題を解決して表情を設定することができます。
```csharp
proxy.SetValues(new Dictionary<BlendShapeKey, float>
{
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f},
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f},
});
```
または
```csharp
proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f); // すぐに適用せずにたくわえる
proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f);
proxy.Apply(); // 蓄積した値をまとめて適用する
```
WIP
## 何故、複数のSetterがあるのか
* LipSync
* 瞬き
* 視線制御(BlendShapeで視線を動かすタイプのモデル)
* プログラムによる喜怒哀楽
上記のような複数のBlendShapeが別々のコンポーネントから設定された場合に、
BlendShape同士が競合することがわかりました。
後で設定した値で上書きされて希望のBlendShapeが適用されないという状態になります。
これを解決するために、一か所で中央集権的に制御する必要があります。
合成したり排他制御した、BlendShapeClipの集合のスナップショットをまとめて適用することを想定して `SetValues`
## ImmediatelySetValue
簡単なテストプログラムでの利用を想定しています。
例:
```csharp
var proxy = GetComponent<VRMBlendShapeProxy>();
proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.A), 1.0f);
```
## AccumulateValue + Apply
例:
```csharp
var proxy = GetComponent<VRMBlendShapeProxy>();
proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f); // すぐに適用せずにたくわえる
proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f);
proxy.Apply(); // 蓄積した値をまとめて適用する
```
下記のSetValuesを推奨しています。
## SetValues
BlendShape合成器が必要に応じ呼び出すことを想定しています。
例:
```csharp
var proxy = GetComponent<VRMBlendShapeProxy>();
proxy.SetValues(new Dictionary<BlendShapeKey, float>
{
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f},
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f},
});
```

View File

@@ -1,163 +0,0 @@
# `v0.68` RuntimeImport DisposeOnGameObjectDestroyed(obsolete)
## 過去バージョンからの仕様変更
`ImporterContext` の仕様を変更しました。
* ロード処理が Parse と Load の 2 ステップに分かれました。
* Parse 処理をメインスレッド以外で処理することができます。
* 非同期ロード関数 `ImporterContext.LoadAsync` の実装を `Task` に変更しました。
* これまで明示的に破棄できなかった `UnityEngine.Object` リソースを破棄できるようになりました。
* リソースのリークを防ぐことができます。
* `ImporterContext.Dispose` を呼び出すべきタイミングを「ロード処理終了時」に変更しました。
* 呼び出して破棄する前に、後述の `ImporterContext.DisposeOnGameObjectDestroyed` を呼び出してください。
* 以前の仕様は「生成したモデルの破棄時」に呼び出すべき関数でした。
* `ImporterContext.DisposeOnGameObjectDestroyed` 関数を追加しました。
* VRM モデルが必要とするリソース (Texture, Material, Mesh, etc) を破棄する責務を GameObject に移譲できます。
* VRM の GameObject の破棄タイミングでリソース (Texture, Material, Mesh, etc) を破棄します。
## サンプルコード(同期的ロード)
```csharp
using UniGLTF;
using UnityEngine;
using VRM;
namespace YourNameSpace
{
public sealed class LoadVrmSample : MonoBehaviour
{
[SerializeField] private string _vrmFilePath;
private GameObject _vrmGameObject;
private void Start()
{
_vrmGameObject = LoadVrm(_vrmFilePath);
}
private void OnDestroy()
{
DestroyVrm(_vrmGameObject);
}
private GameObject LoadVrm(string vrmFilePath)
{
// 1. GltfParser を呼び出します。
// GltfParser はファイルから JSON 情報とバイナリデータを読み出します。
var parser = new GltfParser();
parser.ParsePath(vrmFilePath);
// 2. GltfParser のインスタンスを引数にして VRMImporterContext を作成します。
// VRMImporterContext は VRM のロードを実際に行うクラスです。
using (var context = new VRMImporterContext(parser))
{
// 3. Load 関数を呼び出し、VRM の GameObject を生成します。
context.Load();
// 4. (任意) SkinnedMeshRenderer の UpdateWhenOffscreen を有効にできる便利関数です。
// https://docs.unity3d.com/2019.4/Documentation/ScriptReference/SkinnedMeshRenderer-updateWhenOffscreen.html
context.EnableUpdateWhenOffscreen();
// 5. VRM モデルを表示します。
context.ShowMeshes();
// 6. VRM の GameObject が実際に使用している UnityEngine.Object リソースの寿命を VRM の GameObject に紐付けます。
// つまり VRM の GameObject の破棄時に、実際に使用しているリソース (Texture, Material, Mesh, etc) をまとめて破棄することができます。
context.DisposeOnGameObjectDestroyed();
// 7. Root の GameObject を return します。
// Root の GameObject とは VRMMeta コンポーネントが付与されている GameObject のことです。
return context.Root;
}
// 8. using スコープを抜けて context が破棄されると、 VRMImporterContext が保持する UnityEngine.Object リソースが破棄されます。
// このとき破棄されるリソースは、 glTF ファイルには含まれているが VRM の GameObject には割り当てられていないテクスチャなどです。
// 手順 6. で VRM の GameObject に紐付けたリソースは、ここでは破棄されません。
}
private void DestroyVrm(GameObject vrmGameObject)
{
// 9. 生成された VRM の GameObject を破棄します。
// GameObject を破棄すれば、紐づくリソース (Texture, Material, Mesh, etc) も破棄されます。
UnityEngine.Object.Destroy(vrmGameObject);
}
}
}
```
## サンプルコード(非同期ロード)
```csharp
using System.IO;
using System.Threading.Tasks;
using UniGLTF;
using UnityEngine;
using VRM;
namespace YourNameSpace
{
public sealed class LoadVrmAsyncSample : MonoBehaviour
{
[SerializeField] private string _vrmFilePath;
private GameObject _vrmGameObject;
private async void Start()
{
// 簡便のため、このサンプルではキャンセル処理などは考慮しません。
_vrmGameObject = await LoadVrmAsync(_vrmFilePath);
}
private void OnDestroy()
{
DestroyVrm(_vrmGameObject);
}
private async Task<GameObject> LoadVrmAsync(string vrmFilePath)
{
// 1. GltfParser を呼び出します。
// GltfParser はファイルから JSON 情報とバイナリデータを読み出します。
// GltfParser は Unity のメインスレッド以外で実行できます。
var parser = new GltfParser();
await Task.Run(() =>
{
var file = File.ReadAllBytes(vrmFilePath);
parser.ParseGlb(file);
});
// 2. GltfParser のインスタンスを引数にして VRMImporterContext を作成します。
// VRMImporterContext は VRM のロードを実際に行うクラスです。
using (var context = new VRMImporterContext(parser))
{
// 3. Load 関数を呼び出し、VRM の GameObject を生成します。
// Load 処理は数フレームの時間を要します。
await context.LoadAsync();
// 4. (任意) SkinnedMeshRenderer の UpdateWhenOffscreen を有効にできる便利関数です。
// https://docs.unity3d.com/2019.4/Documentation/ScriptReference/SkinnedMeshRenderer-updateWhenOffscreen.html
context.EnableUpdateWhenOffscreen();
// 5. VRM モデルを表示します。
context.ShowMeshes();
// 6. VRM の GameObject が実際に使用している UnityEngine.Object リソースの寿命を VRM の GameObject に紐付けます。
// つまり VRM の GameObject の破棄時に、実際に使用しているリソース (Texture, Material, Mesh, etc) をまとめて破棄することができます。
context.DisposeOnGameObjectDestroyed();
// 7. Root の GameObject を return します。
// Root の GameObject とは VRMMeta コンポーネントが付与されている GameObject のことです。
return context.Root;
}
// 8. using スコープを抜けて context が破棄されると、 VRMImporterContext が保持する UnityEngine.Object リソースが破棄されます。
// このとき破棄されるリソースは、 glTF ファイルには含まれているが VRM の GameObject には割り当てられていないテクスチャなどです。
// 手順 6. で VRM の GameObject に紐付けたリソースは、ここでは破棄されません。
}
private void DestroyVrm(GameObject vrmGameObject)
{
// 9. 生成された VRM の GameObject を破棄します。
// GameObject を破棄すれば、紐づくリソース (Texture, Material, Mesh, etc) も破棄されます。
UnityEngine.Object.Destroy(vrmGameObject);
}
}
}
```

View File

@@ -1,77 +0,0 @@
# `v0.76` ITextureDeserializer(テクスチャーローダー)
このインタフェースを使うと, glTF のテクスチャーをロードして Unity の Texture2D を作成する工程をカスタマイズできます。
## UnityTextureDeserializer
UniVRM が使用するデフォルトの実装は `UnityTextureDeserializer` です。
<https://github.com/vrm-c/UniVRM/blob/master/Assets/VRMShaders/GLTF/IO/Runtime/Texture/Importer/UnityTextureDeserializer.cs>
[ImageConversion.LoadImage](https://docs.unity3d.com/ja/2020.3/ScriptReference/ImageConversion.LoadImage.html) を使用して `png``jpeg` から Texture2D に変換します。
:::{admonition} ITextureDeserializer でパフォーマンスを改善
Texture2D の生成には複数のステップがあります。
- `png``jpeg` から `raw pixel` を取り出す
- 取り出した `raw pixel` を使って `Texture2D` を作成する
前者をスレッドに乗せて非同期処理にすることで
パフォーマンスを向上させる余地があります。
:::
:::{warning}
`ImageConversion.LoadImage``raw pixel` 取り出しと `Texture2D` 作成を一度に実行し、
その間メインスレッドをブロックします。
大きなテクスチャーや大量のテクスチャーをロードすると画面が固まりやすくなります。
:::
:::{admonition} ITextureDeserializer で対応する画像形式を拡張する
通常の `glTF` はテクスチャー画像として `png``jpeg` を格納できます。
もし、`EXT_texture_webp` `KHR_texture_basisu` などで別の形式の画像を利用する場合は
`ITextureDeserializer` で対応可能です。
:::
## 差し替え方法
`new UniGLTF.ImporterContext` の引き数で指定することができます。
```cs
public ImporterContext(
GltfData data,
IReadOnlyDictionary<SubAssetKey, UnityEngine.Object> externalObjectMap = null,
ITextureDeserializer textureDeserializer = null, // 👈
IMaterialDescriptorGenerator materialGenerator = null)
```
`new VRM.VRMImporterContext` の引き数で指定することができます。
```cs
public VRMImporterContext(
VRMData data,
IReadOnlyDictionary<SubAssetKey, Object> externalObjectMap = null,
ITextureDeserializer textureDeserializer = null, // 👈
IMaterialDescriptorGenerator materialGenerator = null,
bool loadAnimation = false)
```
`new UniVRM10.Vrm10Importer` の引き数で指定することができます。
```cs
public Vrm10Importer(
Vrm10Data vrm,
IReadOnlyDictionary<SubAssetKey, UnityEngine.Object> externalObjectMap = null,
ITextureDeserializer textureDeserializer = null, // 👈
IMaterialDescriptorGenerator materialGenerator = null,
bool useControlRig = false
)
```
## UnityAsyncImageLoader に置き換える例
ISSUE に使用例をいただきました。
<https://github.com/vrm-c/UniVRM/issues/1982>
[UnityAsyncImageLoader](https://github.com/Looooong/UnityAsyncImageLoader)を使ってパフォーマンスを向上できます。

View File

@@ -1,83 +0,0 @@
# `v0.77` RuntimeImport RuntimeGltfInstance
[DisposeOnGameObjectDestroyed](https://github.com/vrm-c/UniVRM/issues/1018)
`ImporterContext` の仕様を変更しました。
`Version 0.68` で導入した、 `ImporterContext.DisposeOnGameObjectDestroyed` が扱いづらかったためのでこれを取りやめ、
`ImporterContext.Load``RuntimeGltfInstance` を返すようにしました。
`RuntimeGltfInstance` は、 `ImporterContext`
* Root
* EnableUpdateWhenOffscreen()
* ShowMeshes()
を引き継ぎます。
Load の呼び出し後の任意のタイミングで ImporterContext.Dispose で Importer を破棄してください。
任意のタイミングで RuntimeGltfInstance を Destory することで紐づくリソース (Texture, Material, Mesh, etc) も破棄されます。
```csharp
using UniGLTF;
using UnityEngine;
namespace VRM.Samples
{
public sealed class LoadVrmSample : MonoBehaviour
{
[SerializeField] private string _vrmFilePath;
private GameObject _vrmGameObject;
private void Start()
{
_vrmGameObject = LoadVrm(_vrmFilePath);
}
private void OnDestroy()
{
DestroyVrm(_vrmGameObject);
}
private GameObject LoadVrm(string vrmFilePath)
{
// 1. GltfParser を呼び出します。
// GltfParser はファイルから JSON 情報とバイナリデータを読み出します。
var parser = new GltfParser();
parser.ParsePath(vrmFilePath);
// 2. GltfParser のインスタンスを引数にして VRMImporterContext を作成します。
// VRMImporterContext は VRM のロードを実際に行うクラスです。
using (var context = new VRMImporterContext(parser))
{
// 3. Load 関数を呼び出し、VRM の GameObject を生成します。
RuntimeGltfInstance instance = context.Load(); // <- `v0.77` でここが変わります。
// 非同期版 async 関数の中で下記のようにしてください
// RuntimeGltfInstance instance = await context.LoadAsync();
// 4. (任意) SkinnedMeshRenderer の UpdateWhenOffscreen を有効にできる便利関数です。
// https://docs.unity3d.com/2019.4/Documentation/ScriptReference/SkinnedMeshRenderer-updateWhenOffscreen.html
instance.EnableUpdateWhenOffscreen(); // <- ImporterContext から RuntimeGltfInstance に移動しました。
// 5. VRM モデルを表示します。
instance.ShowMeshes(); // <- ImporterContext から RuntimeGltfInstance に移動しました。
// 6. Root の GameObject を return します。
// Root の GameObject とは VRMMeta コンポーネントが付与されている GameObject のことです。
return instance.Root; // <- ImporterContext から RuntimeGltfInstance に移動しました。
}
// 7. using スコープを抜けて context が破棄されると、 VRMImporterContext が保持する UnityEngine.Object リソースが破棄されます。
// このとき破棄されるリソースは、 glTF ファイルには含まれているが VRM の GameObject には割り当てられていないテクスチャなどです。
// 手順 6. で VRM の GameObject に紐付けたリソースは、ここでは破棄されません。
}
private void DestroyVrm(GameObject vrmGameObject)
{
// 8. 生成された VRM の GameObject を破棄します。
// GameObject を破棄すれば、紐づくリソース (Texture, Material, Mesh, etc) も破棄されます。
UnityEngine.Object.Destroy(vrmGameObject);
}
}
}
```

View File

@@ -1,12 +0,0 @@
# `v0.79` RuntimeImport GltfData
`GltfParser``GltfData` の分割
```csharp
var parser = new GltfParser();
parser.ParsePath(path);
```
```csharp
GltfData data = new GlbFileParser(path).Parse();
```

View File

@@ -1,113 +0,0 @@
# `v0.82.1` GlbImport GltfData
以下のステップでロードします。
1. `GLB` / `GLTF` をパースして `GltfData` を得る。
2. `GltfData` から `Unity Hierarchy` を ロード する。`RuntimeGltfInstance` を得る。 ローダーを破棄する。
3. ロードした `RuntimeGltfInstance` 使う。`RuntimeGltfInstance` を破棄する。
## 1. パースする
### glb ファイルパスからパースする
* `vrm` もこの関数を使います。
```csharp
GltfData Load(string path)
{
return new GlbFileParser(path).Parse();
}
```
### glb バイト列をパースする
* `vrm` もこの関数を使います。
```csharp
GltfData Load(byte[] bytes)
{
return new GlbBinaryParser(bytes, "LOAD_NAME").parse();
}
```
### gltf ファイルパスからパースする
```csharp
GltfData Load(string path)
{
return new GltfFileWithResourceFilesParser(path).Parse();
}
```
### zip アーカイブからパースする
gltf と関連するファイルを zip アーカイブしたファイルをパースできます(実験)。
```csharp
GltfData Load(string path)
{
return new ZipArchivedGltfFileParser(path).Parse();
}
```
### ファイルパスの拡張子でパースする
サンプルの `SimpleViewer` を参考にしてください。
```csharp
GltfData Load(string path)
{
// ファイル拡張子で自動判定します
return new AutoGltfFileParser(path).Parse();
}
```
## 2. ロードする
### sync
```csharp
RuntimeGltfInstance Load(GltfData data)
{
// ImporterContext は使用後に Dispose を呼び出してください。
// using で自動的に呼び出すことができます。
using(var loader = new UniGLTF.ImporterContext(data)
{
var instance = loader.Load();
return instance;
}
}
```
### async
```csharp
async RuntimeGltfInstance Load(GltfData data)
{
// ImporterContext は使用後に Dispose を呼び出してください。
// using で自動的に呼び出すことができます。
using(var loader = new UniGLTF.ImporterContext(data)
{
var instance = await loader.LoadAsync();
return instance;
}
}
```
### materialGenerator で URP 用のマテリアルをロードする
{doc}`Import 時に生成される Material をカスタマイズする <how_to_customize_material_import>`
## 3. インスタンスを使用する
```csharp
// SkinnedMeshRenderer に対する指示
instance.EnableUpdateWhenOffscreen();
// 準備ができたら表示する(デフォルトでは非表示)
instance.ShowMeshes();
```
使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。
```csharp
GameObject.Destroy(instance);
```

View File

@@ -1,77 +0,0 @@
# `v0.82.1` RuntimeImport VRMData
以下の手順で import します。
1. VRMをパースして、`GltfData` を得る。
1. `GltfData` から `VRMData` を得る。
1. `VrmData` から `RuntimeGltfInstance` をロードする。
1. `RuntimeGltfInstance` を使う。
サンプルの `Assets\VRM\Samples\SimpleViewer\ViewerUI.cs` も参照してください。
## 1. `GltfData` を得る
```csharp
GltfData Load(string path)
{
return new GlbFileParser(path).Parse();
}
```
[GLB import](0_82_glb_import.md) も参照してください。
## 2. `VRMData` を得る
```csharp
VRMData vrm = new VRMData(data);
```
## 3. Load する
```csharp
async RuntimeGltfInstance Load(VRMData vrm)
{
// 使用後に Dispose で VRMImporterContext を破棄してください。
using(var loader = new VRMImporterContext(vrm))
{
var instance = await loader.LoadAsync();
return instance;
}
}
```
### URP 向けに `materialGenerator` を指定する(実験)
`materialGenerator` 引き数(省略可能)を指定することで URP マテリアルを生成するようにカスタムできます。
指定しない場合は `built-in` 向けのデフォルトが使用されます。
```csharp
async RuntimeGltfInstance Load(VRMData vrm)
{
var materialGenerator = new VRMUrpMaterialDescriptorGenerator(vrm.VrmExtension);
using(var loader = new VRM.VRMImporterContext(vrm, materialGenerator: materialGenerator))
{
var instance = await loader.LoadAsync();
return instance;
}
}
```
* まだ URP 向け MToonShader が作成されていないので、`UniUnlit` にフォールバックします。
## 4. Instance
```csharp
// SkinnedMeshRenderer に対する指示
instance.EnableUpdateWhenOffscreen();
// 準備ができたら表示する(デフォルトでは非表示)
instance.ShowMeshes();
```
使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。
```csharp
// GameObject.Destroy(instance);
// RuntimeGltfInstance ではなくて、その GameObject を Destroy します。
GameObject.Destroy(instance.gameObject);
```

View File

@@ -1,39 +0,0 @@
# `v0.87` RuntimeImport 非同期ロード
## awaitCaller 引き数
```csharp
public virtual async Task<RuntimeGltfInstance> LoadAsync(IAwaitCaller awaitCaller = null, ...)
```
awaitCaller によりロード時の挙動をカスタマイズできます。
```{literalinclude} ../../Assets/VRMShaders/GLTF/IO/Runtime/AwaitCaller/IAwaitCaller.cs
:language: csharp
:linenos:
```
* NextFrame: 処理を中断して次のフレームで再開します。ロード処理が長い場合に長時間アプリケーションが固まることを防ぎます
* Run: UnityEngine.Object にアクセスしない処理を別スレッドで実行します。タスクが終了したら await で Unity Script スレッドで続きを実行します。
## ImmediateCaller
デフォルトでは、`ImmediateCaller` が使われます。
`ImmediateCaller` タスクを即時に実行するので、同期実行となります。
* Play(Editor Play, build), Editor(not play), UnitTest でデッドロックしないための実装です。
```{literalinclude} ../../Assets/VRMShaders/GLTF/IO/Runtime/AwaitCaller/ImmediateCaller.cs
:language: csharp
:linenos:
```
## RuntimeOnlyAwaitCaller
* Play(Editor Play, build) 時に非同期実行する実装です
* `VRM10_Samples/VRM10Viewer` に使用例があります。
```{literalinclude} ../../Assets/VRMShaders/GLTF/IO/Runtime/AwaitCaller/RuntimeOnlyAwaitCaller.cs
:language: csharp
:linenos:
```

View File

@@ -1,40 +0,0 @@
# `v0.95` GltfData.Dispose
Importer の内部で `NativeArray` を使うようにしたため、
終了時にこれを破棄する必要ができました。
使い終わったら `Dispose` してください。
```cs
class GltfData: IDisposable
```
## 使用例
```cs
// must dispose GltfData
using (GltfData data = new AutoGltfFileParser(path).Parse())
using (var loader = new UniGLTF.ImporterContext(data, materialGenerator: materialGenerator))
{
return await loader.LoadAsync(awaitCaller);
}
```
## Dispose しなかった場合
NativeArray が Dispose されずに GC に回収されたタイミングで、
以下のエラーメッセージがコンソールに表示されます。
`A Native Collection has not been disposed`
このエラーがどこで起きたか分からない場合があります。
`com.unity.jobs package` により詳細メッセージを得ることができます。
<https://forum.unity.com/threads/a-native-collection-has-not-been-disposed-enable-full-stack.1098973/>
を参考にしてください。
## 関連
* <https://github.com/vrm-c/UniVRM/pull/1483>
* <https://github.com/vrm-c/UniVRM/pull/1503>

View File

@@ -1,28 +0,0 @@
# `v0.95` 簡単API
API が複雑化してきたので、よくある用途を簡単にできる高レベル API を追加しました。
`GltfUtility``VrmUtility` が中で using してくれるので await で呼び出すだけで使えます。
## GLTF
```{gitinclude} v0.95.0 Assets/UniGLTF/Runtime/UniGLTF/IO/GltfUtility.cs
:language: csharp
:linenos:
```
## VRM
```{gitinclude} v0.95.0 Assets/VRM/Runtime/IO/VrmUtility.cs
:language: csharp
:linenos:
```
## 使用例
```{gitinclude} v0.95.0 Assets/VRM_Samples/SimpleViewer/ViewerUI.cs
:language: csharp
:linenos:
:lines: 370-392
:emphasize-lines: 10, 20
:caption:
```

View File

@@ -1,14 +0,0 @@
# `v0.96.1` ガンマ カラースペースを使う
C# symbol `UNIGLTF_USE_GAMMA_COLORSPACE` を設定するとカラースペースダイアログが出なくなります。
| 用途 | ステータス | |
|----------------|------------|--------------------------------------------------------|
| Runtime Import | 非推奨 | アプリケーション・プラットフォームの必要に応じてどうぞ |
| Editor Import | 非推奨 | アプリケーション・プラットフォームの必要に応じてどうぞ |
| Runtime Export | 未対応 | アプリケーション・プラットフォームの必要に応じてどうぞ |
| Editor Export | 未対応 | あまり必要無いと思われるので、なるべくやめてください |
ご利用いただくのはまったく問題ありませんが、
色の再現性に問題が出ることはご承知おきください。
(ガンマ設定に起因するimport/exportの問題はバグとして対応できません)

View File

@@ -1,47 +0,0 @@
# `v0.85` FastSpringBoneについて
## 概要
UniVRMでは、DOTSを利用した高速なSpringBone実装である「FastSpringBone」を用意しています。
揺れ物の各房を並列処理・最適化することで1フレームあたりの処理時間を大幅に抑えます。
VRM0.x と VRM1.0 で、それぞれFastSpringBoneの立ち位置・実装が異なります。
## VRM 1.0 での FastSpringBone の概要
VRM1.0ではFastSpringBoneが揺れものの標準実装です。
VRMのライフサイクルに紐付いて自動的に生成・破棄されます。
## VRM 0.x での FastSpringBone の概要
VRM0.xでは後方互換性を保つため、デフォルトでは従来のDOTS実装でないSpringBoneで動作します。
VRM0.x向けのFastSpringBone実装は `VRM/Runtime/FastSpringBone` ディレクトリにあります。
## VRM 0.x での FastSpringBone の導入方法
差し替えを行いたいタイミングで `FastSpringBoneReplacer.ReplaceAsync` を呼び出してください
これを明示的に呼ばなければ、従来のSpringBoneのまま動作します。
```csharp
using (var loader = new UniGLTF.ImporterContext(data))
{
var instance = await loader.LoadAsync();
SetModel(instance);
}
FastSpringBoneReplacer.ReplaceAsync(instance.Root)
instance.EnableUpdateWhenOffscreen();
instance.ShowMeshes();
```
## Burstの導入について
UniVRM に加えて Burst を別途導入すると、 FastSpringBone が Burst によって高速化されます。
Burst の導入方法は [こちら](https://docs.unity3d.com/ja/2019.4/Manual/upm-ui-install.html) をご参照ください。
## FastSpringBoneServiceについて
FastSpringBone が実行されると、`FastSpringBone Service` GameObject が `DontDestroyOnLoad` で生成されます。
これは全 VRM の FastSpringBone を集め、バッファの構築や、 FastSpringBone の実行タイミングの制御などを行う GameObject です。
明示的に破棄を行いたい場合は `FastSpringBoneService.Free` を呼んでください。

View File

@@ -1,73 +0,0 @@
# VRMFirstPersonの使い方
{doc}`FirstPerson と Renderer の可視制御 </implementation/first_person>`
実行時に**VRMFirstPerson.Setup**を呼び出すことで、FirstPerson設定に応じた Renderer の可視制御を行うことができます。
明示的に外部から呼び出してください。
## アプリケーションに追加の描画レイヤーを指定する
定数で以下のレイヤーを定義しています。
```csharp
public class VRMFirstPerson : MonoBehaviour
{
public const int FIRSTPERSON_ONLY_LAYER = 9;
public const int THIRDPERSON_ONLY_LAYER = 10;
// 省略
}
```
|{{< img src="images/vrm/layer_setting.png" >}}|
|-----|
|9番と番にLayerを設定|
## 実行時にSetupを呼び出して、カメラにLayerMaskを設定する
* VRMFirstPerson.Setupの呼び出し
* 一人称カメラとその他のカメラに対してLayerMask
```csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using VRM;
public class SetupExample : MonoBehaviour
{
[SerializeField]
Camera m_firstPersonCamera; // HMDのカメラ
[SerializeField]
LayerMask m_firstPersonMask; // HMDのカメラにセットするマスク default | VRMFirstPersonOnly など
[SerializeField]
LayerMask m_otherMask; // HMDのカメラにセットするマスク default | VRMThirdPersonOnly など
[SerializeField]
VRMFirstPerson m_firstPerson;
void Reset()
{
m_firstPerson = GameObject.FindObjectOfType<VRMFirstPerson>();
}
void Start()
{
foreach (var camera in GameObject.FindObjectsOfType<Camera>())
{
camera.cullingMask = (camera == m_firstPersonCamera)
? m_firstPersonMask
: m_otherMask
;
}
// VRMFirstPersonの初期化
if (m_firstPerson != null)
{
m_firstPerson.Setup();
}
}
}
```

View File

@@ -1,25 +0,0 @@
# `v0.82` Import 時に生成される Material をカスタマイズする
`IMaterialDescriptorGenerator` を実装することで import 時に適用されるマテリアルを差し替えることができます。
## materialGenerator で URP 用のマテリアルをロードする
URP マテリアルを生成するようにカスタムする例です。
<https://github.com/vrm-c/UniVRM/issues/1214>
```csharp
async RuntimeGltfInstance Load(GltfData data)
{
IMaterialDescriptorGenerator materialGenerator = new GltfUrpMaterialDescriptorGenerator();
using(var loader = new UniGLTF.ImporterContext(data, materialGenerator: materialGenerator)
{
var instance = await loader.LoadAsync();
return instance;
}
}
```
## 関連
* <https://github.com/vrm-c/UniVRM/pull/1177>

View File

@@ -1,441 +0,0 @@
# `v0.63.2` glTF拡張の実装
`UniVRM-0.63.2` から `UniGLTF` の構成が変わって、 `extensions` / `extras` の実装方法が変わりました。
## GLTF 拡張とは
`glTF` は各所に `extensions`, `extras` が定義してありその中身を拡張できます。
* `extensions` (またはextras)
* `asset.extensions` (またはextras)
* `meshes[*].extensions` (またはextras)
* `materials[*].extensions` (またはextras)
など。
`extensions` はオフィシャルに仕様を策定して `JsonSchema` として公開します。
* https://github.com/KhronosGroup/glTF/tree/master/extensions
`extensions` は、`{ベンダー名}_{拡張名}` という命名規則です。
ベンダー名は、 https://github.com/KhronosGroup/glTF に申し込んで登録できます。
`extras` は登録せずにアプリケーション独自に拡張する場合に用います。仕組みは同じです。
> This enables glTF models to contain application-specific properties without creating a full glTF extension
## UniGLTF の extensions
`v0.63.0` 以前は、`GLTF 型``extensions` フィールドに、`GLTFExtensions` 型を定義して、`VRM` フィールドを定義するという方法をとっていました。
```csharp
class VRM
{
}
class GLTFExtensions
{
public VRM VRM;
}
class GLTF
{
// すべての拡張の型をコンパイル時に知っている必要がある。動的に拡張できない
public GLTFExtensions extensions;
}
```
この設計だと GLTF と拡張を別ライブラリとして分離することができませんでした。
`v0.63.1` から設計を変更して、すべての `extensions/extras` に同じ型の入れ物を使うように変更しました。
UniGLTF は `import/export` の具体的な内容を知らずに中間データの入れ物として扱います。
```csharp
// extensions / extras の入れ物として使う型
// 実行時は、 glTFExtensionImport / glTFExtensionExport を使う
public abstract class glTFExtension
{
}
class GLTF
{
// UniGLTFは具体的な型を知らない。利用側が処理(serialize/deserialize)する
public glTFExtension extensions;
}
```
## UniGLTF の拡張の書き方
拡張は、以下の部品要素から作れます。
* 名前(JsonPath)。例: `extensions.VRM`, `materials[*].extensions.KHR_materials_unlit`
* 拡張の型。`T型`
* デシリアライザー(import)。 `jsonバイト列 => T型`
* シリアライザーexport)。`T型 => jsonバイト列`
### JSONPATH と 型を決める
```C#
// 型
class GoodMaterial
{
// `materials[*].extensions.CUSTOM_materials_good`
public const string EXTENSION_NAME = "CUSTOM_materials_good";
public int GoodValue;
}
```
### import
```C#
GoodMaterial DeserializeGoodMaterial(ListTreeNode<JsonValue> json)
{
// デシリアライズ。手で書くかコード生成する(後述)
}
// ユーティリティ関数例
bool TryGetExtension<T>(UniGLTF.glTFExtension extension, string key, Func<ListTreeNode<JsonValue>, T> deserializer, out T value)
{
if(material.extensions is UniGLTF.glTFExtensionsImport import)
{
// null check 完了
foreach(var kv in import.ObjectItems())
{
if(kv.key.GetString()==key)
{
value = Deserialize(kv.Value);
return true;
}
}
}
value = default;
return false;
}
void ImportMaterial(UniGLTF.glTFMaterial material)
{
// material の処理に割り込んで
if(TryGetExtension(material.extension, GoodMaterial.EXTENSION_NAME, DeserializeGoodMaterial, out GoodMaterial good))
{
// good material 独自の処理
}
}
```
### export
```csharp
void SerializeGoodMaterial(UniJSON.JsonFormatter f, GoodMaterial value)
{
// シリアライズ。手で書くかコード生成する(後述)
}
// ユーティリティ関数例
public ArraySegment<byte> SerializeExtension<T>(T value, Func<T, ArraySegment<byte>> serialize)
{
var f = new UniJSON.JsonFormatter();
serialize(f, value);
return f.GetStoreBytes();
}
void ExportGoodMaterial(UniGLTF.glTFMaterial material, GoodMaterial good)
{
// material の処理に割り込んで
if(!(material.extensions is UniGLTF.glTFExtensionsExport export))
{
// 無かった。新規作成
export = new UniGLTF.glTFExtensionsExport();
material.extensions = export;
}
var bytes = SerializeExtension(good, SerializeGoodMaterial);
export.Add(GoodMaterial.EXTENSION_NAME, bytes);
}
```
## 実装例
### GLTF: GLTF全体
`C#の型からコード生成`
* `Assets\UniGLTF\Runtime\UniGLTF\Format\GltfSerializer.g.cs`
* `Assets\UniGLTF\Runtime\UniGLTF\Format\GltfDeserializer.g.cs`
ジェネレーターの呼び出しコード
* `Assets\UniGLTF\Editor\UniGLTF\Serialization\SerializerGenerator.cs`
* `Assets\UniGLTF\Editor\UniGLTF\Serialization\DeserializerGenerator.cs`
生成コードの呼び出し
### GLTF: `meshes[*].extras.targetNames`
`コード生成せずに手書き`
* `Assets\UniGLTF\Runtime\UniGLTF\Format\ExtensionsAndExtras\gltf_mesh_extras_targetNames.cs`
生成コードの呼び出し
### GLTF: `materials[*].extensions.KHR_materials_unlit`
`コード生成せずに手書き`
* `Assets\UniGLTF\Runtime\UniGLTF\Format\ExtensionsAndExtras\KHR_materials_unlit.cs`
生成コードの呼び出し
### GLTF: `materials[*].extensions.KHR_texture_transform`
`コード生成せずに手書き`
* `Assets\UniGLTF\Runtime\UniGLTF\Format\ExtensionsAndExtras\KHR_texture_transform.cs`
生成コードの呼び出し
* https://github.com/vrm-c/UniVRM/blob/master/Assets/UniGLTF/Runtime/UniGLTF/IO/MaterialImporter.cs#L296
* https://github.com/vrm-c/UniVRM/blob/master/Assets/UniGLTF/Runtime/UniGLTF/IO/MaterialExporter.cs#L193
### VRM0: `extensions.VRM`
`C#の型からコード生成`
* `Assets\VRM\Runtime\Format\VRMSerializer.g.cs`
* `Assets\VRM\Runtime\Format\VRMDeserializer.g.cs`
ジェネレーターの呼び出しコード
* `Assets\VRM\Editor\VRMSerializerGenerator.cs`
* `Assets\VRM\Editor\VRMDeserializerGenerator.cs`
生成コードの呼び出し
* https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/Runtime/IO/VRMImporterContext.cs#L41
* https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/Runtime/IO/VRMExporter.cs#L209
### VRM1: `extensions.VRMC_vrm` など
`JsonSchemaからコード生成`
5つの Extensions に分かれたので個別に作成。
ささる場所(JsonPath)が違うのに注意。
#### `extensions.VRMC_vrm`
* `Assets\VRM10\Runtime\Format\VRM`
#### `materials[*].extensions.VRMC_materials_mtoon`
* `Assets\VRM10\Runtime\Format\MaterialsMToon`
#### `nodes[*].extensions.VRMC_node_collider`
* `Assets\VRM10\Runtime\Format\NodeCollider`
#### `extensions.VRMC_springBone`
* `Assets\VRM10\Runtime\Format\SpringBone`
#### `extensions.VRMC_vrm_constraints`
* `Assets\VRM10\Runtime\Format\Constraints`
#### ジェネレーターの呼び出しコード
* `Assets\VRM10\Editor\GeneratorMenu.cs`
#### 生成コードの呼び出し
## コード生成
JSON と C# の型との シリアライズ/デシリアライズは定型コードになるので、ジェネレーターがあります。
C# の型から生成するものと、JsonSchema から C# の型とともに生成するものがあります。
### C# の型から生成
#### シリアライザー
ジェネレーターを呼び出すコードを作成します。
* 元になる型
* 出力先
つを決めます。static関数を生成するので、namespace と static class で囲ってあげます。
* `Assets\UniGLTF\Editor\UniGLTF\Serialization\SerializerGenerator.cs`
```csharp
using System;
using System.Collections.Generic;
using System.IO;
using System.Reflection;
using System.Text;
using UniJSON;
using UnityEditor;
using UnityEngine;
namespace UniGLTF
{
public static class SerializerGenerator
{
const BindingFlags FIELD_FLAGS = BindingFlags.Instance | BindingFlags.Public;
const string Begin = @"// Don't edit manually. This is generaged.
using System;
using System.Collections.Generic;
using UniJSON;
namespace UniGLTF {
static public class GltfSerializer
{
";
const string End = @"
} // class
} // namespace
";
static string OutPath
{
get
{
return Path.Combine(UnityEngine.Application.dataPath,
"UniGLTF/UniGLTF/Scripts/IO/GltfSerializer.g.cs");
}
}
[MenuItem(UniGLTFVersion.MENU + "/GLTF: Generate Serializer")]
static void GenerateSerializer()
{
var info = new ObjectSerialization(typeof(glTF), "gltf", "Serialize_");
Debug.Log(info);
using (var s = File.Open(OutPath, FileMode.Create))
using (var w = new StreamWriter(s, new UTF8Encoding(false)))
{
w.Write(Begin);
info.GenerateSerializer(w, "Serialize");
w.Write(End);
}
Debug.LogFormat("write: {0}", OutPath);
UnityPath.FromFullpath(OutPath).ImportAsset();
}
}
}
```
#### デシリアライザー
ジェネレーターを呼び出すコードを作成します。
* 元になる型
* 出力先
つを決めます。static関数を生成するので、namespace と static class で囲ってあげます。
* `Assets\UniGLTF\Editor\UniGLTF\Serialization\DeserializerGenerator.cs`
```csharp
using System.IO;
using System.Reflection;
using System.Text;
using UnityEditor;
using UnityEngine;
namespace UniGLTF
{
/// <summary>
/// Generate deserializer from ListTreeNode<JsonValue> to glTF using type reflection
/// </summary>
public static class DeserializerGenerator
{
public const BindingFlags FIELD_FLAGS = BindingFlags.Instance | BindingFlags.Public;
const string Begin = @"// Don't edit manually. This is generaged.
using UniJSON;
using System;
using System.Collections.Generic;
using UnityEngine;
namespace UniGLTF {
public static class GltfDeserializer
{
";
const string End = @"
} // GltfDeserializer
} // UniGLTF
";
static string OutPath
{
get
{
return Path.Combine(UnityEngine.Application.dataPath,
"UniGLTF/UniGLTF/Scripts/IO/GltfDeserializer.g.cs");
}
}
[MenuItem(UniGLTFVersion.MENU + "/GLTF: Generate Deserializer")]
static void GenerateSerializer()
{
var info = new ObjectSerialization(typeof(glTF), "gltf", "Deserialize_");
Debug.Log(info);
using (var s = File.Open(OutPath, FileMode.Create))
using (var w = new StreamWriter(s, new UTF8Encoding(false)))
{
w.Write(Begin);
info.GenerateDeserializer(w, "Deserialize");
w.Write(End);
}
Debug.LogFormat("write: {0}", OutPath);
UnityPath.FromFullpath(OutPath).ImportAsset();
}
}
}
```
#### キー出力の抑制
`index` に無効な値として `-1` を入れる場合に、JSONではキーを出力しないとしたいことがあります。
TODO: `int?` にするべきだった
```csharp
[JsonSchema(Minimum = 0)]
int index = -1;
```
のようにすることで、キーの出力を抑制できます。
```csharp
// 生成コードのキー出力例
if(value.index>=0){
```
何も付けないと
```csharp
// 出力制御無し
if(true){
```
#### enum のエンコーディング
enumの値の名前を文字列で使う、enumの値の数値を使うの2種類がありえます。
enumの場合はデフォルト値が無いので必須です。
```csharp
[JsonSchema(EnumSerializationType = EnumSerializationType.AsInt)]
public glBufferTarget target;
[JsonSchema(EnumSerializationType = EnumSerializationType.AsLowerString)]
public ProjectionType type;
```
### JsonSchemaから生成
VRM-1.0 の実装
TODO:

View File

@@ -1,31 +0,0 @@
# API
```{toctree}
:maxdepth: 1
sample/index
firstperson
```
## Update
```{toctree}
:maxdepth: 1
0_36_update
0_44_runtime_import
0_58_blendshape
how_to_impl_extension
0_68_runtime_import
0_76_texture_deserializer
0_77_runtime_import
0_79_runtime_import
0_82_glb_import
0_82_runtime_import
how_to_customize_material_import
fast_spring_bone
0_87_runtime_import
0_95_dispose
0_95_highlevel
0_96_1_use_gamma_colorspace
0_106_spring_manual_update
0_112_urp
```

View File

@@ -1,3 +0,0 @@
# AnimationBridgeSample
AnimationClip に BlendShape の変換を記録して反映するサンプルです。

View File

@@ -1,18 +0,0 @@
# FirstPersonSample
VR アプリで FistPerson の設定に合わせて、可視設定を反映するサンプルです。
画面が4分割されて、
* HMDカメラ
* その他のカメラ
の描画を例示します。
```{gitinclude} v0.87.0 Assets/VRM_Samples/FirstPersonSample/VRMRuntimeLoader.cs
:language: csharp
:linenos:
:lines: 31-53
:emphasize-lines: 15
:caption:
```

View File

@@ -1,10 +0,0 @@
# RuntimeExporter
VRM を Runtime Export するサンプルです。
```{gitinclude} v0.87.0 Assets/VRM_Samples/RuntimeExporterSample/VRMRuntimeExporter.cs
:language: csharp
:linenos:
:lines: 106-127
:caption:
```

View File

@@ -1,10 +0,0 @@
# SimpleViewer
Runtime ローダーのサンプルです。
```{gitinclude} c89e Assets/VRM_Samples/SimpleViewer/ViewerUI.cs
:language: csharp
:linenos:
:caption:
:lines: 434-485
```

View File

@@ -1,8 +0,0 @@
# Sample
```{toctree}
SimpleViewer
RuntimeExporterSample
FirstPersonSample
AnimationBridgeSample
```

View File

@@ -1,89 +0,0 @@
# アプリケーションのビルド
UniVRMを使うアプリケーションのビルドに関する注意事項
## ビルドに含めるシェーダー
`Project Settings = Graphics - Always Included Shaders` などに設定して、以下のシェーダーがビルドに含まれるようにしてください。
### URP
#### Standard
* `Universal Render Pipeline/Lit`
#### Unlit
* `Assets\VRMShaders\GLTF\UniUnlit\Resources\UniGLTF\UniUnlit.shader`
```{admonition} Always Included Shaders
`Resources` に配置しているので明示的に指定しなくてもビルドに含まれます。
```
#### MToon
* `Assets/VRMShaders/VRM10/MToon10/Resources/VRM10/vrmc_materials_mtoon_urp.shader`
```{admonition} Always Included Shaders
`Resources` に配置しているので明示的に指定しなくてもビルドに含まれます。
```
### builtin
#### Standard
* `Standard`
GLTF の PBR マテリアルが使用します。
```{admonition} Always Included Shaders
:class: warning
明示的に指定する必要があります
```
#### Unlit
* `Assets\VRMShaders\GLTF\UniUnlit\Resources\UniGLTF\UniUnlit.shader`
```{admonition} Always Included Shaders
`Resources` に配置しているので明示的に指定しなくてもビルドに含まれます。
```
#### MToon
* `Assets\VRMShaders\VRM\MToon\MToon\Resources\Shaders\MToon.shader`
```{admonition} Always Included Shaders
`Resources` に配置しているので明示的に指定しなくてもビルドに含まれます。
```
## テクスチャー変換用のシェーダー
import/export 時に使用します。
:::{note}
ビルトイン/URP の両方で使われます
:::
* `Assets\VRMShaders\GLTF\IO\Resources\UniGLTF\NormalMapExporter.shader`
* `Assets\VRMShaders\GLTF\IO\Resources\UniGLTF\StandardMapExporter.shader`
* `Assets\VRMShaders\GLTF\IO\Resources\UniGLTF\StandardMapImporter.shader`
```{admonition} Always Included Shaders
`Resources` に配置しているので明示的に指定しなくてもビルドに含まれます。
```
## URP package が必要です
未インストールの場合は PackageManager から URP package をインストールしてください
<img height=300 src=https://github.com/vrm-c/UniVRM/assets/68057/a48816d7-7db2-469e-b762-a0951fa8a670>
**エラーメッセージ**
<details>
Shader error in 'VRM10/Universal Render Pipeline/MToon10': Couldn't open include file 'Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl'. at /ghq/github.com/ousttrue/UniVRM-UPM/Library/PackageCache/com.vrmc.vrmshaders@b4130b9e5d/VRM10/MToon10/Resources/VRM10/vrmc_materials_mtoon_render_pipeline.hlsl(5)
Compiling Subshader: 0, Pass: UniversalForward, Vertex program with DIRECTIONAL
Platform defines: SHADER_API_DESKTOP UNITY_ENABLE_DETAIL_NORMALMAP UNITY_ENABLE_REFLECTION_BUFFERS UNITY_LIGHTMAP_FULL_HDR UNITY_LIGHT_PROBE_PROXY_VOLUME UNITY_PBS_USE_BRDF1 UNITY_SPECCUBE_BLENDING UNITY_SPECCUBE_BOX_PROJECTION UNITY_USE_DITHER_MASK_FOR_ALPHABLENDED_SHADOWS
Disabled keywords: FOG_EXP FOG_EXP2 FOG_LINEAR INSTANCING_ON LIGHTMAP_SHADOW_MIXING LIGHTPROBE_SH SHADER_API_GLES30 SHADOWS_SCREEN SHADOWS_SHADOWMASK UNITY_ASTC_NORMALMAP_ENCODING UNITY_COLORSPACE_GAMMA UNITY_ENABLE_NATIVE_SHADOW_LOOKUPS UNITY_FRAMEBUFFER_FETCH_AVAILABLE UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS UNITY_HARDWARE_TIER1 UNITY_HARDWARE_TIER2 UNITY_HARDWARE_TIER3 UNITY_LIGHTMAP_DLDR_ENCODING UNITY_LIGHTMAP_RGBM_ENCODING UNITY_METAL_SHADOWS_USE_POINT_FILTERING UNITY_NO_DXT5nm UNITY_NO_FULL_STANDARD_SHADER UNITY_NO_SCREENSPACE_SHADOWS UNITY_PBS_USE_BRDF2 UNITY_PBS_USE_BRDF3 UNITY_PRETRANSFORM_TO_DISPLAY_ORIENTATION UNITY_UNIFIED_SHADER_PRECISION_MODEL UNITY_VIRTUAL_TEXTURING _ADDITIONAL_LIGHTS _ADDITIONAL_LIGHTS_VERTEX _ALPHABLEND_ON _ALPHATEST_ON _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MTOON_EMISSIVEMAP _MTOON_PARAMETERMAP _MTOON_RIMMAP _NORMALMAP
</details>

View File

@@ -1,95 +0,0 @@
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
# import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))
# -- Project information -----------------------------------------------------
project = "UniVRM Programming"
copyright = "2021, VRM Consortium"
author = "VRM Consortium"
# -- General configuration ---------------------------------------------------
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = ["myst_parser", "gitinclude"]
myst_enable_extensions = [
# "amsmath",
# "attrs_inline",
"colon_fence",
# "deflist",
# "dollarmath",
# "fieldlist",
# "html_admonition",
# "html_image",
"linkify",
# "replacements",
# "smartquotes",
# "strikethrough",
# "substitution",
# "tasklist",
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = "ja"
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = "furo"
html_sidebars = {
"**": [
"sidebar/scroll-start.html",
"language.html",
"sidebar/brand.html",
"sidebar/search.html",
"sidebar/navigation.html",
"sidebar/ethical-ads.html",
"sidebar/scroll-end.html",
],
}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ["_static"]
locale_dirs = ["locale/"]
gettext_compact = False
github_url = "https://github.com/vrm-c/UniVRM"
html_context = {
"language": language,
"display_github": True,
"github_user": "vrm-c",
"github_repo": "UniVRM",
"github_version": "master/docs/",
}

View File

@@ -1,102 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>UniVRM</title>
<style type="text/css">
html,
body {
color: black;
background-color: white;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
main {
display: flex;
justify-content: center;
align-items: center;
flex-grow: 1;
}
.btn {
margin: 1em;
color: white;
background-color: green;
padding: 0.5em;
border-radius: 0.3em;
text-decoration: none;
}
.btn.unity2019 {
background-color: gray;
}
.btn h1 {
text-align: center;
}
.btn h2 {
text-align: center;
}
</style>
</head>
<body>
<main>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v${version}/VRM-${version}_${hash4}.unitypackage"
class="btn"
>
<div>
<h1>VRM-${version}</h1>
<div>for vrm-1.0</div>
<div>${unity_version} or later</div>
</div>
</a>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v${version}/UniVRM-${version}_${hash4}.unitypackage"
class="btn"
>
<div>
<h1>UniVRM-${version}</h1>
<div>for vrm-0.x</div>
<div>${unity_version} or later</div>
</div>
</a>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v0.111.0/UniVRM-0.111.0_b413.unitypackage"
class="btn unity2019"
>
<div>
<h1>UniVRM-0.111.0</h1>
<div>for vrm-0.x</div>
<div>Final version for Unity-2020.3</div>
</div>
</a>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v0.99.4/UniVRM-0.99.4_8d33.unitypackage"
class="btn unity2019"
>
<div>
<h1>UniVRM-0.99.4</h1>
<div>for vrm-0.x</div>
<div>Final version for Unity-2019.4</div>
</div>
</a>
</main>
<nav>
API Document
<ul>
<li>
<a href="./ja/">日本語</a>
</li>
<li>
<a href="./en/">English</a>
</li>
</ul>
</nav>
</body>
</html>

View File

@@ -1,63 +0,0 @@
# 座標系の変換
UniVRMは、インポート・エクスポート時に座標変換を実行しています。
| | 右 | 上 | 前 | 掌性 | UV原点 | |
|-------|----|----|----|------|--------|--------------------------------------------------------|
| Unity | +X | +Y | +Z | 左手 | 左下 | |
| VRM-0 | +X | +Y | -Z | 右手 | 左上 | |
| VRM-1 | -X | +Y | +Z | 右手 | 左上 | |
| glTF | | +Y | | 右手 | 左上 | デフォルトはVRM-0方式。オプションでVRM-1方式を選べます |
## UV
以下のように変換します。
```{math}
V^{\prime} = 1 - V
```
## Unity <-> VRM0
Z軸を反転します。
### Vector3: Position, Normalなど
```csharp
public static Vector3 ReverseZ(this Vector3 v)
{
return new Vector3(v.x, v.y, -v.z);
}
```
### Quaternion: Rotation
```csharp
public static Quaternion ReverseZ(this Quaternion q)
{
float angle;
Vector3 axis;
q.ToAngleAxis(out angle, out axis);
return Quaternion.AngleAxis(-angle, ReverseZ(axis));
}
```
### Matrix: BindMatrices
スケール値が入っているとうまくいきません
```csharp
public static Matrix4x4 ReverseZ(this Matrix4x4 m)
{
#if UNITY_2017_1_OR_NEWER
m.SetTRS(m.GetColumn(3).ReverseZ(), m.rotation.ReverseZ(), Vector3.one);
#else
m.SetTRS(m.ExtractPosition().ReverseZ(), m.ExtractRotation().ReverseZ(), Vector3.one);
#endif
return m;
}
```
## Unity <-> VRM1
X軸を反転します。

View File

@@ -1,17 +0,0 @@
# VRアプリケーションの FirstPerson 設定による Renderer の可視制御
* `isSelf==true` 自分のアバター
* `isSelf==false` 自分以外のアバター
* FP Camera: HMDと連動するカメラ
* TP Camera: それ以外のすべてのカメラ
| isSelf | FirstPerson設定 | FP Camera | TP Camera | レイヤーによる可視制御例 |
|--------|-----------------|-----------|-----------|-----------------------------------------------|
| true | FirstPersonOnly | ✅ | ❌ | FIRSTPERSON |
| true | ThirdPersonOnly | ❌ | ✅ | THIRDPERSON |
| true | Both | ✅ | ✅ | default |
| true | Auto | - | - | Both と ThirdPersonOnly に分割する |
| false | FirstPersonOnly | ❌ | ❌ | 完全に描画されない。Rendererの描画を止める |
| false | ThirdPersonOnly | ✅ | ✅ | default |
| false | Both | ✅ | ✅ | default |
| false | Auto | ✅ | ✅ | default。メッシュ分割など特別な処理は不要 |

View File

@@ -1,99 +0,0 @@
# glbフォーマット概説
JSON記述部と、画像や頂点配列を記録するバイナリ部のつの部分からなります。
gltf形式では、URLやパスで参照する方法で外部のバイナリデータにアクセスします。
glb形式ではJSON部とバイナリ部をひとつのファイルにまとめていて、バイト列のオフセットでバイナリデータにアクセスします。
プログラムから扱うには外部ファイルへのアクセスが無いglb形式の方が簡単[^VRM_glb]です。
[^VRM_glb]: VRMではglbを採用しています。
## glb形式
``ヘッダ部 + チャンク部繰り返し``という構造になっています。
実質的には、
``ヘッダ部 + JSON CHUNk + BINARY CHUNK``となります。
ヘッダ部
| 長さ | 内容 | 型 | 値 |
|:-----|:---------------|:------|:-------|
| 4 | | ascii | "glTF" |
| 4 | gltfバージョン | int32 | 2 |
| 4 | file size | int32 | |
チャンク部
| 長さ | 内容 | 型 | 値 |
|:-----------|:-----------|:---------|:--------------------|
| 4 | chunk size | int32 | |
| 4 | chunk type | ascii | "JSON" or "BIN\x00" |
| chunk size | chunk body | バイト列 | |
### python3によるパース例
```python
import struct
import json
class Reader:
def __init__(self, data: bytes)->None:
self.data = data
self.pos = 0
def read_str(self, size):
result = self.data[self.pos: self.pos + size]
self.pos += size
return result.strip()
def read(self, size):
result = self.data[self.pos: self.pos + size]
self.pos += size
return result
def read_uint(self):
result = struct.unpack('I', self.data[self.pos:self.pos + 4])[0]
self.pos += 4
return result
def parse_glb(data: bytes):
reader = Reader(data)
magic = reader.read_str(4)
if magic != b'glTF':
raise Exception(f'magic not found: #{magic}')
version = reader.read_uint()
if version != 2:
raise Exception(f'version:#{version} is not 2')
size = reader.read_uint()
size -= 12
json_str = None
body = None
while size > 0:
#print(size)
chunk_size = reader.read_uint()
size -= 4
chunk_type = reader.read_str(4)
size -= 4
chunk_data = reader.read(chunk_size)
size -= chunk_size
if chunk_type == b'BIN\x00':
body = chunk_data
elif chunk_type == b'JSON':
json_str = chunk_data
else:
raise Exception(f'unknown chunk_type: {chunk_type}')
return json.loads(json_str), body
with open('AliciaSolid.vrm', 'rb') as f:
parsed, body = parse_glb(f.read())
```

View File

@@ -1,13 +0,0 @@
# 実装メモ
```{toctree}
:maxdepth: 1
runtime_resource_management
texture_manipulation
coordinate
first_person
scripted_importer
transparent_zwrite
format
```

View File

@@ -1,53 +0,0 @@
# Runtime のリソース管理について
Runtime Import で `Texture`, `Material`, `Mesh` などのリソースを Root の `GameObject.OnDestroy`
と同時に `UnityEngine.Object.Destroy` したい。
## RuntimeGltfInstance
`RuntimeGltfInstance.OnDestroy` で破棄を実行するようにした。
```
ImporterContext
[Own]List<Mesh>
AnimationClipFactory[Own]List<Animation>
TextureFactory[Own]List<Texture>
MaterialFactory[Own]List<Material>
👇 ImporterContext.LoadAsync
RuntimeGltfInstance.AttachTo
ImporterContext.TransferOwnership
RuntimeGltfInstance
[Own]List<Mesh>
[Own]List<Animation>
[Own]List<Texture>
[Own]List<Material>
```
> VRM-0.X では `RuntimeGltfInstance` にリソースを委譲している。
## Vrm10Instance
```
Vrm10Importer
[Own]HumanoidAvatar
[Own]Vrm10Object
[Own]List<Vrm10Expression>
👇 Vrm10Importer.LoadAsync
RuntimeGltfInstance
[Own]HumanoidAvatar
[Own]VrmObject
[Own]List<VrmExpression>
```
### FirstPerson
```
👇 Vrm10Instance.FirstPerson.SetupAsync
RuntimeGltfInstance
[Own]List<Mesh>.Add(headless)
```

View File

@@ -1,39 +0,0 @@
# ScriptedImporter の実装
`v0.68.0` 以降 の `glb/gltf editor importer``VRM-1.0 editor importer` の実装で使用している [ScriptedImporter](https://docs.unity3d.com/ja/2019.4/ScriptReference/Experimental.AssetImporters.ScriptedImporter.html) に関して。
> `VRM-1.0` の実装と拡張子がぶつかってしまうので `VRM-0.x` への `ScriptedImporter` 実装はしません
## ScriptedImporter 採用の利点
### Texture の Asset化 が楽
`AssetPostprocessor` だと普通の方法では実装できない Texture のバイト列を出力して Asset 化して、
これを参照する Material をアセット化するということが、
`ScriptedImporter.GetExternalObjectMap` により無理をせずに実装できます。
> UniVRM では抜け道として `EditorApplication.delayCall` を使用しています。
### Import 設定を作れる
`ScriptedImporter` を継承したクラスの `public member``[SerializeField]` に情報を保存できます。
```csharp
// 例
[ScriptedImporter(1, "cube")]
public class CubeImporter : ScriptedImporter
{
public float m_Scale = 1; // これを Asset の Inspector で変更して Apply すると、新しい設定で再importできる
// 省略
}
```
### ForceText 時に import が低速化するのを回避できる
`ScriptedImporter` の SubAsset にすることで、 `mesh` などがテキスト(yaml)で Asset 化されることを回避できます。
巨大なアセットで差が出ます。
## ScriptedImporter 実装
TODO: ExternalObjectMap の扱い

View File

@@ -1,65 +0,0 @@
# Texture関連
## Unity の linear の テクスチャーの挙動について
### Runtime
new する場合は、
```csharp
var texture = new Texture2D(width, height, format, mipChain, linear = true);
```
とする。
### Editor(Asset)
AssetFolder の png/jpg からloadする場合は、
事前に設定が必用。
```csharp
var textureImporter = AssetImporter.GetAtPath(assetPath) as TextureImporter;
textureImporter.sRGBTexture = false; // Linear
textureImporter.SaveAndReimport();
// linear でロードされます
var texture =AssetDatabase.LoadAssetAtPath<Texture2D>(assetPath);
```
## Unity の NormalMap の挙動について
> MToon の NormalMap も同じ
### Runtime
new する場合は、
```csharp
var texture = new Texture2D(width, height, format, mipChain, linear = true);
```
とする。
また、 `DXT5nm` という仕様で格納する必要があるので変換します。
y と w の2要素だけを使います。
```hlsl
half4 normal;
normal.x = 1.0;
normal.y = col.y;
normal.z = 1.0;
normal.w = col.x;
```
### Editor(Asset)
AssetFolder の png/jpg からloadする場合は、
ロードする前に設定が必用。
```csharp
var textureImporter = AssetImporter.GetAtPath(assetPath) as TextureImporter;
textureImporter.textureType = TextureImporterType.NormalMap; // normalMap
textureImporter.SaveAndReimport();
// DXT5nm でロードされます。
var texture =AssetDatabase.LoadAssetAtPath<Texture2D>(assetPath);
```

View File

@@ -1,26 +0,0 @@
# UnlitTransparentZWrite
対応状況。
| UniVRM | export | import | comment |
|-------------------------------------|--------|--------|----------------------------------------------------------------------------------------------------------------------|
| | ✅ | ✅ | GLTFの仕様外で MToon でもないので仕様の無い存在に。 |
| {doc}`v0.44 </release/055/v0.44>` | ❌ | ✅ | MToon のみを extensions.VRM に記述し、 `PBR``Unilt` は GLTF として記録する。 |
| {doc}`v0.76 </release/068/v0.76.0>` | ❌ | ❌ | [\#1004](https://github.com/vrm-c/UniVRM/pull/1004) 仕様外のため削除。import すると MToon になるが調整されていない。 |
| {doc}`v0.85 </release/079/v0.85.0>` | ❌ | 🔺 | [\#1248](https://github.com/vrm-c/UniVRM/pull/1248) import すると MToon になる。 |
| {doc}`v0.88 </release/079/v0.88.0>` | ❌ | ✅ | [\#1331](https://github.com/vrm-c/UniVRM/pull/1331) MToon 変換を見直し。 |
* `UniVRM-0.75` 以前はロードできます。
* `UniVRM-0.88` 以降は見た目が同様になるように MToon に変換されます。
* 新規に `ZWriteTransparent` にしたい場合は、 `MToon` を使用してください。
## MToon を Unlit 的に設定する
Emission を使うのがこつです。
- _MainTex: 元の _MainTex
- _Color: (0, 0, 0, 1)
- _ShadeTex: null
- _ShadeColor: (0, 0, 0, 1)
- _EmissiveMap: 元の _MainTex
- _Emission: (1, 1, 1, 1)

View File

@@ -1,102 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>UniVRM</title>
<style type="text/css">
html,
body {
color: black;
background-color: white;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
main {
display: flex;
justify-content: center;
align-items: center;
flex-grow: 1;
}
.btn {
margin: 1em;
color: white;
background-color: green;
padding: 0.5em;
border-radius: 0.3em;
text-decoration: none;
}
.btn.unity2019 {
background-color: gray;
}
.btn h1 {
text-align: center;
}
.btn h2 {
text-align: center;
}
</style>
</head>
<body>
<main>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v0.117.0/VRM-0.117.0_0.11.unitypackage"
class="btn"
>
<div>
<h1>VRM-0.117.0</h1>
<div>for vrm-1.0</div>
<div>2021.3 LTS or later</div>
</div>
</a>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v0.117.0/UniVRM-0.117.0_0.11.unitypackage"
class="btn"
>
<div>
<h1>UniVRM-0.117.0</h1>
<div>for vrm-0.x</div>
<div>2021.3 LTS or later</div>
</div>
</a>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v0.111.0/UniVRM-0.111.0_b413.unitypackage"
class="btn unity2019"
>
<div>
<h1>UniVRM-0.111.0</h1>
<div>for vrm-0.x</div>
<div>Final version for Unity-2020.3</div>
</div>
</a>
<a
href="https://github.com/vrm-c/UniVRM/releases/download/v0.99.4/UniVRM-0.99.4_8d33.unitypackage"
class="btn unity2019"
>
<div>
<h1>UniVRM-0.99.4</h1>
<div>for vrm-0.x</div>
<div>Final version for Unity-2019.4</div>
</div>
</a>
</main>
<nav>
API Document
<ul>
<li>
<a href="./ja/">日本語</a>
</li>
<li>
<a href="./en/">English</a>
</li>
</ul>
</nav>
</body>
</html>

View File

@@ -1,23 +0,0 @@
# UniVRM Programming Document
```{toctree}
:caption: Development
:maxdepth: 1
api/index
build
implementation/index
vrm1/index
```
```{toctree}
:caption: Other
:maxdepth: 1
release/index
unihumanoid/index
```
```{toctree}
:caption: external
UniVRM(github) <https://github.com/vrm-c/UniVRM>
VRM <https://vrm.dev/>
```

View File

@@ -1,67 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-13 14:20+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../README.md:4
msgid "Sphinx 作業"
msgstr ""
#: ../../README.md:6
msgid "初期化"
msgstr ""
#: ../../README.md:15
msgid "`docs/_build/ja` に日本語ドキュメントを出力する"
msgstr ""
#: ../../README.md:20
msgid "MySt 導入"
msgstr ""
#: ../../README.md:22
msgid "markdown で記事を記述する"
msgstr ""
#: ../../README.md:28 ../../README.md:39
msgid "conf.py"
msgstr ""
#: ../../README.md:33
msgid "gettext 導入"
msgstr ""
#: ../../README.md:45
msgid "gettext 更新"
msgstr ""
#: ../../README.md:47
msgid "potファイル作成"
msgstr ""
#: ../../README.md:53
msgid "poファイルを作成"
msgstr ""
#: ../../README.md:59
msgid "ロケールを使ってサイトビルド"
msgstr ""
#~ msgid "gettext で英語記事を作成する"
#~ msgstr ""

View File

@@ -1,51 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-11 15:28+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_106_spring_manual_update.md:1
#, fuzzy
msgid "`v0.106` SpringBone の手動更新"
msgstr "v0.106 SpringBone manual update"
#: ../../api/0_106_spring_manual_update.md:3
msgid "from {doc}`v0.106.0</release/100/v0.106.0>`"
msgstr ""
#: ../../api/0_106_spring_manual_update.md:5
msgid "[\\#1866](https://github.com/vrm-c/UniVRM/pull/1886)"
msgstr ""
#: ../../api/0_106_spring_manual_update.md:7
msgid "VRMSpringBone.SpringBoneUpdateType.Manual を追加"
msgstr "Added VRMSpringBone.SpringBoneUpdateType.Manual"
#: ../../api/0_106_spring_manual_update.md:8
msgid "VRMSpringBone.ManualUpdate を追加"
msgstr "Added VRMSpringBone.ManualUpdate"
#: ../../api/0_106_spring_manual_update.md:10
msgid "以下のように呼び出すことができます。"
msgstr "You can call it like this:"
#: ../../api/0_106_spring_manual_update.md:22
msgid "spring.ManualUpdate を使う前に spring.m_updateType を `Manual` に設定する必要があります。"
msgstr ""
"You need to set spring.m_updateType to `Manual` before using "
"spring.ManualUpdate."

View File

@@ -1,56 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_36_update.md:1
msgid "`v0.36` GltfUpdate"
msgstr ""
#: ../../api/0_36_update.md:3
msgid "テクスチャ名の格納位置の修正"
msgstr ""
#: ../../api/0_36_update.md:5 ../../api/0_36_update.md:22
msgid "GLTFの仕様に準拠しました。"
msgstr ""
#: ../../api/0_36_update.md:7 ../../api/0_36_update.md:24
msgid "extraはextrasの間違い"
msgstr ""
#: ../../api/0_36_update.md:8
msgid "imageはnameを持っていた"
msgstr ""
#: ../../api/0_36_update.md:14 ../../api/0_36_update.md:32
msgid "変更後"
msgstr ""
#: ../../api/0_36_update.md:20
msgid "ブレンドシェイプ名の格納位置の修正"
msgstr ""
#: ../../api/0_36_update.md:25
msgid "targetにextrasは不許可"
msgstr ""
#: ../../api/0_36_update.md:26
msgid "https://github.com/KhronosGroup/glTF/issues/1036#issuecomment-314078356"
msgstr ""

View File

@@ -1,80 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_44_runtime_import.md:1
msgid "`v0.44` RuntimeImport"
msgstr ""
#: ../../api/0_44_runtime_import.md:3
msgid "`Version 0.44` LoadAsyncの例"
msgstr ""
#: ../../api/0_44_runtime_import.md:28
msgid "LoadAsyncTaskを使う例"
msgstr ""
#: ../../api/0_44_runtime_import.md:65
msgid "関連する記事など"
msgstr ""
#: ../../api/0_44_runtime_import.md:67
msgid "こちらの記事がわかりやすいです。"
msgstr ""
#: ../../api/0_44_runtime_import.md:69
msgid "[UniVRMを使ってVRMモデルをランタイムロードする方法](https://qiita.com/sh_akira/items/8155e4b69107c2a7ede6)"
msgstr ""
#: ../../api/0_44_runtime_import.md:72
msgid "最新バージョンは[こちら]({{< relref \"runtime_import.md\" >}})をご覧ください。"
msgstr ""
#: ../../api/0_44_runtime_import.md:74
msgid "Unityで実行時にモデルをインポートする方法です。"
msgstr ""
#: ../../api/0_44_runtime_import.md:76
msgid "ファイルパスからVRMを開く"
msgstr ""
#: ../../api/0_44_runtime_import.md:84
msgid "ファイルパスから非同期にVRMを開く"
msgstr ""
#: ../../api/0_44_runtime_import.md:93
msgid "バイト列からVRM開く"
msgstr ""
#: ../../api/0_44_runtime_import.md:101
msgid "バイト列から非同期にVRMを開く"
msgstr ""
#: ../../api/0_44_runtime_import.md:109
msgid "VRMから情報を取り出す"
msgstr ""
#: ../../api/0_44_runtime_import.md:156
msgid "Thumbnailを取得する(v0.37から)"
msgstr ""
#: ../../api/0_44_runtime_import.md:158
msgid "ReadMetaに引数を渡すことでThumbnailテクスチャを作成できます。"
msgstr ""

View File

@@ -1,255 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_58_blendshape.md:1
msgid "`v0.58` BlendShapeProxy"
msgstr ""
#: ../../api/0_58_blendshape.md:3
msgid "BlendShapeKeyのインタフェースを厳格化、整理"
msgstr ""
#: ../../api/0_58_blendshape.md:5
msgid "BlendShapeKeyを作成する方法が不明瞭だったため、 より明示的な API に置き換えました。"
msgstr ""
#: ../../api/0_58_blendshape.md:8
msgid "BlendShapeClip.Key 追加"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "arguments"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "before"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "after"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "備考"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "string name, BlendShapePreset preset"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "public constructor"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "private constructor"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid ""
"BlendShapePreset.Unknownのときの挙動が不明瞭だった。代わりに、CreateFromPreset または "
"CreateUnknown を使用してください"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "BlendShapeClip"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "BlendShapeKey.CreateFrom"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "BlendShapeKey.CreateFromClip"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "他の関数に合わせて、名前を変更"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "BlendShapePreset"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "BlendShapeKey.CreateFromPreset"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "オーバーロードをやめて明示的な関数に変更"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "string"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "BlendShapeKey.CreateUnknown"
msgstr ""
#: ../../api/0_58_blendshape.md
msgid "オーバーロードをやめて明示的な関数に変更。"
msgstr ""
#: ../../api/0_58_blendshape.md:17
msgid "使用するメソッド"
msgstr ""
#: ../../api/0_58_blendshape.md:19
msgid "[推奨] `SetValues`"
msgstr ""
#: ../../api/0_58_blendshape.md:20
msgid "[非推奨] `ImmediatelySetValue`"
msgstr ""
#: ../../api/0_58_blendshape.md:21
msgid "[上級者向け] `AccumulateValue`"
msgstr ""
#: ../../api/0_58_blendshape.md:22
msgid "[上級者向け] `Apply`"
msgstr ""
#: ../../api/0_58_blendshape.md:24
msgid "スクリプトから BlendShape weight を適用する"
msgstr ""
#: ../../api/0_58_blendshape.md:26
msgid ""
"`SetValues` 関数のみを使用します。 そのフレームで必要な表情の weight 値をすべて集めてから `SetValues` を 1 "
"回だけ呼んで設定します。"
msgstr ""
#: ../../api/0_58_blendshape.md:40
msgid "複数の BlendShape weight を適用する際の競合の問題について"
msgstr ""
#: ../../api/0_58_blendshape.md:42
msgid "この節では、なぜ `SetValues` を使わなければならないのかという疑問に回答します。"
msgstr ""
#: ../../api/0_58_blendshape.md:44
msgid "たとえば 2 つの VRMBlendShape `Blink_L` と `Blink_R` が"
msgstr ""
#: ../../api/0_58_blendshape.md:46
msgid "VRMBlendShape `Blink_L`"
msgstr ""
#: ../../api/0_58_blendshape.md:48
msgid "Mesh `A` の Blendshape `eye_close_L` の weight 値 `100`"
msgstr ""
#: ../../api/0_58_blendshape.md:49
msgid "Mesh `A` の Blendshape `eye_close_R` の weight 値 `1`"
msgstr ""
#: ../../api/0_58_blendshape.md:51
msgid "VRMBlendShape `Blink_R`"
msgstr ""
#: ../../api/0_58_blendshape.md:53
msgid "Mesh `A` の Blendshape `eye_close_L` の weight 値 `1`"
msgstr ""
#: ../../api/0_58_blendshape.md:54
msgid "Mesh `A` の Blendshape `eye_close_R` の weight 値 `100`"
msgstr ""
#: ../../api/0_58_blendshape.md:56
msgid "で定義されているとします。 このとき両目を閉じたいモチベーションから、両方を有効にする意図で下記のように実行します。"
msgstr ""
#: ../../api/0_58_blendshape.md:64
msgid ""
"すると、左目だけが開いてしまいます。 これは後から `ImmediateSetValue` した `Blink_R` が `Blink_L` "
"と競合して weight を上書きしてしまうからです。 したがって VRM の表情制御においては下記の 2 "
"通りのどちらかの方法で書くことが求められます。 これらの方法はこの競合の問題を解決して表情を設定することができます。"
msgstr ""
#: ../../api/0_58_blendshape.md:77
msgid "または"
msgstr ""
#: ../../api/0_58_blendshape.md:85
msgid "WIP"
msgstr ""
#: ../../api/0_58_blendshape.md:87
msgid "何故、複数のSetterがあるのか"
msgstr ""
#: ../../api/0_58_blendshape.md:89
msgid "LipSync"
msgstr ""
#: ../../api/0_58_blendshape.md:90
msgid "瞬き"
msgstr ""
#: ../../api/0_58_blendshape.md:91
msgid "視線制御(BlendShapeで視線を動かすタイプのモデル)"
msgstr ""
#: ../../api/0_58_blendshape.md:92
msgid "プログラムによる喜怒哀楽"
msgstr ""
#: ../../api/0_58_blendshape.md:94
msgid ""
"上記のような複数のBlendShapeが別々のコンポーネントから設定された場合に、 BlendShape同士が競合することがわかりました。 "
"後で設定した値で上書きされて希望のBlendShapeが適用されないという状態になります。 "
"これを解決するために、一か所で中央集権的に制御する必要があります。"
msgstr ""
#: ../../api/0_58_blendshape.md:99
msgid "合成したり排他制御した、BlendShapeClipの集合のスナップショットをまとめて適用することを想定して `SetValues`"
msgstr ""
#: ../../api/0_58_blendshape.md:101
msgid "ImmediatelySetValue"
msgstr ""
#: ../../api/0_58_blendshape.md:103
msgid "簡単なテストプログラムでの利用を想定しています。"
msgstr ""
#: ../../api/0_58_blendshape.md:105 ../../api/0_58_blendshape.md:115
#: ../../api/0_58_blendshape.md:131
msgid "例:"
msgstr ""
#: ../../api/0_58_blendshape.md:113
msgid "AccumulateValue + Apply"
msgstr ""
#: ../../api/0_58_blendshape.md:125
msgid "下記のSetValuesを推奨しています。"
msgstr ""
#: ../../api/0_58_blendshape.md:127
msgid "SetValues"
msgstr ""
#: ../../api/0_58_blendshape.md:129
msgid "BlendShape合成器が必要に応じ呼び出すことを想定しています。"
msgstr ""

View File

@@ -1,86 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_68_runtime_import.md:1
msgid "`v0.68` RuntimeImport DisposeOnGameObjectDestroyed(obsolete)"
msgstr ""
#: ../../api/0_68_runtime_import.md:3
msgid "過去バージョンからの仕様変更"
msgstr ""
#: ../../api/0_68_runtime_import.md:5
msgid "`ImporterContext` の仕様を変更しました。"
msgstr ""
#: ../../api/0_68_runtime_import.md:7
msgid "ロード処理が Parse と Load の 2 ステップに分かれました。"
msgstr ""
#: ../../api/0_68_runtime_import.md:8
msgid "Parse 処理をメインスレッド以外で処理することができます。"
msgstr ""
#: ../../api/0_68_runtime_import.md:9
msgid "非同期ロード関数 `ImporterContext.LoadAsync` の実装を `Task` に変更しました。"
msgstr ""
#: ../../api/0_68_runtime_import.md:10
msgid "これまで明示的に破棄できなかった `UnityEngine.Object` リソースを破棄できるようになりました。"
msgstr ""
#: ../../api/0_68_runtime_import.md:11
msgid "リソースのリークを防ぐことができます。"
msgstr ""
#: ../../api/0_68_runtime_import.md:12
msgid "`ImporterContext.Dispose` を呼び出すべきタイミングを「ロード処理終了時」に変更しました。"
msgstr ""
#: ../../api/0_68_runtime_import.md:13
msgid "呼び出して破棄する前に、後述の `ImporterContext.DisposeOnGameObjectDestroyed` を呼び出してください。"
msgstr ""
#: ../../api/0_68_runtime_import.md:14
msgid "以前の仕様は「生成したモデルの破棄時」に呼び出すべき関数でした。"
msgstr ""
#: ../../api/0_68_runtime_import.md:15
msgid "`ImporterContext.DisposeOnGameObjectDestroyed` 関数を追加しました。"
msgstr ""
#: ../../api/0_68_runtime_import.md:16
msgid ""
"VRM モデルが必要とするリソース (Texture, Material, Mesh, etc) を破棄する責務を GameObject "
"に移譲できます。"
msgstr ""
#: ../../api/0_68_runtime_import.md:17
msgid "VRM の GameObject の破棄タイミングでリソース (Texture, Material, Mesh, etc) を破棄します。"
msgstr ""
#: ../../api/0_68_runtime_import.md:20
msgid "サンプルコード(同期的ロード)"
msgstr ""
#: ../../api/0_68_runtime_import.md:88
msgid "サンプルコード(非同期ロード)"
msgstr ""

View File

@@ -1,128 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-12 13:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_76_texture_deserializer.md:1
msgid "`v0.76` ITextureDeserializer(テクスチャーローダー)"
msgstr "`v0.76` ITextureDeserializer(Texture Loader)"
#: ../../api/0_76_texture_deserializer.md:3
msgid "このインタフェースを使うと, glTF のテクスチャーをロードして Unity の Texture2D を作成する工程をカスタマイズできます。"
msgstr "This interface allows you to customize texture loading."
#: ../../api/0_76_texture_deserializer.md:5
msgid "UnityTextureDeserializer"
msgstr ""
#: ../../api/0_76_texture_deserializer.md:7
msgid "UniVRM が使用するデフォルトの実装は `UnityTextureDeserializer` です。"
msgstr "UniVRM default implementation is `UnityTextureDeserializer`."
#: ../../api/0_76_texture_deserializer.md:9
msgid "<https://github.com/vrm-c/UniVRM/blob/master/Assets/VRMShaders/GLTF/IO/Runtime/Texture/Importer/UnityTextureDeserializer.cs>"
msgstr ""
#: ../../api/0_76_texture_deserializer.md:11
msgid ""
"[ImageConversion.LoadImage](https://docs.unity3d.com/ja/2020.3/ScriptReference/ImageConversion.LoadImage.html)"
" を使用して `png` や `jpeg` から Texture2D に変換します。"
msgstr ""
"[ImageConversion.LoadImage](https://docs.unity3d.com/ja/2020.3/ScriptReference/ImageConversion.LoadImage.html)can"
" be used to load `png` and `jpeg`."
#: ../../api/0_76_texture_deserializer.md:13
msgid "ITextureDeserializer でパフォーマンスを改善"
msgstr "Improve performance with ITextureDeserializer"
#: ../../api/0_76_texture_deserializer.md:1
msgid "Texture2D の生成には複数のステップがあります。"
msgstr "Generating a Texture2D has multiple steps."
#: ../../api/0_76_texture_deserializer.md:3
msgid "`png` や `jpeg` から `raw pixel` を取り出す"
msgstr "Extract `raw pixel` from `png` or `jpeg`"
#: ../../api/0_76_texture_deserializer.md:4
msgid "取り出した `raw pixel` を使って `Texture2D` を作成する"
msgstr "Create a `Texture2D` using the extracted `raw pixel`"
#: ../../api/0_76_texture_deserializer.md:6
msgid "前者をスレッドに乗せて非同期処理にすることで パフォーマンスを向上させる余地があります。"
msgstr ""
"Performance can be improved by putting the raw pixel fetch on a thread to make it asynchronous."
#: ../../api/0_76_texture_deserializer.md:1
msgid ""
"`ImageConversion.LoadImage` は `raw pixel` 取り出しと `Texture2D` 作成を一度に実行し、 "
"その間メインスレッドをブロックします。 大きなテクスチャーや大量のテクスチャーをロードすると画面が固まりやすくなります。"
msgstr ""
"`ImageConversion.LoadImage` performs `raw pixel` extraction and `Texture2D` creation at once, "
"It blocks the main thread for the duration. "
"If you load a large texture or a large amount of textures, the screen tends to freeze."
#: ../../api/0_76_texture_deserializer.md:29
msgid "ITextureDeserializer で対応する画像形式を拡張する"
msgstr "Extend supported image formats with ITextureDeserializer"
#: ../../api/0_76_texture_deserializer.md:1
msgid "通常の `glTF` はテクスチャー画像として `png` と `jpeg` を格納できます。"
msgstr "`glTF` can store `png` and `jpeg` as texture images."
#: ../../api/0_76_texture_deserializer.md:3
msgid ""
"もし、`EXT_texture_webp` `KHR_texture_basisu` などで別の形式の画像を利用する場合は "
"`ITextureDeserializer` で対応可能です。"
msgstr ""
"If you want to use another format image with `EXT_texture_webp` `KHR_texture_basisu` etc. "
"It can be handled by `ITextureDeserializer`."
#: ../../api/0_76_texture_deserializer.md:36
msgid "差し替え方法"
msgstr "Replacement method"
#: ../../api/0_76_texture_deserializer.md:38
msgid "`new UniGLTF.ImporterContext` の引き数で指定することができます。"
msgstr "`new UniGLTF.ImporterContext` Arguments can be specified."
#: ../../api/0_76_texture_deserializer.md:48
msgid "`new VRM.VRMImporterContext` の引き数で指定することができます。"
msgstr "`new VRM.VRMImporterContext` Arguments can be specified."
#: ../../api/0_76_texture_deserializer.md:59
msgid "`new UniVRM10.Vrm10Importer` の引き数で指定することができます。"
msgstr "`new UniVRM10.Vrm10Importer` Arguments can be specified."
#: ../../api/0_76_texture_deserializer.md:71
msgid "UnityAsyncImageLoader に置き換える例"
msgstr "Example to replace with UnityAsyncImageLoader"
#: ../../api/0_76_texture_deserializer.md:73
msgid "ISSUE に使用例をいただきました。"
msgstr "I got a usage example in ISSUE."
#: ../../api/0_76_texture_deserializer.md:75
msgid "<https://github.com/vrm-c/UniVRM/issues/1982>"
msgstr ""
#: ../../api/0_76_texture_deserializer.md:77
msgid "[UnityAsyncImageLoader](https://github.com/Looooong/UnityAsyncImageLoader)を使ってパフォーマンスを向上できます。"
msgstr ""
"You can use "
"[UnityAsyncImageLoader](https://github.com/Looooong/UnityAsyncImageLoader)"
" to improve performance."

View File

@@ -1,62 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_77_runtime_import.md:1
msgid "`v0.77` RuntimeImport RuntimeGltfInstance"
msgstr ""
#: ../../api/0_77_runtime_import.md:3
msgid "[DisposeOnGameObjectDestroyed](https://github.com/vrm-c/UniVRM/issues/1018)"
msgstr ""
#: ../../api/0_77_runtime_import.md:5
msgid "`ImporterContext` の仕様を変更しました。"
msgstr ""
#: ../../api/0_77_runtime_import.md:7
msgid ""
"`Version 0.68` で導入した、 `ImporterContext.DisposeOnGameObjectDestroyed` "
"が扱いづらかったためのでこれを取りやめ、 `ImporterContext.Load` が `RuntimeGltfInstance` "
"を返すようにしました。"
msgstr ""
#: ../../api/0_77_runtime_import.md:10
msgid "`RuntimeGltfInstance` は、 `ImporterContext` の"
msgstr ""
#: ../../api/0_77_runtime_import.md:12
msgid "Root"
msgstr ""
#: ../../api/0_77_runtime_import.md:13
msgid "EnableUpdateWhenOffscreen()"
msgstr ""
#: ../../api/0_77_runtime_import.md:14
msgid "ShowMeshes()"
msgstr ""
#: ../../api/0_77_runtime_import.md:16
msgid ""
"を引き継ぎます。 Load の呼び出し後の任意のタイミングで ImporterContext.Dispose で Importer "
"を破棄してください。 任意のタイミングで RuntimeGltfInstance を Destory することで紐づくリソース (Texture,"
" Material, Mesh, etc) も破棄されます。"
msgstr ""

View File

@@ -1,28 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_79_runtime_import.md:1
msgid "`v0.79` RuntimeImport GltfData"
msgstr ""
#: ../../api/0_79_runtime_import.md:3
msgid "`GltfParser` と `GltfData` の分割"
msgstr ""

View File

@@ -1,109 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_82_glb_import.md:1
msgid "`v0.82.1` GlbImport GltfData"
msgstr ""
#: ../../api/0_82_glb_import.md:3
msgid "以下のステップでロードします。"
msgstr "Load it in the following steps."
#: ../../api/0_82_glb_import.md:5
msgid "`GLB` / `GLTF` をパースして `GltfData` を得る。"
msgstr "Parse `GLB` / `GLTF` to get `GltfData`."
#: ../../api/0_82_glb_import.md:6
msgid ""
"`GltfData` から `Unity Hierarchy` を ロード する。`RuntimeGltfInstance` を得る。 "
"ローダーを破棄する。"
msgstr "Load the `Unity Hierarchy` from `GltfData`. Get a `RuntimeGltfInstance`."
"Destroy the loader."
#: ../../api/0_82_glb_import.md:7
msgid "ロードした `RuntimeGltfInstance` 使う。`RuntimeGltfInstance` を破棄する。"
msgstr "Use the loaded `RuntimeGltfInstance`. Destroy `RuntimeGltfInstance`."
#: ../../api/0_82_glb_import.md:9
msgid "1. パースする"
msgstr "1. Parse"
#: ../../api/0_82_glb_import.md:11
msgid "glb ファイルパスからパースする"
msgstr "Parse from glb file path"
#: ../../api/0_82_glb_import.md:13 ../../api/0_82_glb_import.md:24
msgid "`vrm` もこの関数を使います。"
msgstr "`vrm` also uses this function."
#: ../../api/0_82_glb_import.md:22
msgid "glb バイト列をパースする"
msgstr "parse glb bytes"
#: ../../api/0_82_glb_import.md:33
msgid "gltf ファイルパスからパースする"
msgstr "Parse from gltf file path"
#: ../../api/0_82_glb_import.md:42
msgid "zip アーカイブからパースする"
msgstr "Parse from zip archive"
#: ../../api/0_82_glb_import.md:44
msgid "gltf と関連するファイルを zip アーカイブしたファイルをパースできます(実験)。"
msgstr "Can parse zip archives of gltf and related files (experimental)."
#: ../../api/0_82_glb_import.md:53
msgid "ファイルパスの拡張子でパースする"
msgstr "Parse by file path extension"
#: ../../api/0_82_glb_import.md:55
msgid "サンプルの `SimpleViewer` を参考にしてください。"
msgstr "Please refer to the sample `SimpleViewer`."
#: ../../api/0_82_glb_import.md:65
msgid "2. ロードする"
msgstr "2. Load glb and get instance"
#: ../../api/0_82_glb_import.md:67
msgid "sync"
msgstr ""
#: ../../api/0_82_glb_import.md:82
msgid "async"
msgstr ""
#: ../../api/0_82_glb_import.md:97
msgid "materialGenerator で URP 用のマテリアルをロードする"
msgstr "Load materials for URP with materialGenerator"
#: ../../api/0_82_glb_import.md:99
msgid ""
"{doc}`Import 時に生成される Material をカスタマイズする "
"<how_to_customize_material_import>`"
msgstr "{doc}`Customizing Materials generated during Import"
"<how_to_customize_material_import>`"
#: ../../api/0_82_glb_import.md:101
msgid "3. インスタンスを使用する"
msgstr "3. Use the instance"
#: ../../api/0_82_glb_import.md:110
msgid "使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。"
msgstr "Discard after use as follows. Associated Assets (Textures, Materials, Meshes, etc.) are also destroyed."

View File

@@ -1,86 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_82_runtime_import.md:1
msgid "`v0.82.1` RuntimeImport VRMData"
msgstr ""
#: ../../api/0_82_runtime_import.md:3
msgid "以下の手順で import します。"
msgstr ""
#: ../../api/0_82_runtime_import.md:5
msgid "VRMをパースして、`GltfData` を得る。"
msgstr ""
#: ../../api/0_82_runtime_import.md:6
msgid "`GltfData` から `VRMData` を得る。"
msgstr ""
#: ../../api/0_82_runtime_import.md:7
msgid "`VrmData` から `RuntimeGltfInstance` をロードする。"
msgstr ""
#: ../../api/0_82_runtime_import.md:8
msgid "`RuntimeGltfInstance` を使う。"
msgstr ""
#: ../../api/0_82_runtime_import.md:10
msgid "サンプルの `Assets\\VRM\\Samples\\SimpleViewer\\ViewerUI.cs` も参照してください。"
msgstr ""
#: ../../api/0_82_runtime_import.md:12
msgid "1. `GltfData` を得る"
msgstr ""
#: ../../api/0_82_runtime_import.md:21
msgid "[GLB import](0_82_glb_import.md) も参照してください。"
msgstr ""
#: ../../api/0_82_runtime_import.md:23
msgid "2. `VRMData` を得る"
msgstr ""
#: ../../api/0_82_runtime_import.md:29
msgid "3. Load する"
msgstr ""
#: ../../api/0_82_runtime_import.md:43
msgid "URP 向けに `materialGenerator` を指定する(実験)"
msgstr ""
#: ../../api/0_82_runtime_import.md:45
msgid ""
"`materialGenerator` 引き数(省略可能)を指定することで URP マテリアルを生成するようにカスタムできます。 指定しない場合は"
" `built-in` 向けのデフォルトが使用されます。"
msgstr ""
#: ../../api/0_82_runtime_import.md:60
msgid "まだ URP 向け MToonShader が作成されていないので、`UniUnlit` にフォールバックします。"
msgstr ""
#: ../../api/0_82_runtime_import.md:62
msgid "4. Instance"
msgstr ""
#: ../../api/0_82_runtime_import.md:71
msgid "使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。"
msgstr ""

View File

@@ -1,68 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_87_runtime_import.md:1
msgid "`v0.87` RuntimeImport 非同期ロード"
msgstr ""
#: ../../api/0_87_runtime_import.md:3
msgid "awaitCaller 引き数"
msgstr ""
#: ../../api/0_87_runtime_import.md:9
msgid "awaitCaller によりロード時の挙動をカスタマイズできます。"
msgstr ""
#: ../../api/0_87_runtime_import.md:16
msgid "NextFrame: 処理を中断して次のフレームで再開します。ロード処理が長い場合に長時間アプリケーションが固まることを防ぎます"
msgstr ""
#: ../../api/0_87_runtime_import.md:17
msgid ""
"Run: UnityEngine.Object にアクセスしない処理を別スレッドで実行します。タスクが終了したら await で Unity "
"Script スレッドで続きを実行します。"
msgstr ""
#: ../../api/0_87_runtime_import.md:19
msgid "ImmediateCaller"
msgstr ""
#: ../../api/0_87_runtime_import.md:21
msgid ""
"デフォルトでは、`ImmediateCaller` が使われます。 `ImmediateCaller` "
"タスクを即時に実行するので、同期実行となります。"
msgstr ""
#: ../../api/0_87_runtime_import.md:24
msgid "Play(Editor Play, build), Editor(not play), UnitTest でデッドロックしないための実装です。"
msgstr ""
#: ../../api/0_87_runtime_import.md:31
msgid "RuntimeOnlyAwaitCaller"
msgstr ""
#: ../../api/0_87_runtime_import.md:33
msgid "Play(Editor Play, build) 時に非同期実行する実装です"
msgstr ""
#: ../../api/0_87_runtime_import.md:34
msgid "`VRM10_Samples/VRM10Viewer` に使用例があります。"
msgstr ""

View File

@@ -1,72 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_95_dispose.md:1
msgid "`v0.95` GltfData.Dispose"
msgstr ""
#: ../../api/0_95_dispose.md:3
msgid ""
"Importer の内部で `NativeArray` を使うようにしたため、 終了時にこれを破棄する必要ができました。 使い終わったら "
"`Dispose` してください。"
msgstr "Now that we are using `NativeArray` within the importer, we had to discard it at the end. Please dispose of it when you are finished using it."
#: ../../api/0_95_dispose.md:11
msgid "使用例"
msgstr "Example"
#: ../../api/0_95_dispose.md:22
msgid "Dispose しなかった場合"
msgstr "If you did not dispose"
#: ../../api/0_95_dispose.md:24
msgid "NativeArray が Dispose されずに GC に回収されたタイミングで、 以下のエラーメッセージがコンソールに表示されます。"
msgstr "If the NativeArray is not discarded and is reused for GC, the console displays the following error message:"
#: ../../api/0_95_dispose.md:27
msgid "`A Native Collection has not been disposed`"
msgstr ""
#: ../../api/0_95_dispose.md:29
msgid "このエラーがどこで起きたか分からない場合があります。 `com.unity.jobs package` により詳細メッセージを得ることができます。"
msgstr "You may not know where this error occurred. You can get more details with `com.unity.jobs package`."
#: ../../api/0_95_dispose.md:32
msgid ""
"<https://forum.unity.com/threads/a-native-collection-has-not-been-"
"disposed-enable-full-stack.1098973/>"
msgstr ""
#: ../../api/0_95_dispose.md:34
msgid "を参考にしてください。"
msgstr "."
#: ../../api/0_95_dispose.md:37
msgid "関連"
msgstr "Related"
#: ../../api/0_95_dispose.md:39
msgid "<https://github.com/vrm-c/UniVRM/pull/1483>"
msgstr ""
#: ../../api/0_95_dispose.md:40
msgid "<https://github.com/vrm-c/UniVRM/pull/1503>"
msgstr ""

View File

@@ -1,46 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_95_highlevel.md:1
msgid "`v0.95` 簡単API"
msgstr "`v0.95` High-level API"
#: ../../api/0_95_highlevel.md:3
msgid ""
"API が複雑化してきたので、よくある用途を簡単にできる高レベル API を追加しました。 `GltfUtility` と "
"`VrmUtility` が中で using してくれるので await で呼び出すだけで使えます。"
msgstr "As the API became more complex, we added a high-level API that simplifies common usage. `GltfUtility` and` VrmUtility` are used internally, so you can just call them with await."
#: ../../api/0_95_highlevel.md:6
msgid "GLTF"
msgstr ""
#: ../../api/0_95_highlevel.md:13
msgid "VRM"
msgstr ""
#: ../../api/0_95_highlevel.md:20
msgid "使用例"
msgstr "Example"
#: ../../api/0_95_highlevel.md:22
msgid "v0.95.0 Assets/VRM_Samples/SimpleViewer/ViewerUI.cs"
msgstr ""

View File

@@ -1,85 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-28 18:29+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/0_96_1_use_gamma_colorspace.md:1
msgid "`v0.96.1` ガンマ カラースペースを使う"
msgstr "`v0.96.1` use gamma color space"
#: ../../api/0_96_1_use_gamma_colorspace.md:3
msgid "C# symbol `UNIGLTF_USE_GAMMA_COLORSPACE` を設定するとカラースペースダイアログが出なくなります。"
msgstr ""
"Setting C # symbol `UNIGLTF_USE_GAMMA_COLORSPACE` will prevent the color "
"space dialog."
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "用途"
msgstr "usage"
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "ステータス"
msgstr "status"
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "Runtime Import"
msgstr ""
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "非推奨"
msgstr "not recommended"
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "アプリケーション・プラットフォームの必要に応じてどうぞ"
msgstr "As needed"
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "Editor Import"
msgstr ""
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "Runtime Export"
msgstr ""
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "未対応"
msgstr "not supported"
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "Editor Export"
msgstr ""
#: ../../api/0_96_1_use_gamma_colorspace.md
msgid "あまり必要無いと思われるので、なるべくやめてください"
msgstr "Please stop as much as possible."
#: ../../api/0_96_1_use_gamma_colorspace.md:12
msgid ""
"ご利用いただくのはまったく問題ありませんが、 色の再現性に問題が出ることはご承知おきください。 "
"(ガンマ設定に起因するimport/exportの問題はバグとして対応できません)"
msgstr ""
#~ msgid ""
#~ "It is okay to use it, but "
#~ "please note that there is a "
#~ "problem with color reproducibility.(Import /"
#~ " export issues caused by gamma "
#~ "settings cannot be addressed as a "
#~ "bug)"
#~ msgstr ""

View File

@@ -1,110 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/fast_spring_bone.md:1
msgid "`v0.85` FastSpringBoneについて"
msgstr ""
#: ../../api/fast_spring_bone.md:3
msgid "概要"
msgstr ""
#: ../../api/fast_spring_bone.md:4
msgid "UniVRMでは、DOTSを利用した高速なSpringBone実装である「FastSpringBone」を用意しています。"
msgstr ""
#: ../../api/fast_spring_bone.md:6
msgid "揺れ物の各房を並列処理・最適化することで1フレームあたりの処理時間を大幅に抑えます。"
msgstr ""
#: ../../api/fast_spring_bone.md:8
msgid "VRM0.x と VRM1.0 で、それぞれFastSpringBoneの立ち位置・実装が異なります。"
msgstr ""
#: ../../api/fast_spring_bone.md:10
msgid "VRM 1.0 での FastSpringBone の概要"
msgstr ""
#: ../../api/fast_spring_bone.md:11
msgid "VRM1.0ではFastSpringBoneが揺れものの標準実装です。"
msgstr ""
#: ../../api/fast_spring_bone.md:13
msgid "VRMのライフサイクルに紐付いて自動的に生成・破棄されます。"
msgstr ""
#: ../../api/fast_spring_bone.md:15
msgid "VRM 0.x での FastSpringBone の概要"
msgstr ""
#: ../../api/fast_spring_bone.md:16
msgid "VRM0.xでは後方互換性を保つため、デフォルトでは従来のDOTS実装でないSpringBoneで動作します。"
msgstr ""
#: ../../api/fast_spring_bone.md:18
msgid "VRM0.x向けのFastSpringBone実装は `VRM/Runtime/FastSpringBone` ディレクトリにあります。"
msgstr ""
#: ../../api/fast_spring_bone.md:20
msgid "VRM 0.x での FastSpringBone の導入方法"
msgstr ""
#: ../../api/fast_spring_bone.md:21
msgid "差し替えを行いたいタイミングで `FastSpringBoneReplacer.ReplaceAsync` を呼び出してください"
msgstr ""
#: ../../api/fast_spring_bone.md:23
msgid "これを明示的に呼ばなければ、従来のSpringBoneのまま動作します。"
msgstr ""
#: ../../api/fast_spring_bone.md:37
msgid "Burstの導入について"
msgstr ""
#: ../../api/fast_spring_bone.md:38
msgid "UniVRM に加えて Burst を別途導入すると、 FastSpringBone が Burst によって高速化されます。"
msgstr ""
#: ../../api/fast_spring_bone.md:40
msgid ""
"Burst の導入方法は [こちら](https://docs.unity3d.com/ja/2019.4/Manual/upm-ui-"
"install.html) をご参照ください。"
msgstr ""
#: ../../api/fast_spring_bone.md:42
msgid "FastSpringBoneServiceについて"
msgstr ""
#: ../../api/fast_spring_bone.md:43
msgid ""
"FastSpringBone が実行されると、`FastSpringBone Service` GameObject が "
"`DontDestroyOnLoad` で生成されます。"
msgstr ""
#: ../../api/fast_spring_bone.md:45
msgid ""
"これは全 VRM の FastSpringBone を集め、バッファの構築や、 FastSpringBone の実行タイミングの制御などを行う "
"GameObject です。"
msgstr ""
#: ../../api/fast_spring_bone.md:47
msgid "明示的に破棄を行いたい場合は `FastSpringBoneService.Free` を呼んでください。"
msgstr ""

View File

@@ -1,62 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/firstperson.md:1
msgid "VRMFirstPersonの使い方"
msgstr ""
#: ../../api/firstperson.md:3
msgid "{doc}`FirstPerson と Renderer の可視制御 </implementation/first_person>`"
msgstr ""
#: ../../api/firstperson.md:5
msgid ""
"実行時に**VRMFirstPerson.Setup**を呼び出すことで、FirstPerson設定に応じた Renderer "
"の可視制御を行うことができます。 明示的に外部から呼び出してください。"
msgstr ""
#: ../../api/firstperson.md:8
msgid "アプリケーションに追加の描画レイヤーを指定する"
msgstr ""
#: ../../api/firstperson.md:10
msgid "定数で以下のレイヤーを定義しています。"
msgstr ""
#: ../../api/firstperson.md
msgid "{{< img src=\"images/vrm/layer_setting.png\" >}}"
msgstr ""
#: ../../api/firstperson.md
msgid "9番と番にLayerを設定"
msgstr ""
#: ../../api/firstperson.md:26
msgid "実行時にSetupを呼び出して、カメラにLayerMaskを設定する"
msgstr ""
#: ../../api/firstperson.md:28
msgid "VRMFirstPerson.Setupの呼び出し"
msgstr ""
#: ../../api/firstperson.md:29
msgid "一人称カメラとその他のカメラに対してLayerMask"
msgstr ""

View File

@@ -1,48 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/how_to_customize_material_import.md:1
msgid "`v0.82` Import 時に生成される Material をカスタマイズする"
msgstr ""
#: ../../api/how_to_customize_material_import.md:3
msgid "`IMaterialDescriptorGenerator` を実装することで import 時に適用されるマテリアルを差し替えることができます。"
msgstr ""
#: ../../api/how_to_customize_material_import.md:5
msgid "materialGenerator で URP 用のマテリアルをロードする"
msgstr ""
#: ../../api/how_to_customize_material_import.md:7
msgid "URP マテリアルを生成するようにカスタムする例です。"
msgstr ""
#: ../../api/how_to_customize_material_import.md:9
msgid "<https://github.com/vrm-c/UniVRM/issues/1214>"
msgstr ""
#: ../../api/how_to_customize_material_import.md:23
msgid "関連"
msgstr ""
#: ../../api/how_to_customize_material_import.md:25
msgid "<https://github.com/vrm-c/UniVRM/pull/1177>"
msgstr ""

View File

@@ -1,395 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/how_to_impl_extension.md:1
msgid "`v0.63.2` glTF拡張の実装"
msgstr ""
#: ../../api/how_to_impl_extension.md:3
msgid ""
"`UniVRM-0.63.2` から `UniGLTF` の構成が変わって、 `extensions` / `extras` "
"の実装方法が変わりました。"
msgstr ""
#: ../../api/how_to_impl_extension.md:5
msgid "GLTF 拡張とは"
msgstr ""
#: ../../api/how_to_impl_extension.md:7
msgid "`glTF` は各所に `extensions`, `extras` が定義してありその中身を拡張できます。"
msgstr ""
#: ../../api/how_to_impl_extension.md:9
msgid "`extensions` (またはextras)"
msgstr ""
#: ../../api/how_to_impl_extension.md:10
msgid "`asset.extensions` (またはextras)"
msgstr ""
#: ../../api/how_to_impl_extension.md:11
msgid "`meshes[*].extensions` (またはextras)"
msgstr ""
#: ../../api/how_to_impl_extension.md:12
msgid "`materials[*].extensions` (またはextras)"
msgstr ""
#: ../../api/how_to_impl_extension.md:14
msgid "など。"
msgstr ""
#: ../../api/how_to_impl_extension.md:16
msgid "`extensions` はオフィシャルに仕様を策定して `JsonSchema` として公開します。"
msgstr ""
#: ../../api/how_to_impl_extension.md:18
msgid "https://github.com/KhronosGroup/glTF/tree/master/extensions"
msgstr ""
#: ../../api/how_to_impl_extension.md:20
msgid ""
"`extensions` は、`{ベンダー名}_{拡張名}` という命名規則です。 ベンダー名は、 "
"https://github.com/KhronosGroup/glTF に申し込んで登録できます。"
msgstr ""
#: ../../api/how_to_impl_extension.md:23
msgid "`extras` は登録せずにアプリケーション独自に拡張する場合に用います。仕組みは同じです。"
msgstr ""
#: ../../api/how_to_impl_extension.md:25
msgid ""
"This enables glTF models to contain application-specific properties "
"without creating a full glTF extension"
msgstr ""
#: ../../api/how_to_impl_extension.md:27
msgid "UniGLTF の extensions"
msgstr ""
#: ../../api/how_to_impl_extension.md:29
msgid ""
"`v0.63.0` 以前は、`GLTF 型` の `extensions` フィールドに、`GLTFExtensions` "
"型を定義して、`VRM` フィールドを定義するという方法をとっていました。"
msgstr ""
#: ../../api/how_to_impl_extension.md:49
msgid "この設計だと GLTF と拡張を別ライブラリとして分離することができませんでした。"
msgstr ""
#: ../../api/how_to_impl_extension.md:51
msgid ""
"`v0.63.1` から設計を変更して、すべての `extensions/extras` に同じ型の入れ物を使うように変更しました。 "
"UniGLTF は `import/export` の具体的な内容を知らずに中間データの入れ物として扱います。"
msgstr ""
#: ../../api/how_to_impl_extension.md:69
msgid "UniGLTF の拡張の書き方"
msgstr ""
#: ../../api/how_to_impl_extension.md:71
msgid "拡張は、以下の部品要素から作れます。"
msgstr ""
#: ../../api/how_to_impl_extension.md:73
msgid ""
"名前(JsonPath)。例: `extensions.VRM`, "
"`materials[*].extensions.KHR_materials_unlit`"
msgstr ""
#: ../../api/how_to_impl_extension.md:74
msgid "拡張の型。`T型`"
msgstr ""
#: ../../api/how_to_impl_extension.md:75
msgid "デシリアライザー(import)。 `jsonバイト列 => T型`"
msgstr ""
#: ../../api/how_to_impl_extension.md:76
msgid "シリアライザーexport)。`T型 => jsonバイト列`"
msgstr ""
#: ../../api/how_to_impl_extension.md:78
msgid "JSONPATH と 型を決める"
msgstr ""
#: ../../api/how_to_impl_extension.md:91
msgid "import"
msgstr ""
#: ../../api/how_to_impl_extension.md:129
msgid "export"
msgstr ""
#: ../../api/how_to_impl_extension.md:160
msgid "実装例"
msgstr ""
#: ../../api/how_to_impl_extension.md:162
msgid "GLTF: GLTF全体"
msgstr ""
#: ../../api/how_to_impl_extension.md:163
#: ../../api/how_to_impl_extension.md:200
msgid "`C#の型からコード生成`"
msgstr ""
#: ../../api/how_to_impl_extension.md:165
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\GltfSerializer.g.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:166
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\GltfDeserializer.g.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:168
#: ../../api/how_to_impl_extension.md:205
#: ../../api/how_to_impl_extension.md:236
msgid "ジェネレーターの呼び出しコード"
msgstr ""
#: ../../api/how_to_impl_extension.md:170
#: ../../api/how_to_impl_extension.md:258
msgid "`Assets\\UniGLTF\\Editor\\UniGLTF\\Serialization\\SerializerGenerator.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:171
#: ../../api/how_to_impl_extension.md:334
msgid "`Assets\\UniGLTF\\Editor\\UniGLTF\\Serialization\\DeserializerGenerator.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:173
#: ../../api/how_to_impl_extension.md:180
#: ../../api/how_to_impl_extension.md:187
#: ../../api/how_to_impl_extension.md:194
#: ../../api/how_to_impl_extension.md:210
#: ../../api/how_to_impl_extension.md:239
msgid "生成コードの呼び出し"
msgstr ""
#: ../../api/how_to_impl_extension.md:175
msgid "GLTF: `meshes[*].extras.targetNames`"
msgstr ""
#: ../../api/how_to_impl_extension.md:176
#: ../../api/how_to_impl_extension.md:183
#: ../../api/how_to_impl_extension.md:190
msgid "`コード生成せずに手書き`"
msgstr ""
#: ../../api/how_to_impl_extension.md:178
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\ExtensionsAndExtras\\gltf_mesh_extras_targetNames.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:182
msgid "GLTF: `materials[*].extensions.KHR_materials_unlit`"
msgstr ""
#: ../../api/how_to_impl_extension.md:185
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\ExtensionsAndExtras\\KHR_materials_unlit.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:189
msgid "GLTF: `materials[*].extensions.KHR_texture_transform`"
msgstr ""
#: ../../api/how_to_impl_extension.md:192
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\ExtensionsAndExtras\\KHR_texture_transform.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:196
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/UniGLTF/Runtime/UniGLTF/IO/MaterialImporter.cs#L296"
msgstr ""
#: ../../api/how_to_impl_extension.md:197
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/UniGLTF/Runtime/UniGLTF/IO/MaterialExporter.cs#L193"
msgstr ""
#: ../../api/how_to_impl_extension.md:199
msgid "VRM0: `extensions.VRM`"
msgstr ""
#: ../../api/how_to_impl_extension.md:202
msgid "`Assets\\VRM\\Runtime\\Format\\VRMSerializer.g.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:203
msgid "`Assets\\VRM\\Runtime\\Format\\VRMDeserializer.g.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:207
msgid "`Assets\\VRM\\Editor\\VRMSerializerGenerator.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:208
msgid "`Assets\\VRM\\Editor\\VRMDeserializerGenerator.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:212
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/Runtime/IO/VRMImporterContext.cs#L41"
msgstr ""
#: ../../api/how_to_impl_extension.md:213
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/Runtime/IO/VRMExporter.cs#L209"
msgstr ""
#: ../../api/how_to_impl_extension.md:215
msgid "VRM1: `extensions.VRMC_vrm` など"
msgstr ""
#: ../../api/how_to_impl_extension.md:216
msgid "`JsonSchemaからコード生成`"
msgstr ""
#: ../../api/how_to_impl_extension.md:218
msgid "5つの Extensions に分かれたので個別に作成。 ささる場所(JsonPath)が違うのに注意。"
msgstr ""
#: ../../api/how_to_impl_extension.md:221
msgid "`extensions.VRMC_vrm`"
msgstr ""
#: ../../api/how_to_impl_extension.md:222
msgid "`Assets\\VRM10\\Runtime\\Format\\VRM`"
msgstr ""
#: ../../api/how_to_impl_extension.md:224
msgid "`materials[*].extensions.VRMC_materials_mtoon`"
msgstr ""
#: ../../api/how_to_impl_extension.md:225
msgid "`Assets\\VRM10\\Runtime\\Format\\MaterialsMToon`"
msgstr ""
#: ../../api/how_to_impl_extension.md:227
msgid "`nodes[*].extensions.VRMC_node_collider`"
msgstr ""
#: ../../api/how_to_impl_extension.md:228
msgid "`Assets\\VRM10\\Runtime\\Format\\NodeCollider`"
msgstr ""
#: ../../api/how_to_impl_extension.md:230
msgid "`extensions.VRMC_springBone`"
msgstr ""
#: ../../api/how_to_impl_extension.md:231
msgid "`Assets\\VRM10\\Runtime\\Format\\SpringBone`"
msgstr ""
#: ../../api/how_to_impl_extension.md:233
msgid "`extensions.VRMC_vrm_constraints`"
msgstr ""
#: ../../api/how_to_impl_extension.md:234
msgid "`Assets\\VRM10\\Runtime\\Format\\Constraints`"
msgstr ""
#: ../../api/how_to_impl_extension.md:237
msgid "`Assets\\VRM10\\Editor\\GeneratorMenu.cs`"
msgstr ""
#: ../../api/how_to_impl_extension.md:241
msgid "コード生成"
msgstr ""
#: ../../api/how_to_impl_extension.md:242
msgid ""
"JSON と C# の型との シリアライズ/デシリアライズは定型コードになるので、ジェネレーターがあります。 C# "
"の型から生成するものと、JsonSchema から C# の型とともに生成するものがあります。"
msgstr ""
#: ../../api/how_to_impl_extension.md:245
msgid "C# の型から生成"
msgstr ""
#: ../../api/how_to_impl_extension.md:247
msgid "シリアライザー"
msgstr ""
#: ../../api/how_to_impl_extension.md:249
#: ../../api/how_to_impl_extension.md:325
msgid "ジェネレーターを呼び出すコードを作成します。"
msgstr ""
#: ../../api/how_to_impl_extension.md:251
#: ../../api/how_to_impl_extension.md:327
msgid "元になる型"
msgstr ""
#: ../../api/how_to_impl_extension.md:252
#: ../../api/how_to_impl_extension.md:328
msgid "出力先"
msgstr ""
#: ../../api/how_to_impl_extension.md:254
#: ../../api/how_to_impl_extension.md:330
msgid "のつを決めます。static関数を生成するので、namespace と static class で囲ってあげます。"
msgstr ""
#: ../../api/how_to_impl_extension.md:256
#: ../../api/how_to_impl_extension.md:332
msgid "例"
msgstr ""
#: ../../api/how_to_impl_extension.md:323
msgid "デシリアライザー"
msgstr ""
#: ../../api/how_to_impl_extension.md:400
msgid "キー出力の抑制"
msgstr ""
#: ../../api/how_to_impl_extension.md:402
msgid "`index` に無効な値として `-1` を入れる場合に、JSONではキーを出力しないとしたいことがあります。"
msgstr ""
#: ../../api/how_to_impl_extension.md:404
msgid "TODO: `int?` にするべきだった"
msgstr ""
#: ../../api/how_to_impl_extension.md:411
msgid "のようにすることで、キーの出力を抑制できます。"
msgstr ""
#: ../../api/how_to_impl_extension.md:418
msgid "何も付けないと"
msgstr ""
#: ../../api/how_to_impl_extension.md:425
msgid "enum のエンコーディング"
msgstr ""
#: ../../api/how_to_impl_extension.md:427
msgid "enumの値の名前を文字列で使う、enumの値の数値を使うの2種類がありえます。 enumの場合はデフォルト値が無いので必須です。"
msgstr ""
#: ../../api/how_to_impl_extension.md:438
msgid "JsonSchemaから生成"
msgstr ""
#: ../../api/how_to_impl_extension.md:439
msgid "VRM-1.0 の実装"
msgstr ""
#: ../../api/how_to_impl_extension.md:441
msgid "TODO:"
msgstr ""

View File

@@ -1,31 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-07 15:03+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/index.md:1
msgid "API"
msgstr ""
#: ../../api/index.md:9
msgid "Update"
msgstr ""
#~ msgid "VRM-1.0(β)"
#~ msgstr ""

View File

@@ -1,28 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/sample/AnimationBridgeSample.md:1
msgid "AnimationBridgeSample"
msgstr ""
#: ../../api/sample/AnimationBridgeSample.md:3
msgid "AnimationClip に BlendShape の変換を記録して反映するサンプルです。"
msgstr ""

View File

@@ -1,48 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/sample/FirstPersonSample.md:1
msgid "FirstPersonSample"
msgstr ""
#: ../../api/sample/FirstPersonSample.md:3
msgid "VR アプリで FistPerson の設定に合わせて、可視設定を反映するサンプルです。"
msgstr ""
#: ../../api/sample/FirstPersonSample.md:5
msgid "画面が4分割されて、"
msgstr ""
#: ../../api/sample/FirstPersonSample.md:7
msgid "HMDカメラ"
msgstr ""
#: ../../api/sample/FirstPersonSample.md:8
msgid "その他のカメラ"
msgstr ""
#: ../../api/sample/FirstPersonSample.md:10
msgid "の描画を例示します。"
msgstr ""
#: ../../api/sample/FirstPersonSample.md:12
msgid "v0.87.0 Assets/VRM_Samples/FirstPersonSample/VRMRuntimeLoader.cs"
msgstr ""

View File

@@ -1,32 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/sample/RuntimeExporterSample.md:1
msgid "RuntimeExporter"
msgstr ""
#: ../../api/sample/RuntimeExporterSample.md:3
msgid "VRM を Runtime Export するサンプルです。"
msgstr ""
#: ../../api/sample/RuntimeExporterSample.md:5
msgid "v0.87.0 Assets/VRM_Samples/RuntimeExporterSample/VRMRuntimeExporter.cs"
msgstr ""

View File

@@ -1,32 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/sample/SimpleViewer.md:1
msgid "SimpleViewer"
msgstr ""
#: ../../api/sample/SimpleViewer.md:3
msgid "Runtime ローダーのサンプルです。"
msgstr ""
#: ../../api/sample/SimpleViewer.md:5
msgid "c89e Assets/VRM_Samples/SimpleViewer/ViewerUI.cs"
msgstr ""

View File

@@ -1,24 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/sample/index.md:1
msgid "Sample"
msgstr ""

View File

@@ -1,40 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/vrm1_expression.md:1
msgid "🚧Expression"
msgstr ""
#: ../../api/vrm1_expression.md:3
msgid "表情周りの操作方法。"
msgstr ""
#: ../../api/vrm1_expression.md:5
msgid "VRM-1.0 の `BlendShapeProxy` は、`Vrm10Instance.Expression` になります。"
msgstr ""
#: ../../api/vrm1_expression.md:7
msgid "VRM-0.X の例"
msgstr ""
#: ../../api/vrm1_expression.md:16
msgid "VRM-1.0 の例"
msgstr ""

View File

@@ -1,94 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/vrm1_firstperson.md:1
msgid "FirstPerson"
msgstr ""
#: ../../api/vrm1_firstperson.md:3
msgid "{doc}`FirstPerson と Renderer の可視制御 </implementation/first_person>`"
msgstr ""
#: ../../api/vrm1_firstperson.md:5
msgid "Runtime に FirstPerson 機能を有効にする"
msgstr ""
#: ../../api/vrm1_firstperson.md:7
msgid "VR向け FirstPerson 設定の初期化手順です。"
msgstr ""
#: ../../api/vrm1_firstperson.md:9
msgid "Load する"
msgstr ""
#: ../../api/vrm1_firstperson.md:10
msgid "Vrm10Instance を取得する"
msgstr ""
#: ../../api/vrm1_firstperson.md:11
msgid "`controller.Vrm.FirstPerson.SetupAsync` を呼び出す"
msgstr ""
#: ../../api/vrm1_firstperson.md:12
msgid "ShowMeshes"
msgstr ""
#: ../../api/vrm1_firstperson.md:41
msgid "VRMの推奨する VR 向けのカメラ構成"
msgstr ""
#: ../../api/vrm1_firstperson.md:43
msgid "ヘッドマウントディスプレイを表すカメラ と その他のカメラという2種類のカメラを想定ます。 それぞれに対して、"
msgstr ""
#: ../../api/vrm1_firstperson.md:46
msgid "FIRSTPERSON_ONLY_LAYER(このレイヤーを指定した gameObject はその他のカメラから消えます)"
msgstr ""
#: ../../api/vrm1_firstperson.md:47
msgid "THIRDPERSON_ONLY_LAYER(このレイヤーを指定した gameObject はヘッドマウントディスプレイから消えます)"
msgstr ""
#: ../../api/vrm1_firstperson.md:49
msgid "を定義します。 これにより、ヘッドマウント視点のアバターの描画を抑止しつつ、他者からは見えるようにします。"
msgstr ""
#: ../../api/vrm1_firstperson.md:52
msgid "例: アバターの頭の描画を抑止して前が見えるようにする"
msgstr ""
#: ../../api/vrm1_firstperson.md:54
msgid "VRMは、`VRMFirstPersonOnly` と `VRMThirdPersonOnly` という名前のレイヤーを予約しています。"
msgstr ""
#: ../../api/vrm1_firstperson.md:56
msgid ""
"`Project Settings` - `Tags and Layers` に `VRMFirstPersonOnly` と "
"`VRMThirdPersonOnly` を 設定してください。 サンプルでは、それぞれに `9` と `10` を割り当ています。"
msgstr ""
#: ../../api/vrm1_firstperson.md:60
msgid "初期化時に layer を明示する"
msgstr ""
#: ../../api/vrm1_firstperson.md:62
msgid "追加の引数で指定できます。"
msgstr ""

View File

@@ -1,36 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/vrm1_get_humanoid.md:1
msgid "🚧Humanoid"
msgstr ""
#: ../../api/vrm1_get_humanoid.md:3
msgid "Humanoid Bone の取得方法"
msgstr ""
#: ../../api/vrm1_get_humanoid.md:5
msgid "Humanoidコンポーネント(vrm-1.0)"
msgstr ""
#: ../../api/vrm1_get_humanoid.md:7
msgid "Animator経由(vrm-0.xとvrm-1.0共通)"
msgstr ""

View File

@@ -1,24 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/vrm1_lookat.md:1
msgid "🚧LookAt"
msgstr ""

View File

@@ -1,56 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../api/vrm1_runtime_load.md:1
msgid "RuntimeLoad"
msgstr ""
#: ../../api/vrm1_runtime_load.md:3
msgid "Runtime Normalization (from `v0.92.0`)"
msgstr ""
#: ../../api/vrm1_runtime_load.md:5
msgid ""
"`VRM-1.0` は、ノードの `回転・スケールの削除` をしません。 後方互換性のため、 `RuntimeLoad` 時に動的に "
"`回転・スケールの削除` する機能を提供します。"
msgstr ""
#: ../../api/vrm1_runtime_load.md:8
msgid "`VRM-0.x` のエクスポート時の正規化に相当する処理です"
msgstr ""
#: ../../api/vrm1_runtime_load.md:10
msgid "以下のように doNormalize に true を付与してください。"
msgstr ""
#: ../../api/vrm1_runtime_load.md:22
msgid "Migration(VRM-0 to VRM-1)"
msgstr ""
#: ../../api/vrm1_runtime_load.md:24
msgid ""
"`VRM-1.0` は、 `VRM-0.x` もロードできます。 その場合、あたらしい meta への変換が発生し互換性の無い部分はすべて "
"`不許可` の値になります。 このため、変換前のライセンスにアクセスする API を提供します。"
msgstr ""
#: ../../api/vrm1_runtime_load.md:28
msgid "サンプルの `Assets\\VRM10\\Samples\\VRM10Viewer\\VRM10ViewerUI.cs` も参照してください。"
msgstr ""

View File

@@ -1,102 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-06-13 15:29+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../build.md:1
msgid "アプリケーションのビルド"
msgstr "Build Application"
#: ../../build.md:3
msgid "UniVRMを使うアプリケーションのビルドに関する注意事項"
msgstr "Precautions for building applications that use UniVRM"
#: ../../build.md:5
msgid "ビルドに含めるシェーダー"
msgstr "Shaders to include in the build"
#: ../../build.md:7
#, fuzzy
msgid ""
"`Project Settings = Graphics - Always Included Shaders` "
"などに設定して、以下のシェーダーがビルドに含まれるようにしてください。"
msgstr ""
"Set `Project Settings = Graphics - Always Included Shaders` to included. "
"Make sure the following shaders are included in your build."
#: ../../build.md:9
msgid "Standard"
msgstr ""
#: ../../build.md:11
msgid "`Standard`"
msgstr ""
#: ../../build.md:13
msgid "GLTF の PBR マテリアルが使用します。"
msgstr "Used by GLTF PBR materials."
#: ../../build.md:15 ../../build.md:24 ../../build.md:32 ../../build.md:42
msgid "Always Included Shaders"
msgstr ""
#: ../../build.md:1
msgid "明示的に指定する必要があります"
msgstr "Must be explicitly specified"
#: ../../build.md:20
msgid "Unlit"
msgstr ""
#: ../../build.md:22
msgid "`Assets\\VRMShaders\\GLTF\\UniUnlit\\Resources\\UniGLTF\\UniUnlit.shader`"
msgstr ""
#: ../../build.md:1
msgid "`Resources` に配置しているので明示的に指定しなくてもビルドに含まれます。"
msgstr ""
"Since it is placed in `Resources`, it will be included in the build even "
"if it is not explicitly specified."
#: ../../build.md:28
msgid "MToon"
msgstr ""
#: ../../build.md:30
msgid "`Assets\\VRMShaders\\VRM\\MToon\\MToon\\Resources\\Shaders\\MToon.shader`"
msgstr ""
#: ../../build.md:36
msgid "ランタイム import/export 時のテクスチャー変換用のシェーダー"
msgstr "Shaders for texture conversion during runtime import/export"
#: ../../build.md:38
msgid "`Assets\\VRMShaders\\GLTF\\IO\\Resources\\UniGLTF\\NormalMapExporter.shader`"
msgstr ""
#: ../../build.md:39
msgid "`Assets\\VRMShaders\\GLTF\\IO\\Resources\\UniGLTF\\StandardMapExporter.shader`"
msgstr ""
#: ../../build.md:40
msgid "`Assets\\VRMShaders\\GLTF\\IO\\Resources\\UniGLTF\\StandardMapImporter.shader`"
msgstr ""
#~ msgid "Must be explicitly specified"
#~ msgstr ""

View File

@@ -1,55 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-14 13:46+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../gltf/0_36_update.md:1
msgid "GltfUpdate(0.36)"
msgstr ""
#: ../../gltf/0_36_update.md:3
msgid "テクスチャ名の格納位置の修正"
msgstr "Changed Storage Position of Texture Name"
#: ../../gltf/0_36_update.md:5 ../../gltf/0_36_update.md:22
msgid "GLTFの仕様に準拠しました。"
msgstr "Conforming to the GLTF specification."
#: ../../gltf/0_36_update.md:7 ../../gltf/0_36_update.md:24
msgid "extraはextrasの間違い"
msgstr "`extras` is not allowed in target"
#: ../../gltf/0_36_update.md:8
msgid "imageはnameを持っていた"
msgstr "Use image.name"
#: ../../gltf/0_36_update.md:14 ../../gltf/0_36_update.md:32
msgid "変更後"
msgstr "After the change "
#: ../../gltf/0_36_update.md:20
msgid "ブレンドシェイプ名の格納位置の修正"
msgstr "Fix blendshape name"
#: ../../gltf/0_36_update.md:25
msgid "targetにextrasは不許可"
msgstr "Target has no extras"
#: ../../gltf/0_36_update.md:26
msgid "https://github.com/KhronosGroup/glTF/issues/1036#issuecomment-314078356"
msgstr ""

View File

@@ -1,130 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 16:41+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../gltf/0_82_glb_import.md:1
msgid "GlbImport(0.82) GltfData"
msgstr ""
#: ../../gltf/0_82_glb_import.md:2
msgid "from: `0.82.1`"
msgstr ""
#: ../../gltf/0_82_glb_import.md:4
msgid "以下のステップでロードします。"
msgstr "GLB load is below steps."
#: ../../gltf/0_82_glb_import.md:6
msgid "`GLB` / `GLTF` をパースして `GltfData` を得る。"
msgstr "Parse `GLB` / `GLTF`, get a `GltfData`"
#: ../../gltf/0_82_glb_import.md:7
msgid ""
"`GltfData` から `Unity Hierarchy` を ロード する。`RuntimeGltfInstance` を得る。 "
"ローダーを破棄する。"
msgstr ""
"Load `Unity Hierarchy` from the `GltfData`, get a `RuntimeGltfInstance`, "
"dispose loader."
#: ../../gltf/0_82_glb_import.md:8
msgid "ロードした `RuntimeGltfInstance` 使う。`RuntimeGltfInstance` を破棄する。"
msgstr "Use the `RuntimeGltfInstance`, destroy the `RuntimeGltfInstance`."
#: ../../gltf/0_82_glb_import.md:10
msgid "1. パースする"
msgstr "1. Parse"
#: ../../gltf/0_82_glb_import.md:12
msgid "glb ファイルパスからパースする"
msgstr "Parse glb from file path"
#: ../../gltf/0_82_glb_import.md:14 ../../gltf/0_82_glb_import.md:25
msgid "`vrm` もこの関数を使います。"
msgstr "Use this for vrm too."
#: ../../gltf/0_82_glb_import.md:23
msgid "glb バイト列をパースする"
msgstr "Parse glb byte array"
#: ../../gltf/0_82_glb_import.md:34
msgid "gltf ファイルパスからパースする"
msgstr "Parse gltf from file path"
#: ../../gltf/0_82_glb_import.md:43
msgid "zip アーカイブからパースする"
msgstr "Parse gltf in zip archive from file path"
#: ../../gltf/0_82_glb_import.md:45
msgid "gltf と関連するファイルを zip アーカイブしたファイルをパースできます(実験)。"
msgstr ""
"Zip archive that contains gltf and related files could "
"parsed(expelemental)."
#: ../../gltf/0_82_glb_import.md:54
msgid "ファイルパスの拡張子でパースする"
msgstr "Parse by file extension"
#: ../../gltf/0_82_glb_import.md:56
msgid "サンプルの `SimpleViewer` を参考にしてください。"
msgstr "See `SimpleViewer` sample."
#: ../../gltf/0_82_glb_import.md:66
msgid "2. ロードする"
msgstr "2. Load"
#: ../../gltf/0_82_glb_import.md:68
msgid "sync"
msgstr ""
#: ../../gltf/0_82_glb_import.md:83
msgid "async"
msgstr ""
#: ../../gltf/0_82_glb_import.md:98
msgid "materialGenerator で URP 用のマテリアルをロードする"
msgstr "Load URP material by materialGenerator argument"
#: ../../gltf/0_82_glb_import.md:100
msgid ""
"{doc}`Import 時に生成される Material をカスタマイズする "
"</gltf/how_to_customize_material_import>`"
msgstr ""
#: ../../gltf/0_82_glb_import.md:102
msgid "3. インスタンスを使用する"
msgstr "3. Use instance"
#: ../../gltf/0_82_glb_import.md:111
msgid "使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。"
msgstr ""
"Destroy after use and discard related assets (textures, materials, "
"meshes, etc.)"
#~ msgid "GlbImport(0.82)"
#~ msgstr ""
#~ msgid "`0.82.1` の API です。 `0.82.0` の場合は更新をお願いします。"
#~ msgstr "If use `0.82.0`, please upgrade."
#~ msgid "`materialGenerator` 引き数(省略可能)を指定することで URP マテリアルを生成するようにカスタムできます。"
#~ msgstr ""
#~ "You can load URP materials by "
#~ "setting the `materialGenerator` Argument "
#~ "(optional)."

View File

@@ -1,125 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../gltf/format.md:1
msgid "glbフォーマット概説"
msgstr ""
#: ../../gltf/format.md:3
msgid "JSON記述部と、画像や頂点配列を記録するバイナリ部のつの部分からなります。"
msgstr ""
#: ../../gltf/format.md:5
msgid ""
"gltf形式では、URLやパスで参照する方法で外部のバイナリデータにアクセスします。 "
"glb形式ではJSON部とバイナリ部をひとつのファイルにまとめていて、バイト列のオフセットでバイナリデータにアクセスします。 "
"プログラムから扱うには外部ファイルへのアクセスが無いglb形式の方が簡単[^VRM_glb]です。"
msgstr ""
#: ../../gltf/format.md:11
msgid "glb形式"
msgstr ""
#: ../../gltf/format.md:13
msgid ""
"``ヘッダ部 + チャンク部繰り返し``という構造になっています。 実質的には、 ``ヘッダ部 + JSON CHUNk + BINARY "
"CHUNK``となります。"
msgstr ""
#: ../../gltf/format.md:17
msgid "ヘッダ部"
msgstr ""
#: ../../gltf/format.md
msgid "長さ"
msgstr ""
#: ../../gltf/format.md
msgid "内容"
msgstr ""
#: ../../gltf/format.md
msgid "型"
msgstr ""
#: ../../gltf/format.md
msgid "値"
msgstr ""
#: ../../gltf/format.md
msgid "4"
msgstr ""
#: ../../gltf/format.md
msgid "ascii"
msgstr ""
#: ../../gltf/format.md
msgid "\"glTF\""
msgstr ""
#: ../../gltf/format.md
msgid "gltfバージョン"
msgstr ""
#: ../../gltf/format.md
msgid "int32"
msgstr ""
#: ../../gltf/format.md
msgid "2"
msgstr ""
#: ../../gltf/format.md
msgid "file size"
msgstr ""
#: ../../gltf/format.md:25
msgid "チャンク部"
msgstr ""
#: ../../gltf/format.md
msgid "chunk size"
msgstr ""
#: ../../gltf/format.md
msgid "chunk type"
msgstr ""
#: ../../gltf/format.md
msgid "\"JSON\" or \"BIN\\x00\""
msgstr ""
#: ../../gltf/format.md
msgid "chunk body"
msgstr ""
#: ../../gltf/format.md
msgid "バイト列"
msgstr ""
#: ../../gltf/format.md:33
msgid "python3によるパース例"
msgstr ""
#: ../../gltf/format.md:9
msgid "VRMではglbを採用しています。"
msgstr ""

View File

@@ -1,40 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 16:41+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../gltf/how_to_customize_material_import.md:1
msgid "Import 時に生成される Material をカスタマイズする"
msgstr ""
#: ../../gltf/how_to_customize_material_import.md:3
msgid "`IMaterialDescriptorGenerator` を実装することで import 時に適用されるマテリアルを差し替えることができます。"
msgstr ""
#: ../../gltf/how_to_customize_material_import.md:5
msgid "materialGenerator で URP 用のマテリアルをロードする"
msgstr ""
#: ../../gltf/how_to_customize_material_import.md:7
msgid "URP マテリアルを生成するようにカスタムする例です。"
msgstr ""
#: ../../gltf/how_to_customize_material_import.md:9
msgid "<https://github.com/vrm-c/UniVRM/issues/1214>"
msgstr ""

View File

@@ -1,397 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-14 13:46+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../gltf/how_to_impl_extension.md:1
msgid "glTF拡張の実装(0.63.2)"
msgstr "The implementation of glTF extensions(0.63.2)"
#: ../../gltf/how_to_impl_extension.md:3
msgid ""
"`UniVRM-0.63.2` から `UniGLTF` の構成が変わって、 `extensions` / `extras` "
"の実装方法が変わりました。"
msgstr "From `UniVRM-0.63.2` , `UniGLTF` structure is changed, cause `extensions` / `extras` implementations is updated."
#: ../../gltf/how_to_impl_extension.md:5
msgid "GLTF 拡張とは"
msgstr "About GLTF Extensions"
#: ../../gltf/how_to_impl_extension.md:7
msgid "`glTF` は各所に `extensions`, `extras` が定義してありその中身を拡張できます。"
msgstr "`glTF` has each `extensions`, `extras` points."
#: ../../gltf/how_to_impl_extension.md:9
msgid "`extensions` (またはextras)"
msgstr "`extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:10
msgid "`asset.extensions` (またはextras)"
msgstr "`asset.extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:11
msgid "`meshes[*].extensions` (またはextras)"
msgstr "`meshes[*].extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:12
msgid "`materials[*].extensions` (またはextras)"
msgstr "`materials[*].extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:14
msgid "など。"
msgstr "etc..."
#: ../../gltf/how_to_impl_extension.md:16
msgid "`extensions` はオフィシャルに仕様を策定して `JsonSchema` として公開します。"
msgstr "`extensions` is defined specification officially, and publish `JsonSchema`."
#: ../../gltf/how_to_impl_extension.md:18
msgid "https://github.com/KhronosGroup/glTF/tree/master/extensions"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:20
msgid ""
"`extensions` は、`{ベンダー名}_{拡張名}` という命名規則です。 ベンダー名は、 "
"https://github.com/KhronosGroup/glTF に申し込んで登録できます。"
msgstr "`extensions` naming convention is `{VENDOR_NAME}_{EXTENSION_NAME}`.
VENDOR_NAME can registered on https://github.com/KhronosGroup/glTF.
"
#: ../../gltf/how_to_impl_extension.md:23
msgid "`extras` は登録せずにアプリケーション独自に拡張する場合に用います。仕組みは同じです。"
msgstr "`extras` is defined in application local."
#: ../../gltf/how_to_impl_extension.md:25
msgid ""
"This enables glTF models to contain application-specific properties "
"without creating a full glTF extension"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:27
msgid "UniGLTF の extensions"
msgstr "The extensions of UniGLTF"
#: ../../gltf/how_to_impl_extension.md:29
msgid ""
"`v0.63.0` 以前は、`GLTF 型` の `extensions` フィールドに、`GLTFExtensions` "
"型を定義して、`VRM` フィールドを定義するという方法をとっていました。"
msgstr "Before `v0.63.0`, `GLTF type` 's `extensions` field is statically extended as `GLTFExtensions Type`, and had `VRM type` field."
#: ../../gltf/how_to_impl_extension.md:49
msgid "この設計だと GLTF と拡張を別ライブラリとして分離することができませんでした。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:51
msgid ""
"`v0.63.1` から設計を変更して、すべての `extensions/extras` に同じ型の入れ物を使うように変更しました。 "
"UniGLTF は `import/export` の具体的な内容を知らずに中間データの入れ物として扱います。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:69
msgid "UniGLTF の拡張の書き方"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:71
msgid "拡張は、以下の部品要素から作れます。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:73
msgid ""
"名前(JsonPath)。例: `extensions.VRM`, "
"`materials[*].extensions.KHR_materials_unlit`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:74
msgid "拡張の型。`T型`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:75
msgid "デシリアライザー(import)。 `jsonバイト列 => T型`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:76
msgid "シリアライザーexport)。`T型 => jsonバイト列`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:78
msgid "JSONPATH と 型を決める"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:91
msgid "import"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:129
msgid "export"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:160
msgid "実装例"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:162
msgid "GLTF: GLTF全体"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:163
#: ../../gltf/how_to_impl_extension.md:200
msgid "`C#の型からコード生成`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:165
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\GltfSerializer.g.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:166
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\GltfDeserializer.g.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:168
#: ../../gltf/how_to_impl_extension.md:205
#: ../../gltf/how_to_impl_extension.md:236
msgid "ジェネレーターの呼び出しコード"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:170
#: ../../gltf/how_to_impl_extension.md:258
msgid "`Assets\\UniGLTF\\Editor\\UniGLTF\\Serialization\\SerializerGenerator.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:171
#: ../../gltf/how_to_impl_extension.md:334
msgid "`Assets\\UniGLTF\\Editor\\UniGLTF\\Serialization\\DeserializerGenerator.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:173
#: ../../gltf/how_to_impl_extension.md:180
#: ../../gltf/how_to_impl_extension.md:187
#: ../../gltf/how_to_impl_extension.md:194
#: ../../gltf/how_to_impl_extension.md:210
#: ../../gltf/how_to_impl_extension.md:239
msgid "生成コードの呼び出し"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:175
msgid "GLTF: `meshes[*].extras.targetNames`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:176
#: ../../gltf/how_to_impl_extension.md:183
#: ../../gltf/how_to_impl_extension.md:190
msgid "`コード生成せずに手書き`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:178
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\ExtensionsAndExtras\\gltf_mesh_extras_targetNames.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:182
msgid "GLTF: `materials[*].extensions.KHR_materials_unlit`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:185
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\ExtensionsAndExtras\\KHR_materials_unlit.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:189
msgid "GLTF: `materials[*].extensions.KHR_texture_transform`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:192
msgid "`Assets\\UniGLTF\\Runtime\\UniGLTF\\Format\\ExtensionsAndExtras\\KHR_texture_transform.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:196
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/UniGLTF/Runtime/UniGLTF/IO/MaterialImporter.cs#L296"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:197
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/UniGLTF/Runtime/UniGLTF/IO/MaterialExporter.cs#L193"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:199
msgid "VRM0: `extensions.VRM`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:202
msgid "`Assets\\VRM\\Runtime\\Format\\VRMSerializer.g.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:203
msgid "`Assets\\VRM\\Runtime\\Format\\VRMDeserializer.g.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:207
msgid "`Assets\\VRM\\Editor\\VRMSerializerGenerator.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:208
msgid "`Assets\\VRM\\Editor\\VRMDeserializerGenerator.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:212
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/Runtime/IO/VRMImporterContext.cs#L41"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:213
msgid "https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/Runtime/IO/VRMExporter.cs#L209"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:215
msgid "VRM1: `extensions.VRMC_vrm` など"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:216
msgid "`JsonSchemaからコード生成`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:218
msgid "5つの Extensions に分かれたので個別に作成。 ささる場所(JsonPath)が違うのに注意。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:221
msgid "`extensions.VRMC_vrm`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:222
msgid "`Assets\\VRM10\\Runtime\\Format\\VRM`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:224
msgid "`materials[*].extensions.VRMC_materials_mtoon`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:225
msgid "`Assets\\VRM10\\Runtime\\Format\\MaterialsMToon`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:227
msgid "`nodes[*].extensions.VRMC_node_collider`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:228
msgid "`Assets\\VRM10\\Runtime\\Format\\NodeCollider`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:230
msgid "`extensions.VRMC_springBone`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:231
msgid "`Assets\\VRM10\\Runtime\\Format\\SpringBone`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:233
msgid "`extensions.VRMC_vrm_constraints`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:234
msgid "`Assets\\VRM10\\Runtime\\Format\\Constraints`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:237
msgid "`Assets\\VRM10\\Editor\\GeneratorMenu.cs`"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:241
msgid "コード生成"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:242
msgid ""
"JSON と C# の型との シリアライズ/デシリアライズは定型コードになるので、ジェネレーターがあります。 C# "
"の型から生成するものと、JsonSchema から C# の型とともに生成するものがあります。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:245
msgid "C# の型から生成"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:247
msgid "シリアライザー"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:249
#: ../../gltf/how_to_impl_extension.md:325
msgid "ジェネレーターを呼び出すコードを作成します。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:251
#: ../../gltf/how_to_impl_extension.md:327
msgid "元になる型"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:252
#: ../../gltf/how_to_impl_extension.md:328
msgid "出力先"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:254
#: ../../gltf/how_to_impl_extension.md:330
msgid "のつを決めます。static関数を生成するので、namespace と static class で囲ってあげます。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:256
#: ../../gltf/how_to_impl_extension.md:332
msgid "例"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:323
msgid "デシリアライザー"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:400
msgid "キー出力の抑制"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:402
msgid "`index` に無効な値として `-1` を入れる場合に、JSONではキーを出力しないとしたいことがあります。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:404
msgid "TODO: `int?` にするべきだった"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:411
msgid "のようにすることで、キーの出力を抑制できます。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:418
msgid "何も付けないと"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:425
msgid "enum のエンコーディング"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:427
msgid "enumの値の名前を文字列で使う、enumの値の数値を使うの2種類がありえます。 enumの場合はデフォルト値が無いので必須です。"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:438
msgid "JsonSchemaから生成"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:439
msgid "VRM-1.0 の実装"
msgstr ""
#: ../../gltf/how_to_impl_extension.md:441
msgid "TODO:"
msgstr ""

View File

@@ -1,68 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-15 15:45+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../gltf/index.md:1
msgid "glTF"
msgstr ""
#: ../../gltf/index.md
msgid "version"
msgstr ""
#: ../../gltf/index.md
msgid "v0.82.1"
msgstr ""
#: ../../gltf/index.md
msgid "`materialGenerator(URP対応)` 引き数と `VrmData`"
msgstr ""
#: ../../gltf/index.md
msgid "v0.79"
msgstr ""
#: ../../gltf/index.md
msgid "`GltfData`"
msgstr ""
#: ../../gltf/index.md
msgid "v0.77"
msgstr ""
#: ../../gltf/index.md
msgid "`RuntimeGltfInstance`"
msgstr ""
#: ../../gltf/index.md
msgid "v0.68"
msgstr ""
#: ../../gltf/index.md
msgid "`GltfParser`"
msgstr ""
#: ../../gltf/index.md
msgid "v0.63.2"
msgstr ""
#: ../../gltf/index.md
msgid "gltf の extension の実装方法を変更"
msgstr ""

View File

@@ -1,76 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../history.md:1
msgid "Version"
msgstr ""
#: ../../history.md
msgid "version"
msgstr ""
#: ../../history.md
msgid "v0.82.1"
msgstr ""
#: ../../history.md
msgid "`materialGenerator(URP対応)` 引き数と `VrmData`"
msgstr ""
#: ../../history.md
msgid "v0.79"
msgstr ""
#: ../../history.md
msgid "`GltfData`"
msgstr ""
#: ../../history.md
msgid "v0.77"
msgstr ""
#: ../../history.md
msgid "`RuntimeGltfInstance`"
msgstr ""
#: ../../history.md
msgid "v0.68"
msgstr ""
#: ../../history.md
msgid "`GltfParser`"
msgstr ""
#: ../../history.md
msgid "v0.63.2"
msgstr ""
#: ../../history.md
msgid "gltf の extension の実装方法を変更"
msgstr ""
#: ../../history.md
msgid "v0.56"
msgstr ""
#: ../../history.md
msgid "BlendShapeKey の仕様変更"
msgstr ""

View File

@@ -1,132 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-19 17:09+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../how_to_release.md:1
msgid "リリース作業手順"
msgstr ""
#: ../../how_to_release.md:3
msgid "リリース番号を決める。"
msgstr ""
#: ../../how_to_release.md:5 ../../how_to_release.md:37
msgid "`vX.Y.Z`"
msgstr ""
#: ../../how_to_release.md:7
msgid "ライブラリのバージョンを上げる"
msgstr ""
#: ../../how_to_release.md:9
msgid "`VRM0-development-Version Dialog` によりバージョンを上げる。"
msgstr ""
#: ../../how_to_release.md:11
msgid "branch: `version/vX_Y_Z` commit: `UniVRM-X.Y.Z` PR merge"
msgstr ""
#: ../../how_to_release.md:16
msgid "UnitTest をすべて実行する"
msgstr ""
#: ../../how_to_release.md:18
msgid "all green"
msgstr ""
#: ../../how_to_release.md:20
msgid "Build確認"
msgstr ""
#: ../../how_to_release.md:22
msgid ""
"`VRM0-development-Dummy build for CI` により `#if UNITY_EDITOR` "
"などでビルド時のみに起きるエラーが無いことw確認する"
msgstr ""
#: ../../how_to_release.md:24
msgid "unity package 作成"
msgstr ""
#: ../../how_to_release.md:26
msgid "`VRM0-development-Create Unity Package` により unity package を作成する"
msgstr ""
#: ../../how_to_release.md:28
msgid "UniVRM"
msgstr ""
#: ../../how_to_release.md:29
msgid "UniVRM-Sample"
msgstr ""
#: ../../how_to_release.md:30
msgid "VRM"
msgstr ""
#: ../../how_to_release.md:31
msgid "VRM-Sample"
msgstr ""
#: ../../how_to_release.md:33
msgid "の4パッケージ"
msgstr ""
#: ../../how_to_release.md:35
msgid "リポジトリにタグを打つ"
msgstr ""
#: ../../how_to_release.md:39
msgid "github で tag からリリースを作成して draft で保存する。"
msgstr ""
#: ../../how_to_release.md:41
msgid "unity package をアップロード"
msgstr ""
#: ../../how_to_release.md:42
msgid "unity package の動作確認"
msgstr ""
#: ../../how_to_release.md:43
msgid "UPM の動作確認"
msgstr ""
#: ../../how_to_release.md:45
msgid "リリース記事"
msgstr ""
#: ../../how_to_release.md:47
msgid "`/doc/release_gen.py`"
msgstr ""
#: ../../how_to_release.md:48
msgid "release の記事をコピペ"
msgstr ""
#: ../../how_to_release.md:49
msgid ""
"sphinx の release 記事が生成されるので、必用であれば手を入れてコミット、push(`doc/vX_Y_Z`: `release "
"vX.Y.Z`)、merge"
msgstr ""
#: ../../how_to_release.md:50
msgid "github release を draft から publish"
msgstr ""

View File

@@ -1,147 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/coordinate.md:1
msgid "座標系の変換"
msgstr "Coordinate conversion"
#: ../../implementation/coordinate.md:3
msgid "UniVRMは、インポート・エクスポート時に座標変換を実行しています。"
msgstr "UniVRM convert coordinate when import or export"
#: ../../implementation/coordinate.md
msgid "右"
msgstr "right"
#: ../../implementation/coordinate.md
msgid "上"
msgstr "up"
#: ../../implementation/coordinate.md
msgid "前"
msgstr "forward"
#: ../../implementation/coordinate.md
msgid "掌性"
msgstr "chirality"
#: ../../implementation/coordinate.md
msgid "UV原点"
msgstr "Origin of Texture coordinates"
#: ../../implementation/coordinate.md
msgid "Unity"
msgstr ""
#: ../../implementation/coordinate.md
msgid "+X"
msgstr ""
#: ../../implementation/coordinate.md
msgid "+Y"
msgstr ""
#: ../../implementation/coordinate.md
msgid "+Z"
msgstr ""
#: ../../implementation/coordinate.md
msgid "左手"
msgstr "Left handed"
#: ../../implementation/coordinate.md
msgid "左下"
msgstr "left bottom"
#: ../../implementation/coordinate.md
msgid "VRM-0"
msgstr ""
#: ../../implementation/coordinate.md
msgid "-Z"
msgstr ""
#: ../../implementation/coordinate.md
msgid "右手"
msgstr "Right handed"
#: ../../implementation/coordinate.md
msgid "左上"
msgstr "left top"
#: ../../implementation/coordinate.md
msgid "VRM-1"
msgstr ""
#: ../../implementation/coordinate.md
msgid "-X"
msgstr ""
#: ../../implementation/coordinate.md
msgid "glTF"
msgstr ""
#: ../../implementation/coordinate.md
msgid "デフォルトはVRM-0方式。オプションでVRM-1方式を選べます"
msgstr "The default is the VRM-0 method. Vrm-1 method can be selected as an option"
#: ../../implementation/coordinate.md:12
msgid "UV"
msgstr ""
#: ../../implementation/coordinate.md:14
msgid "以下のように変換します。"
msgstr "The following conversions"
#: ../../implementation/coordinate.md:16
msgid "V^{\\prime} = 1 - V"
msgstr ""
#: ../../implementation/coordinate.md:20
msgid "Unity <-> VRM0"
msgstr ""
#: ../../implementation/coordinate.md:22
msgid "Z軸を反転します。"
msgstr "Invert Z-axis"
#: ../../implementation/coordinate.md:24
msgid "Vector3: Position, Normalなど"
msgstr "Vector3: Position, Normal, etc."
#: ../../implementation/coordinate.md:33
msgid "Quaternion: Rotation"
msgstr ""
#: ../../implementation/coordinate.md:45
msgid "Matrix: BindMatrices"
msgstr ""
#: ../../implementation/coordinate.md:47
msgid "スケール値が入っているとうまくいきません"
msgstr "If the scale value is in it, it does not work."
#: ../../implementation/coordinate.md:61
msgid "Unity <-> VRM1"
msgstr ""
#: ../../implementation/coordinate.md:63
msgid "X軸を反転します。"
msgstr "Invert X-axis"

View File

@@ -1,110 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/fast_spring_bone.md:1
msgid "FastSpringBoneについて"
msgstr ""
#: ../../implementation/fast_spring_bone.md:3
msgid "概要"
msgstr ""
#: ../../implementation/fast_spring_bone.md:4
msgid "UniVRMでは、DOTSを利用した高速なSpringBone実装である「FastSpringBone」を用意しています。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:6
msgid "揺れ物の各房を並列処理・最適化することで1フレームあたりの処理時間を大幅に抑えます。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:8
msgid "VRM0.x と VRM1.0 で、それぞれFastSpringBoneの立ち位置・実装が異なります。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:10
msgid "VRM 1.0 での FastSpringBone の概要"
msgstr ""
#: ../../implementation/fast_spring_bone.md:11
msgid "VRM1.0ではFastSpringBoneが揺れものの標準実装です。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:13
msgid "VRMのライフサイクルに紐付いて自動的に生成・破棄されます。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:15
msgid "VRM 0.x での FastSpringBone の概要"
msgstr ""
#: ../../implementation/fast_spring_bone.md:16
msgid "VRM0.xでは後方互換性を保つため、デフォルトでは従来のDOTS実装でないSpringBoneで動作します。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:18
msgid "VRM0.x向けのFastSpringBone実装は `VRM/Runtime/FastSpringBone` ディレクトリにあります。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:20
msgid "VRM 0.x での FastSpringBone の導入方法"
msgstr ""
#: ../../implementation/fast_spring_bone.md:21
msgid "差し替えを行いたいタイミングで `FastSpringBoneReplacer.ReplaceAsync` を呼び出してください"
msgstr ""
#: ../../implementation/fast_spring_bone.md:23
msgid "これを明示的に呼ばなければ、従来のSpringBoneのまま動作します。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:37
msgid "Burstの導入について"
msgstr ""
#: ../../implementation/fast_spring_bone.md:38
msgid "UniVRM に加えて Burst を別途導入すると、 FastSpringBone が Burst によって高速化されます。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:40
msgid ""
"Burst の導入方法は [こちら](https://docs.unity3d.com/ja/2019.4/Manual/upm-ui-"
"install.html) をご参照ください。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:42
msgid "FastSpringBoneServiceについて"
msgstr ""
#: ../../implementation/fast_spring_bone.md:43
msgid ""
"FastSpringBone が実行されると、`FastSpringBone Service` GameObject が "
"`DontDestroyOnLoad` で生成されます。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:45
msgid ""
"これは全 VRM の FastSpringBone を集め、バッファの構築や、 FastSpringBone の実行タイミングの制御などを行う "
"GameObject です。"
msgstr ""
#: ../../implementation/fast_spring_bone.md:47
msgid "明示的に破棄を行いたい場合は `FastSpringBoneService.Free` を呼んでください。"
msgstr ""

View File

@@ -1,123 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 16:41+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/first_person.md:1
msgid "VRアプリケーションの FirstPerson 設定による Renderer の可視制御"
msgstr ""
#: ../../implementation/first_person.md:3
msgid "`isSelf==true` 自分のアバター"
msgstr ""
#: ../../implementation/first_person.md:4
msgid "`isSelf==false` 自分以外のアバター"
msgstr ""
#: ../../implementation/first_person.md:5
msgid "FP Camera: HMDと連動するカメラ"
msgstr ""
#: ../../implementation/first_person.md:6
msgid "TP Camera: それ以外のすべてのカメラ"
msgstr ""
#: ../../implementation/first_person.md
msgid "isSelf"
msgstr ""
#: ../../implementation/first_person.md
msgid "FirstPerson設定"
msgstr ""
#: ../../implementation/first_person.md
msgid "FP Camera"
msgstr ""
#: ../../implementation/first_person.md
msgid "TP Camera"
msgstr ""
#: ../../implementation/first_person.md
msgid "レイヤーによる可視制御例"
msgstr ""
#: ../../implementation/first_person.md
msgid "true"
msgstr ""
#: ../../implementation/first_person.md
msgid "FirstPersonOnly"
msgstr ""
#: ../../implementation/first_person.md
msgid "✅"
msgstr ""
#: ../../implementation/first_person.md
msgid "❌"
msgstr ""
#: ../../implementation/first_person.md
msgid "FIRSTPERSON"
msgstr ""
#: ../../implementation/first_person.md
msgid "ThirdPersonOnly"
msgstr ""
#: ../../implementation/first_person.md
msgid "THIRDPERSON"
msgstr ""
#: ../../implementation/first_person.md
msgid "Both"
msgstr ""
#: ../../implementation/first_person.md
msgid "default"
msgstr ""
#: ../../implementation/first_person.md
msgid "Auto"
msgstr ""
#: ../../implementation/first_person.md
msgid "-"
msgstr ""
#: ../../implementation/first_person.md
msgid "Both と ThirdPersonOnly に分割する"
msgstr ""
#: ../../implementation/first_person.md
msgid "false"
msgstr ""
#: ../../implementation/first_person.md
msgid "完全に描画されない。Rendererの描画を止める"
msgstr ""
#: ../../implementation/first_person.md
msgid "default。メッシュ分割など特別な処理は不要"
msgstr ""
#~ msgid "FirstPersonOnly と ThirdPersonOnly に分割する"
#~ msgstr ""

View File

@@ -1,125 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/format.md:1
msgid "glbフォーマット概説"
msgstr ""
#: ../../implementation/format.md:3
msgid "JSON記述部と、画像や頂点配列を記録するバイナリ部のつの部分からなります。"
msgstr ""
#: ../../implementation/format.md:5
msgid ""
"gltf形式では、URLやパスで参照する方法で外部のバイナリデータにアクセスします。 "
"glb形式ではJSON部とバイナリ部をひとつのファイルにまとめていて、バイト列のオフセットでバイナリデータにアクセスします。 "
"プログラムから扱うには外部ファイルへのアクセスが無いglb形式の方が簡単[^VRM_glb]です。"
msgstr ""
#: ../../implementation/format.md:11
msgid "glb形式"
msgstr ""
#: ../../implementation/format.md:13
msgid ""
"``ヘッダ部 + チャンク部繰り返し``という構造になっています。 実質的には、 ``ヘッダ部 + JSON CHUNk + BINARY "
"CHUNK``となります。"
msgstr ""
#: ../../implementation/format.md:17
msgid "ヘッダ部"
msgstr ""
#: ../../implementation/format.md
msgid "長さ"
msgstr ""
#: ../../implementation/format.md
msgid "内容"
msgstr ""
#: ../../implementation/format.md
msgid "型"
msgstr ""
#: ../../implementation/format.md
msgid "値"
msgstr ""
#: ../../implementation/format.md
msgid "4"
msgstr ""
#: ../../implementation/format.md
msgid "ascii"
msgstr ""
#: ../../implementation/format.md
msgid "\"glTF\""
msgstr ""
#: ../../implementation/format.md
msgid "gltfバージョン"
msgstr ""
#: ../../implementation/format.md
msgid "int32"
msgstr ""
#: ../../implementation/format.md
msgid "2"
msgstr ""
#: ../../implementation/format.md
msgid "file size"
msgstr ""
#: ../../implementation/format.md:25
msgid "チャンク部"
msgstr ""
#: ../../implementation/format.md
msgid "chunk size"
msgstr ""
#: ../../implementation/format.md
msgid "chunk type"
msgstr ""
#: ../../implementation/format.md
msgid "\"JSON\" or \"BIN\\x00\""
msgstr ""
#: ../../implementation/format.md
msgid "chunk body"
msgstr ""
#: ../../implementation/format.md
msgid "バイト列"
msgstr ""
#: ../../implementation/format.md:33
msgid "python3によるパース例"
msgstr ""
#: ../../implementation/format.md:9
msgid "VRMではglbを採用しています。"
msgstr ""

View File

@@ -1,23 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-15 15:45+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/index.md:1
msgid "実装メモ"
msgstr "Implementation note"

View File

@@ -1,50 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/runtime_resource_management.md:1
msgid "Runtime のリソース管理について"
msgstr ""
#: ../../implementation/runtime_resource_management.md:3
msgid ""
"Runtime Import で `Texture`, `Material`, `Mesh` などのリソースを Root の "
"`GameObject.OnDestroy` と同時に `UnityEngine.Object.Destroy` したい。"
msgstr ""
#: ../../implementation/runtime_resource_management.md:6
msgid "RuntimeGltfInstance"
msgstr ""
#: ../../implementation/runtime_resource_management.md:8
msgid "`RuntimeGltfInstance.OnDestroy` で破棄を実行するようにした。"
msgstr ""
#: ../../implementation/runtime_resource_management.md:28
msgid "VRM-0.X では `RuntimeGltfInstance` にリソースを委譲している。"
msgstr ""
#: ../../implementation/runtime_resource_management.md:30
msgid "Vrm10Instance"
msgstr ""
#: ../../implementation/runtime_resource_management.md:46
msgid "FirstPerson"
msgstr ""

View File

@@ -1,83 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 16:41+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/scripted_importer.md:1
msgid "ScriptedImporter の実装"
msgstr ""
#: ../../implementation/scripted_importer.md:3
msgid ""
"`v0.68.0` 以降 の `glb/gltf editor importer` と `VRM-1.0 editor importer` "
"の実装で使用している "
"[ScriptedImporter](https://docs.unity3d.com/ja/2019.4/ScriptReference/Experimental.AssetImporters.ScriptedImporter.html)"
" に関して。"
msgstr ""
#: ../../implementation/scripted_importer.md:5
msgid "`VRM-1.0` の実装と拡張子がぶつかってしまうので `VRM-0.x` への `ScriptedImporter` 実装はしません"
msgstr ""
#: ../../implementation/scripted_importer.md:7
msgid "ScriptedImporter 採用の利点"
msgstr ""
#: ../../implementation/scripted_importer.md:9
msgid "Texture の Asset化 が楽"
msgstr ""
#: ../../implementation/scripted_importer.md:11
msgid ""
"`AssetPostprocessor` だと普通の方法では実装できない Texture のバイト列を出力して Asset 化して、 "
"これを参照する Material をアセット化するということが、 `ScriptedImporter.GetExternalObjectMap` "
"により無理をせずに実装できます。"
msgstr ""
#: ../../implementation/scripted_importer.md:15
msgid "UniVRM では抜け道として `EditorApplication.delayCall` を使用しています。"
msgstr ""
#: ../../implementation/scripted_importer.md:17
msgid "Import 設定を作れる"
msgstr ""
#: ../../implementation/scripted_importer.md:19
msgid ""
"`ScriptedImporter` を継承したクラスの `public member` や `[SerializeField]` "
"に情報を保存できます。"
msgstr ""
#: ../../implementation/scripted_importer.md:32
msgid "ForceText 時に import が低速化するのを回避できる"
msgstr ""
#: ../../implementation/scripted_importer.md:34
msgid ""
"`ScriptedImporter` の SubAsset にすることで、 `mesh` などがテキスト(yaml)で Asset "
"化されることを回避できます。 巨大なアセットで差が出ます。"
msgstr ""
#: ../../implementation/scripted_importer.md:37
msgid "ScriptedImporter 実装"
msgstr ""
#: ../../implementation/scripted_importer.md:39
msgid "TODO: ExternalObjectMap の扱い"
msgstr ""

View File

@@ -1,67 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/texture_manipulation.md:1
msgid "Texture関連"
msgstr ""
#: ../../implementation/texture_manipulation.md:3
msgid "Unity の linear の テクスチャーの挙動について"
msgstr ""
#: ../../implementation/texture_manipulation.md:5
#: ../../implementation/texture_manipulation.md:33
msgid "Runtime"
msgstr ""
#: ../../implementation/texture_manipulation.md:7
#: ../../implementation/texture_manipulation.md:35
msgid "new する場合は、"
msgstr ""
#: ../../implementation/texture_manipulation.md:13
msgid "とする。"
msgstr ""
#: ../../implementation/texture_manipulation.md:15
#: ../../implementation/texture_manipulation.md:53
msgid "Editor(Asset)"
msgstr ""
#: ../../implementation/texture_manipulation.md:17
msgid "AssetFolder の png/jpg からloadする場合は、 事前に設定が必用。"
msgstr ""
#: ../../implementation/texture_manipulation.md:29
msgid "Unity の NormalMap の挙動について"
msgstr ""
#: ../../implementation/texture_manipulation.md:31
msgid "MToon の NormalMap も同じ"
msgstr ""
#: ../../implementation/texture_manipulation.md:41
msgid "とする。 また、 `DXT5nm` という仕様で格納する必要があるので変換します。 y と w の2要素だけを使います。"
msgstr ""
#: ../../implementation/texture_manipulation.md:55
msgid "AssetFolder の png/jpg からloadする場合は、 ロードする前に設定が必用。"
msgstr ""

View File

@@ -1,138 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 16:41+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../implementation/transparent_zwrite.md:1
msgid "UnlitTransparentZWrite"
msgstr ""
#: ../../implementation/transparent_zwrite.md:3
msgid "対応状況。"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "UniVRM"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "export"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "import"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "comment"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "✅"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "GLTFの仕様外で MToon でもないので仕様の無い存在に。"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "{doc}`v0.44 </release/055/v0.44>`"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "❌"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "MToon のみを extensions.VRM に記述し、 `PBR` と `Unilt` は GLTF として記録する。"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "{doc}`v0.76 </release/068/v0.76.0>`"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid ""
"[\\#1004](https://github.com/vrm-c/UniVRM/pull/1004) 仕様外のため削除。import すると "
"MToon になるが調整されていない。"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "{doc}`v0.85 </release/079/v0.85.0>`"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "🔺"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "[\\#1248](https://github.com/vrm-c/UniVRM/pull/1248) import すると MToon になる。"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "{doc}`v0.88 </release/079/v0.88.0>`"
msgstr ""
#: ../../implementation/transparent_zwrite.md
msgid "[\\#1331](https://github.com/vrm-c/UniVRM/pull/1331) MToon 変換を見直し。"
msgstr ""
#: ../../implementation/transparent_zwrite.md:13
msgid "`UniVRM-0.75` 以前はロードできます。"
msgstr ""
#: ../../implementation/transparent_zwrite.md:14
msgid "`UniVRM-0.88` 以降は見た目が同様になるように MToon に変換されます。"
msgstr ""
#: ../../implementation/transparent_zwrite.md:15
msgid "新規に `ZWriteTransparent` にしたい場合は、 `MToon` を使用してください。"
msgstr ""
#: ../../implementation/transparent_zwrite.md:17
msgid "MToon を Unlit 的に設定する"
msgstr ""
#: ../../implementation/transparent_zwrite.md:19
msgid "Emission を使うのがこつです。"
msgstr ""
#: ../../implementation/transparent_zwrite.md:21
msgid "_MainTex: 元の _MainTex"
msgstr ""
#: ../../implementation/transparent_zwrite.md:22
msgid "_Color: (0, 0, 0, 1)"
msgstr ""
#: ../../implementation/transparent_zwrite.md:23
msgid "_ShadeTex: null"
msgstr ""
#: ../../implementation/transparent_zwrite.md:24
msgid "_ShadeColor: (0, 0, 0, 1)"
msgstr ""
#: ../../implementation/transparent_zwrite.md:25
msgid "_EmissiveMap: 元の _MainTex"
msgstr ""
#: ../../implementation/transparent_zwrite.md:26
msgid "_Emission: (1, 1, 1, 1)"
msgstr ""

View File

@@ -1,66 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 14:34+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../index.md:3
msgid "Development"
msgstr ""
#: ../../index.md:11
msgid "Other"
msgstr ""
#: ../../index.md:18
msgid "UniVRM(github)"
msgstr ""
#: ../../index.md:18
msgid "VRM"
msgstr ""
#: ../../index.md:18
msgid "external"
msgstr ""
#: ../../index.md:1
msgid "UniVRM Programming Document"
msgstr ""
#~ msgid ""
#~ "これは、[UniVRM](https://github.com/vrm-c/UniVRM) の開発ドキュメントです。 "
#~ "UnityでVRMをエクスポートする方法などについては "
#~ "[manual](https://vrm.dev/docs/univrm/) を参照してください。"
#~ msgstr ""
#~ "This is the development documentation "
#~ "for [UniVRM] (https://github.com/vrm-c/UniVRM).Please "
#~ "see [manual](https://vrm.dev/en/docs//univrm/) about "
#~ "how to export VRM."
#~ msgid "Indices and tables"
#~ msgstr ""
#~ msgid "{ref}`genindex`"
#~ msgstr ""
#~ msgid "{ref}`modindex`"
#~ msgstr ""
#~ msgid "{ref}`search`"
#~ msgstr ""

View File

@@ -1,80 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../package.md:1
msgid "パッケージ構成"
msgstr ""
#: ../../package.md:3
msgid "パッケージ"
msgstr ""
#: ../../package.md
msgid "unitypackage"
msgstr ""
#: ../../package.md
msgid "folder"
msgstr ""
#: ../../package.md
msgid "contents"
msgstr ""
#: ../../package.md
msgid "VRMShaders_UniGLTF"
msgstr ""
#: ../../package.md
msgid "Assets/VRMShaders, Assets/UniGLTF"
msgstr ""
#: ../../package.md
msgid "VRMShaders と UniGLTF"
msgstr ""
#: ../../package.md
msgid "UniVRM"
msgstr ""
#: ../../package.md
msgid "Assets/VRM"
msgstr ""
#: ../../package.md
msgid "VRM-0.X"
msgstr ""
#: ../../package.md
msgid "VRM"
msgstr ""
#: ../../package.md
msgid "Assets/VRM10"
msgstr ""
#: ../../package.md
msgid "VRM-1.0(β)"
msgstr ""
#: ../../package.md:22
msgid "UPM"
msgstr ""

View File

@@ -1,39 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-15 16:47+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../release/055/index.md:1
msgid "v0.55 (Unity-5.6 .NET-3.5) 推奨バージョンv0.55"
msgstr "v0.55 (Unity-5.6. NET-3.5) Recommended version v0.55"
#: ../../release/055/index.md:3
msgid "UnityPackage"
msgstr ""
#: ../../release/055/index.md:5
msgid "`UniVRM-0.XX.0_YYYY.unitypackage`"
msgstr ""
#: ../../release/055/index.md:7
msgid "Releases"
msgstr ""
#~ msgid "v0.55: Unity-5.6(.NET-3.5)"
#~ msgstr ""

View File

@@ -1,91 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../release/055/v0.40.md:1
msgid "v0.40"
msgstr ""
#: ../../release/055/v0.40.md:3
msgid "Major fixes:"
msgstr ""
#: ../../release/055/v0.40.md:4
msgid ""
"(Exporter) Capable of collecting VRMSpringBone other than secondary "
"(since VRMSpringBone's attached position is not recorded, all of "
"VRMSpringBones will be attached to secondary during the import)"
msgstr ""
#: ../../release/055/v0.40.md:5
msgid "(Importer) Added the callback \"OnError\" to LoadVRMAsync"
msgstr ""
#: ../../release/055/v0.40.md:6
msgid ""
"(UniGLTF) Fixed bugs in the rename code when there are meshes with same "
"names"
msgstr ""
#: ../../release/055/v0.40.md:7
msgid "(UniGLTF) Allows exported VRM contains non-Texture2D Texture"
msgstr ""
#: ../../release/055/v0.40.md:8
msgid ""
"(Exporter) Fixed bugs where skeleton root was set and then mesh position "
"became incorrect if SkinnedMesh without bone weight was not set in "
"RootBone"
msgstr ""
#: ../../release/055/v0.40.md:9
msgid "(UniGLTF) Added Serializable to glTF_VRM_Material"
msgstr ""
#: ../../release/055/v0.40.md:10
msgid ""
"(Importer) Added the symbol \"VRM_STOP_ASSETPOSTPROCESSOR\" to stop "
"AssetPostProcessor"
msgstr ""
#: ../../release/055/v0.40.md:11
msgid "(Editor) Fixed OSX compilation errors"
msgstr ""
#: ../../release/055/v0.40.md:12
msgid ""
"(UniGLTF) Fixed bugs that all textures became the same when putting vrm "
"directly under Assets"
msgstr ""
#: ../../release/055/v0.40.md:14
msgid "We released v0.40 as the version of bugs corrections in v0.39"
msgstr ""
#: ../../release/055/v0.40.md:15
msgid ""
"Importing Texture fails if VRM file is put directly under the Assets "
"folder. There is a bug in parsing path. v0.39 package was in the "
"erroneous state described above before the following commit:"
msgstr ""
#: ../../release/055/v0.40.md:17
msgid "[ousttrue/UniGLTF@1d41ff0](https://github.com/ousttrue/UniGLTF/commit/1d41ff08c25707e9b789997368bac2971f2cd78e)"
msgstr ""

View File

@@ -1,159 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../release/055/v0.41.md:1
msgid "v0.41"
msgstr ""
#: ../../release/055/v0.41.md:3
msgid "※Important Information※"
msgstr ""
#: ../../release/055/v0.41.md:4
msgid "Major Updates:"
msgstr ""
#: ../../release/055/v0.41.md:5
msgid "[Exporter] Corrected exported normal map (for DXT5)"
msgstr ""
#: ../../release/055/v0.41.md:6
msgid ""
"[Exporter] Fixed bugs that material parameters were gone when exporting "
"VRM at runtime (for ShaderProperty that cannot be enumerated)"
msgstr ""
#: ../../release/055/v0.41.md:7
msgid ""
"[BlendShape] Fixed bugs that the list was missing when BlendShapeClip was"
" deleted"
msgstr ""
#: ../../release/055/v0.41.md:8
msgid "[BlendShape] Manipulation of UV value of Material Animation"
msgstr ""
#: ../../release/055/v0.41.md:9
msgid ""
"[BLendShape] Added a function to move horizontally with MainTex_ST_S / "
"move vertically with Matex_ST_T"
msgstr ""
#: ../../release/055/v0.41.md:10
msgid ""
"[BLendShape] When adding new BlendShapeClip, the file name can be put "
"into BlendShapeName"
msgstr ""
#: ../../release/055/v0.41.md:11
msgid "[SpringBoneColliderGroup] Enhanced NullCheck"
msgstr ""
#: ../../release/055/v0.41.md:13
msgid "Editor Updates:"
msgstr ""
#: ../../release/055/v0.41.md:15
msgid "[Editor] Added version# in VRM menu"
msgstr ""
#: ../../release/055/v0.41.md:16
msgid "[Editor] Added git hash to unitypackage file name"
msgstr ""
#: ../../release/055/v0.41.md:17
msgid "[Editor] Added UnitTest"
msgstr ""
#: ../../release/055/v0.41.md:19
msgid "API Updates:"
msgstr ""
#: ../../release/055/v0.41.md:20
msgid ""
"[Importer] Added the argument: show. Now you can choose to undisplay VRM "
"model when VrmImporter.LoadVrmAsync is ended"
msgstr ""
#: ../../release/055/v0.41.md:21
msgid ""
"[Importer] Extended code that relies on unpacking textures in the same "
"path as glb"
msgstr ""
#: ../../release/055/v0.41.md:22
msgid ""
"[Importer] Change Task's version check from `UNITY_2018_1_OR_NEWER` to "
"`UNITY_2017_1_OR_NEWER`"
msgstr ""
#: ../../release/055/v0.41.md:23
msgid "[Exporter] Organized interface"
msgstr ""
#: ../../release/055/v0.41.md:33
msgid ""
"[UniGLTF] Changed the implementation method of extension from inheritance"
" to partial class"
msgstr ""
#: ../../release/055/v0.41.md:34
msgid ""
"Added [BlendShapeProxy]``public void "
"SetValues(IEnumerable<KeyValuePair<BlendShapeKey, float>> values)``"
msgstr ""
#: ../../release/055/v0.41.md:35
msgid "Renamed UniTask => DepthFirstScheduler"
msgstr ""
#: ../../release/055/v0.41.md:37
msgid "JSON Related Fixes:"
msgstr ""
#: ../../release/055/v0.41.md:38
msgid "Discarded `/nodes/*/extras/rootBone`."
msgstr ""
#: ../../release/055/v0.41.md:40
msgid ""
"This item was meant to save `SkinnedMeshRenderer.rootBone`, but we found "
"it was the same as `/ skins / * / skeleton` of the GLTF specification."
msgstr ""
#: ../../release/055/v0.41.md:43
msgid ""
"When using UniVRM in a built application, there may be influences by "
"`SkinnedMeshRenderer.updateWhenOffscreen = false`."
msgstr ""
#: ../../release/055/v0.41.md:46
msgid ""
"From now on, we will provide the information about the change of JSON "
"level here."
msgstr ""
#: ../../release/055/v0.41.md:48
msgid ""
"To use `SkinnedMeshRenderer.updateWhenOffscreen=true` more convenient, we"
" added `ImporterContext.EnableUpdateWhenOffscreen` that can apply to all "
"meshes at one time. Feel free to use it."
msgstr ""

View File

@@ -1,303 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../release/055/v0.42.md:1
msgid "v0.42"
msgstr ""
#: ../../release/055/v0.42.md:3
msgid "※Important Information※"
msgstr ""
#: ../../release/055/v0.42.md:4
msgid ""
"The errors in VRM output from earlier versions (UniVRM 0.41 and before) "
"have been fixed in v0.42. However, this fix comes along with the "
"following impact:"
msgstr ""
#: ../../release/055/v0.42.md:6
msgid ""
"The exported VRM data in v0.42 or later cannot be imported correctly in "
"the earlier versions"
msgstr ""
#: ../../release/055/v0.42.md:8
msgid ""
"When exporting VRM data using UniVRM, please check which version you use "
"to make VRM model. If you are using UniVRM to import VRM data, please "
"update UniVRM to the latest version as soon as you can."
msgstr ""
#: ../../release/055/v0.42.md:11
msgid "UV Bugs Fix:"
msgstr ""
#: ../../release/055/v0.42.md:12
msgid ""
"In v0.41 and the earlier versions, converting UV between Unity and GLTF "
"was incorrect."
msgstr ""
#: ../../release/055/v0.42.md:14
msgid "Before"
msgstr ""
#: ../../release/055/v0.42.md:19
msgid "After"
msgstr ""
#: ../../release/055/v0.42.md:24
msgid "This change influences both import and export."
msgstr ""
#: ../../release/055/v0.42.md:26
msgid "Current status in v0.42:"
msgstr ""
#: ../../release/055/v0.42.md:28
msgid "The UV of imported VRM is correct."
msgstr ""
#: ../../release/055/v0.42.md:29
msgid ""
"V will become negative when loading the correct UV of VRM with the "
"earlier versions."
msgstr ""
#: ../../release/055/v0.42.md:30
msgid ""
"Texture display will be distorted if texture is set to `Clamp`. The "
"default is `Repeat`."
msgstr ""
#: ../../release/055/v0.42.md
msgid "VRM's UV in v0.41 and before"
msgstr ""
#: ../../release/055/v0.42.md
msgid "VRM's UV from v0.42"
msgstr ""
#: ../../release/055/v0.42.md
msgid "Importer in UniVRM-0.41 and before"
msgstr ""
#: ../../release/055/v0.42.md
msgid " (negative x negative = positive)"
msgstr ""
#: ../../release/055/v0.42.md
msgid "× (positive x negative = negative)"
msgstr ""
#: ../../release/055/v0.42.md
msgid "Importer from UniVRM-0.42"
msgstr ""
#: ../../release/055/v0.42.md
msgid ""
msgstr ""
#: ../../release/055/v0.42.md
msgid "General GLTF loader"
msgstr ""
#: ../../release/055/v0.42.md
msgid "×"
msgstr ""
#: ../../release/055/v0.42.md:38
msgid "To developers: please update UniVRM to v0.42 as soon as possible."
msgstr ""
#: ../../release/055/v0.42.md:39
msgid ""
"We created a judger based on the string `UniGLTF-1.16 (v0.42)` in GLTF "
"`/assets/generator` in importer to detect whether a VRM model is made by "
"the version before 0.42. For v0.42, it can import VRM model correctly."
msgstr ""
#: ../../release/055/v0.42.md:41
msgid "Tangents Bugs Fix:"
msgstr ""
#: ../../release/055/v0.42.md:42
msgid ""
"The method to call "
"[Mesh.RecalculateTangents](https://docs.unity3d.com/ScriptReference/Mesh.RecalculateTangents.html)"
" was inappropriate and it was not able to generate Tangents. We have "
"fixed this issue. It influences the use of normal map."
msgstr ""
#: ../../release/055/v0.42.md:47
msgid "Tangents processing modification:"
msgstr ""
#: ../../release/055/v0.42.md:48
msgid "Tangents can be calculated and generated from Normal and UV"
msgstr ""
#: ../../release/055/v0.42.md:49
msgid "The differences of coordinate axes between GLTF and Unity can be absorbed"
msgstr ""
#: ../../release/055/v0.42.md:50
msgid "File size can be decreased if Tangents is not recorded"
msgstr ""
#: ../../release/055/v0.42.md:52
msgid ""
"Based on the reasons above, we decided not to export Tangents. (If any "
"problem occurs, please let us know through "
"https://github.com/ousttrue/UniGLTF/issues)"
msgstr ""
#: ../../release/055/v0.42.md:55
msgid "GLTF Improvement:"
msgstr ""
#: ../../release/055/v0.42.md:57
msgid "`/bufferViews/*/byteStride`will not output"
msgstr ""
#: ../../release/055/v0.42.md:58
msgid "It seems necessary for outputting OpenGL's interleaved vbo format:"
msgstr ""
#: ../../release/055/v0.42.md:69
msgid ""
"Since UniGLTF outputs separate arrays for each vertex attribute, "
"ByteStride was unnecessary."
msgstr ""
#: ../../release/055/v0.42.md:71
msgid ""
"When this is not defined, data is tightly packed. When two or more "
"accessors use the same bufferView, this field must be defined."
msgstr ""
#: ../../release/055/v0.42.md:73
msgid "Also, we found that ByteStride should not output to Index."
msgstr ""
#: ../../release/055/v0.42.md:75
msgid "GLTF material support improvement:"
msgstr ""
#: ../../release/055/v0.42.md:77
msgid "`/materials/*/alphaMode`"
msgstr ""
#: ../../release/055/v0.42.md:78
msgid "`/materials/*/doubleSided`"
msgstr ""
#: ../../release/055/v0.42.md:79
msgid "KHR_material_unlit"
msgstr ""
#: ../../release/055/v0.42.md:80
msgid "texture sampler(repeat, clamp, mirror)"
msgstr ""
#: ../../release/055/v0.42.md:81
msgid "https://github.com/ousttrue/UniGLTF/issues/12"
msgstr ""
#: ../../release/055/v0.42.md:82
msgid ""
"[Handling semi-transparent texture "
"#28](https://github.com/dwango/UniVRM/issues/28)"
msgstr ""
#: ../../release/055/v0.42.md:84
msgid "[Details](https://github.com/ousttrue/UniGLTF/wiki/Material)"
msgstr ""
#: ../../release/055/v0.42.md:86
msgid ""
"Also, when setting MToon, we tried to pass parameters as many as possible"
" to GLTF material: `KHR_material_unlit, AlphaMode, DoubleSided`."
msgstr ""
#: ../../release/055/v0.42.md:88
msgid ""
"This improvement has influences on VRM files changed to .glb format when "
"loading with other tools."
msgstr ""
#: ../../release/055/v0.42.md:90
msgid "VRM JsonShcema Release:"
msgstr ""
#: ../../release/055/v0.42.md:92
msgid "https://github.com/dwango/UniVRM/tree/master/specification/0.0/schema"
msgstr ""
#: ../../release/055/v0.42.md:94
msgid "Directory Structure Changes:"
msgstr ""
#: ../../release/055/v0.42.md:96
msgid "VRM/UniHumanoid => VRM/UniGLTF/UniHumanoid"
msgstr ""
#: ../../release/055/v0.42.md:97
msgid ""
"VRM/Scripts/DepthFirstScheduler(Former UniTask) => "
"VRM/UniGLTF/DepthFirstScheduler"
msgstr ""
#: ../../release/055/v0.42.md:99
msgid "BlendShape Asset:"
msgstr ""
#: ../../release/055/v0.42.md:100
msgid ""
"The asset for BlendShape now is independent (previously it is a sub-asset"
" of Prefab)"
msgstr ""
#: ../../release/055/v0.42.md:101
msgid "https://github.com/dwango/UniVRM/pull/26"
msgstr ""
#: ../../release/055/v0.42.md:103
msgid "BlendShape Reference:"
msgstr ""
#: ../../release/055/v0.42.md:104
msgid ""
"The state of BlendShape before model normalization is now used as a "
"reference. You can make BlendShape before normalization and Bake the "
"state of BlendShape during normalization."
msgstr ""
#: ../../release/055/v0.42.md:106
msgid "UniHumanoid BVH Judgement Fix:"
msgstr ""
#: ../../release/055/v0.42.md:107
msgid ""
"We fixed BVH skeleton estimation. Report errors here when it fails: "
"https://github.com/ousttrue/UniHumanoid/issues"
msgstr ""

View File

@@ -1,168 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2021, VRM Consortium
# This file is distributed under the same license as the UniVRM Programming
# Document package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 16:50+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n"
#: ../../release/055/v0.43.md:1
msgid "v0.43"
msgstr ""
#: ../../release/055/v0.43.md:3
msgid "※Important Information※"
msgstr ""
#: ../../release/055/v0.43.md:4
msgid ""
"The errors in VRM output from earlier versions (UniVRM 0.41 and before) "
"have been fixed since v0.42. However, this fix comes along with the "
"following impact:"
msgstr ""
#: ../../release/055/v0.43.md:6
msgid ""
"The exported VRM data in v0.42 or later cannot be imported correctly in "
"the earlier versions"
msgstr ""
#: ../../release/055/v0.43.md:8
msgid ""
"When exporting VRM data using UniVRM, please check which version you use "
"to make VRM model. If you are using UniVRM to import VRM data, please "
"update UniVRM to the latest version as soon as you can."
msgstr ""
#: ../../release/055/v0.43.md:11
msgid "BlendShape Object Bug Fix:"
msgstr ""
#: ../../release/055/v0.43.md:12
msgid ""
"In v0.42, BlendShape.Clips will not be saved if you try to save clips in "
"the following order:"
msgstr ""
#: ../../release/055/v0.43.md:14
msgid "Import VRM"
msgstr ""
#: ../../release/055/v0.43.md:15
msgid "Close Unity (BlendShape.Clips are not saved in the disk)"
msgstr ""
#: ../../release/055/v0.43.md:16
msgid "Start Unity"
msgstr ""
#: ../../release/055/v0.43.md:17
msgid "BlendShapeProxy.Clips in `model_name.BlendShapes / BlendShape` are empty"
msgstr ""
#: ../../release/055/v0.43.md:19
msgid ""
"![empty](https://user-"
"images.githubusercontent.com/68057/45142250-0131a480-b1f3-11e8-8e1c-"
"a601c62d7bb0.png)"
msgstr ""
#: ../../release/055/v0.43.md:19
msgid "empty"
msgstr ""
#: ../../release/055/v0.43.md:21
msgid "↑ Empty status"
msgstr ""
#: ../../release/055/v0.43.md:23
msgid ""
"![valid](https://user-"
"images.githubusercontent.com/68057/45142316-3211d980-b1f3-11e8-8740-def7afb90630.png)"
msgstr ""
#: ../../release/055/v0.43.md:23
msgid "valid"
msgstr ""
#: ../../release/055/v0.43.md:25
msgid "↑ Valid status"
msgstr ""
#: ../../release/055/v0.43.md:27
msgid "This issue has been fixed in v0.43."
msgstr ""
#: ../../release/055/v0.43.md:29
msgid "How to restore empty BlendShape resulted by v0.42:"
msgstr ""
#: ../../release/055/v0.43.md:30
msgid ""
"Either way described below can restore BlendShape clips once UniVRM is "
"updated to v0.43."
msgstr ""
#: ../../release/055/v0.43.md:32
msgid "Right click VRM file and select Reimport."
msgstr ""
#: ../../release/055/v0.43.md:34
msgid ""
"![reimport](https://user-"
"images.githubusercontent.com/68057/45142534-c11ef180-b1f3-11e8-9251-23e15486632c.png)"
msgstr ""
#: ../../release/055/v0.43.md:34
msgid "reimport"
msgstr ""
#: ../../release/055/v0.43.md:36
msgid "Add restore option in menu for empty Blendshape clips (v0.42):"
msgstr ""
#: ../../release/055/v0.43.md:38
msgid ""
"![restore](https://user-"
"images.githubusercontent.com/68057/45142411-70a79400-b1f3-11e8-9d0f-"
"b50108b0a8a6.png)"
msgstr ""
#: ../../release/055/v0.43.md:38
msgid "restore"
msgstr ""
#: ../../release/055/v0.43.md:40
msgid ""
"↑ Click the gear icon on the top and select `Restore`. The BlendShape "
"clips set before will be back (the BlendShape clips in the same folder)."
msgstr ""
#: ../../release/055/v0.43.md:43
msgid "Other Fixes:"
msgstr ""
#: ../../release/055/v0.43.md:44
msgid ""
"Normal map conversion fix at runtime loading: "
"https://github.com/ousttrue/UniGLTF/issues/21"
msgstr ""
#: ../../release/055/v0.43.md:45
msgid ""
"Added the argument: "
"VRMSpringBone.Setup(force)https://github.com/dwango/UniVRM/commit/b99e7cb9a47de77280eece57d6ed5e7718e848db"
msgstr ""

Some files were not shown because too many files have changed in this diff Show More