TL;DR
振電3なら,配布されているものの.exeファイルを以下の実行ファイルに変えることで動かせます.
Android上のフォルダ配置は以下です.
.
└── ShogiDroid/
└── engine/
├── Shinden3/
│ ├── eval/nn.bin
│ ├── book/standard_book.db
│ ├── Yane~
│ └── Yane~
└── Suisho5(例)/
├── eval/
├── book/
├── Yane~
└── Yane~
解凍したShinden3のフォルダを圧縮して「アプリからインストール」しようとすると失敗します!! 必ず,上のようなフォルダ配置になるように手動で配置してください.
詳細
本家YaneuraOuをフォークした
を参照してください.Android用のビルドに用いるAndroid.mkファイルを書き換えて,事前定義されていないNNUEアーキテクチャ(e.g. 振電3,Suisho10beta,ポンタマンなど)のヘッダーを作成するショートカット コマンドndk-build make_nnue_header
を追加したものになっています.
ビルド環境に必要なもの,ビルドの仕方の基本については本家Wiki/ やねうら王のビルド手順 に非常に詳しく書いてあります.また,各評価関数に必要なアーキテクチャについても,本家Wiki/ やねうら王のインストール手順#評価関数のタイプ一覧表 に記載されています.
本家やねうら王のビルド環境と,ndk-buildの使える環境を整えた上で,例えば
ndk-build make_nnue_header YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE_HALFKP_512X2_8_64
ndk-build YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE_HALFKP_512X2_8_64
とすることで,事前にヘッダの用意されていないアーキテクチャに対応するエンジンをビルドすることができます.
参考
- M1Macへの導入方法の動画
- ShogiDroidの作者様の作った,Android.mk(本家やねうら王に反映済み)
蛇足
いまどきarm64-v8aでないShogiDroidを動かせるようなスマホがあるのか疑問なんですが,アプリ配布するわけでもないので,arm64-v8aだけにしてtournament版にも対応できた方が嬉しい気がする.しらんけど.