💻

【Unity】エディタ上で実行した際にM1 Mac(Appleシリコン)かどうかを判定する

2022/11/27に公開

UnityでM1 Macでどうしてもうまく動作しないライブラリがあり、仕方なくM1 Macだけ回避する処理を書いた時のメモ書きです。

SystemInfo.processorTypeを使う

UnityのSystemInfoには実行環境のプロセッサを出力するprocessorTypeというパラメータが用意されています。

// これを実行する
Debug.Log(SystemInfo.processorType);


// Intel Macの結果の一例 (MacBook Pro (16インチ, 2019))
Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz

// M1 Macの結果の一例 (MacBook Pro M1 Max (16インチ、2021))
Apple M1 Max

よって以下の記述でM1 Mac、もといAppleシリコンの環境で実行されているかを判定できます。

SystemInfo.processorType.Contains("Apple M")

検証環境

  • Unity2021.3.0f13
  • MacBook Pro (16インチ, 2019)
  • MacBook Pro M1 Max (16インチ、2021)

Discussion