update po

This commit is contained in:
ousttrue
2021-09-14 14:45:25 +09:00
parent abc6610fe2
commit bf77f86e2b
44 changed files with 370 additions and 1904 deletions

4
docs/.gitignore vendored
View File

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

View File

@@ -44,10 +44,17 @@ gettext_compact = False
potファイル作成
```
doc$ sphinx-build -M gettext . _build
doc$ sphinx-build -M gettext . _pot
# => _pot/gettext
```
poファイルを作成
```
doc$ sphinx-intl update -p _build/gettext -l ja
doc$ sphinx-intl update -p _pot/gettext -l en
# => locale/en
```
ロケールを使ってサイトビルド
```
doc$ sphinx-build . _build/en -D language=en
```

View File

@@ -47,7 +47,7 @@ exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'classic'
html_theme = 'nature'
# 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,

4
docs/index.html Normal file
View File

@@ -0,0 +1,4 @@
<ul>
<li><a href="./ja/">日本語</a></li>
<li><a href="./en/">English</a></li>
</ul>

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-14 13:46+0900\n"
"POT-Creation-Date: 2021-09-14 14:37+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"
@@ -50,7 +50,11 @@ msgstr ""
msgid "potファイル作成"
msgstr ""
#: ../../README.md:50
#: ../../README.md:51
msgid "poファイルを作成"
msgstr ""
#: ../../README.md:57
msgid "ロケールを使ってサイトビルド"
msgstr ""

View File

@@ -24,33 +24,32 @@ msgstr ""
#: ../../gltf/0_36_update.md:3
msgid "テクスチャ名の格納位置の修正"
msgstr ""
msgstr "Changed Storage Position of Texture Name"
#: ../../gltf/0_36_update.md:5 ../../gltf/0_36_update.md:22
msgid "GLTFの仕様に準拠しました。"
msgstr ""
msgstr "Conforming to the GLTF specification."
#: ../../gltf/0_36_update.md:7 ../../gltf/0_36_update.md:24
msgid "extraはextrasの間違い"
msgstr ""
msgstr "`extras` is not allowed in target"
#: ../../gltf/0_36_update.md:8
msgid "imageはnameを持っていた"
msgstr ""
msgstr "Use image.name"
#: ../../gltf/0_36_update.md:14 ../../gltf/0_36_update.md:32
msgid "変更後"
msgstr ""
msgstr "After the change "
#: ../../gltf/0_36_update.md:20
msgid "ブレンドシェイプ名の格納位置の修正"
msgstr ""
msgstr "Fix blendshape name"
#: ../../gltf/0_36_update.md:25
msgid "targetにextrasは不許可"
msgstr ""
msgstr "Target has no extras"
#: ../../gltf/0_36_update.md:26
msgid "https://github.com/KhronosGroup/glTF/issues/1036#issuecomment-314078356"
msgstr ""

View File

@@ -24,65 +24,65 @@ msgstr ""
#: ../../gltf/0_82_glb_import.md:2
msgid "`0.82.1` の API です。 `0.82.0` の場合は更新をお願いします。"
msgstr ""
msgstr "If use `0.82.0`, please upgrade."
#: ../../gltf/0_82_glb_import.md:5
msgid "以下のステップでロードします。"
msgstr ""
msgstr "GLB load is below steps."
#: ../../gltf/0_82_glb_import.md:7
msgid "`GLB` / `GLTF` をパースして `GltfData` を得る。"
msgstr ""
msgstr "Parse `GLB` / `GLTF`, get a `GltfData`"
#: ../../gltf/0_82_glb_import.md:8
msgid ""
"`GltfData` から `Unity Hierarchy` を ロード する。`RuntimeGltfInstance` を得る。 "
"ローダーを破棄する。"
msgstr ""
msgstr "Load `Unity Hierarchy` from the `GltfData`, get a `RuntimeGltfInstance`, dispose loader."
#: ../../gltf/0_82_glb_import.md:9
msgid "ロードした `RuntimeGltfInstance` 使う。`RuntimeGltfInstance` を破棄する。"
msgstr ""
msgstr "Use the `RuntimeGltfInstance`, destroy the `RuntimeGltfInstance`."
#: ../../gltf/0_82_glb_import.md:11
msgid "1. パースする"
msgstr ""
msgstr "1. Parse"
#: ../../gltf/0_82_glb_import.md:13
msgid "glb ファイルパスからパースする"
msgstr ""
msgstr "Parse glb from file path"
#: ../../gltf/0_82_glb_import.md:15 ../../gltf/0_82_glb_import.md:26
msgid "`vrm` もこの関数を使います。"
msgstr ""
msgstr "Use this for vrm too."
#: ../../gltf/0_82_glb_import.md:24
msgid "glb バイト列をパースする"
msgstr ""
msgstr "Parse glb byte array"
#: ../../gltf/0_82_glb_import.md:35
msgid "gltf ファイルパスからパースする"
msgstr ""
msgstr "Parse gltf from file path"
#: ../../gltf/0_82_glb_import.md:44
msgid "zip アーカイブからパースする"
msgstr ""
msgstr "Parse gltf in zip archive from file path"
#: ../../gltf/0_82_glb_import.md:46
msgid "gltf と関連するファイルを zip アーカイブしたファイルをパースできます(実験)。"
msgstr ""
msgstr "Zip archive that contains gltf and related files could parsed(expelemental)."
#: ../../gltf/0_82_glb_import.md:55
msgid "ファイルパスの拡張子でパースする"
msgstr ""
msgstr "Parse by file extension"
#: ../../gltf/0_82_glb_import.md:57
msgid "サンプルの `SimpleViewer` を参考にしてください。"
msgstr ""
msgstr "See `SimpleViewer` sample."
#: ../../gltf/0_82_glb_import.md:67
msgid "2. ロードする"
msgstr ""
msgstr "2. Load"
#: ../../gltf/0_82_glb_import.md:69
msgid "sync"
@@ -94,17 +94,17 @@ msgstr ""
#: ../../gltf/0_82_glb_import.md:99
msgid "materialGenerator で URP 用のマテリアルをロードする"
msgstr ""
msgstr "Load URP material by materialGenerator argument"
#: ../../gltf/0_82_glb_import.md:101
msgid "`materialGenerator` 引き数(省略可能)を指定することで URP マテリアルを生成するようにカスタムできます。"
msgstr ""
msgstr "You can load URP materials by setting the `materialGenerator` Argument (optional)."
#: ../../gltf/0_82_glb_import.md:115
msgid "3. インスタンスを使用する"
msgstr ""
msgstr "3. Use instance"
#: ../../gltf/0_82_glb_import.md:124
msgid "使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。"
msgstr ""
msgstr "Destroy after use and discard related assets (textures, materials, meshes, etc.)"

