ツイエナイ!

糸井がトレードってのは

ペップ・グアルディオラがバイエルンと「3年」契約を結ぶくらい衝撃な出来事ですよね・・・

ってな事で、昨日のUVスタンプ問題

ちょいと調査をしてみましたよ~

そしてメモ

とりあえず、現時点では

選択したメッシュのUVを任意解像度、色、背景色で書きだすのは出来そうだけど

複数UVがあった場合等、解決しにくい

FBXを書き出す時に設定するように

マテリアルに接続されているUVを書き出すことも出来そうですが

いちいちマテリアルに接続されているのを選択するのが面倒そう・・・

そんな中、TextureEditorに表示されてるのにアクセスし

TextureEditor内で完結するように出来ればいいのにって思ってますが

TextureEditorに何があるのかにはアクセス出来ないみたいなんです・・・

TextureEditorのメニュー内にプラグイン項目を作ることは可能

ただ、選択すると

1680(1).jpg

(一つ目のUV)

1680(2).jpg

(二つ目のUV)

同じ頂点ですが違うUVを選択しているのに

どちらも、Sample「8」と言うリターンが返ってます

Sampleって値はC#側で習得できるので

TextureEditorのUV値に選択をすればアクセス出来るって事になりますね~

全選択、または一部選択と言う手間が追加されますが

現状のスタンプよりはいいかも??

で、次にSampleを選択する状態をどう認識するかってな事

1680(3).jpg

↑①(TextureEditorに表示されているがSampleは選択されてない状態)

1680(4).jpg

↑②(Sampleを選択している状態)

まずは、オブジェクトレベルでの選択状態の習得はどちらも選択していない状態としてリターンされる

XSIレベルで選択を知るSelectクラスを通すと

②の場合2つのリターンが返って来て、その下に選択されているSample群が入ってる感じですね

Sampleのインデックスリストは

uvspaceのインデックスと一致するので

uvspaceとポリゴンのインデックスを調べると吐き出せるUVの位置やアイランドがわかる

ただ問題なのは、該当SampleがどのTextureProjectionに属しているのかがわからないってな事

現時点での解決策は

メッシュの全てのUVを習得し、10個くらいの数値をランダムに抽出して

UVと比較し、どのuvspaceなのか判断するってな力技・・・

速度はどのくらい出るか解らないけど、鈍足っぽい

UVを切り替えるとTriangle以下のUVが変わるので

そこにアクセスするのが一番良さそうですが

TriangleのポイントがどのSampleと合致しているのかが解らないってな事

(2つ位のオブジェクトを見ると、どちらも一緒に見えますが・・・)

ちなみに、四角だの多角だのにこだわらず、三角形で吐き出すんなら

もっと高速化出来そうです

とまぁ、ここまでが今日の成果・・・

要素調査だけなんで、プログラム的な事はなんもやってませんが

一応、光は見えてきてますね~

あとは速度がどれだけ出るかってのも気になりますよ~

まぁ、そこの実行に移す前に

まずは、たまこさんをしっかり完成させないと

コメント

タイトルとURLをコピーしました