どもー今回は
ミリシタの2周年に向けた動作検証でふと思ったことを書いてみました。
まぁ、端的に言いますと
ミリシタは32bit環境をサポート外にしてしまうのか?
ことのきっかけは動作検証での出来事
ことのきっかけはふと買ったMoto G4 Plusです。
64bit第1世代のSnapdragon 617機。
ミリシタなんかは到底動かないと言われてきたプロセッサながら、30fps止まりとは言え3D高画質環境の難易度MM曲をプレイ出来てしまったのです。
それならと比較で32bit最強と言われたSnapdragon 805搭載のNexus 6で動かしたらガックガクでゲームなんてレベルじゃなかったです。
GPUの性能的には617の2.5倍以上の性能がありますし、ベンチマークを取っても後者の方が断然上です。
そこで考えたのが、そもそもミリシタ自体が
32bit環境を切ろうとしてるのではないか?
という疑問です。
具体的にはどんな機種が対象外になるの?
主にAndroid環境でやってる方に該当するのですが、Androidには32bit版と64bit版が存在します。
WindowsなどPCのOSで聞いたことがある方は多いかもしれません。
WindowsなどのOSも今はほとんど64bit対応が進み、最大で4GBまでのメモリしか扱えない32bit版のOSは衰退の一途を辿っています。
それと同じようなことがスマートフォンでも起こっていると言えます。
32bitと64bitの分かれ目と言われると難しいですが、概ね以下のように分けられます。
分かりやすい例としては
プリインストールOSのバージョンがAndroid 5.0以降かどうか?
この64bit SoCに対応した最初のバージョンが5.0なのです。
そのため、最初買った時にこのバージョンのOSが入っていれば問題なく動くかと思います。
※Nexus 6は対象外
GPUがVulkan API対応かどうか
このAPIも基本的には64bit世代以降が対応してるものです。
QUALCOMMならAdreno 4xx世代以降が対応です。
※Snapdragon 805はVulkan対応だが32bitなので対象外
もしくは下に書いた通りとなります。
2014年以前リリース機
以下チップを除き全て32bitです。
Nvidia Tegra K1(Denver 64bit) 搭載機 Nexus 9のみ
SAMSUNG Exynos 5433搭載機 Galaxy Note 4/edgeの一部地域発売モデル。
日本版は対象外
2015年リリース
キャリアリリースのハイエンドモデルは全機64bit対応です。
ミドル帯にはXperia A4のように旧モデルのSoCを積んでる機種もあるので注意
2016年以降リリース
この年以降に買われた機種であればなんの問題もないでしょう。
つまるところ
2016年より前に販売された機種なら今後も大丈夫
となりますね。3年以上前の機種ということです。
今後の対応が気になるところです。
昨年に9.0 Pieが正式リリースされたこともあって、5.0 Lollipop も4年以上前の古いバージョンとなります。
バイダイナムコさんとしてもあの近辺は切り離したい感はあると思いますが、未だに一定数のユーザーさんがいることは確認できます。
最適化としては旧規格の32bitなんてさっさと切りたいところではありますからね。
今後はどうなる?
確定ではないですが、考えうる今後のサポートとしては以下の通りかなと思います
・サポート環境をAndroid 7.0以降にする
これが最も現実的だと思います。実際、7.0はVulkan APIの標準サポートによって非対応のモデルはほとんどアップグレードされませんでした。
運営さんとして厄介だと思うのは、息の長いSD801世代機(別名 KK機)とも言われた機種たちのサポートです。
Xperia Z3シリーズやGalaxy S5シリーズと言った人気機種も多く、今なおエントリークラス程度の性能があることから中古市場でもそこそこの人気を持つセグメントです。
これらの機種は7.0のアップグレードは基本的に出来ないので、バッサリ切るにはこれが1番よい選択肢と思います。
※32bit機で7.0までアップグレードされた端末はNexus 6やSHIELD Tabletなどと非常に少ない。
・サポート環境をAndroid 6.0/5.0以降にする
先程の記述とは反することになりますが、理由はあります。
それは、64bit機なのに動かないということが起こりうるからです。
2015年リリース機は不遇な子が多く、中には1度もメジャーアップデートがされなかった機種もあります。
SoftBankのAQUOSやdocomoのポンコツアンドロイドことF-04GにKDDIのisai Vividも7.0以降になればみんな動かなくなってしまいます。
ただ、後述の32bit版アプリを切れば…これは可能かと思います。
・32bit環境のみをバッサリ切る
動作要件をAndroid 5.0以降にして32bit環境を切る
上二つの良さを兼ね備えたこれが一番理想とは言えます。
ただ、多くのユーザーさんが自分の端末のOSが32bitか64bitかなんて理解してないことが考えられるので、突然切られるとお問い合わせ窓口が大変なことになるかと思います。
また、5.0以降のサポートにすることで、現在一応対応してる旧規格のDalvikランタイムのサポートを打ち切ることもできます。
ランタイムはARTでOSは64bit専用になれば、かなり最適化しやすくなるかと思われます。
実は初めてじゃないミリシタの環境一括サポート終了
昨年にミリシタは13人ライブ実装と1周年イベントを前にintel製のSoCのサポートを打ち切り、これらの機種ではアプリが基本的に起動しなくなりました。
この時日本で出ていたintel搭載機の9割は旧式のASUS Zenfoneシリーズだったので、さほど問題にはなりませんでした。
ただ、この時も2ヶ月ほど前から動作が不安定になったり、不具合対応をしてくれなかったりと言った動きがありました。
ただ、仮に32bit環境がバッサリ切られるなら影響は昨年のIntelよりは大きいと思います。もしかしたら、32bitで異様に重たいのもサポートしてないのかも…そんな気がしてならないです。
ちなみに
iPhoneって大丈夫?
って思ったあなた
iOSの場合、リリース当初から32bit機にミリシタは対応していません。
ご安心ください。
最後に
現状、ここに書いたことはまだ未確定事項ですし、バンナムさんからの公式発表もありません。あくまで私の独り言程度に思ってください。
ただ、いつ切られてもおかしくない環境ではあるのでこれらの機種をお使いの方は、早めの機種変更等をお考えしていただけると幸いです。
仮にも端末がサポート外になってしまう前に、今のうちに引き継ぎ設定は忘れずに行いましょう。
あ、あとこれ言わせてください
神戸公演!!めっちゃ良かったよ!!!!!
それでは
追記:まさかの現実になりました。