View File

@@ -20,45 +20,45 @@ msgstr ""
#: ../../gltf/how_to_impl_extension.md:1
msgid "glTF拡張の実装(0.63.2)"
msgstr ""
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 ""
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 ""
msgstr "About GLTF Extensions"
#: ../../gltf/how_to_impl_extension.md:7
msgid "`glTF` は各所に `extensions`, `extras` が定義してありその中身を拡張できます。"
msgstr ""
msgstr "`glTF` has each `extensions`, `extras` points."
#: ../../gltf/how_to_impl_extension.md:9
msgid "`extensions` (またはextras)"
msgstr ""
msgstr "`extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:10
msgid "`asset.extensions` (またはextras)"
msgstr ""
msgstr "`asset.extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:11
msgid "`meshes[*].extensions` (またはextras)"
msgstr ""
msgstr "`meshes[*].extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:12
msgid "`materials[*].extensions` (またはextras)"
msgstr ""
msgstr "`materials[*].extensions` (or extras)"
#: ../../gltf/how_to_impl_extension.md:14
msgid "など。"
msgstr ""
msgstr "etc..."
#: ../../gltf/how_to_impl_extension.md:16
msgid "`extensions` はオフィシャルに仕様を策定して `JsonSchema` として公開します。"
msgstr ""
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"
@@ -68,11 +68,13 @@ msgstr ""
msgid ""
"`extensions` は、`{ベンダー名}_{拡張名}` という命名規則です。 ベンダー名は、 "
"https://github.com/KhronosGroup/glTF に申し込んで登録できます。"
msgstr ""
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 ""
msgstr "`extras` is defined in application local."
#: ../../gltf/how_to_impl_extension.md:25
msgid ""
@@ -82,13 +84,13 @@ msgstr ""
#: ../../gltf/how_to_impl_extension.md:27
msgid "UniGLTF の extensions"
msgstr ""
msgstr "The extensions of UniGLTF"
#: ../../gltf/how_to_impl_extension.md:29
msgid ""
"`v0.63.0` 以前は、`GLTF 型` の `extensions` フィールドに、`GLTFExtensions` "
"型を定義して、`VRM` フィールドを定義するという方法をとっていました。"
msgstr ""
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 と拡張を別ライブラリとして分離することができませんでした。"

View File

@@ -32,7 +32,7 @@ msgstr ""
#: ../../history.md
msgid "`materialGenerator(URP対応)` 引き数と `VrmData`"
msgstr ""
msgstr "`materialGenerator(for URP)` argument and `VrmData`"
#: ../../history.md
msgid "v0.79"
@@ -64,7 +64,7 @@ msgstr ""
#: ../../history.md
msgid "gltf の extension の実装方法を変更"
msgstr ""
msgstr "Update gltf extensions implementation"
#: ../../history.md
msgid "v0.56"
@@ -72,5 +72,5 @@ msgstr ""
#: ../../history.md
msgid "BlendShapeKey の仕様変更"
msgstr ""
msgstr "Update BlendShapeKey spec"

View File

@@ -24,17 +24,17 @@ msgstr ""
#: ../../index.md:3
msgid "これは、開発者(UniVRMを使ったアプリケーションを作成する人)向けのドキュメントです。"
msgstr ""
msgstr "This is a document for developer that using UniVRM."
#: ../../index.md:5
msgid ""
"UnityでVRMをエクスポートする方法などについては [manual](https://vrm.dev/docs/univrm/) "
"を参照してください。"
msgstr ""
msgstr "Please see [manual](https://vrm.dev/en/docs//univrm/) about how to export VRM."
#: ../../index.md:7
msgid "概要"
msgstr ""
msgstr "Overview"
#: ../../index.md:16
msgid "glTF"

View File

