コガネブログ

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

【Unity】AudioClip のインポート時に iOS と Android で設定を分ける

はじめに

http://japan.unity3d.com/unite/unite2016/

Unite 2016の「モバイル端末向けのUnityアプリケーションの最適化実践テクニック」
の講演において、AudioClipの圧縮形式は
iOSでは「MP3」、Androidでは「Vorbis」がオススメとのことだったので
AssetPostprocessorで指定する方法を調べてみました

スクリプト

using UnityEditor;
using UnityEngine;

public class AudioClipPostprocessor : AssetPostprocessor
{
    private void OnPostprocessAudio( AudioClip clip )
    {
        var importer = assetImporter as AudioImporter;

        var ios = importer.GetOverrideSampleSettings( "iOS" );
        ios.compressionFormat = AudioCompressionFormat.MP3;
        importer.SetOverrideSampleSettings( "iOS", ios );
        
        var android = importer.GetOverrideSampleSettings( "Android" );
        android.compressionFormat = AudioCompressionFormat.Vorbis;
        importer.SetOverrideSampleSettings( "Android", android );
    }
}

iOS

f:id:baba_s:20160417211021p:plain

Android

f:id:baba_s:20160417211028p:plain

関連記事