シヨツ鬼のブログ

初心者向けに分かりやすくIT関連の情報を発信しています。

【Unity×Android】スマホのカメラロールに保存された写真・動画を呼び出せる神様のような無料アセット

どうも、プログラミングの鬼シヨツ鬼です。

今回は「Unityでスマホのカメラロールに保存された動画を呼びだすアプリを作りたいぜ」って方に向けて、神様のような無料アセットを発見したので、紹介します。


どんなことができるか?

Unityからフォルダを開いて、スマホ内に保存された写真、動画を選択して、そのパスをUnityに返すことができます。
f:id:shiyotsuki:20210425204311p:plain

何て名前のアセットか?

「Native Gallery for Android & iOS」という名前のアセットです。
この名の通り、スマホのデフォルトギャラリーを開くことができます。
試してはないですが、iOSにも対応していると思われます。
まさに神様としか言いようがないですね。

Native Gallery for Android & iOS | Integration | Unity Asset Store

どうやって使うか?

アセットを追加

unity Asset Storeからアセットを追加します。
f:id:shiyotsuki:20210425201201p:plain

アセットを自分のPJにインポート

Unituの上部にある項目から「ウィンドウ>パッケージマネージャ」と開き、パッケージをマイアセットにして「Native Gallery for Android & iOS」を選択してインポートを押す。

f:id:shiyotsuki:20210425201958p:plain

スクリプトから呼び出す

スクリプトから呼び出します。
非常に直感的で分かりやすいです。

ソースコード

using UnityEngine;


public class ChoseMovie : MonoBehaviour
{

    // Start is called before the first frame update
    void Start()
    {
        NativeGallery.Permission permission = NativeGallery.GetVideoFromGallery((path) =>
        {
            Debug.Log("Video path: " + path);
        }, "Select a video");

        Debug.Log("Permission result: " + permission);

    }
}


詳しくは公式のサンプルが分かりやすいです。
GitHub - yasirkula/UnityNativeGallery: A native Unity plugin to interact with Gallery/Photos on Android & iOS (save and/or load images/videos)


まとめ

僕自身、Unityは勉強中で、なんとかこのような動きを実現させたく自作ライブラリなどの作成を試みていましたが、挫折しかけたところでこのアセットに出会いました。

これで無料とは、提供者に心から感謝です!


最後まで読んでくれてありがとう。
参考になったら「☆」を押してね。そして僕のYouTubeTwitterもよろしくね。