@@ -20,11 +20,11 @@ msgstr ""
#: ../../package.md:1
msgid "パッケージ構成"
msgstr ""
msgstr "Package Structure"
#: ../../package.md:3
msgid "パッケージ"
msgstr ""
msgstr "Package"
#: ../../package.md
msgid "unitypackage"
@@ -48,7 +48,7 @@ msgstr ""
#: ../../package.md
msgid "VRMShaders と UniGLTF"
msgstr ""
msgstr "VRMShaders and UniGLTF"
#: ../../package.md
msgid "UniVRM"

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-14 13:46+0900\n"
"POT-Creation-Date: 2021-09-14 14:37+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"
@@ -24,19 +24,19 @@ msgstr ""
#: ../../vrm0/0_44_runtime_import.md:3
msgid "`Version 0.44` LoadAsyncの例"
msgstr ""
msgstr "`Version 0.44~` LoadAsync Example "
#: ../../vrm0/0_44_runtime_import.md:28
msgid "LoadAsyncTaskを使う例"
msgstr ""
msgstr "LoadAsyncTask Example"
#: ../../vrm0/0_44_runtime_import.md:65
msgid "関連する記事など"
msgstr ""
msgstr "Related-Article"
#: ../../vrm0/0_44_runtime_import.md:67
msgid "こちらの記事がわかりやすいです。"
msgstr ""
msgstr "More details can be found in the link below (written in Japanese):"
#: ../../vrm0/0_44_runtime_import.md:69
msgid "[UniVRMを使ってVRMモデルをランタイムロードする方法](https://qiita.com/sh_akira/items/8155e4b69107c2a7ede6)"
@@ -45,83 +45,87 @@ msgstr ""
#: ../../vrm0/0_44_runtime_import.md:72
msgid "最新バージョンは[こちら]({{< relref \"runtime_import.md\" >}})をご覧ください。"
msgstr ""
"Examples of importing the VRM model with the latest version [can be found"
" here]({{< relref runtime_import.md >}})."
#: ../../vrm0/0_44_runtime_import.md:74
msgid "Unityで実行時にモデルをインポートする方法です。"
msgstr ""
msgstr "The followings are the methods to import a VRM model at runtime in Unity:"
#: ../../vrm0/0_44_runtime_import.md:76
msgid "ファイルパスからVRMを開く"
msgstr ""
#: ../../vrm0/0_44_runtime_import.md:78
msgid ""
"{{< highlight cs >}} var path=\"sample.vrm\"; var "
"go=VRM.VRMImporter.LoadFromPath(path); Debug.LogFormat(\"loaded {0}\", "
"go.name); {{< / highlight >}}"
msgstr ""
msgstr "Open VRM from a file path"
#: ../../vrm0/0_44_runtime_import.md:84
msgid "ファイルパスから非同期にVRMを開く"
msgstr ""
#: ../../vrm0/0_44_runtime_import.md:86
msgid ""
"{{< highlight cs >}} var path=\"sample.vrm\"; "
"VRMImporter.LoadVrmAsync(path, go => { Debug.LogFormat(\"loaded "
"{0}\", go.name); }); {{< / highlight >}}"
msgstr ""
msgstr "Open VRM asynchronously from a file path"
#: ../../vrm0/0_44_runtime_import.md:93
msgid "バイト列からVRM開く"
msgstr ""
#: ../../vrm0/0_44_runtime_import.md:95
msgid ""
"{{< highlight cs >}} var path=\"sample.vrm\"; var bytes = "
"File.ReadAllBytes(path); var go=VRMImporter.LoadFromBytes(bytes); {{< / "
"highlight >}}"
msgstr ""
msgstr "Open VRM from a byte array"
#: ../../vrm0/0_44_runtime_import.md:101
msgid "バイト列から非同期にVRMを開く"
msgstr ""
#: ../../vrm0/0_44_runtime_import.md:103
msgid ""
"{{< highlight cs >}} VRMImporter.LoadVrmAsync(bytes, go => { "
"Debug.LogFormat(\"loaded {0}\", go.name); }); {{< / highlight >}}"
msgstr ""
msgstr "Open VRM asynchronously from a byte array"
#: ../../vrm0/0_44_runtime_import.md:109
msgid "VRMから情報を取り出す"
msgstr ""
#: ../../vrm0/0_44_runtime_import.md:111
msgid ""
"{{< highlight cs >}} #if UNITY_STANDALONE_WIN var path = "
"FileDialogForWindows.FileDialog(\"open VRM\", \".vrm\"); #else"
" var path = Application.dataPath + \"/default.vrm\"; #endif"
" if (string.IsNullOrEmpty(path)) {"
" return; }"
msgstr ""
#: ../../vrm0/0_44_runtime_import.md:154
msgid "{{< / highlight >}}"
msgstr ""
msgstr "Get the information form VRM"
#: ../../vrm0/0_44_runtime_import.md:156
msgid "Thumbnailを取得する(v0.37から)"
msgstr ""
msgstr "Get the thumbnail (From v0.37)"
#: ../../vrm0/0_44_runtime_import.md:158
msgid "ReadMetaに引数を渡すことでThumbnailテクスチャを作成できます。"
msgstr ""
msgstr "A thumbnail texture can be created by passing arguments to ReadMeta. "
#: ../../vrm0/0_44_runtime_import.md:160
msgid ""
"{{< highlight cs >}} var meta = context.ReadMeta(true); // "
"Thumbnailテクスチャを作成する Texture2D thumbnail=meta.Thumbnail; {{< / "
"highlight >}}"
msgstr ""
#~ msgid ""
#~ "{{< highlight cs >}} var "
#~ "path=\"sample.vrm\"; var "
#~ "go=VRM.VRMImporter.LoadFromPath(path); Debug.LogFormat(\"loaded"
#~ " {0}\", go.name); {{< / highlight >}}"
#~ msgstr ""
#~ msgid ""
#~ "{{< highlight cs >}} var "
#~ "path=\"sample.vrm\"; VRMImporter.LoadVrmAsync(path, go "
#~ "=> { Debug.LogFormat(\"loaded {0}\", "
#~ "go.name); }); {{< / highlight >}}"
#~ msgstr ""
#~ msgid ""
#~ "{{< highlight cs >}} var "
#~ "path=\"sample.vrm\"; var bytes = "
#~ "File.ReadAllBytes(path); var "
#~ "go=VRMImporter.LoadFromBytes(bytes); {{< / highlight"
#~ " >}}"
#~ msgstr ""
#~ msgid ""
#~ "{{< highlight cs >}} "
#~ "VRMImporter.LoadVrmAsync(bytes, go => { "
#~ "Debug.LogFormat(\"loaded {0}\", go.name); }); "
#~ "{{< / highlight >}}"
#~ msgstr ""
#~ msgid ""
#~ "{{< highlight cs >}} #if "
#~ "UNITY_STANDALONE_WIN var path = "
#~ "FileDialogForWindows.FileDialog(\"open VRM\", \".vrm\");"
#~ " #else var path = "
#~ "Application.dataPath + \"/default.vrm\"; #endif"
#~ " if (string.IsNullOrEmpty(path)) "
#~ "{ return; }"
#~ msgstr ""
#~ msgid "{{< / highlight >}}"
#~ msgstr ""
#~ msgid ""
#~ "{{< highlight cs >}} var meta "
#~ "= context.ReadMeta(true); // Thumbnailテクスチャを作成する"
#~ " Texture2D thumbnail=meta.Thumbnail; {{< /"
#~ " highlight >}}"
#~ msgstr ""

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-14 13:46+0900\n"
"POT-Creation-Date: 2021-09-14 14:37+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"
@@ -23,200 +23,236 @@ msgid "BlendShapeProxy(0.58)"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:3
msgid "環境"
msgstr ""
msgid "BlendShapeKeyのインタフェースを厳格化、整理"
msgstr "Rework BlendShapeKey's Interface"
#: ../../vrm0/0_58_blendshape.md:4
msgid "UniVRM v0.58.0"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:6
#, python-format
msgid "[BlendShapeKeyのインタフェースを厳格化、整理](https://github.com/vrm-c/UniVRM/wiki/ReleaseNote-v0.56.0%28ja%29#blendshapekey%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9%E3%82%92%E5%8E%B3%E6%A0%BC%E5%8C%96%E6%95%B4%E7%90%86)"
#: ../../vrm0/0_58_blendshape.md:5
msgid "BlendShapeKeyを作成する方法が不明瞭だったため、 より明示的な API に置き換えました。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:8
msgid "使用するメソッド"
msgid "BlendShapeClip.Key 追加"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:10
msgid "[推奨] `SetValues`"
#: ../../vrm0/0_58_blendshape.md
msgid "arguments"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:11
msgid "[非推奨] `ImmediatelySetValue`"
#: ../../vrm0/0_58_blendshape.md
msgid "before"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:12
msgid "[上級者向け] `AccumulateValue`"
#: ../../vrm0/0_58_blendshape.md
msgid "after"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:13
msgid "[上級者向け] `Apply`"
#: ../../vrm0/0_58_blendshape.md
msgid "備考"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:15
msgid "スクリプトから BlendShape weight を適用する"
#: ../../vrm0/0_58_blendshape.md
msgid "string name, BlendShapePreset preset"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "public constructor"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "private constructor"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid ""
"BlendShapePreset.Unknownのときの挙動が不明瞭だった。代わりに、CreateFromPreset または "
"CreateUnknown を使用してください"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "BlendShapeClip"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "BlendShapeKey.CreateFrom"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "BlendShapeKey.CreateFromClip"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "他の関数に合わせて、名前を変更"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "BlendShapePreset"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "BlendShapeKey.CreateFromPreset"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "オーバーロードをやめて明示的な関数に変更"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "string"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "BlendShapeKey.CreateUnknown"
msgstr ""
#: ../../vrm0/0_58_blendshape.md
msgid "オーバーロードをやめて明示的な関数に変更。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:17
msgid "使用するメソッド"
msgstr "Methods"
#: ../../vrm0/0_58_blendshape.md:19
msgid "[推奨] `SetValues`"
msgstr "[Recommended] `SetValues`"
#: ../../vrm0/0_58_blendshape.md:20
msgid "[非推奨] `ImmediatelySetValue`"
msgstr "[Not Recommended] `ImmediatelySetValue`"
#: ../../vrm0/0_58_blendshape.md:21
msgid "[上級者向け] `AccumulateValue`"
msgstr "[For Advanced Users] `AccumulateValue`"
#: ../../vrm0/0_58_blendshape.md:22
msgid "[上級者向け] `Apply`"
msgstr "[For Advanced Users] `Apply`"
#: ../../vrm0/0_58_blendshape.md:24
msgid "スクリプトから BlendShape weight を適用する"
msgstr "Apply BlendShape weight from script"
#: ../../vrm0/0_58_blendshape.md:26
msgid ""
"`SetValues` 関数のみを使用します。 そのフレームで必要な表情の weight 値をすべて集めてから `SetValues` を 1 "
"回だけ呼んで設定します。"
msgstr ""
"Call `SetValues` function once to create the specific expression (merged "
"by multiple BlendShapes) in a frame"
#: ../../vrm0/0_58_blendshape.md:20
msgid "{{< highlight cs >}} var proxy = GetComponent<VRMBlendShapeProxy>();"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:23
msgid ""
"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 で指定 }); {{< / highlight >}}"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:31
#: ../../vrm0/0_58_blendshape.md:40
msgid "複数の BlendShape weight を適用する際の競合の問題について"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:33
#: ../../vrm0/0_58_blendshape.md:42
msgid "この節では、なぜ `SetValues` を使わなければならないのかという疑問に回答します。"
msgstr ""
msgstr "Why use `SetValues` for synthesizing multiple BlendShapes?"
#: ../../vrm0/0_58_blendshape.md:35
#: ../../vrm0/0_58_blendshape.md:44
msgid "たとえば 2 つの VRMBlendShape `Blink_L` と `Blink_R` が"
msgstr ""
"We found that multiple BlendShapes compete with each other when the "
"following expressions are specified"
#: ../../vrm0/0_58_blendshape.md:37
#: ../../vrm0/0_58_blendshape.md:46
msgid "VRMBlendShape `Blink_L`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:39
#: ../../vrm0/0_58_blendshape.md:48
msgid "Mesh `A` の Blendshape `eye_close_L` の weight 値 `100`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:40
#: ../../vrm0/0_58_blendshape.md:49
msgid "Mesh `A` の Blendshape `eye_close_R` の weight 値 `1`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:42
#: ../../vrm0/0_58_blendshape.md:51
msgid "VRMBlendShape `Blink_R`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:44
#: ../../vrm0/0_58_blendshape.md:53
msgid "Mesh `A` の Blendshape `eye_close_L` の weight 値 `1`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:45
#: ../../vrm0/0_58_blendshape.md:54
msgid "Mesh `A` の Blendshape `eye_close_R` の weight 値 `100`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:47
#: ../../vrm0/0_58_blendshape.md:56
msgid "で定義されているとします。 このとき両目を閉じたいモチベーションから、両方を有効にする意図で下記のように実行します。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:50
msgid ""
"{{< highlight cs >}} "
"proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L),"
" 1.0f); "
"proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R),"
" 1.0f); {{< / highlight >}}"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:55
#: ../../vrm0/0_58_blendshape.md:64
msgid ""
"すると、左目だけが開いてしまいます。 これは後から `ImmediateSetValue` した `Blink_R` が `Blink_L` "
"と競合して weight を上書きしてしまうからです。 したがって VRM の表情制御においては下記の 2 "
"通りのどちらかの方法で書くことが求められます。 これらの方法はこの競合の問題を解決して表情を設定することができます。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:60
msgid ""
"{{< highlight cs >}} proxy.SetValues(new Dictionary<BlendShapeKey, float>"
" { {BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f},"
" {BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f}, "
"}); {{< / highlight >}}"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:68
#: ../../vrm0/0_58_blendshape.md:77
msgid "または"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:70
msgid ""
"{{< highlight cs >}} "
"proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L),"
" 1.0f); // すぐに適用せずにたくわえる "
"proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R),"
" 1.0f); proxy.Apply(); // 蓄積した値をまとめて適用する {{< / highlight >}}"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:76
#: ../../vrm0/0_58_blendshape.md:85
msgid "WIP"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:78
#: ../../vrm0/0_58_blendshape.md:87
msgid "何故、複数のSetterがあるのか"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:80
#: ../../vrm0/0_58_blendshape.md:89
msgid "LipSync"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:81
#: ../../vrm0/0_58_blendshape.md:90
msgid "瞬き"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:82
#: ../../vrm0/0_58_blendshape.md:91
msgid "視線制御(BlendShapeで視線を動かすタイプのモデル)"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:83
#: ../../vrm0/0_58_blendshape.md:92
msgid "プログラムによる喜怒哀楽"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:85
#: ../../vrm0/0_58_blendshape.md:94
msgid ""
"上記のような複数のBlendShapeが別々のコンポーネントから設定された場合に、 BlendShape同士が競合することがわかりました。 "
"後で設定した値で上書きされて希望のBlendShapeが適用されないという状態になります。 "
"これを解決するために、一か所で中央集権的に制御する必要があります。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:90
#: ../../vrm0/0_58_blendshape.md:99
msgid "合成したり排他制御した、BlendShapeClipの集合のスナップショットをまとめて適用することを想定して `SetValues`"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:92
#: ../../vrm0/0_58_blendshape.md:101
msgid "ImmediatelySetValue"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:94
#: ../../vrm0/0_58_blendshape.md:103
msgid "簡単なテストプログラムでの利用を想定しています。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:96 ../../vrm0/0_58_blendshape.md:106
#: ../../vrm0/0_58_blendshape.md:122
#: ../../vrm0/0_58_blendshape.md:105 ../../vrm0/0_58_blendshape.md:115
#: ../../vrm0/0_58_blendshape.md:131
msgid "例:"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:104
#: ../../vrm0/0_58_blendshape.md:113
msgid "AccumulateValue + Apply"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:116
#: ../../vrm0/0_58_blendshape.md:125
msgid "下記のSetValuesを推奨しています。"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:118
#: ../../vrm0/0_58_blendshape.md:127
msgid "SetValues"
msgstr ""
#: ../../vrm0/0_58_blendshape.md:120
#: ../../vrm0/0_58_blendshape.md:129
msgid "BlendShape合成器が必要に応じ呼び出すことを想定しています。"
msgstr ""

