こういうケースは、ままありますね。
「GooglePlayのアプリを64bitに対応させなければ、8月1日以降非公開になる」
なんていうのは、いい例なのかな。Unity 5 で作ったプロジェクトを64bit対応させる
ためには最近のUnityで開いて、ビルドし直さなければならない…
とりあえずやってみよう。ということで、直接 Unity 2019 で開いてみるも、動かない。
コンパイルエラー。バグメッセージは多すぎて読む気にもならない。
Unity だけでもバージョン間の差異があり、更にPlayMakerなどのアセットは、その
バージョンのUnity 用に調整された当時のバージョンだったりする。
新たに現バージョンのPlayMakerを上書きしてみても、動作せず。
複雑さが、ましましです。
以下、他のブログに書いたメモと言うか、愚痴の補足転載でアレなんですが。
-------------------------------------
GooglePlayのアプリ。64bitに対応させなきゃ8月1日以降非公開にされてしまう件。
で、一つだけは対応させて残そうとしてるのだけれど、大変。
Unity5.7でのプロジェクトを、Unity2019で開いてビルドしなければならない。
(実際は2017.4以降で出来るよう)
比較的単純な仕組みなので、バージョンの影響は受けないだろうと思いきや、
ビジュアルスクリプトPlayMakerのバージョンが合わない。
Unity5時代に対応していたバージョンのPlayMakerが最近のunityでは上手く動かない。
仕方ないので、現バージョンのPlayMakerや関連アセットがインストールされた
「Unity2019プロジェクト」を新たに作り、シーンファイル、絵や音、プレハブなどが入った
関連フォルダを持ち込む。
とりあえず動きそう。
しかし、PlayMakerのグローバル変数は手書きで移植
(ファイル移設出来るはずなのだが、何故か無理)
オブジェクトに設定するTagも不完全でやはり手動移植。
おまけに、iTweenを使っていたため実行エラーが出て止まる…
これは現在のPlayMakerがiTweenをサポートせず、該当アクションとiTweenアセット
自体が存在しないため。
レガシー扱いのITweenアクションとiTweenアセットをインポートしてもどうも上手く動かない。
やはりiTweenは過去のものか。
DOTweenの類似アクションに差し替えて、さて上手く動くか。
ほんとこれ一つだけにしておこう…
-------------------------------------
実際これで動き、ビルドして、GooglePlayに更新アップロードできたのですが、
何度もやりたいことではないですね()
FSM(状態遷移)は並べられたアクションを名前だけで認識、実行するので
アクションの中身(C#スクリプト)が現在のUnity環境に応じたものになっていれば
そのまま動くだろう。と思い、まあ、そうなのですが、アクション自体が消滅していたり
アクションの挙動が微妙に変わっていたりなどは、どうしようもないです。
ふわっとした感想を言えば、間に入るものが多いほど、それぞれの変化の影響で
複雑さがまし、全体像は見えなくなり、いざ、というとき大変だ…ということですね。
ビジュアルスクリプトはじめ、システムに深く関わるアセットを使用する際のある意味
デメリットかなぁ。このブログであまり書きたくないけれど()
(追記)
愚痴っぽく書いてしまったものの実際は、PlayMakerのアクションを通してUnityに
アクセスしている構造のプロジェクトだから、いくつか問題はあっても 離れたバージョン
のUnity へ(わかりやすい手間だけで)移設できてるんですよね。
システムの差異を吸収してくれているPlayMakerが凄いということです。
Unityのバージョンアップに逐一対応してくれるところが、開発元の信頼されている
理由だと思います。
愚痴っぽく書いてしまったものの実際は、PlayMakerのアクションを通してUnityに
アクセスしている構造のプロジェクトだから、いくつか問題はあっても 離れたバージョン
のUnity へ(わかりやすい手間だけで)移設できてるんですよね。
システムの差異を吸収してくれているPlayMakerが凄いということです。
Unityのバージョンアップに逐一対応してくれるところが、開発元の信頼されている
理由だと思います。
0 件のコメント:
コメントを投稿