Unity性能优化之编辑器检查——音频

 

优化选项

  1. 建议都勾选ForceToMono:将多声道音频混合为单声道
  2. 在iOS上请使用MP3格式,在Android上使用Vorbis
  3. 场景等长音效使用Streaming Type,技能等短音效使用DecompressOnLoad
  4. 采样率选择手动控制到22050左右
  5. 短音频可选格式aifff或wav,长音频可选格式mp3或ogg

关于选项的设置可参考 Unity基础之音频资源设置

 

实现编辑器自动检查

using System;
using UnityEngine;
using System.Collections;
using UnityEditor;

public class MyAudioProcessor : AssetPostprocessor
{
    public void OnPreprocessAudio()
    {
        if (!assetPath.StartsWith("Assets/MyAudio")) return;

        AudioImporter audioImporter = (AudioImporter)assetImporter;
        audioImporter.forceToMono = true;

        //Android设置
        AudioImporterSampleSettings androidSettings = new AudioImporterSampleSettings();
        androidSettings.loadType = AudioClipLoadType.DecompressOnLoad;     //长音效用Streaming,短的用DecompressOnLoad
        androidSettings.compressionFormat = AudioCompressionFormat.Vorbis; //Android用Vorbis
        androidSettings.quality = 100;
        androidSettings.sampleRateSetting = AudioSampleRateSetting.OverrideSampleRate; //采样率控制到22050左右
        androidSettings.sampleRateOverride = 22050;

        audioImporter.SetOverrideSampleSettings("Android", androidSettings);

        //iOS设置
        AudioImporterSampleSettings iOSSettings = new AudioImporterSampleSettings();
        iOSSettings.loadType = AudioClipLoadType.DecompressOnLoad;     //长音效用Streaming,短的用DecompressOnLoad
        iOSSettings.compressionFormat = AudioCompressionFormat.MP3; //iOS用MP3
        iOSSettings.quality = 100;
        iOSSettings.sampleRateSetting = AudioSampleRateSetting.OverrideSampleRate; //采样率控制到22050左右
        iOSSettings.sampleRateOverride = 22050;

        audioImporter.SetOverrideSampleSettings("iOS", iOSSettings);
    }
}

 

参考链接:

https://docs.unity3d.com/ScriptReference/AssetPostprocessor.html
https://docs.unity3d.com/ScriptReference/AssetPostprocessor.OnPreprocessAudio.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值