View File

@@ -24,63 +24,63 @@ msgstr ""
#: ../../vrm0/0_68_runtime_import.md:3
msgid "過去バージョンからの仕様変更"
msgstr ""
msgstr "API Changes"
#: ../../vrm0/0_68_runtime_import.md:5
msgid "`ImporterContext` の仕様を変更しました。"
msgstr ""
msgstr "ImporterContext has been reworked."
#: ../../vrm0/0_68_runtime_import.md:7
msgid "ロード処理が Parse と Load の 2 ステップに分かれました。"
msgstr ""
msgstr "Loading processing has been divided into two steps: `Parse` and `Load`."
#: ../../vrm0/0_68_runtime_import.md:8
msgid "Parse 処理をメインスレッド以外で処理することができます。"
msgstr ""
msgstr "`Parse` processing can be processed by other than the main thread."
#: ../../vrm0/0_68_runtime_import.md:9
msgid "非同期ロード関数 `ImporterContext.LoadAsync` の実装を `Task` に変更しました。"
msgstr ""
msgstr "The implementation of asynchronous loading function `ImporterContext.LoadAsync` has changed to `Task`."
#: ../../vrm0/0_68_runtime_import.md:10
msgid "これまで明示的に破棄できなかった `UnityEngine.Object` リソースを破棄できるようになりました。"
msgstr ""
msgstr "The method of explicitly destroying `UnityEngine.Object` resources is now available."
#: ../../vrm0/0_68_runtime_import.md:11
msgid "リソースのリークを防ぐことができます。"
msgstr ""
msgstr " As such, resource leaks can be prevented."
#: ../../vrm0/0_68_runtime_import.md:12
msgid "`ImporterContext.Dispose` を呼び出すべきタイミングを「ロード処理終了時」に変更しました。"
msgstr ""
msgstr "The timing of calling `ImporterContext.Dispose` has been changed to when the loading process ends"
#: ../../vrm0/0_68_runtime_import.md:13
msgid "呼び出して破棄する前に、後述の `ImporterContext.DisposeOnGameObjectDestroyed` を呼び出してください。"
msgstr ""
msgstr "Call `ImporterContext.DisposeOnGameObjectDestroyed` function (described below) before `ImporterContext.Dispose` function is called."
#: ../../vrm0/0_68_runtime_import.md:14
msgid "以前の仕様は「生成したモデルの破棄時」に呼び出すべき関数でした。"
msgstr ""
msgstr "In the previous versions, `ImporterContext.Dispose` is called when the generated VRM model is destroyed."
#: ../../vrm0/0_68_runtime_import.md:15
msgid "`ImporterContext.DisposeOnGameObjectDestroyed` 関数を追加しました。"
msgstr ""
msgstr "Added `ImporterContext.DisposeOnGameObjectDestroyed` function"
#: ../../vrm0/0_68_runtime_import.md:16
msgid ""
"VRM モデルが必要とするリソース (Texture, Material, Mesh, etc) を破棄する責務を GameObject "
"に移譲できます。"
msgstr ""
msgstr "The duty of destroying VRM resources (Texture, Material, Mesh, etc) has been transferred to GameObject."
#: ../../vrm0/0_68_runtime_import.md:17
msgid "VRM の GameObject の破棄タイミングでリソース (Texture, Material, Mesh, etc) を破棄します。"
msgstr ""
msgstr "The resources (Texture, Material, Mesh, etc) will be destroyed when VRM's GameObject is destroyed."
#: ../../vrm0/0_68_runtime_import.md:20
msgid "サンプルコード(同期的ロード)"
msgstr ""
msgstr "Sample Codes (Synchronous Loading)"
#: ../../vrm0/0_68_runtime_import.md:88
msgid "サンプルコード(非同期ロード)"
msgstr ""
msgstr "Sample Codes (Asynchronous Loading)"

