Skip to content

Fix: Poiyomi UV Tiling not preserved during conversion #220

@kurotu

Description

@kurotu

タスク概要

PoiyomiマテリアルをToon LitやToon Standardへ変換した際に、UVタイル(mainTextureScaleおよびmainTextureOffsetなど)が正しく引き継がれない問題の修正。

背景・目的

PoiyomiシェーダでmainTextureScale/mainTextureOffsetがデフォルト(1,1)に戻されてしまい、アバターやメッシュの見た目が損なわれる。Poiyomiの独自プロパティから正しいタイル値を取得し、変換マテリアルに反映する必要がある。

技術要件

  • Poiyomiのメインテクスチャのスケール・オフセットが変換後も維持されていること
  • lilToonと同様にMaterialWrapper等を抽象化・リファクタして汎用的なUVタイル抽出処理を追加
  • PoiyomiのUVタイルを格納するプロパティ(例: _MainTex_STや独自パラメータ)から正確に取得
  • 自動テスト追加:X:1, Y:1以外のタイル値を含むケース
  • Bake処理にも正しいスケール/オフセットが反映されること

補足情報

  • 親Issue: UV Tiling Not Translated #217
  • パス: Editor/Models/Unity/PoiyomiMaterial.cs, Editor/Models/Unity/MaterialBase.cs, Shader/vqt_poiyomi.shader
  • アセット例: Mitsumame(https://booth.pm/en/items/5748454), Poiyomi(9.3.64)
  • Poiyomi独自のUVタイル取得方法に注意
  • Poiyomi インストール方法
    vrc-get repo add https://poiyomi.github.io/vpm/index.json
    vrc-get install com.poiyomi.toon
  • Packages/packages-lock.json, Packages/vpm-manifest.json, ProjectSettings/* をコミットしないこと

完了条件

  • Poiyomiマテリアル変換時に、UVタイル(スケール・オフセット)が正しく反映されていることを手動・自動テストで確認
  • 親Issueの再現手順例で問題が再発しないこと

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions