2013/11/01(金) [n年前の日記]
#1 [unity][blender] Unityとblenderの単位
blender 2.68a で Unity の Mecanim とやらに合うデータを作ろうとしてたのだけど。なんだか双方の単位がよく分からなくなってきた。
_BlenderとUnity - Neareal というページの検証結果では、blender 側で50倍の大きさで作っておけば Unity 側でも単位が一致する、という結果になったらしいのだけど。自分の環境では、blender と Unity の値が、1:1で一致してるように見えていて…。
例えばの話。Unity は FBXをインポートする際、スケールを0.01にするわけだけど。それを見越して blender でFBXエクスポートする際、拡大縮小率を100倍にしてエクスポートして、それを Unity にインポートさせると、大きさが一致する、ように見えているわけで。
もしかして、blender 2.68a のFBXエクスポータは、単位が一致するような修正がされたのだろうか…? それとも、.blend を直接 Unity でインポートした場合は、50倍云々の話が出てくるのかな…?
もうちょっと検証してみた。blenderで大きさ1.0のCubeを作って、.blendファイルと、エクスポートした .fbxファイルを、Unity 4.2.2f1 でインポートしてみたり。念のために blender 2.68a と 2.66a で保存・エクスポート。 *1 …やっぱり 1:1 で対応してるように見える。同じ大きさにしか見えない。
ただ、.fbx は、Unity上で Assets から Hierarchy に D&Dした際、なんだか勝手に Scale 100 が入ってしまうみたいだけど。これは想像だけど、blender のFBXエクスポータは、スケール値を含めた状態でエクスポートしていて、それを Unity側でも参照してくれる時もある、ということなのかな…?
何にせよ、blender と Unity のバージョンによって、単位がマチマチになってる可能性もありそうだなと。まあ、現バージョンでは単位が一致するわけだから、それはそれでありがたいのだろうけど。以前のデータ・プロジェクトを現バージョンで修正して、とかやり始めたらハマる時があったりするのかなと思えてきたり。
_BlenderとUnity - Neareal というページの検証結果では、blender 側で50倍の大きさで作っておけば Unity 側でも単位が一致する、という結果になったらしいのだけど。自分の環境では、blender と Unity の値が、1:1で一致してるように見えていて…。
例えばの話。Unity は FBXをインポートする際、スケールを0.01にするわけだけど。それを見越して blender でFBXエクスポートする際、拡大縮小率を100倍にしてエクスポートして、それを Unity にインポートさせると、大きさが一致する、ように見えているわけで。
もしかして、blender 2.68a のFBXエクスポータは、単位が一致するような修正がされたのだろうか…? それとも、.blend を直接 Unity でインポートした場合は、50倍云々の話が出てくるのかな…?
もうちょっと検証してみた。blenderで大きさ1.0のCubeを作って、.blendファイルと、エクスポートした .fbxファイルを、Unity 4.2.2f1 でインポートしてみたり。念のために blender 2.68a と 2.66a で保存・エクスポート。 *1 …やっぱり 1:1 で対応してるように見える。同じ大きさにしか見えない。
ただ、.fbx は、Unity上で Assets から Hierarchy に D&Dした際、なんだか勝手に Scale 100 が入ってしまうみたいだけど。これは想像だけど、blender のFBXエクスポータは、スケール値を含めた状態でエクスポートしていて、それを Unity側でも参照してくれる時もある、ということなのかな…?
何にせよ、blender と Unity のバージョンによって、単位がマチマチになってる可能性もありそうだなと。まあ、現バージョンでは単位が一致するわけだから、それはそれでありがたいのだろうけど。以前のデータ・プロジェクトを現バージョンで修正して、とかやり始めたらハマる時があったりするのかなと思えてきたり。
*1: .blend のインポートは、.blend に関連付けされてる blender で処理されるだろうから、blender 2.68a が使われて結果が同じになるだろうとは思いつつ、一応念のために実験を。
[ ツッコむ ]
以上です。