View File

@@ -28,18 +28,18 @@ msgstr ""
#: ../../vrm0/0_77_runtime_import.md:5
msgid "`ImporterContext` の仕様を変更しました。"
msgstr ""
msgstr "`ImporterContext` API has been modified."
#: ../../vrm0/0_77_runtime_import.md:7
msgid ""
"`Version 0.68` で導入した、 `ImporterContext.DisposeOnGameObjectDestroyed` "
"が扱いづらかったためのでこれを取りやめ、 `ImporterContext.Load` が `RuntimeGltfInstance` "
"を返すようにしました。"
msgstr ""
msgstr "The function `ImporterContext.DisposeOnGameObjectDestroyed` introduced in `Version 0.68` has been discarded. Instead, `ImporterContext.Load` and `RuntimeGltfInstance` are used in `v0.77`."
#: ../../vrm0/0_77_runtime_import.md:10
msgid "`RuntimeGltfInstance` は、 `ImporterContext` の"
msgstr ""
msgstr "In addition, `ImporterContext`'s members have been moved to `RuntimeGltfInstance`:"
#: ../../vrm0/0_77_runtime_import.md:12
msgid "Root"
@@ -58,5 +58,5 @@ msgid ""
"を引き継ぎます。 Load の呼び出し後の任意のタイミングで ImporterContext.Dispose で Importer "
"を破棄してください。 任意のタイミングで RuntimeGltfInstance を Destory することで紐づくリソース (Texture,"
" Material, Mesh, etc) も破棄されます。"
msgstr ""
msgstr "To destroy the Importer, use `ImporterContext.Dispose` after `Load` is called. By destroying RuntimeGltfInstance, the resources associated with the RuntimeGltfInstance (Texture, Material, Mesh, etc) will be destroyed."

