web-dev-qa-db-ja.com

実際にTシャツや本のディスプレイスメントマップを作成する方法は?

それで、私が興味を持っている機能が "変位マップ" と呼ばれていることを知りました。これにより、空のTシャツ(カーブと微妙なテクスチャがすべて揃ったもの)を取り、画像を適用して、Tシャツに実際にその画像が表示されているように見せることができます。

私が不思議に思っているのは、これをどうやって動的なプロセスにするのですか?たとえば、特定の照明のある角度で本の表紙を撮ったり、特定の角度の特定の照明でTシャツを着ているモデルをどうやってグラフィックを適用したりしますか?空白の本やTシャツのモデルの「テンプレート」画像を作成するにはどうすればよいでしょうか。画像をアップロードして、Tシャツにうまく適用でき、指定する必要があるのは幅/画像の高さ/ x/y?画像を適切に回転/傾斜させるにはどうすればよいですか?ここではどのようなデータモデルを扱っていますか?

私はソフトウェアエンジニアですが、これまでこのような問題に対処する必要がなかったため、次のようなものを作成する必要があるようです... Tを着用しているモデルの画像から、どういうわけか3Dモデルを作成します-シャツ、この3DモデルをディスプレイスメントマップまたはUVテクスチャに変換するか、(理解できないグラフィック専門用語をいくつか投げて)、画像が3D画像のテクスチャになります。つまり、どのようにして自動的に実行できるかわからないので、私は多くの作業を行い、画像から3Dモデルをスカルプトする必要があります。

それは私が想像できる限りです。細かいことではなく、少し詳しく、プロセスを穏やかに案内してくれるかどうか疑問に思っています。 this または this のようなものを作成したいと思います。

2
Lance Pollard

これは単なる推測です。私はこれらのアルゴリズムがどのように機能するか知りません。しかし、ビデオとこの効果がどのように機能するかを示す他の例に基づいて、可能な実装を想像できます。この種のアルゴリズムは、単なる近似値、または信じられないような偽物であることに注意してください。写実的なアプローチが必要な場合は、3Dモデル、テクスチャマッピング、レンダリングを使用したアプローチの方が適しています。

まず、「変位マップ」、つまり変位の仕組みを定義するグレースケール画像が必要です。ビデオでは、この変位は画像自体から生成されますが、画像自体から複雑なフィルターを使用して手書きまたは作成することもできます。この画像を考える最良の方法は、高さマップとしてです。値が暗いほど、ピクセルは画像から「遠く」になります。

2番目のステップは、「表面接線マップ」を生成することです。私はこの種の通常のマップに似ていますが、表面から離れる方向を指すベクトルではなく、各ピクセルのベクトルが高さマップの傾斜の方向を指します。これを計算する方法は、ピクセルを見て、その隣接ピクセルに従って、グレースケールの「高さ」で定義されている勾配の「方向」を計算することです。

3番目のステップは簡単です。「表面接線マップ」を画像に適用し、元のピクセルを接線マップのベクトルの量だけ移動します。

1Dシナリオの説明画像を作ってみました。しかし、2Dに拡張することは難しくありません。あなただけのベクトル数学をいじる必要があります。 enter image description here

2
Euphoric