Obi Fluidをビルドして実行すると表示されない問題は、アーキテクチャをx86_64にしたら解決した ※追記あり

Obi Fluid

バーチャル3Dクリエイター神部まゆみです(*^-^*)

 

前回言っていた問題が解決したのでメモ。

Obi Fluidってのはこれね。

ーーーーーーーーーー

追記:

下に追記しましたが、FluidViscosityのサンプルから、液体を出すsolverとemitterだけプレハブ化して取り出したら、32bit環境でも動作確認しました。

ーーーーーーーーーーー

————-PR———————-

現在、2021年の新作人気アセットが50%オフで買えるunityアセットリフレッシュセールをやってるみたいです(日本時間2021/10/02 PM15:59まで)。

unityアセットリフレッシュセール50% off

欲しいアセットはこの機会に買っておくと良いかも。

————————————-

 

ビルド設定のアーキテクチャがx86_64になってないのが問題だった

前回、「Obi Fluidをunity editorで再生するとちゃんと表示されるのに、ビルドして実行すると表示されない」って問題があったけど、これで解決した。

ビルド設定のアーキテクチャが64ビットじゃなかったのが問題だったみたい。

 

これでビルドして実行したら、ちゃんと表示されました。

これやらないと32bitになっちゃうみたい。

多分私のPCのwindows10が64bitだから表示されない感じ?

 

unity 2020 1.1でも2019 4.13(LTS)でも動作しました。

これ、最初2020でやってダメだから諦めて、「LTSなら安定版らしいから動くだろう」と淡い期待を抱いてやってダメだったんだけど、どうしようかな。

一応LTSだし消さずに残しておいて、引き続き2020でいじっていこうかな…?

64bit版だけで大丈夫なのか?

もう大抵の人のwindows10は64bit版みたいだけど…。

あんまり気にしたことなかったけど、steam利用者だと32bit版利用者なんてほとんどいないみたい。

デスクトップOSシェア、8月はWindows 10が初の60%超え Steam調べ | 財経新聞
Steamの2018年8月分ハードウェア&ソフトウェア調査によると、Windows 10のシェアが初めて60%を超えている。

 

んー、でも配布する場合は32bit版も同梱してある場合が多いみたい。

「64bit版でしか動作しません!」って切り捨てちゃってもいいけど…。

多分32bitでビルドはできてるんだろうけど、動作確認がこのマシンではできないってことかな。

試しにVMwareでwindows10 32bit入れて動作確認してみたけど、Obi Fluidのサンプルだけ動かないっぽい

このVMwareは非商用利用のみ無料なので、ちょっと試したら消すけど(笑)。

他のシーンだと32bitビルドしてもこの64bitのマシンで動いたけど、obi fluidのこのサンプルは32bitでビルドして32bit環境で動作させてもエラーで動かなかった。

obi fluidはunity2019以降をサポートとか書いてあったけど、そのせい?

うーんどうするか、あんまり環境に依存するのもなぁ…。

ちょっと考えておこう。

追記:サンプルから液体を出すSolverとEmitterだけプレハブ化して取り出して、別のシーンに読み込んだら32bitでも普通に使えた

これをFluidViscosityのサンプルからプレハブ化して他のシーンに読み込んで、カメラにobi fluid rendererコンポーネントを付けて、Particle rendererにEmitterを指定したら、32bitビルドでも普通に動いた。

なんでだろう、サンプルだけ動かないみたいな?

まぁ動くんならいいけども。

 

VMの32bit環境でもちゃんと表示された。

ただ、↑と同じシーンは重くてクラッシュしたけど…。

 

クラッシュしたのは、VM環境がメモリ1GBだからだと思う(笑)。デフォルト設定のままやったらそうなったんだけど、なんか無茶苦茶重いし。

多分変えられるんだろうけど、クラッシュしたやつのファイルは1.2GBくらいあったからね…。

できれば32bitの実機でテストしてみたいところだけど、そこまではできないかなぁ。

まぁ一応動くみたいだし、ほかに不具合が出ない限りはこれで行ってみようかな。

とりあえず液体だけちょこっと出せればいいからね。

更に追記:原因が分かった!Obi ColiderコンポーネントのDistance Fieldに指定されてるEnvironmentDFが原因

詳しくはこちらで。

Obi FluidのFluidViscosityサンプルを32bitビルドすると動かない問題は、Obi ColiderのDistance Fieldが原因だった
原因が分かったのでメモ。 unity 2019.4.13f(LTS)で動作。 あくまでも現時点でこうやったら私はこうなったというメモなので、参考程度に。 前回の記事はここ。 Obi F...

ここが32bitだと動かないっぽい?

詳しくはわからないけど、ここを なし にしたら32bitでも正常に動いた。

他に映らない原因: カメラに「Obi Fluid Renderer」コンポーネントを追加、「Particle Renderers」にEmitterを追加してあるかチェック

これ最初Obi Fluid使ったときハマったので、ここにも一応書いておく。

ここの記事にも書いたけど、Obi Fluidってカメラに液体とかを表示させるような感じの仕組みみたいだから、カメラにObi Fluid Renderersコンポーネントを追加して設定しないと映りません。

Obi Fluid(液体系Unityアセット)の使い方を調べて動かしてみる!これで白い液体をぶっかけられるか?
バーチャル3Dクリエイターの神部まゆみです(*^-^*) 今日は流体系unityアセットObi Fluidを買ったから、使い方を調べたり動かしてみたりするよ。 Obi Fluidについて調べてる人は参考にしてね。...

 

この記事見てる人は「Obi Fluid買って導入してみたけど表示されない!」って人が多いと思うから、これも原因の一つかもしれないので一応。

おわりに

安くはない金額のアセットだから、使えるようになって良かったよ。

結局不具合ってこういう些細なことが原因のことが多いんだけど、ハマったら一旦諦めてリセットしてみてからやるのがいいかもね。

冷静になればすぐわかったりするからね。

 

同じところでハマった人は参考にしてね。

 

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