View File

@@ -24,5 +24,5 @@ msgstr ""
#: ../../vrm0/0_79_runtime_import.md:3
msgid "`GltfParser` と `GltfData` の分割"
msgstr ""
msgstr "Separate `GltfData` from `GltfParser`"

View File

@@ -24,7 +24,7 @@ msgstr ""
#: ../../vrm0/0_82_runtime_import.md:3
msgid "`Version 0.82.0` は `0.82.1` 以降を使ってください。"
msgstr ""
msgstr "`Version 0.82.0`: Please use `0.82.1` or later"
#: ../../vrm0/0_82_runtime_import.md:4
msgid "`Version 0.82.1~`"
@@ -32,57 +32,57 @@ msgstr ""
#: ../../vrm0/0_82_runtime_import.md:6
msgid "以下の手順で import します。"
msgstr ""
msgstr "Below step is needed"
#: ../../vrm0/0_82_runtime_import.md:8
msgid "VRMをパースして、`GltfData` を得る。"
msgstr ""
msgstr "Parse VRM, and Get `GltfData`."
#: ../../vrm0/0_82_runtime_import.md:9
msgid "`GltfData` から `VRMData` を得る。"
msgstr ""
msgstr "Get `VRMData` from `GltfData`."
#: ../../vrm0/0_82_runtime_import.md:10
msgid "`VrmData` から `RuntimeGltfInstance` をロードする。"
msgstr ""
msgstr "Load a `RuntimeGltfInstance` from `VRMData`."
#: ../../vrm0/0_82_runtime_import.md:11
msgid "`RuntimeGltfInstance` を使う。"
msgstr ""
msgstr "Use the `RuntimeGltfInstance`"
#: ../../vrm0/0_82_runtime_import.md:13
msgid "サンプルの `Assets\\VRM\\Samples\\SimpleViewer\\ViewerUI.cs` も参照してください。"
msgstr ""
msgstr "See `Assets\VRM\Samples\SimpleViewer\ViewerUI.cs`"
#: ../../vrm0/0_82_runtime_import.md:15
msgid "1. `GltfData` を得る"
msgstr ""
msgstr "1. Get `GltfData`"
#: ../../vrm0/0_82_runtime_import.md:24
msgid "[GLB import](../gltf/0_82_glb_import.md) も参照してください。"
msgstr ""
msgstr "See [GLB import](../gltf/0_82_glb_import.md)."
#: ../../vrm0/0_82_runtime_import.md:26
msgid "2. `VRMData` を得る"
msgstr ""
msgstr "2. Get `VRMData`"
#: ../../vrm0/0_82_runtime_import.md:32
msgid "3. Load する"
msgstr ""
msgstr "3. Load"
#: ../../vrm0/0_82_runtime_import.md:46
msgid "URP 向けに `materialGenerator` を指定する(実験)"
msgstr ""
msgstr "Set `materialGenerator` argument for URP(Experimental)"
#: ../../vrm0/0_82_runtime_import.md:48
msgid ""
"`materialGenerator` 引き数(省略可能)を指定することで URP マテリアルを生成するようにカスタムできます。 指定しない場合は"
" `built-in` 向けのデフォルトが使用されます。"
msgstr ""
msgstr "Set `materialGenerator` Argument, material generation is could customized. If omitted, default `materialGenerator` for `built-in` pipeline is used."
#: ../../vrm0/0_82_runtime_import.md:63
msgid "まだ URP 向け MToonShader が作成されていないので、`UniUnlit` にフォールバックします。"
msgstr ""
msgstr "`MToonShader for URP` has not been implemented yet, fallback to `UniUnlit`."
#: ../../vrm0/0_82_runtime_import.md:65
msgid "4. Instance"
@@ -90,5 +90,5 @@ msgstr ""
#: ../../vrm0/0_82_runtime_import.md:74
msgid "使用後に以下のように破棄してください。関連する Asset(Texture, Material, Meshなど)も破棄されます。"
msgstr ""
msgstr "When destroy, related assets(meshes, materials and textures etc...) is destroyed."

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: UniVRM Programming Document \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-14 13:46+0900\n"
"POT-Creation-Date: 2021-09-14 14:37+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"
@@ -20,17 +20,17 @@ msgstr ""
#: ../../vrm0/firstperson.md:1
msgid "VRMFirstPersonの使い方"
msgstr ""
msgstr "How to use VRMFirstPerson"
#: ../../vrm0/firstperson.md:3
msgid "VRMFirstPersonの設定"
msgstr ""
msgstr "VRMFirstPerson Settings"
#: ../../vrm0/firstperson.md:4
msgid ""
"[VRMFirstPerson]({{< relref \"univrm_firstperson.md\" "
">}})ではRendererに対して設定があります。"
msgstr ""
msgstr "[VRMFirstPerson](univrm_firstperson.md) has the following settings for Renderer:"
#: ../../vrm0/firstperson.md
msgid "FirstPersonFlag"
@@ -38,11 +38,11 @@ msgstr ""
#: ../../vrm0/firstperson.md
msgid "レイヤー"
msgstr ""
msgstr "Layer"
#: ../../vrm0/firstperson.md
msgid "備考"
msgstr ""
msgstr "Note"
#: ../../vrm0/firstperson.md
msgid "Both"
@@ -54,7 +54,7 @@ msgstr ""
#: ../../vrm0/firstperson.md
msgid "一人称と三人称で分ける必要のない部分に指定します"
msgstr ""
msgstr "Specify parts that are not necessarily separated between first-person view and third-person view."
#: ../../vrm0/firstperson.md
msgid "ThirdPersonOnly"
@@ -66,7 +66,7 @@ msgstr ""
#: ../../vrm0/firstperson.md
msgid "一人称時に描画したくない部分に指定します"
msgstr ""
msgstr "Specify parts that are not rendered in first-person view."
#: ../../vrm0/firstperson.md
msgid "FirstPersonOnly"
@@ -78,7 +78,7 @@ msgstr ""
#: ../../vrm0/firstperson.md
msgid "三人称時に描画したくない部分に指定します。自動作成した頭部無しモデルが使います"
msgstr ""
msgstr "Specify parts that are not rendered in third-person view. The auto-created headless model is used."
#: ../../vrm0/firstperson.md
msgid "Auto"
@@ -86,30 +86,19 @@ msgstr ""
#: ../../vrm0/firstperson.md
msgid "実行時に一人称用モデルを自動で作成し、それをFIRSTPERSON_ONLY_LAYERに設定します"
msgstr ""
msgstr "Automatically create the model in first-person view at runtime and set it to FIRSTPERSON_ONLY_LAYER."
#: ../../vrm0/firstperson.md:13
msgid "実行時に**VRMFirstPerson.Setup**を呼び出すことで、上記のレイヤー設定を行うことができます。明示的に外部から呼び出してください。"
msgstr ""
msgstr "By calling **VRMFirstPerson.Setup** at runtime, the layer settings described above can be performed. Please call the function explicitly from outside."
#: ../../vrm0/firstperson.md:15
msgid "アプリケーションに追加の描画レイヤーを指定する"
msgstr ""
msgstr "Specify the additional render layers for the application"
#: ../../vrm0/firstperson.md:17
msgid "定数で以下のレイヤーを定義しています。"
msgstr ""
#: ../../vrm0/firstperson.md:19
msgid ""
"{{< highlight cs >}} public class VRMFirstPerson : MonoBehaviour { "
"public const int FIRSTPERSON_ONLY_LAYER = 9; public const int "
"THIRDPERSON_ONLY_LAYER = 10;"
msgstr ""
#: ../../vrm0/firstperson.md:26 ../../vrm0/firstperson.md:79
msgid "} {{< / highlight >}}"
msgstr ""
msgstr "The following layers are defined as constant:"
#: ../../vrm0/firstperson.md
msgid "{{< img src=\"images/vrm/layer_setting.png\" >}}"
@@ -117,29 +106,16 @@ msgstr ""
#: ../../vrm0/firstperson.md
msgid "9番と番にLayerを設定"
msgstr ""
msgstr "Set Layer in #9 and #10"
#: ../../vrm0/firstperson.md:33
msgid "実行時にSetupを呼び出して、カメラにLayerMaskを設定する"
msgstr ""
msgstr "Call Setup function at runtime and set LayerMask in Camera"
#: ../../vrm0/firstperson.md:35
msgid "VRMFirstPerson.Setupの呼び出し"
msgstr ""
msgstr "Call VRMFirstPerson.Setup"
#: ../../vrm0/firstperson.md:36
msgid "一人称カメラとその他のカメラに対してLayerMask"
msgstr ""
#: ../../vrm0/firstperson.md:38
msgid ""
"{{< highlight cs >}} using System.Collections; using "
"System.Collections.Generic; using UnityEngine; using VRM;"
msgstr ""
#: ../../vrm0/firstperson.md:44
msgid ""
"public class SetupExample : MonoBehaviour { [SerializeField] "
"Camera m_firstPersonCamera; // HMDのカメラ"
msgstr ""
msgstr " Set LayerMask for first-person camera view and other camera views"

