TreeをUnityで使ってみます。IL2CPPでビルドするとランタイムエラーになります。本記事の執筆時点ではまだ一部のメソッドしか使えないようなので、モバイルでまともに使えるようになるのはもっと先になりそうです。https://forum.unity.com/threads/are-c-expression-trees-or-ilgenerator-allowed-on-ios.489498/docs.unity3d.comwww.wintellect.comただしエディタ拡張などではもちろん使えます。Treeの基本的なところは以下の記事にまとめました。light11.hatenadiary.comこの機能を使うと動的にラムダ式をコンパイルできます。Reflectionの代わりに使うとかなり早くなるようです。TreeはC#のバージョンアップに伴い色々と機能が拡充されたようで、Unityでは.Netのバージョンを4系にするといい感じに使えます。書いてみるとりあえず書いてみるには下記の記事がとても分かり易かったです。qiita.com上記をみながら簡単なソースコードを書いてみます。}}とりあえず足し算ができました。Reflectionの代わりに使って変数に代入するReflectionを使って変数に値を代入するにはこんな感じでやると思います。Treeで書いてみます。}}説明はコメントに書いたとおりです。Compile()メソッドは重いようなので、キャッシュするのがポイントです。ちなみにジェネリックを使わないで書くと次のようになります。こちらの方が実際には使い勝手はいいかも。Treeを使ってメソッドを呼んでみます。}}ジェネリックを使わないとこんな感じです。}}dynamicについてこの辺りはdynamicを使うとより簡単に書けそうです。4.xにしないといけませんでした。Treeを使っておくのが無難そうです。»プロフィールUnityエンジニア。グラフィックスへの興味が強めです。インストールから基本的な使い方・注意点まとめ【Unity】【エディタ拡張】テクスチャを指定したUV座標で切り取って保存する【Unity】指定したアセットのAssetBundle名を取得する【Unity】【シェーダ】スクリプトからVP行列を渡してシェーダで座標変換に使う【Unity】【シェーダ】FloatやVectorをリニアライズ対象にするGammaアトリビュート月別アーカイブはてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。