コガネブログ

平日更新を目標にUnityやC#、Visual Studioなどのゲーム開発アレコレを書いていきます

【Unity】iOS / Android においてカメラロールから画像を読み込むことができる「unimgpicker」紹介

はじめに

「unimgpicker」を Unity プロジェクトに導入することで
iOS / Android においてカメラロールから画像を読み込むことができるようになります

使い方

f:id:baba_s:20171231210030g:plain f:id:baba_s:20171231210055g:plain

使い方

「Unimgpicker/Editor/NSPhotoLibraryUsageDescription.txt」に
カメラロールの使用目的を記載します

そして、下記のようなスクリプトを記述します

using Kakera;
using System.Collections;
using UnityEngine;

public class PickerController : MonoBehaviour
{
    [SerializeField] private Unimgpicker imagePicker;
    [SerializeField] private MeshRenderer imageRenderer;

    private void Awake()
    {
        imagePicker.Completed += path => StartCoroutine( LoadImage( path, imageRenderer ) );
    }

    private void OnPressShowPicker()
    {
        imagePicker.Show( "Select Image", "unimgpicker", 1024 );
    }

    private IEnumerator LoadImage( string path, MeshRenderer output )
    {
        var url = "file://" + path;
        var www = new WWW( url );
        yield return www;

        var texture = www.texture;
        output.material.mainTexture = texture;
    }
}

関連記事