View File

@@ -24,29 +24,29 @@ msgstr ""
#: ../../vrm1/vrm1_firstperson.md:3
msgid "Runtime に FirstPerson 機能を有効にする"
msgstr ""
msgstr "Enable FirstPerson function at runtime."
#: ../../vrm1/vrm1_firstperson.md:5
msgid "VR向け FirstPerson 設定の初期化手順です。"
msgstr ""
msgstr "The VR First Person settings."
#: ../../vrm1/vrm1_firstperson.md:7
msgid "Load する"
msgstr ""
msgstr "Load"
#: ../../vrm1/vrm1_firstperson.md:8
msgid "VRM10Controller を取得する"
msgstr ""
msgstr "Get VRM10Controller"
#: ../../vrm1/vrm1_firstperson.md:9
msgid "`controller.Vrm.FirstPerson.SetupAsync` を呼び出す"
msgstr ""
msgstr "Call `controller.Vrm.FirstPerson.SetupAsync`"
#: ../../vrm1/vrm1_firstperson.md:10
msgid ""
"`controller.Vrm.FirstPerson.SetupAsync` した結果新規に作成されたモデルを "
"`RuntimeGltfInstance` に渡す"
msgstr ""
msgstr "Add the result of `controller.Vrm.FirstPerson.SetupAsync` to `RuntimeGltfInstance`"
#: ../../vrm1/vrm1_firstperson.md:11
msgid "ShowMeshes"
@@ -54,43 +54,43 @@ msgstr ""
#: ../../vrm1/vrm1_firstperson.md:43
msgid "VRMの推奨する VR 向けのカメラ構成"
msgstr ""
msgstr "Recommended camera layer settings"
#: ../../vrm1/vrm1_firstperson.md:45
msgid "ヘッドマウントディスプレイを表すカメラ と その他のカメラという2種類のカメラを想定ます。 それぞれに対して、"
msgstr ""
msgstr "Suppose your scene has a camera that represents a head-mounted display and other cameras."
#: ../../vrm1/vrm1_firstperson.md:48
msgid "FIRSTPERSON_ONLY_LAYER(このレイヤーを指定した gameObject はその他のカメラから消えます)"
msgstr ""
msgstr "FIRSTPERSON_ONLY_LAYER(The gameObject that specifies this layer disappears from other cameras)"
#: ../../vrm1/vrm1_firstperson.md:49
msgid "THIRDPERSON_ONLY_LAYER(このレイヤーを指定した gameObject はヘッドマウントディスプレイから消えます)"
msgstr ""
msgstr "THIRDPERSON_ONLY_LAYER(The gameObject that specifies this layer disappears from the head-mounted display)"
#: ../../vrm1/vrm1_firstperson.md:51
msgid "を定義します。 これにより、ヘッドマウント視点のアバターの描画を抑止しつつ、他者からは見えるようにします。"
msgstr ""
msgstr "Stops drawing the avatar from the head-mounted display perspective and makes it visible to other cameras."
#: ../../vrm1/vrm1_firstperson.md:54
msgid "例: アバターの頭の描画を抑止して前が見えるようにする"
msgstr ""
msgstr "Example: Stop drawing the avatar's head so you can see the front"
#: ../../vrm1/vrm1_firstperson.md:56
msgid "VRMは、`VRMFirstPersonOnly` と `VRMThirdPersonOnly` という名前のレイヤーを予約しています。"
msgstr ""
msgstr "VRM reserves layers named `VRMFirstPersonOnly` and` VRMThirdPersonOnly`."
#: ../../vrm1/vrm1_firstperson.md:58
msgid ""
"`Project Settings` - `Tags and Layers` に `VRMFirstPersonOnly` と "
"`VRMThirdPersonOnly` を 設定してください。 サンプルでは、それぞれに `9` と `10` を割り当ています。"
msgstr ""
msgstr "Please set `VRMFirstPersonOnly` and` VRMThirdPersonOnly` to `Project Settings`-`Tags and Layers`. In the sample, we assign `9` and` 10` to each."
#: ../../vrm1/vrm1_firstperson.md:62
msgid "初期化時に layer を明示する"
msgstr ""
msgstr "Specify layer at initialization"
#: ../../vrm1/vrm1_firstperson.md:64
msgid "追加の引数で指定できます。"
msgstr ""
msgstr "It can be specified with an additional argument."

View File

@@ -26,9 +26,9 @@ msgstr ""
msgid ""
"`VRM-1.0` は、 `VRM-0.x` もロードできます。 その場合、あたらしい meta への変換が発生し互換性の無い部分はすべて "
"`不許可` の値になります。 このため、変換前のライセンスにアクセスする API を提供します。"
msgstr ""
msgstr "`VRM-1.0` can load `VRM-0.x`. In that case, incompatible migrated meta properties are not allowed. Therefore, we provide an API that allows you to access the original meta before migration."
#: ../../vrm1/vrm1_runtime_load.md:7
msgid "サンプルの `Assets\\VRM10\\Samples\\VRM10Viewer\\VRM10ViewerUI.cs` も参照してください。"
msgstr ""
msgstr "See `Assets\VRM10\Samples\VRM10Viewer\VRM10ViewerUI.cs`."

View File

@@ -75,40 +75,40 @@ Unityで実行時にモデルをインポートする方法です。
## ファイルパスからVRMを開く
{{< highlight cs >}}
```csharp
var path="sample.vrm";
var go=VRM.VRMImporter.LoadFromPath(path);
Debug.LogFormat("loaded {0}", go.name);
{{< / highlight >}}
```
## ファイルパスから非同期にVRMを開く
{{< highlight cs >}}
```csharp
var path="sample.vrm";
VRMImporter.LoadVrmAsync(path, go => {
Debug.LogFormat("loaded {0}", go.name);
});
{{< / highlight >}}
```
## バイト列からVRM開く
{{< highlight cs >}}
```csharp
var path="sample.vrm";
var bytes = File.ReadAllBytes(path);
var go=VRMImporter.LoadFromBytes(bytes);
{{< / highlight >}}
```
## バイト列から非同期にVRMを開く
{{< highlight cs >}}
```csharp
VRMImporter.LoadVrmAsync(bytes, go => {
Debug.LogFormat("loaded {0}", go.name);
});
{{< / highlight >}}
```
## VRMから情報を取り出す
{{< highlight cs >}}
```csharp
#if UNITY_STANDALONE_WIN
var path = FileDialogForWindows.FileDialog("open VRM", ".vrm");
#else
@@ -151,13 +151,13 @@ VRMImporter.LoadVrmAsync(bytes, go => {
VRMImporter.LoadFromBytes(context);
OnLoaded(context.Root);
}
{{< / highlight >}}
```
## Thumbnailを取得する(v0.37から)
ReadMetaに引数を渡すことでThumbnailテクスチャを作成できます。
{{< highlight cs >}}
```csharp
var meta = context.ReadMeta(true); // Thumbnailテクスチャを作成する
Texture2D thumbnail=meta.Thumbnail;
{{< / highlight >}}
```

View File

@@ -1,9 +1,18 @@
# BlendShapeProxy(0.58)
## 環境
UniVRM v0.58.0
## BlendShapeKeyのインタフェースを厳格化、整理
[BlendShapeKeyのインタフェースを厳格化、整理](https://github.com/vrm-c/UniVRM/wiki/ReleaseNote-v0.56.0%28ja%29#blendshapekey%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9%E3%82%92%E5%8E%B3%E6%A0%BC%E5%8C%96%E6%95%B4%E7%90%86)
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 | オーバーロードをやめて明示的な関数に変更。 |
## 使用するメソッド
@@ -17,7 +26,7 @@ UniVRM v0.58.0
`SetValues` 関数のみを使用します。
そのフレームで必要な表情の weight 値をすべて集めてから `SetValues` を 1 回だけ呼んで設定します。
{{< highlight cs >}}
```csharp
var proxy = GetComponent<VRMBlendShapeProxy>();
proxy.SetValues(new Dictionary<BlendShapeKey, float>
@@ -26,7 +35,7 @@ proxy.SetValues(new Dictionary<BlendShapeKey, float>
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Joy), 1f}, // システム定義の表情は enum で指定
{BlendShapeKey.CreateUnknown("USER_DEFINED_FACIAL"), 1f}, // ユーザ定義の表情は string で指定
});
{{< / highlight >}}
```
## 複数の BlendShape weight を適用する際の競合の問題について
@@ -47,31 +56,31 @@ VRMBlendShape `Blink_R`
で定義されているとします。
このとき両目を閉じたいモチベーションから、両方を有効にする意図で下記のように実行します。
{{< highlight cs >}}
```csharp
proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f);
proxy.ImmediatelySetValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f);
{{< / highlight >}}
```
すると、左目だけが開いてしまいます。
これは後から `ImmediateSetValue` した `Blink_R``Blink_L` と競合して weight を上書きしてしまうからです。
したがって VRM の表情制御においては下記の 2 通りのどちらかの方法で書くことが求められます。
これらの方法はこの競合の問題を解決して表情を設定することができます。
{{< highlight cs >}}
```csharp
proxy.SetValues(new Dictionary<BlendShapeKey, float>
{
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f},
{BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f},
});
{{< / highlight >}}
```
または
{{< highlight cs >}}
```csharp
proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_L), 1.0f); // すぐに適用せずにたくわえる
proxy.AccumulateValue(BlendShapeKey.CreateFromPreset(BlendShapePreset.Blink_R), 1.0f);
proxy.Apply(); // 蓄積した値をまとめて適用する
{{< / highlight >}}
```
WIP

View File

@@ -16,7 +16,7 @@
定数で以下のレイヤーを定義しています。
{{< highlight cs >}}
```csharp
public class VRMFirstPerson : MonoBehaviour
{
public const int FIRSTPERSON_ONLY_LAYER = 9;
@@ -24,7 +24,7 @@ public class VRMFirstPerson : MonoBehaviour
// 省略
}
{{< / highlight >}}
```
|{{< img src="images/vrm/layer_setting.png" >}}|
|-----|
@@ -35,7 +35,7 @@ public class VRMFirstPerson : MonoBehaviour
* VRMFirstPerson.Setupの呼び出し
* 一人称カメラとその他のカメラに対してLayerMask
{{< highlight cs >}}
```csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@@ -77,4 +77,4 @@ public class SetupExample : MonoBehaviour
}
}
}
{{< / highlight >}}
```